Scalable content delivery network request handling mechanism with support for dynamically-obtained content policies

US10257318B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-10257318-B2
Application numberUS-201715473279-A
CountryUS
Kind codeB2
Filing dateMar 29, 2017
Priority dateDec 21, 2012
Publication dateApr 9, 2019
Grant dateApr 9, 2019

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Described herein are improved systems, methods, and devices for delivering and managing metadata in a distributed computing platform such as a content delivery network (CDN) so as to configure content servers to handle client requests. The teachings hereof provide, among other things, scalable and configurable solutions for delivering and managing metadata, preferably by leveraging dynamically obtained control information. For example, in one embodiment, a given content server may store metadata, e.g., in a configuration file, that references dynamic, late-bound control information for use in satisfying dependencies. This dynamic control information can be requested by the CDN content server, typically from a remote host, when needed to parse and execute the metadata.

First claim

Opening claim text (preview).

The invention claimed is: 1. An apparatus comprising: a content delivery network (CDN) server operated by a CDN service provider, the CDN server having circuitry forming one or more processors coupled to memory storing non-transitory computer-program instructions to be executed by the one or more processors to cause the CDN server to: receive a first request from a client device over a network interface, the first request being a request for particular content; associate the first request with a particular configuration selected from a plurality of configurations stored at the CDN server, based at least in part on a hostname in the first request, the particular configuration being associated with a cloud service provider distinct from the CDN service provider, the cloud service provider being at least one of: an infrastructure as a service (IaaS) provider, a platform as a service (PaaS) provider, a software as a service (SaaS) provider; identify, within the particular configuration, a reference to dynamic control information; at the time of the first request, and in response to receipt of the first request and the identification of the reference to the dynamic control information, extract an identifier from the first request, the identifier corresponding to a customer of the cloud service provider, and send a second request that includes the identifier to a remote host to retrieve the dynamic control information; receive the dynamic control information from the remote host in response to the second request, wherein the dynamic control information comprises code with one or more logical conditions for the CDN server to evaluate; in response to receipt of the dynamic control information, evaluate the code, said evaluation resulting in at least one of: (i) a value for a variable declared in the particular configuration and (ii) a determination whether to perform an action declared in the particular configuration; apply the particular configuration to determine how to handle the first request, said application including using at least one of (iii) the value for the variable and (iv) the determination whether to perform the action; and, handling the first request in accord with the application of the particular configuration. 2. The apparatus of claim 1 , wherein the code defines one or more categories of client-server traffic to which the dynamic control information applies. 3. The apparatus of claim 1 , wherein the dynamic control information is a content policy. 4. The apparatus of claim 1 , wherein the dynamic control information is defined by the cloud service provider. 5. The apparatus of claim 1 , wherein the first request comprises an HTTP request and the CDN server comprises an HTTP proxy server. 6. The apparatus of claim 1 , wherein the identifier extracted from the first request comprises at least one of: at least part of a URI, and at least part of a hostname. 7. The apparatus of claim 1 , wherein said evaluation of the code results in (i) a value for a variable declared in the particular configuration, and wherein the application of the particular configuration to determine how to handle the first request includes using (iii) the value for the variable. 8. The apparatus of claim 1 , wherein said evaluation of the code results in (ii) a determination whether to perform an action declared in the particular configuration, and wherein the application of the particular configuration to determine how to handle the first request includes using (iv) the determination whether to perform the action. 9. The apparatus of claim 1 , wherein said evaluation of the code results in (ii) a determination whether to perform an action declared in the particular configuration, and the determination is a true or false response from the code. 10. A method performed by a content delivery network (CDN) server operated by a CDN service provider, the method comprising: receiving a first request from a client device over a network interface, the first request being a request for particular content; associating the first request with a particular configuration selected from a plurality of configurations stored at the CDN server, based at least in part on a hostname in the first request, the particular configuration being associated with a cloud service provider distinct from the CDN service provider, the cloud service provider being at least one of: an infrastructure as a service (IaaS) provider, a platform as a service (PaaS) provider, a software as a service (SaaS) provider; identifying, within the configuration, a reference to dynamic control information; at the time of the first request, and in response to receipt of the first request and the identification of the reference to the dynamic control information, extracting an identifier from the first request, the identifier corresponding to a customer of the cloud service provider, and sending a second request that includes the identifier to a remote host to retrieve the dynamic control information; receiving the dynamic control information from the remote host, in response to the second request, wherein the dynamic control information comprises code with one or more conditions for the CDN server to evaluate; in response to receipt of the dynamic control information, evaluating the code in the dynamic control information, said evaluation resulting in at least one of: (i) a value for a variable declared in the particular configuration and (ii) a determination whether to perform an action declared in the particular configuration; applying the particular configuration to determine how to handle the first request, said application including using at least one of (iii) the value for the variable and (iv) the determination whether to perform the action; and, handling the first request in accord with the application of the particular configuration. 11. A system comprising: a content delivery network (CDN) server operated by a CDN service provider, the CDN server having circuitry forming one or more processors coupled to memory storing non-transitory computer-program instructions to be executed by the one or more processors to cause the CDN server to: receive a first request from a client device over a network interface, the first request being a request for particular content; associate the first request with a particular configuration selected from a plurality of configurations stored at the CDN server, based at least in part on a hostname in the first request, the particular configuration being associated with a cloud service provider distinct from the CDN service provider, the cloud service provider being at least one of: an infrastructure as a service (IaaS) provider, a platform as a service (PaaS) provider, a software as a service (SaaS) provider; identify, within the configuration, a reference to dynamic control information; at the time of the first request, and in response to receipt of the first request and the identification of the reference to the dynamic control information, extract an identifier from the first request, the identifier corresponding to a customer of the cloud service provider, and send a second request that includes the identifier to a remote host to retrieve the dynamic control information; receive the dynamic control information from the remote host, in response to the second request, wherein the dynamic control information comprises code with one or more conditions for the CDN server to evaluate; in response to receipt of the dynamic control information, evaluate the code in the dynamic control information, said evaluation resulting in at least one of: (i) a value for a variable declared in the particular configuration and (ii) a

Assignees

Inventors

Classifications

  • wherein the managed service relates to media content delivery, e.g. audio, video or TV · CPC title

  • Configuration setting · CPC title

  • for authentication of entities (cryptographic mechanisms or cryptographic arrangements for entity authentication H04L9/32) · CPC title

  • based on web technology, e.g. hypertext transfer protocol [HTTP] · CPC title

  • Service on demand, e.g. definition and deployment of services in real time · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US10257318B2 cover?
Described herein are improved systems, methods, and devices for delivering and managing metadata in a distributed computing platform such as a content delivery network (CDN) so as to configure content servers to handle client requests. The teachings hereof provide, among other things, scalable and configurable solutions for delivering and managing metadata, preferably by leveraging dynamically …
Who is the assignee on this patent?
Akamai Tech Inc
What technology area does this patent fall under?
Primary CPC classification H04L41/5051. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue Apr 09 2019 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 2 related publications on this page (citations in our corpus or others sharing the same primary CPC).