×

Scalable content delivery network request handling mechanism to support a request processing layer

  • US 9,509,804 B2
  • Filed: 12/19/2013
  • Issued: 11/29/2016
  • Est. Priority Date: 12/21/2012
  • Status: Active Grant
First Claim
Patent Images

1. A system, comprising:

  • a first server managed by a content delivery network (CDN) service provider and comprising circuitry forming one or more processors coupled to memory holding non-transitory computer-program instructions to be executed by the one or more processors to cause the first server to;

    receive a first request from a client device over a network interface, the first request comprising an application programming interface (API) request;

    in response to the first request, determine a configuration file stored at the first server to apply for handling the request, the configuration file defining any of;

    recognized API endpoints and request forwarding instructions;

    identify, within the configuration file, a content control that indicates how to handle the first request from within a set of content controls stored at the first server in the configuration file;

    wherein the content control has a reference to an API endpoint content policy that controls, at least, request validation;

    extract an identifier from the first request, the extracted identifier comprising any of (i) at least part of a URI, (ii) at least part of a hostname, and (iii) at least part of a request header field;

    in response to the identification of the content control with the reference to the API endpoint content policy, send a second request that includes the extracted identifier to a remote host for the API endpoint content policy;

    receive the API endpoint content policy from the remote host in response to the second request, the API endpoint content policy comprising at least one of;

    (iv) an API resource model, and (v) an algorithm to compare the first request to an API resource model;

    wherein the API resource model comprises at least one of;

    (vi) designation of supported request methods, (vii) designation of valid URI path, (viii) designation of a valid URL query parameter resource, (ix) designation of arguments, parameters, or data necessary in requests;

    (x) designation of a parameter or limit specified for a user;

    apply the content control to the request at least by applying the API endpoint content policy to determine whether the first request conforms to the API resource model;

    after applying the content control and the API endpoint content policy, send at least a portion of the first request to a second server, the second server being an API origin for the API;

    the remote host comprising circuitry forming one or more processors coupled to memory holding non-transitory computer-program instructions to be executed by the one or more processors to cause the remote host to;

    receive the second request from the first server, with the extracted identifier;

    based at least in part on the extracted identifier, select the API endpoint content policy from amongst a plurality of API endpoint content policies stored at the remote host;

    send the API endpoint content policy to the first server, in response to the second request;

    wherein the first server is one of a plurality of distributed CDN servers, the first request is for a service accessible via the API, and the service enables any of;

    (i) interaction with a multi-tenant storage system operated by the CDN service provider on behalf of content providers, (ii) interaction with a multi-tenant computing system operated by the CDN service provider on behalf of content providers, and (iii) configuration by a CDN user of a CDN content delivery service, said configuration comprising configuration of CDN features and services for delivering any of a website and a web application on the CDN user'"'"'s behalf over the CDN.

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