×

Responsibility-based request processing

  • US 9,787,551 B2
  • Filed: 03/13/2013
  • Issued: 10/10/2017
  • Est. Priority Date: 12/13/2012
  • Status: Active Grant
First Claim
Patent Images

1. A computer-implemented method, operable in a in a content delivery (CD) network comprising multiple service endpoints, said service endpoints running on a plurality of devices, wherein said multiple service endpoints form multiple sub-clusters, wherein two or more of said sub-clusters form a super-cluster, and wherein the content delivery network (CDN) delivers content on behalf of one or more subscribers to the CDN, the method operable on a device comprising hardware including memory and at least one processor, the method comprising:

  • (A) defining a group from an arbitrary set of nodes comprising CD service instances across the machines of said multiple sub-clusters, wherein said group comprises a peer group, and wherein the nodes in each sub-cluster share a corresponding internal network address space, and wherein each sub-cluster is addressable by a single external address, and wherein each node in the group has a set of capabilities and a corresponding capacity for each capability the node'"'"'s set of capabilities, and wherein each node in the group assumes one or more discrete responsibilities involved in processing of a request across the group, wherein said discrete responsibilities are taken from the list comprising;

    non-responsible, cache-responsible, and fill-responsible, and wherein defining of the group is according to a peering policy at least based on capabilities and capacities of nodes in the group, wherein said peering policy maps different request types to different responsibility chains, and wherein, for at least one particular responsibility of said discrete responsibilities, multiple nodes in said group are capable of assuming said particular responsibility, and wherein the capacity of each particular node in the group represents said particular node'"'"'s relative capacity to fulfill said one or more discrete responsibilities compared to other nodes with the same one or more discrete responsibilities;

    (B) in response to a request made at a node the group, said request being associated with content of a subscriber to the CDN,(B)(1) dynamically determining a CD service type of the request, said determining being based on whether said content is rejectable, redirectable, or servable; and

    (B)(2) based on the CD service type of the request, selecting one or more nodes in said group to be responsible for processing said request; and

    (C) automatically redefining the group defined in (A) based on a change in capability or capacity of one or more nodes in the group, wherein the group as redefined in (C) is distinct from the group as defined in (A).

View all claims
  • 1 Assignment
Timeline View
Assignment View
    ×
    ×