IP Library Granted Patent US 9,548,874
Granted Patent B2
US 9,548,874 · App. 13/707,874 · Granted Jan 17, 2017

Selecting a content delivery network

Inventors: Brian W. Joe (West New York, NY); Dante John Pacella (Charles Town, WV); Matthew John Threefoot (Columbia, MD); Takkin G. Yum (Briarcliff Manor, NY)
Assignee: Verizon Patent and Licensing Inc.
H04L12/5689H04L61/1511H04L67/06H04L67/18
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,548,874
App. No.
13/707,874
Granted
Jan 17, 2017
Kind
B2
Abstract

A device may receive a content distribution network (CDN) routing table from a topology manager; receive a request, from a device in either of a redirect CDN or a domain name system (DNS), to identify a target CDN for sending content to a user device; perform a lookup in the CDN routing table, based on information provided by the device and CDN selection policies, to select the target CDN; obtain an identifier corresponding to the target CDN as a result of performing the lookup; and provide the identifier to the device.

Claims (86)

1. A system comprising:

a topology manager configured to:

receive configuration information for collecting network data;

receive the network data from data collection components; and

receive a list of content distribution networks (CDNs) from an administration device; and

a request router to:

receive a CDN routing table from the topology manager, wherein the CDN routing table includes the list of CDNs;

receive a request, from a device in one of a redirect CDN or a domain name system (DNS), to identify a target CDN, from the list of CDNs, for sending content to a user device;

perform a lookup in the CDN routing table, based on information provided by the device and CDN selection policies provided by the topology manager, to select the target CDN;

obtain an identifier corresponding to the target CDN as a result of performing the lookup; and

provide the identifier to the device.

2. The system of claim 1 , wherein the device includes one of:

a DNS server device; or a host device that includes a web server.

3. The system of claim 1 , wherein the user device includes one of:

a tablet device; a smart phone; a lap top computer; a personal computer; or a game console.

4. The system of claim 1 , wherein the identifier corresponding to the target CDN includes:

an universal resource identifier (URI); or

an Internet Protocol (IP) address.

5. The system of claim 1 , wherein the request includes:

an Internet Protocol (IP) address of the user device; or

an Internet Protocol (IP) address of a DNS server in the DNS.

6. The system of claim 1 , wherein the request provided by the device further includes:

a point of presence (POP) information; or

information identifying a network to which the user device belongs.

7. The system of claim 1 , wherein the device is configured to:

send a CNAME record that includes the identifier to another device; or

send a hypertext transfer protocol (HTTP) 302 redirect response to the user device.

8. The system of claim 1 , wherein the network data includes:

simple network management protocol (SNMP) data; or

traffic data.

9. The system of claim 1 , wherein the topology manager is further configured to obtain topology maps, and

wherein the topology maps include one or more of:

a virtual private network (VPN) topology map;

a multiprotocol label switched (MPLS) network topology map;

an autonomous system (AS) topology map;

a local network routing topology;

a global topology map of CDNs; or

a topology map of a CDN.

10. The system of claim 1 , wherein the topology manager is further configured to obtain the network data, and

wherein the network data includes at least one of:

aggregated traffic load on networks or virtual networks;

traffic loads between CDN devices;

load conditions on each of CDN devices;

bandwidth consumption of CDN traffic; or

bandwidth consumption of CDN traffic per each of differentiated services code point (DSCP) classes.

11. The system of claim 1 , wherein the topology manager is further configured to obtain the network data, and

wherein the network data includes at least one of:

a percentage of network input or output traffic between different content providers;

statistics on traffic between CDN devices; or

ingress and egress traffic as a function of time.

12. A method comprising:

receiving configuration information for collecting traffic data;

receiving the traffic data from network monitoring components;

receiving content distribution network (CDN) selection policies from a remote application;

generating a content distribution network (CDN) routing table based on the traffic data, wherein the CDN routing table includes a list of CDNs received from an administration device;

receiving a request, from a network device, to identify a target CDN, from the list of CDNs, for sending content to a user device;

performing a lookup in the CDN routing table, based on information provided by the network device and the CDN selection policies, to select the target CDN;

obtaining an identifier corresponding to the target CDN as a result of performing the lookup; and

providing a message that includes the identifier to the network device.

13. The method of claim 12 , wherein the network device includes:

a domain name system (DNS) server; or

a web server.

14. The method of claim 12 , wherein the CDN selection policies include:

a policy for selecting a CDN in a round robin fashion;

a policy for selecting a particular CDN when an Internet Protocol (IP) address provided in the request is one of a particular block of IP addresses;

a policy for selecting a particular CDN based on an identity of the particular CDN; or

a policy for selecting a particular CDN based on availability of the content at the particular CDN.

15. The method of claim 12 , wherein the request includes:

an Internet Protocol (IP) address of the user device; or

an Internet Protocol (IP) address of a DNS server in the DNS.

16. The method of claim 12 , wherein the network device is configured to:

send a CNAME record that includes the identifier to another device; or

send a hypertext transfer protocol (HTTP) 302 redirect response to the user device.

17. A non-transitory computer readable medium comprising computer-executable instructions for one or more processors, wherein when the one or more processors execute the instructions, the instructions cause the one or more processors to:

receive configuration information for collecting network data;

receive the network data from data collection components;

receive a CDN routing table from a topology manager, wherein the CDN routing table includes a list of CDNs received from an administration device;

receive a request, from a device in either of a redirect CDN or a domain name system (DNS), to identify a target CDN, from the list of CDNs, for sending content to a user device;

perform a lookup in the CDN routing table, based on information provided by the device and CDN selection policies provided by the topology manager, to select the target CDN;

obtain an identifier corresponding to the target CDN as a result of performing the lookup; and

provide the identifier to the device.

18. The non-transitory computer readable medium of claim 17 , further comprising instructions for further causing the one or more processors to determine at least one of:

traffic loads between CDN devices;

load conditions on each of CDN devices;

bandwidth consumption of CDN traffic; or

bandwidth consumption of CDN traffic per each of differentiated services code point (DSCP) classes.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 7, 2012
From: JOE, BRAIN W.; PACELLA, DANTE JOHN; THREEFOOT, MATTHEW JOHN; YUM, TAKKIN G.
To: VERIZON PATENT AND LICENSING INC.
Reel/Frame 029426/0335 →
Continuity (1)
Related Publication 20140164584A1 · Jun 12, 2014