IP Library Granted Patent US 11,102,168
Granted Patent B2
US 11,102,168 · App. 16/882,930 · Granted Aug 24, 2021

Dynamic binding and load determination in a content delivery network (CDN)

Inventor: Christopher Newton (Westlake Village, CA)
Assignee: Level 3 Communications, LLC
H04L61/1511H04L61/20H04L61/25H04L61/3025H04L61/3055H04L67/02H04L67/1004
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 11,102,168
App. No.
16/882,930
Granted
Aug 24, 2021
Kind
B2
Abstract

A content provider has a plurality of content provider domain names, and a content delivery network (CDN) allocates a plurality of CDN domain names to the particular content provider. The content provider domain names are mapped to the CDN domain names. CDN domain names are bound to corresponding CDN clusters. The binding of the of CDN domain names to corresponding CDN clusters is modified.

Claims (44)

1. A computer-implemented method, in a content delivery (CD) network, wherein said CD network (CDN) delivers content on behalf of multiple content providers, and wherein a particular content provider of said multiple content providers has a first plurality of content provider domain names associated therewith, and wherein said CDN allocates a first plurality of CDN domain names to said particular content provider, and wherein said first plurality of content provider domain names are mapped to said first plurality of CDN domain names, wherein said CDN comprises a plurality of CDN clusters, and wherein at least some of said CDN clusters are marker clusters, the method comprising:

(A) maintaining a binding of said first plurality of CDN domain names to corresponding CDN clusters, wherein each of said first plurality of CDN domain names is bound to at least one CDN cluster;

(B) maintaining, for at least some of said marker clusters, a first mapping; and then

(C) determining a second mapping, based on (i) one or more content requests received at one or more marker clusters, and (ii) the first mapping, said second mapping being a mapping from at least said first plurality of content provider domain names to said first plurality of CDN domain names, wherein the second mapping is also determined based on at least correlating the first plurality of content provider domain names included in the one or more content requests received at the one or more marker clusters with the one or more marker clusters receiving such requests and using the first mapping to correlate the first plurality of content provider domain names to the first plurality of CDN domain names; and

(D) determining an amount of traffic or load associated with a particular domain name of said particular content provider; and

(E) based at least in part on said amount of traffic or load determined in (D) and the second mapping, modifying said binding of said first plurality of CDN domain names to corresponding CDN clusters.

2. The method of claim 1 , wherein said plurality of content provider domain names are mapped in a many-to-one relationship to said plurality of CDN hostnames.

3. The method of claim 1 , wherein said plurality of content provider domain names are mapped using canonical names (CNAMEs) to said plurality of CDN domain names.

4. The method of claim 1 , wherein each of said first plurality of CDN domain names has a corresponding unique identifier associated therewith.

5. The method of claim 4 , wherein a set of cluster/VIP pairs associated with each CDN domain name is determined based on a hash function applied to the unique identifier associated with that CDN domain name.

6. The method of claim 1 , wherein a set of cluster/VIP pairs associated with each CDN domain name is unique for each CDN domain name.

7. The method of claim 1 , wherein each CDN domain name has a unique VIP at each of a plurality of clusters.

8. The method of claim 1 , wherein the binding of said first plurality of CDN domain names to corresponding CDN clusters is maintained in a rendezvous system of said CDN.

9. The method of claim 1 , wherein, for said determining in (C), the one or more requests comprise one or more requests for content of said particular content provider.

10. The method of claim 1 , wherein said modifying in (E) increases the number of CDN clusters associated with a particular CDN domain name.

11. The method of claim 1 , wherein said modifying in (E) decreases the number of CDN clusters associated with a particular CDN domain name.

12. The method of claim 1 , wherein at least one of said CDN clusters comprises multiple marker clusters.

13. A nontransitory article of manufacture comprising a computer-readable medium having program instructions stored thereon, the program instructions, operable on a computer system in a content delivery network (CDN), said computer system implementing at least one content delivery (CD) service,

wherein said CD network (CDN) delivers content on behalf of multiple content providers, and

wherein a particular content provider of said multiple content providers has a first plurality of content provider domain names associated therewith, and wherein said CDN allocates a first plurality of CDN domain names to said particular content provider, and wherein said first plurality of content provider domain names are mapped to said first plurality of CDN domain names, wherein said CDN comprises a plurality of CDN clusters, and wherein at least some of said CDN clusters are marker clusters,

wherein execution of the program instructions by one or more processors of said computer system causes the one or more processors to carry out the acts of:

(A) maintaining a binding of said first plurality of CDN domain names to corresponding CDN clusters, wherein each of said first plurality of CDN domain names is bound to at least one CDN cluster;

(B) maintaining, for at least some of said marker clusters, a first mapping; and then

(C) determining a second mapping, based on (i) one or more content requests received at one or more marker clusters, and (ii) the first mapping, said second mapping being a mapping from at least said first plurality of content provider domain names to said first plurality of CDN domain names, wherein the second mapping is also determined based on at least correlating the first plurality of content provider domain names included in the one or more content requests received at the one or more marker clusters with the one or more marker clusters receiving such requests and using the first mapping to correlate the first plurality of content provider domain names to the first plurality of CDN domain names; and

(D) determining an amount of traffic or load associated with a particular domain name of said particular content provider; and

(E) based at least in part on said amount of traffic or load determined in (D) and the second mapping, modifying said binding of said first plurality of CDN domain names to corresponding CDN clusters.

14. The nontransitory article of manufacture of claim 13 , wherein said plurality of content provider domain names are mapped in a many-to-one relationship to said plurality of CDN hostnames.

15. The nontransitory article of manufacture of claim 13 , wherein said plurality of content provider domain names are mapped using canonical names (CNAMEs) to said plurality of CDN domain names.

16. The nontransitory article of manufacture of claim 13 , wherein each of said first plurality of CDN domain names has a corresponding unique identifier associated therewith.

17. The nontransitory article of manufacture of claim 16 , wherein a set of cluster/VIP pairs associated with each CDN domain name is determined based on a hash function applied to the unique identifier associated with that CDN domain name.

18. The nontransitory article of manufacture of claim 13 , wherein a set of cluster/VIP pairs associated with each CDN domain name is unique for each CDN domain name.

19. The nontransitory article of manufacture of claim 13 , wherein each CDN domain name has a unique VIP at each of a plurality of clusters.

20. The nontransitory article of manufacture of claim 13 , wherein the binding of said first plurality of CDN domain names to corresponding CDN clusters is maintained in a rendezvous system of said CDN.

21. The nontransitory article of manufacture of claim 13 , wherein, for said determining in (C), the one or more requests comprise one or more requests for content of said particular content provider.

22. The nontransitory article of manufacture of claim 13 , wherein at least one of said CDN clusters comprises multiple marker clusters.

23. A device in a content delivery network (CDN), wherein said CDN delivers content on behalf of at least one content provider, said device implementing a content delivery (CD) service, wherein said CD network (CDN) delivers content on behalf of multiple content providers, and wherein a particular content provider of said multiple content providers has a first plurality of content provider domain names associated therewith, and wherein said CDN allocates a first plurality of CDN domain names to said particular content provider, and wherein said first plurality of content provider domain names are mapped to said first plurality of CDN domain names, wherein said CDN comprises a plurality of CDN clusters, and wherein at least some of said CDN clusters are marker clusters, wherein the device comprises:

at least one processor; and

memory, operatively connected to the at least one processor storing instructions that, when executed by the at least one processor, cause the device to:

(a) maintain a binding of said first plurality of CDN domain names to corresponding CDN clusters, wherein each of said first plurality of CDN domain names is bound to at least one CDN cluster;

(b) maintain, for at least some of said marker clusters, a first mapping; and then

(c) determine a second mapping, based on (i) one or more content requests received at one or more marker clusters, and (ii) the first mapping, said second mapping being a mapping from at least said first plurality of content provider domain names to said first plurality of CDN domain names, wherein the second mapping is also determined based on at least correlating the first plurality of content provider domain names included in the one or more content requests received at the one or more marker clusters with the one or more marker clusters receiving such requests and using the first mapping to correlate the first plurality of content provider domain names to the first plurality of CDN domain names; and

(d) determine an amount of traffic or load associated with a particular domain name of said particular content provider; and

(e) based at least in part on said amount of traffic or load determined in (D) and the second mapping, modify said binding of said first plurality of CDN domain names to corresponding CDN clusters.

24. The device of claim 23 , wherein said plurality of content provider domain names are mapped in a many-to-one relationship to said plurality of CDN hostnames.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 9, 2024
From: LEVEL 3 COMMUNICATIONS, LLC
To: SANDPIPER CDN, LLC
Reel/Frame 068256/0091 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 27, 2020
From: NEWTON, CHRISTOPHER
To: LEVEL 3 COMMUNICATIONS, LLC
Reel/Frame 052764/0834 →
Continuity (2)
Continuation 15721500 · Sep 29, 2017
Related Publication 20200287864A1 · Sep 10, 2020
Cited By (1)
US 12,457,192