IP Library Granted Patent US 9,253,255
Granted Patent B1
US 9,253,255 · App. 14/562,052 · Granted Feb 2, 2016

Content delivery network referral

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,253,255
App. No.
14/562,052
Granted
Feb 2, 2016
Kind
B1
Abstract

In general, techniques are described for managing content request referrals by keying content requests to a composite key data structure that maps end-user address prefixes and content identifiers to content delivery network servers of downstream CDNs. In one example, a CDN exchange includes a communication module to receive first network prefixes and first content identifiers from a first secondary content delivery network and to receive second network prefixes and second content identifiers from a second secondary content delivery network. A request router of the CDN exchange redirects the content request to the first secondary content delivery network or to the second secondary content delivery network according to a network address of the end user device and a content identifier for the content request.

Claims (60)

1. A method comprising:

executing, by a network device, a routing protocol process and an application process;

invoking, by the application process, an interface of the routing protocol process to dynamically register a transmit interface of the routing protocol process for sending application data using routing protocol advertisements associated with a code point, wherein the code point identifies a routing information base for a layer 3 routing protocol;

receiving, by the routing protocol process from the application process via the transmit interface, application data for the application process; and

sending, by the routing protocol process to a peer network device, a routing protocol advertisement that conforms to the routing protocol and that includes the application data for the application process, wherein the routing protocol advertisement specifies an application identifier associated with the transmit interface that enables the peer network device to determine a corresponding receive interface of the peer network device for the transmit interface.

2. The method of claim 1 ,

wherein the routing protocol comprises a multiprotocol border gateway protocol (MP-BGP), and

wherein the code point of the routing protocol comprises a combination of an Address Family Identifier and a Supplemental Address Family Identifier that identifies the routing information base of a plurality of routing information bases stored by the network device.

3. The method of claim 1 ,

wherein the routing protocol advertisement comprises a MP-BGP UPDATE message, and

wherein the application identifier comprises an application identifier tag that is associated with the transmit interface and identifies, in the MP-BGP UPDATE message, a Network Layer Reachability Information (NLRI) defined by the application process.

4. The method of claim 1 , wherein the NLRI defined by the application process comprises an opaque NLRI within a MP-REACH-NLRI of the MP-BGP UPDATE message.

5. The method of claim 1 , wherein invoking the interface of the routing protocol process comprises sending, by the application process to the routing protocol process, an identifier for the code point and the application identifier.

6. The method of claim 5 ,

wherein the application process comprises a first application process,

wherein the application identifier comprises a first application identifier,

wherein the transmit interface comprises a first transmit interface, and

wherein the routing protocol advertisement comprises a first routing protocol advertisement, the method further comprising:

invoking, by a second application process executing on the network device, the interface of the routing protocol process to dynamically register a second transmit interface for the code point that identifies the routing information base for the routing protocol;

receiving, by the routing protocol process from the second application process via the second transmit interface, application data for the second application process; and

sending, by the routing protocol process to the peer network device, a second routing protocol advertisement that conforms to the routing protocol and that includes the application data for the second application process, wherein the second routing protocol advertisement specifies a second application identifier associated with the second transmit interface that enables the peer network device to determine a corresponding receive interface of the peer network device for the second transmit interface.

7. The method of claim 1 , wherein the routing protocol advertisement comprises a first routing protocol advertisement, the method further comprising:

receiving, by the routing protocol process, a second routing protocol advertisement that conforms to the routing protocol and includes received application data; and

sending, by the routing protocol process to the application process in response to determining the second routing protocol advertisement specifies the application identifier, the received application data.

8. The method of claim 1 , wherein the application data comprises content delivery network (CDN) interconnection application data.

9. The method of claim 8 , wherein the network device comprises a CDN exchange configured to operate as a trusted intermediary between one or more secondary CDNs and a primary CDN for the secondary CDNs.

10. A network device comprising:

a control unit comprising a hardware-based processor;

a routing protocol process configured for execution by the control unit;

an application process configured for execution by the control unit to invoke an interface of the routing protocol process to dynamically register a transmit interface of the routing protocol process for sending application data using routing protocol advertisements associated with a code point, wherein the code point identifies a routing information base for a layer 3 routing protocol,

wherein the routing protocol process is configured to receive, from the application process via the transmit interface, application data for the application process,

wherein the routing protocol process is configured to send, to a peer network device, a routing protocol advertisement that conforms to the routing protocol and that includes the application data for the application process, wherein the routing protocol advertisement specifies an application identifier associated with the transmit interface that enables the peer network device to determine a corresponding receive interface of the peer network device for the transmit interface.

11. The network device of claim 10 ,

wherein the routing protocol comprises a multiprotocol border gateway protocol (MP-BGP), and

wherein the code point of the routing protocol comprises a combination of an Address Family Identifier and a Supplemental Address Family Identifier that identifies the routing information base of a plurality of routing information bases stored by the network device.

12. The network device of claim 10 ,

wherein the routing protocol advertisement comprises a MP-BGP UPDATE message, and

wherein the application identifier comprises an application identifier tag that is associated with the transmit interface and identifies, in the MP-BGP UPDATE message, a Network Layer Reachability Information (NLRI) defined by the application process.

13. The network device of claim 10 , wherein the NLRI defined by the application process comprises an opaque NLRI within a MP-REACH-NLRI of the MP-BGP UPDATE message.

14. The network device of claim 10 , wherein to invoke the interface of the routing protocol process the application process is further configured to send, by the application process to the routing protocol process, an identifier for the code point and the application identifier.

15. The network device of claim 14 ,

wherein the application process comprises a first application process,

wherein the application identifier comprises a first application identifier,

wherein the transmit interface comprises a first transmit interface, and

wherein the routing protocol advertisement comprises a first routing protocol advertisement, the network device further comprising:

a second application process configured for execution by the control unit to invoke the interface of the routing protocol process to dynamically register a second transmit interface for the code point that identifies the routing information base for the routing protocol,

wherein the routing protocol process is further configured to receive, from the second application process via the second transmit interface, application data for the second application process; and

wherein the routing protocol process is further configured to send, to the peer network device, a second routing protocol advertisement that conforms to the routing protocol and that includes the application data for the second application process, and

wherein the second routing protocol advertisement specifies a second application identifier associated with the second transmit interface that enables the peer network device to determine a corresponding receive interface of the peer network device for the second transmit interface.

16. The network device of claim 10 ,

wherein the routing protocol advertisement comprises a first routing protocol advertisement,

wherein the routing protocol process is further configured to receive a second routing protocol advertisement that conforms to the routing protocol and includes received application data, and

wherein the routing protocol process is further configured to send, to the application process in response to determining the second routing protocol advertisement specifies the application identifier, the received application data.

17. The network device of claim 10 , wherein the application data comprises content delivery network (CDN) interconnection application data.

18. The network device of claim 17 , wherein the network device comprises a CDN exchange configured to operate as a trusted intermediary between one or more secondary CDNs and a primary CDN for the secondary CDNs.

19. A non-transitory computer-readable medium comprising instructions for causing one or more programmable processors of a network device to:

execute a routing protocol process and an application process;

invoke, by the application process, an interface of the routing protocol process to dynamically register a transmit interface of the routing protocol process for sending application data using routing protocol advertisements associated with a code point, wherein the code point identifies a routing information base for a layer 3 routing protocol;

receive, by the routing protocol process from the application process via the transmit interface, application data for the application process; and

send, by the routing protocol process to a peer network device, a routing protocol advertisement that conforms to the routing protocol and that includes the application data for the application process, wherein the routing protocol advertisement specifies an application identifier associated with the transmit interface that enables the peer network device to determine a corresponding receive interface of the peer network device for the transmit interface.

Assignments (1)
NUNC PRO TUNC ASSIGNMENT Recorded May 6, 2026
From: JUNIPER NETWORKS, INC.
To: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP
Reel/Frame 075513/0034 →