IP Library Granted Patent US 8,199,752
Granted Patent B2
US 8,199,752 · App. 12/767,746 · Granted Jun 12, 2012

Enhanced anycast for edge server selection

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,199,752
App. No.
12/767,746
Granted
Jun 12, 2012
Kind
B2
Abstract

Systems and methods for gathering distributed information to improve routing that uses Anycast for assigning deliveries between a number of geographically-distant points of presence (POPs) are disclosed. The POPs share the same Internet protocol (IP) address. According to Anycast resolution, the Internet aids in assigning a content request initially to a POP. Delivery statistics are gathered from deliveries a the number of POPs and possibly other sources. Where it is determined that Anycast found the wrong POP, the content request is reassigned to another POP.

Claims (55)

1. A content delivery network (CDN) for delivering content of others with the Internet using a plurality of point of presences (POPs), the CDN comprising:

a first POP accessible using an Internet protocol (IP) address, wherein the first POP comprises a plurality of first edge servers that each are configured to deliver content to end user devices;

a second POP accessible using the IP address, wherein:

the plurality of POPs comprise the first POP and the second POP,

the second POP is geographically separated from the first POP, and

the second POP comprises a plurality of second edge servers that each are configured to deliver content to end user devices; and

a switch fabric within the CDN that assigns a request for content received at the first POP to one of the plurality of second edge servers when the second POP is determined likely to provide improved delivery of the content object of the request, the request having been resolved by a Domain Name System (DNS) prior to therequest being received at the first POP,

wherein the switch fabric assigns the request to the second POP without further action by an end user device which initiated the request for content.

2. The CDN for delivering content of others with the Internet using the plurality of POPs as recited in claim 1 , wherein the first and second POPs share the same IP address according to an Anycast routing scheme.

3. The CDN for delivering content of others with the Internet using the plurality of POPs as recited in claim 1 , wherein the switch fabric is distributed with portions within both the first POP and the second POP.

4. The CDN for delivering content of others with the Internet using the plurality of POPs as recited in claim 1 , further comprising:

a first data agent to gather delivery statistics for requests serviced by the first POP;

a second data agent to gather delivery statistics for requests serviced by the second POP; and

a message queue that aggregates delivery statistics from the first data agent and the second data agent, wherein the aggregated delivery statistics are streamed to the switch fabric to affect assignment of the request.

5. The CDN for delivering content of others with the Internet using the plurality of POPs as recited in claim 1 , further comprising a messaging queue, which gathers delivery statistics from the first POP and the second POP to produce a stream, which affects how the switch fabric assigns requests among the plurality of POPs.

6. The CDN for delivering content of others with the Internet using the plurality of POPs as recited in claim 1 , further comprising a messaging queue, which gathers delivery statistics from at least one of the first POP and/or the second POP and a third party not under the control or within the domain of the CDN to produce a stream of delivery statistics, which affects how the switch fabric assigns requests among the plurality of POPs.

7. The CDN for delivering content of others with the Internet using the plurality of POPs as recited in claim 1 , further comprising a processing subscriber that receives information gathered inside and outside the CDN to affect how the switch fabric assigns requests to POPs.

8. A method for assigning delivery resources in a CDN between a plurality of POPs, the method comprising:

receiving a request to deliver a content object to an end user at a first POP, the request having been resolved by a DNS prior to being received at the first POP, wherein:

the first POP comprises a plurality of first edge servers,

the plurality of POPs includes the first POP and a second POP, and

the first POP is geographically distant from the second POP;

determining that the second POP is likely to provide improved delivery of the content object to the end user in comparison to the first POP, wherein:

the second POP comprises a plurality of second edge servers, and

the first POP and the second POP are accessed from the Internet with a same IP address; and

assigning the request, via a switch fabric within the CDN, to one of the plurality of second edge servers,

wherein the assigning the request to the second POP occurs without further action by an end user device which initiated the request for content.

9. The method for assigning delivery resources in the CDN between a plurality of POPs as recited in claim 8 , further comprising processing information gathered inside and outside the CDN to affect the determining.

10. The method for assigning delivery resources in the CDN between a plurality of POPs as recited in claim 8 , wherein the assigning the request includes issuing a redirect to an end user system to assign the request to one of the plurality of second edge servers.

11. The method for assigning delivery resources in the CDN between a plurality of POPs as recited in claim 8 , wherein the determining takes into account network proximity of an originator of the request and the plurality of POPs.

12. The method for assigning delivery resources in the CDN between a plurality of POPs as recited in claim 8 , further comprising:

gathering first delivery results from the first POP and second delivery results from the second POP into a stream; and

coupling the stream to routing fabric that assigns the requests between the plurality of POPs.

13. The method for assigning delivery resources in the CDN between a plurality of POPs as recited in claim 8 , wherein the first and second POPs share the same IP address according to an Anycast routing scheme.

14. The method for assigning delivery resources in the CDN between a plurality of POPs as recited in claim 8 , further comprising:

gathering delivery statistics from the first POP and the second POP to produce a stream; and

processing the stream to assign requests among the plurality of POPs.

15. A machine-readable non-transitory medium having machine-executable instructions configured to perform the machine-implementable method for assigning delivery resources in a CDN between a plurality of POPs of claim 8 .

16. A method for assigning delivery resources in a distributed delivery network having a plurality of POPs that uses Anycast to assist in assigning content requests, the method comprising:

receiving a request to deliver a content object to an end user at a first POP, the request having been resolved by a DNS prior to being received at the first POP, wherein the plurality of POPs includes the first POP and a second POP;

determining that the second POP is likely to provide improved delivery of the content object to the end user in comparison to the first POP, wherein:

the plurality of POPs comprise the first POP and the second POP,

first and second POPs share the same IP address,

the first POP is geographically distant from the second POP, and

the first POP and the second POP are accessed from the Internet using a same IP address; and

re-assigning the request, with a switch fabric within the CDN, to the second POP for delivery of the content object to the end user,

wherein the assigning the request to the second POP occurs without further action by an end user device which initiated the request for content.

17. The method for assigning delivery resources in the distributed delivery network having the plurality of POPs that uses Anycast to assist in assigning content requests as recited in claim 16 , further comprising processing information gathered inside and outside the distributed delivery network to affect the determining.

18. The method for assigning delivery resources in the distributed delivery network having the plurality of POPs that uses Anycast to assist in assigning content requests as recited in claim 16 , wherein the determining takes into account network proximity of an originator of the request and the plurality of POPs.

19. The method for assigning delivery resources in the distributed delivery network having the plurality of POPs that uses Anycast to assist in assigning content requests as recited in claim 16 , further comprising:

gathering first delivery results from the first POP and second delivery results from the second POP into a stream; and

coupling the stream to routing fabric that assigns the requests between the plurality of POPs.

20. The method for assigning delivery resources in the distributed delivery network having the plurality of POPs that uses Anycast to assist in assigning content requests as recited in claim 16 , further comprising:

gathering delivery statistics from the first POP and the second POP to produce a stream; and

processing the stream to assign requests among the plurality of POPs.

Assignments (9)
RELEASE OF PATENT SECURITY AGREEMENT [RECORDED AT REEL/FRAME 065597/0406] Recorded Jul 9, 2025
From: U.S. BANK TRUST COMPANY, NATIONAL ASSOCIATION
To: UPLYNK, INC. (F/K/A EDGIO, INC.)
Reel/Frame 071875/0105 →
RELEASE OF PATENT SECURITY AGREEMENT [RECORDED AT REEL/FRAME 065597/0212] Recorded Jul 3, 2025
From: LYNROCK LAKE MASTER FUND LP
To: UPLYNK, INC. (F/K/A EDGIO, INC.); MOJO MERGER SUB, LLC
Reel/Frame 071817/0877 →
RELEASE OF PATENT SECURITY AGREEMENT [RECORDED AT REEL/FRAME 068763/0276] Recorded Jul 3, 2025
From: LYNROCK LAKE MASTER FUND LP
To: UPLYNK, INC. (F/K/A EDGIO, INC.); MOJO MERGER SUB, LLC
Reel/Frame 071818/0022 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 30, 2025
From: EDGIO, INC.
To: DRNC HOLDINGS, INC.
Reel/Frame 070071/0327 →
CHANGE OF NAME Recorded Sep 9, 2024
From: LIMELIGHT NETWORKS, INC.
To: EDGIO, INC.
Reel/Frame 068898/0281 →
PATENT SECURITY AGREEMENT Recorded Aug 23, 2024
From: EDGIO, INC.; MOJO MERGER SUB, LLC
To: LYNROCK LAKE MASTER FUND LP [LYNROCK LAKE PARTNERS LLC, ITS GENERAL PARTNER]
Reel/Frame 068763/0276 →
PATENT SECURITY AGREEMENT Recorded Nov 15, 2023
From: EDGIO, INC.; MOJO MERGER SUB, LLC
To: LYNROCK LAKE MASTER FUND LP [LYNROCK LAKE PARTNERS LLC, ITS GENERAL PARTNER]
Reel/Frame 065597/0212 →
PATENT SECURITY AGREEMENT Recorded Nov 15, 2023
From: EDGIO, INC.; MOJO MERGER SUB, LLC
To: U.S. BANK TRUST COMPANY, NATIONAL ASSOCIATION
Reel/Frame 065597/0406 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 6, 2010
From: SWANSON, WYLIE; BLACK, BRYAN D.; RACIBORSKI, NATHAN F.; ROERSMA, JACOB S.; RASOR, COLIN; TOBEY, ALBERT P.
To: LIMELIGHT NETWORKS
Reel/Frame 024803/0675 →