IP Library Granted Patent US 8,745,221
Granted Patent B1
US 8,745,221 · App. 14/030,862 · Granted Jun 3, 2014

Dynamic request rerouting

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,221
App. No.
14/030,862
Granted
Jun 3, 2014
Kind
B1
Abstract

A point of presence includes edge servers having IP addresses and storing content, a switch/router that receives and forwards requests for content to the edge servers, a health monitoring server that gathers health information from the edge servers, and a dynamic request rerouting (DRR) server. The DRR server is connected with each of the edge servers. If the DRR server obtains a determination that one of the edge servers is down, it advertises a route including the IP address of the down edge server to the switch/router. The switch/router forwards a request for content, originally addressed to the down server, to the DRR server. The DRR server forwards the request to a working server that stores the content. The working server sends the content to the DRR server, the DRR server forwards the content back to the switch/router, and the switch/router responds to the original request with the content.

Claims (49)

1. A point of presence for a content delivery network that supports dynamic request rerouting, comprising:

a plurality of edge servers that store content objects, each of the edge servers being addressable through an IP address;

a switch fabric that is operatively configured to receive content requests and forward each such request to an appropriate one of the edge servers, and when the request names a named one of the edge servers by its IP address, forwards the request to the named one of the edge servers;

a load balancer that forwards the request to a selected one of the edge servers when the request does not name a named one of the edge servers by its IP address;

a health monitoring server that gathers health information from each of the edge servers; and

a dynamic request rerouting (DRR) server that receives the health information from the health monitoring server, such that upon the DRR server obtaining a status determination that one of the edge servers is not operating properly:

the DRR server injects a route that includes the IP address of one of the edge servers that is operating properly, to at least one of the switch fabric and the load balancer,

the at least one of the switch fabric and the load balancer forwards an original request for requested content that was originally addressed to the one of the edge servers that is not operating properly, to the one of the edge servers that is operating properly, using the route injected by the DRR server,

the one of the edge servers that is operating properly responds by sending the requested content to the at least one of the load balancer and the switch fabric, and

the at least one of the load balancer and the switch fabric responds to the original request with the requested content.

2. The point of presence for a content delivery network that supports dynamic request rerouting of claim 1 , wherein the health monitoring server generates the status determination based on the health information from each of the edge servers, and forwards the status determination to the DRR server.

3. The point of presence for a content delivery network that supports dynamic request rerouting of claim 1 , wherein the health monitoring server aggregates and forwards the health information to the DRR server without generating the status determination.

4. The point of presence for a content delivery network that supports dynamic request rerouting of claim 1 wherein the health information comprises one or more of native status information that is available from the edge servers, health check information that is available from the edge servers, and one or more measurements of response time to content requests.

5. The point of presence for a content delivery network that supports dynamic request rerouting of claim 1 , wherein the DRR server comprises a health ingest layer that receives the health information, a routing rules layer that generates IP addresses to reroute traffic originally sent to the one of the edge servers that is not operating properly, and a route injection layer that injects the route that includes the IP address of one of the edge servers that is operating properly, to the at least one of the switch fabric and the load balancer.

6. The point of presence for a content delivery network that supports dynamic request rerouting of claim 1 , wherein the health monitoring server, the DRR server and the switch fabric are configured to detect a server that is not operating properly, and to reconfigure the point of presence to implement a path to a working edge server, in five seconds or less.

7. A method of dynamic request rerouting in a point of presence for a content delivery network, comprising:

receiving content requests at a switch fabric that operatively couples with a plurality of edge servers of the point of presence, each of the edge servers being associated with an IP address;

forwarding ones of the content requests that do not name a specific edge server's IP address to a load balancer for resolution to a specific edge server;

accumulating health information for the plurality of edge servers of the point of presence at a health monitoring server;

determining from the health information that one of the edge servers is not operating properly;

generating substitute route information, by a dynamic request reroute (DRR) server coupled with the health monitoring server, to replace the IP address of the edge server that is not operating properly with an IP address of an edge server that is operating properly and can serve a content request;

injecting the substitute route information from the DRR server to at least one of the switch fabric and the load balancer;

forwarding an original content request from the at least one of the switch fabric and the load balancer to the one of the plurality of edge servers that is operating properly, utilizing the injected substitute route information; and

forwarding content from the one of the plurality of edge servers that is operating properly through the switch fabric to serve the original content request.

8. The method of dynamic request rerouting in a point of presence of a content delivery network of claim 7 , wherein determining from the health information that one of the edge servers is not operating properly comprises generating, by the health monitoring server, a status determination based on the health information from each of the edge servers, and forwarding the status determination from the health monitoring server to the DRR server.

9. The method of dynamic request rerouting in a point of presence of a content delivery network of claim 7 , wherein accumulating health information for the plurality of edge servers of the point of presence at the health monitoring server comprises aggregating and forwarding the health information from the health monitoring server to the DRR server without generating a status determination at the health monitoring server.

10. The method of dynamic request rerouting in a point of presence of a content delivery network of claim 7 , wherein accumulating health information for the plurality of edge servers of the point of presence comprises accumulating one or more of native status information that is available from the edge servers, health check information that is available from the edge servers, and one or more measurements of response time to content requests.

11. The method of dynamic request rerouting in a point of presence of a content delivery network of claim 7 , wherein the health monitoring server, the DRR server and the switch fabric cooperate to detect an edge server that is not operating properly, and to reconfigure the point of presence to implement a path to a working edge server, in five seconds or less.

12. The method of dynamic request rerouting in a point of presence of a content delivery network of claim 7 , wherein:

accumulating the health information for the plurality of edge servers comprises transmitting the health information to a health ingest layer of the DRR server;

generating the substitute route information comprises generating the IP addresses of the edge server that is operating properly with a routing rules layer of the DRR server; and

injecting the substitute route information from the DRR server to at least one of the switch fabric and the load balancer comprises injecting the substitute route information with a route injection layer of the DRR server.

13. A software product, comprising instructions stored on non-transitory, computer readable media, wherein the instructions, when executed by a computer, perform a method of dynamic request rerouting in a point of presence for a content delivery network, the instructions comprising:

instructions for receiving content requests at a switch fabric that operatively couples with a plurality of edge servers of the point of presence, each of the edge servers being associated with an IP address;

instructions for forwarding ones of the content requests that do not name a specific edge server's IP address to a load balancer for resolution to a specific edge server;

instructions for accumulating health information for the plurality of edge servers of the point of presence at a health monitoring server;

instructions for determining from the health information that one of the edge servers is not operating properly;

instructions for generating substitute route information, by a dynamic request reroute (DRR) server coupled with the health monitoring server, to replace the IP address of the edge server that is not operating properly with an IP address of an edge server that is operating properly and can serve a content request;

instructions for injecting the substitute route information from the DRR server to at least one of the switch fabric and the load balancer;

instructions for forwarding an original content request from the at least one of the switch fabric and the load balancer to the one of the plurality of edge servers that is operating properly, utilizing the injected substitute route information; and

instructions for forwarding content from the one of the plurality of edge servers that is operating properly through the switch fabric to serve the original content request.

14. The software product of claim 13 , wherein the instructions for determining from the health information that one of the edge servers is not operating properly comprise instructions for generating, by the health monitoring server, a status determination based on the health information from each of the edge servers, and forwarding the status determination from the health monitoring server to the DRR server.

15. The software product of claim 13 , wherein the instructions for accumulating health information for the plurality of edge servers of the point of presence at the health monitoring server comprise instructions for aggregating and forwarding the health information from the health monitoring server to the DRR server without generating a status determination at the health monitoring server.

16. The software product of claim 13 , wherein the instructions for accumulating health information for the plurality of edge servers of the point of presence comprise instructions for accumulating one or more of native status information that is available from the edge servers, health check information that is available from the edge servers, and one or more measurements of response time to content requests.

17. The software product of claim 13 , further comprising instructions for the health monitoring server, the DRR server and the switch fabric to cooperate to detect an edge server that is not operating properly, and to reconfigure the point of presence to implement a path to a working edge server, in five seconds or less.

18. The software product of claim 13 , wherein:

the instructions for accumulating the health information for the plurality of edge servers comprise instructions for transmitting the health information to a health ingest layer of the DRR server;

the instructions for generating the substitute route information comprise instructions for generating the IP addresses of the edge server that is operating properly with a routing rules layer of the DRR server; and

the instructions for injecting the substitute route information from the DRR server to at least one of the switch fabric and the load balancer comprise instructions for injecting the substitute route information with a route injection layer of the DRR server.

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 Sep 18, 2013
From: WILLBANKS, JOHN
To: LIMELIGHT NETWORKS, INC.
Reel/Frame 031235/0664 →