Apparatus and methods for packetized content routing and delivery
Apparatus and methods for managing content delivery in a packetized network. In one embodiment, the network provide content to a plurality of clients via a plurality of nodes and origin points, and resources are discreetly represented (e.g., with IP addresses, such as those afforded under the IPv6 protocol) to allows for direct advertisement of resources. Exemplary solutions described herein further advantageously leverage extant architectures and protocols (such as BGP), and make use of a common control plane, which can be utilized for example by different content delivery network (CDN) operators and different delivery components to advertise resources. Internally within a given CDN, increased granularity of resource addressing and advertisement may provide benefits including: (i) resource affinity; (ii) resource-level balancing; (iii) dynamic resource scoping; and (iv) “zero-touch” provisioning and resource relocation.
1 . A computerized method of de-aggregating a plurality of addresses, the computerized method comprising:
receiving, at one or more border nodes of a first network, one or more sets of aggregated addresses from one or more border nodes of a second network, wherein addresses of the one or more sets of aggregated addresses are associated with respective origin server apparatus of the second network where respective resources associated with the addresses are located;
de-aggregating at least a portion of the one or more sets of aggregated addresses to separate a plurality of individual addresses therefrom; and
assigning at least one prefix of one or more of the plurality of individual addresses to an edge node of the first network, the assigning enabling the edge node of the first network to backfill one or more respective resources associated with the one or more of the plurality of individual addresses.
2 . The computerized method of claim 1 , wherein the receiving of the one or more sets of aggregated addresses comprises receiving a plurality of aggregated Internet Protocol version 6 (IPv6) addresses.
3 . The computerized method of claim 1 , wherein the de-aggregating of the at least portion of the one or more sets of aggregated addresses comprises limiting the de-aggregating to de-aggregating only a prescribed number of addresses from the one or more sets of aggregated addresses.
4 . The computerized method of claim 3 , wherein the de-aggregating of only the prescribed number of addresses from the one or more sets of aggregated addresses comprises applying an upper boundary of specificity to eBGP sessions so as to limit routing table pollution.
5 . The computerized method of claim 3 , further comprising dynamically varying the prescribed number of addresses from the one or more sets of aggregated addresses of which to de-aggregate.
6 . The computerized method of claim 1 , further comprising advertising all routes of the second network and associated with the one or more sets of aggregated addresses to a mid-tier node of the first network, the advertising enabling the mid-tier node to forward requests to the second network for the one or more respective resources associated with the one or more of the plurality of individual addresses based on a failure or outage of the edge node of the first network.
7 . The computerized method of claim 6 , wherein the advertising comprises advertising according to a border gateway protocol (BGP).
8 . Computer readable apparatus comprising a non-transitory storage medium having at least one computer program stored thereon, the at least one computer program comprising a plurality of instructions configured to, when executed on a digital processing device, cause a border node apparatus of a resource route (RR)-enabled network to:
receive, from an edge node of a non-RR network, data representative of a first request for at least one resource, the at least one resource disposed on the RR-enabled network;
based on receipt of the data representative of the first request, transmit data representative of a second request to a resource route (RR) mapping process, the data representative of the second request relating to a request for a network address associated with the at least one resource;
receive, from the RR mapping process, a first data communication, the first data communication comprising data indicating the network address; and
utilize the network address to backfill the at least one resource from an origin server apparatus of the RR-enabled network.
9 . The computer readable apparatus of claim 8 , wherein the receipt, from the edge node of the non-RR network, of the data representative of the first request for the at least one resource comprises receipt of an HTTP GET request issued to an anycast address associated with the RR mapping process.
10 . The computer readable apparatus of claim 8 , wherein the network address comprises Internet Protocol version 6 (IPv6) address.
11 . The computer readable apparatus of claim 8 , wherein the receipt, from the RR mapping process, of the first data communication comprises receipt of an HTTP redirect from a mapping node.
12 . The computer readable apparatus of claim 8 , wherein the utilization of the network address to backfill the at least one resource from the origin server apparatus of the RR-enabled network comprises:
utilize the network address to (i) perform an IP route lookup routine, and (ii) based on the IP route lookup routine, identify a selected route from the origin server apparatus of the RR-enabled network; and
send an HTTP GET request to an IP address of the origin server apparatus for backfill fulfillment of the at least one resource.
13 . The computer readable apparatus of claim 8 , wherein the receipt, from the edge node of the non-RR network, of the data representative of the first request for the at least one resource comprises receipt of a single message of an aggregated number of addresses.
14 . The computer readable apparatus of claim 8 , wherein the RR-enabled network comprises a managed network operated by a multiple systems operator (MSO), and the non-RR network comprises a third-party network not managed by the MSO.
15 . The computer readable apparatus of claim 8 , wherein the RR-enabled network comprises a control plane and a data plane, and the RR mapping process operates on the control plane only, such that the RR mapping process does not need to support demands of the data plane.
16 . Computer readable apparatus comprising a non-transitory storage medium having at least one computer program stored thereon, the at least one computer program comprising a plurality of instructions configured to, when executed on a digital processing device, cause an edge node apparatus of a resource route (RR)-enabled network to:
transmit, to a server apparatus of a non-RR network, data representative of a first request for a network address associated with at least one resource disposed on the non-RR network;
receive, from the server apparatus of the non-RR network, data representative of a first response to the first request, the data representative of the first response comprising the network address;
utilize the data representative of the first response to identify at least one of an edge node apparatus of the non-RR network or an origin server apparatus of the non-RR network; and
enable backfill of the at least one resource from the non-RR network from the at least one of the edge node apparatus of the non-RR network or the origin server apparatus of the non-RR network.
17 . The computer readable apparatus of claim 16 , wherein the utilization of the data representative of the first response to identify the at least one of the edge node apparatus of the non-RR network or the origin server apparatus of the non-RR network comprises utilization of at least one of (i) a DNS (domain name system) lookup or HTTP (Hypertext Transfer Protocol) redirect operation, to identify the at least one of the edge node apparatus or the origin server apparatus of the non-RR network.
18 . The computer readable apparatus of claim 17 , wherein the utilization of the at least one of (i) a DNS lookup or HTTP redirect operation comprises:
utilization of the DNS lookup to identify a redirector of the non-RR network and receive a HTTP redirect from the redirector; and
utilization of the HTTP redirect to identify the edge node apparatus of the non-RR network.
19 . The computer readable apparatus of claim 16 , wherein the RR-enabled network comprises a managed network operated by a multiple systems operator (MSO), and the non-RR network comprises a third-party network not managed by the MSO.