Abstract:
Aspects of the present disclosure involve provisioning customers of an aggregator, such as a reseller, of a content delivery network (CDN). In one aspect, content requests to the CDN are processed in accordance with the virtual IP (VIP) address at which the request was received, according to a property template bound to the VIP where the template is selected by the customer and only involves discrete parameters for the reseller. In another aspect, cache fills of the network are processed without direct knowledge of the customer origin through a combination of some request attribute, e.g., alias host of the customer, and an attribute of the reseller to make a DNS request to a name server outside the CDN. Another aspect involves receiving a property template selection, an origin and an alias from a customer of the reseller, and providing appropriate DNS entries to validate the customer and provide origin information to the CDN.
Abstract:
A computer-implemented method is operable in a content delivery framework having a network comprising multiple service endpoints running on a plurality of devices. A plurality of the service endpoints comprise a peer group. Each node in the peer group has at least one kind of responsibility. The method includes receiving a request at a first node in the peer group, wherein the nodes in the peer group are ranked hierarchically, and wherein the first node has a first rank in the peer group; and, based on a kind of responsibility the first node has for the request, attempting to process the request using a second node in the peer group, wherein the second node has a second rank in the peer group distinct from the first rank of the first node.
Abstract:
A computer-implemented method includes providing, at a first time and to a first group of CD services in a CDN, invalidation information relating to at least one resource; and providing the invalidation information, at a second time distinct from the first time and to a second group of CD services in the CDN, the second group of CD services being substantially distinct from the first group of CD services.
Abstract:
A framework supporting content delivery and comprising a plurality of devices, each device configured to run at least one content delivery (CD) service of a plurality of CD services, wherein the plurality of CD services comprise: collector services, reducer services, fill services, and control services; and wherein at least some of the plurality of devices run fill services, and wherein the fill services running on the at least some of the plurality of devices comprise at least one fill services network. At least one the fill service is configured to obtain resources on behalf of other CD services in the CDN.
Abstract:
A framework supporting content delivery and comprising a plurality of devices, each device configured to run at least one content delivery (CD) service of a plurality of CD services, wherein the plurality of CD services comprise: collector services, reducer services, origin services, and control services; and wherein at least some of the plurality of devices run origin services, and wherein the origin services running on the at least some of the plurality of devices comprise at least one origin services network. At least one origin service is configured to provide persistent origin that is locally and/or globally addressable.
Abstract:
A computer-implemented method operable in a content delivery service (CDN), includes, by a collector system: receiving multiple event streams of event data, said multiple event streams comprising event data from a plurality of CD services in said CDN, each event of said event streams comprising: (i) a timestamp for said event, (ii) information relating to said event; and producing state data relating to information represented in said event data of said multiple event streams while being able to asynchronously respond to queries relating to said state data.
Abstract:
A content delivery network (CDN) includes a single autonomous CDN partitioned into multiple virtual CDNs, the multiple virtual CDNs being organized into a CDN hierarchy. Each virtual CDN is allocated separate physical resources. Within the CDN hierarchy, at least one parent virtual CDN has at least one child virtual CDN. A parent virtual CDN grants at least one privilege to at least one child virtual CDN.
Abstract:
A method in a content delivery framework includes, at a first service, receiving invalidation information relating to at least one resource; invalidating the at least one resource; and then, when the at least one resource has been invalidated at the first service, providing first information about the invalidating to a collector system. At a second service distinct from the first service, receiving the invalidation information relating to the at least one resource; invalidating the at least one resource at the second service; and then, when the at least one resource has been invalidated at the second service, providing second information about the invalidating at the second service to the collector system.
Abstract:
A method includes maintaining first and second mapping data. The first mapping data is from canonical names (CNAMEs) to binding names (BNAMEs), and the second mapping data is from BNAMEs to address information. The method includes using the first mapping data to map a canonical name to a binding name; and then using the second mapping data to map the binding name to corresponding address information.
Abstract:
A method is operable in a network comprising multiple service endpoints, the service endpoints running on a plurality of devices, wherein the multiple service endpoints form one or more sub-clusters. The method includes defining a group from an arbitrary set of nodes comprising service instances across the machines of the one or more sub-clusters, wherein each node in the group assumes one or more discrete responsibilities involved in processing of a request across the group. In response to a request made at a node the group, the service type of the request is dynamically determined; and, based on the type of the request, one or more nodes in the group are selected to be responsible for processing the request.