IP Library Granted Patent US 8,745,240
Granted Patent B2
US 8,745,240 · App. 13/444,670 · Granted Jun 3, 2014

Global load balancing on a content delivery network

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,745,240
App. No.
13/444,670
Granted
Jun 3, 2014
Kind
B2
Abstract

The invention relates to systems and methods of global load balancing in a content delivery network having a plurality of edge servers which may be distributed across multiple geographic locations. According to one aspect of the invention, a global load balancing system includes a first load balancing server for receiving a packet requesting content to be delivered to a client, selecting one of the plurality of edge servers to deliver the requested content to the client, and forwarding the packet across a network connection to a second load balancing server, which forwards the packet to the selected edge server. The selected edge server, in response to receiving the packet, sends across a network connection the requested content with an address for direct delivery to the client, thereby allowing the requested content to be delivered to the client while bypassing a return path through the first load balancing server.

Claims (38)

1. A global load balancing system for use in a content delivery network having a plurality of edge servers distributed across multiple geographical locations, comprising

a first load balancing server located at a first geographical location for balancing a load across a first plurality of edge servers, the first load balancing server being associated with a first router that advertises a first set of IP addresses for the first load balancing server, and

a second load balancing server located at a second geographical location for balancing a load across a second plurality of edge servers, the second load balancing server being associated with a second router that advertises a second set of IP addresses for the second load balancing server,

wherein the first router advertises a first IP address identical to one advertised by the second router, such that

a first content request addressed to the first IP address from a first user located closer to the first geographic location is received and processed by the first load balancing server, whereas a second content request addressed to the first IP address from a second user located closer to the second geographic location is received and processed by the second load balancing server, and

wherein the first router regulates relative traffic load at the first geographical location and the second geographical location by:

determining a second IP address to remove from the first set of IP addresses, based at least in part on a magnitude of a desired decrease in traffic load at the first geographical location relative to traffic load at the second geographical location, and

removing the second IP address from the first set of IP addresses such that the first router no longer advertises the second IP address.

2. The global load balancing system of claim 1 , wherein the first load balancing server comprises

an input port for receiving a packet requesting an IP address advertised by the first router, and

a packet switch for forwarding the packet for receipt by an edge server that delivers content associated with the requested IP address to a client.

3. The global load balancing system of claim 1 , wherein the first router comprises

an input port for receiving data indicative of a performance status of at least one edge server associated with the first geographical location, the performance status indicating how well an edge server will deliver content identified by the first set of IP addresses, and

a processor for managing the first set of IP addresses advertised by the first router of the first router based at least in part on the performance status.

4. The global load balancing system of claim 2 , wherein the packet uses one of HTTP, FTP, RTMP, and MMS as a communications protocol.

5. The global load balancing system of claim 2 , wherein the first load balancing server comprises a processor for selecting the edge server to receive the forwarded packet based at least in part on at least one of edge server load, edge server availability, file type, network latency, proximity, and speed of transfer to the client.

6. The global load balancing system of claim 3 , wherein the processor uses a Border Gateway Protocol to manage the first set of IP addresses advertised by the first router.

7. The global load balancing system of claim 3 , wherein the processor removes at least one IP address from the first set of IP addresses, so that the first router no longer advertises the removed IP address, when the performance status of at least one edge server associated with the first geographical location indicates an inability to deliver content in response to a packet requesting content.

8. The global load balancing system of claim 3 , wherein the processor removes at least one IP address from the first set of IP addresses, so that the first router no longer advertises the removed IP address, when the performance status of at least one edge server associated with the first geographical location indicates that delivery of content in response to a packet requesting content does not satisfy a desired quality of service level.

9. The global load balancing system of claim 3 , wherein the processor adds at least one IP address to the first set of IP addresses, so that the first router advertises the added IP address, when the performance status of at least one edge server associated with the first geographical location indicates an ability to deliver content in response to a packet requesting content.

10. The global load balancing system of claim 3 , wherein the processor adds at least one IP address to the first set of IP addresses, so that the first router advertises the added IP address, when the performance status of at least one edge server associated with the first geographical location indicates that delivery of content in response to a packet requesting content does satisfy a desired quality of service level.

11. A method of load balancing across a content delivery network having a plurality of edge servers distributed across multiple geographical locations, comprising the steps of

providing a first load balancing server located at a first geographical location for balancing a load across a first plurality of edge servers, the first load balancing server being associated with a first routing table that advertises a first set of IP addresses for the first load balancing server,

providing a second load balancing server located at a second geographical location for balancing a load across a second plurality of edge servers, the second load balancing server being associated with a second routing table that advertises a second set of IP addresses for the second load balancing server, wherein the first routing table advertises a first IP address identical to one advertised by the second routing table, such that

a first content request addressed to the first IP address from a first user located closer to the first geographic location is received and processed by the first load balancing server, whereas a second content request addressed to the first IP address from a second user located closer to the second geographic location is received and processed by the second load balancing server, and

regulating relative traffic load at the first geographical location and the second geographical location by:

determining a second IP address to remove from the first set of IP addresses, based at least in part on a magnitude of a desired decrease in traffic load at the first geographical location relative to traffic load at the second geographical location, and

removing the second IP address from the first set of IP addresses such that the first routing table no longer advertises the second IP address.

12. The method of claim 11 , comprising the step of operating the first load balancing server to forward a packet requesting the first IP address across a network connection for receipt by an edge server that delivers content associated with the first IP address to a client.

13. The method of claim 11 , wherein the step of regulating a relative traffic load comprises removing the second IP address, which is identical to one in the second set of IP addresses, from the first set of IP addresses so that the first routing table no longer advertises the second IP address and the second routing table continues to advertise the second IP address.

14. The method of claim 11 , comprising the steps of

monitoring a first traffic load associated with the first geographical location, and

monitoring a second traffic load associated with the second geographical location,

modifying at least one of the first and second sets of IP addresses based at least in part on the monitored first and second traffic loads.

15. The method of claim 12 , wherein the packet uses one of HTTP, FTP, RTMP, and MMS as a communications protocol.

16. The method of claim 12 , comprising the step of selecting the edge server to receive the forwarded packet based at least in part on at least one of edge server load, edge server availability, file type, network latency, proximity, and speed of transfer to the client.

17. The method of claim 14 , wherein the modifying at least one of the first and second sets of IP addresses comprises removing an IP address from the at least one of the first and second sets of IP addresses.

18. The method of claim 14 , wherein the modifying at least one of the first and second sets of IP addresses comprises adding an IP address to the at least one of the first and second sets of IP addresses.

Assignments (11)
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 →
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 Oct 21, 2022
From: EDGECAST INC.
To: EDGIO, INC.
Reel/Frame 061738/0972 →
CHANGE OF NAME Recorded Mar 15, 2022
From: VERIZON DIGITAL MEDIA SERVICES INC.
To: EDGECAST INC.
Reel/Frame 059367/0990 →
CHANGE OF NAME Recorded Apr 25, 2016
From: EDGECAST NETWORKS, INC
To: VERIZON DIGITAL MEDIA SERVICES INC.
Reel/Frame 038511/0045 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 11, 2012
From: SAKATA, JAY; KAZERANI, ALEX; GOLDSMITH, PHIL
To: EDGECAST NETWORKS, INC.
Reel/Frame 028030/0209 →