IP Library Granted Patent US 8,356,074
Granted Patent B1
US 8,356,074 · App. 13/571,320 · Granted Jan 15, 2013

Inter point of presence split architecture

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,356,074
App. No.
13/571,320
Granted
Jan 15, 2013
Kind
B1
Abstract

A system and method for accelerating web page delivery is disclosed in one embodiment. Web content requests are made to an edge server of a first point of presence (POP) of a content delivery network (CDN). The web content has embedded resource links. The first POP can rewrite the embedded resource links to route requests for the embedded resource links to any POP in the CDN or even the origin server. In some embodiments, the first POP can decide if the first POP and/or another POP referenced in a rewritten embedded resource link should cache and/or accelerate the resource referenced in the embedded resource link.

Claims (64)

1. A content delivery network (CDN) having a plurality of points of presence (POPs), comprising:

one or more processors for executing instructions to:

receive a request for web content at a first POP from an end user for content stored on an origin server, wherein:

the web content includes a plurality of resource links,

the first POP is part of the plurality of POPs, and

the first POP comprises:

an front-end optimization engine, and

a front-end cache;

identify a second POP that is located closer to the origin server than the first POP, wherein:

the second POP is part of the plurality of POPs, and

the second POP comprises:

a back-end optimization engine, and

a back-end cache; and

rewrite a resource link of the plurality of resource links of the web content, wherein the rewritten resource link is changed to reference the second POP, another POP from the plurality of POPs or the origin server; and

one or more storage media for retaining the instructions.

2. The CDN having the plurality of POPs as recited in claim 1 , wherein the one or more processors that perform the instructions is located within the first POP.

3. The CDN having the plurality of POPs as recited in claim 1 , wherein the instructions further comprise instructions to: determining the first POP is further away from the end user than a third POP, which is part of the plurality of POPs, wherein:

the another POP is referenced in the rewritten resource link, and

the another POP is the third POP.

4. The CDN having the plurality of POPs as recited in claim 1 , wherein the instructions further comprise instructions to: determine if the first POP should accelerate the resource.

5. The CDN having the plurality of POPs as recited in claim 1 , wherein the instructions further comprise instructions to: determine that the second POP should accelerate the resource.

6. The CDN having the plurality of POPs as recited in claim 1 , wherein the instructions further comprise instructions to: choosing one or both of the front-end cache and the back-end cache to store a resource referenced by the resource link.

7. A content delivery network (CDN) having a plurality of points of presence (POPs) for delivering third party content to end users, the CDN comprising:

a first POP, which receives a request for web content from an end user for content stored on an origin server, wherein:

the web content includes a plurality of resource links,

the first POP is part of the plurality of POPs, and

the first POP comprises:

a front-end optimization engine, and

a front-end cache;

a second POP, located closer to the origin server than the first POP, wherein:

the second POP is part of the plurality of POPs, and

the second POP comprises:

a back-end optimization engine, and

a back-end cache; and

a decision engine that rewrites a resource link of the plurality of resource links of the web content, wherein the rewritten resource link is changed to reference the second POP, another POP from the plurality of POPs or the origin server.

8. The CDN having the plurality of POPs for delivering third party content to end users as recited in claim 7 , wherein the decision engine is located in the first POP.

9. The CDN having the plurality of POPs for delivering third party content to end users as recited in claim 7 , wherein the decision engine chooses the second POP to cache a resource specified by the resource link.

10. The CDN having the plurality of POPs for delivering third party content to end users as recited in claim 7 , wherein the decision engine chooses the first POP to accelerate a resource specified by the resource link.

11. The CDN having the plurality of POPs for delivering third party content to end users as recited in claim 7 , wherein the decision engine chooses the second POP to accelerate a resource specified by the resource link.

12. The CDN having the plurality of POPs for delivering third party content to end users as recited in claim 7 , wherein the decision engine chooses the first POP to cache a resource specified by the resource link.

13. A method for accelerating delivery of third party content using a content delivery network (CDN) having a plurality of points of presence (POPs), the method comprising:

receiving a request for web content at a first POP from an end user for content stored on an origin server, wherein:

the web content includes a plurality of resource links,

the first POP is part of the plurality of POPs, and

the first POP comprises:

an front-end optimization engine, and

a front-end cache;

identifying a second POP that is located closer to the origin server than the first POP, wherein:

the second POP is part of the plurality of POPs, and

the second POP comprises:

a back-end optimization engine, and

a back-end cache; and

rewriting a resource link of the plurality of resource links of the web content, wherein the rewritten resource link is changed to reference the second POP, another POP from the plurality of POPs or the origin server.

14. The method for accelerating delivery of third party content using the CDN having the plurality of POPs as recited in claim 13 , further comprising: determining the first POP is further away from the end user than a third POP, which is part of the plurality of POPs, wherein:

the another POP is referenced in the rewritten resource link, and

the another POP is the third POP.

15. The method for accelerating delivery of third party content using the CDN having the plurality of POPs as recited in claim 13 , further comprising:

determining that a resource identified by the resource link is dynamic; and

avoiding one or both of the front-end and/or back-end caches.

16. The method for accelerating delivery of third party content using the CDN having the plurality of POPs as recited in claim 13 , further comprising: choosing one or both of the front-end cache and the back-end cache to store a resource referenced by the resource link.

17. The method for accelerating delivery of third party content using the CDN having the plurality of POPs as recited in claim 13 , further comprising: choosing the front-end cache to cache accelerate delivery of a resource referenced by the resource link.

18. The method for accelerating delivery of third party content using the CDN having the plurality of POPs as recited in claim 13 , further comprising: choosing the front-end cache to cache store a resource referenced by the resource link.

19. One or more non-transitory machine-readable medium having machine-executable instructions configured to perform the machine-implementable method for accelerating delivery of third party content using the CDN having the plurality of POPs as recited in claim 13 .

20. A computing system configured to perform the machine-implementable method for accelerating delivery of third party content using the CDN having the plurality of POPs as recited in claim 13 .

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 Jul 11, 2014
From: HOFMANN, JASON; EHRLICH, OFIR; POTEKHIN, DIMA; ALTMAN, TOMER; FAINBERG, LEONID; SHAI, GIL; GADISH, OFER; WOLFE, JASON
To: LIMELIGHT NETWORKS, INC.
Reel/Frame 033295/0544 →