IP Library Granted Patent US 9,037,643
Granted Patent B2
US 9,037,643 · App. 13/834,241 · Granted May 19, 2015

Dynamic tag management for optimizing content delivery

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 9,037,643
App. No.
13/834,241
Granted
May 19, 2015
Kind
B2
Abstract

Some embodiments provide a content delivery network (CDN) solution that affords the CDN control over those elements of customer content that are delivered by third parties. The CDN integrates a distributed set of monitoring agents. Each monitoring agent monitors the delivery performance of third parties to the region in which the agent operates. The CDN uses the performance monitoring information to dynamically manage the content tags to the third-party delivered elements of CDN-customer content. Specifically, a CDN server retrieves the parent page for requested CDN-customer content. The CDN server identifies the region from where the request originates and retrieves the logs from the monitoring agents monitoring from that region. The CDN server then modifies the base page by dynamically removing the tags to the third-party delivered elements that are reported in the monitoring agent logs as being unavailable, inaccessible, or underperforming in the identified region.

Claims (33)

1. A method for dynamically managing tags to third-party delivered elements of content delivery network (CDN) customer content, the method comprising:

caching a parent page for CDN-customer content, the parent page comprising a set of tags that include a set of elements that are delivered by third-party servers that operate independent of the CDN;

receiving at a CDN server, monitoring results measuring the third-party servers' performance in delivering the set of elements to each of a plurality of regions;

producing at the CDN server, a first modified version of the parent page for optimized delivery to a first region of the plurality of regions, wherein producing the first modified version of the parent page comprises excluding a first tag from the set of tags that includes a first element that is undeliverable to the first region according to the monitoring results; and

passing the first modified version of the parent page from the CDN in response to a request for the CDN-customer content that originates from a user operating in the first region.

2. The method of claim 1 further comprising passing the parent page with all tags from the set of tags in response to a request for the CDN-customer originating from a user operating in a second region when the monitoring results identify each element of the set of elements as being timely deliverable to the second region.

3. The method of claim 1 further comprising producing a second modified version of the parent page for optimized delivery to a second region of the plurality of regions, wherein the second region is different than the first region, and wherein producing the second modified version comprises excluding a second tag from the set of tags that includes a second element that is undeliverable to the second region.

4. The method of claim 3 further comprising passing the second modified version of the parent page from the CDN in response to a request for the CDN-customer content that originates from a user operating in the second region.

5. The method of claim 1 further comprising receiving updated monitoring results measuring the third-party servers' performance in delivering the set of elements to each of a plurality of regions at a later time.

6. The method of claim 5 further comprising updating the first modified version of the parent page by including the first tag when the updated monitoring results show the first element as being deliverable to the first region.

7. The method of claim 1 , wherein producing the first modified version of the parent page comprises replacing the first tag with an alternate tag that includes a substitute element that is timely deliverable to the first region.

8. The method of claim 1 further comprising redefining the set of tags such that requests for the set of elements are issued as non-blocking requests.

9. A method for dynamically managing tags within CDN-customer content, the method operable in a CDN comprising a central tag management server and a plurality of distributed CDN caching servers, the method comprising:

caching a parent page for the CDN-customer content at the tag management server, the parent page comprising a set of tags for including a set of third-party delivered elements as part of the CDN-customer content;

providing to the tag management server, measurements measuring the third-party performance in delivering the set of elements to each of a plurality of regions;

receiving at a CDN caching server, a request for the CDN-customer content from a first user operating in a first region of the plurality of region;

forwarding the request for the CDN-customer content with an identifier identifying the user as operating in the first region from the CDN caching server to the tag management server; and

passing from the tag management server to the CDN caching server, a first modified version of the parent page for dissemination by the CDN caching server to the first user, the first modified version of the parent page excluding a first tag from the set of tags when performance by a third-party serving the element included by the first tag to the first region is below a specified threshold.

10. The method of claim 9 further comprising generating at the tag management server, a plurality of modified versions of the parent page based on the measurements, wherein each modified version of the parent page is optimized for delivery to a different region of the plurality of regions by excluding one or more tags that include one or more elements that are undeliverable to that region.

11. The method of claim 9 further comprising deploying a monitoring agent to each of the plurality of regions.

12. The method of claim 11 further comprising configuring each monitoring agent to monitor the set of elements by measuring the third-party performance in delivering the set of elements to the monitoring agent.

13. The method of claim 9 further comprising caching the first modified version of the parent page at the first CDN caching server.

14. The method of claim 13 further comprising receiving a second request for the CDN-customer content from a user operating in the first region and passing the first modified version of the parent page from cache without access to the tag management server.

15. The method of claim 9 further comprising receiving at a second CDN caching server, a request for the CDN-customer content from a second user operating in a second region of the plurality of regions and passing from the tag management server to the second CDN caching server, the parent page for dissemination by the second CDN caching server to the second user when performance by the third-party serving the set of elements included by the set of tags meets or exceeds the specified threshold.

16. A CDN performing dynamic tag management for tags to third party delivered elements of CDN-customer content, the CDN comprising:

a plurality of monitoring agents deployed across a plurality of regions, each monitoring agent of the plurality of monitoring agents configured with a set of tags to third party delivered elements of CDN-customer content and further configured to monitor content delivery performance of the third party delivered elements to a region to which the monitoring agent is deployed;

a first server comprising storage for caching a CDN-customer specified page comprising the set of tags for including the third party delivered elements as part of the CDN-customer content, the first server configured to receive the content delivery performance of the third party delivered elements from the plurality of monitoring agents and further configured to use the content delivery performance in order to optimize the page for delivery to each particular region of the plurality of regions by producing a modified version of the page that excludes one or more tags to one or more elements that are undeliverable to the particular region; and

a second set of distributed servers providing optimized distribution for the CDN-customer content (i) by retrieving from the first server, in response to a user request for the CDN-customer content, a modified version of the page that is optimized for a region from which the request originates and (ii) by passing the modified version of the page to the requesting user.

17. The CDN of claim 16 , wherein the second set of distributed servers comprises storage for caching a set of CDN delivered elements for the CDN-customer content.

18. The CDN of claim 17 , wherein the second set of distributed servers further provide optimized distribution for the CDN-customer content by delivering the set of CDN delivered elements to a user that requests the CDN-customer content.

19. The CDN of claim 16 , wherein the first server produces a first modified version of the page that excludes a first tag from the set of tags for optimized delivery to a first region having a firewall that blocks delivery of the element included by the first tag and produces a second modified version of the page that excludes a second tag from the set of tags for optimized delivery to a second region having a firewall that blocks delivery of the element included by the second tag.

20. The CDN of claim 16 , wherein each server of the second set of distributed servers comprises storage for caching a modified version of the page retrieved from the first server.

21. The CDN of claim 20 , wherein the first server is further configured for issuing a command to cause the second set of distributed server to purge any cached instances of a particular modified version of the page when that particular modified version of the page is updated by the first server.

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 Mar 15, 2013
From: KAZERANI, ALEXANDER A.; PETERS, ROBERT J.
To: EDGECAST NETWORKS, INC.
Reel/Frame 030012/0682 →