IP Library Granted Patent US 11,991,259
Granted Patent B2
US 11,991,259 · App. 18/218,715 · Granted May 21, 2024

Uniformity of instructions for content requests and responses in a content delivery network

Inventors: William Crowder (Camarillo, CA); Daniel Jensen (Lake Balboa, CA); Pawel Jakobowski (Strzebowiska, PL); Laurence Lipstone (Calabasas, CA); William Power (Boulder, CO)
Assignee: Level 3 Communications, LLC
H04L67/568G06F15/17331H04L63/083H04L67/10
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,991,259
App. No.
18/218,715
Granted
May 21, 2024
Kind
B2
Abstract

Examples described herein relate to standardizing content requests and responses in a content delivery network (CDN). An edge node receives a control object including sets of instructions each implementing portions of a customer's business logic. The edge node may receive, from a client, a content request identifying a content item, and may apply a set of the instructions which causes the edge node to (i) determine whether any changes are needed for the benefit of a cache server and whether any changes are need for the benefit of an origin server, and (ii) generate a processed client request identifying the content item and including, if needed, any changes for the benefit of the cache server and the origin server. The edge node transmits the processed client request to the cache server, receives a response from the cache server, and transmits a processed client response to the client.

Claims (45)

1. A computer-implemented method for standardizing content requests and responses in a content delivery network (CDN), the computer-implemented method comprising:

receiving, by an edge node, a control object from a central authority, the control object comprising a client request sheet implementing at least a portion of a customer's business logic and an origin response sheet implementing at least a portion of the customer's business logic;

receiving, by the edge node, a content request from a client, the content request identifying a content item;

applying, by the edge node, the client request sheet responsive to the content request, the client request sheet causing the edge node to (i) determine any change to the content request is needed for the benefit of a cache server and any change to the content request is needed for the benefit of an origin server, and (ii) generate a processed client request identifying the content item and including any changes to the content request for the benefit of the cache server and the origin server;

transmitting, by the edge node, the processed client request to the cache server;

receiving, by the edge node, a response to the processed client request from the cache server;

transmitting, by the edge node, the processed client response to the client;

receiving, by a downstream computer, the origin response sheet;

applying, by the downstream computer, the origin response sheet responsive to the origin response, the origin response sheet causing that node to (i) determine any change to the origin response is needed for the benefit of the cache server and (ii) generate a processed origin response including the content item and any changes to the origin response for the benefit of the cache server;

receiving, by the cache server, the processed origin response;

transmitting to the edge node a cached processed origin response,

wherein the client request sheet further causes the edge node to (i) authenticate the client and (ii) indicate in the processed client request that the client is authenticated,

wherein, based on the processed client request indicating that the client is authenticated, neither the cache server nor the origin server performs an additional authentication of the client, and

wherein the cached processed origin response is identical to the processed origin response.

2. The computer-implemented method of claim 1 , further comprising:

receiving, by the cache server, the processed client request;

determining, by the cache server, whether the cache server stores the content item identified in the processed client request; and

based on the cache server determining that it does not store the content item, transmitting a post-cache processed client request to an upstream computer.

3. The computer-implemented method of claim 2 , further comprising:

receiving, by the upstream computer, the control object from the central authority and the post-cache processed client request from the cache server, the control object further comprising an origin request sheet implementing at least a portion of the customer's business logic;

applying, by the upstream computer, the origin request sheet responsive to the post-cache processed client request, the origin request sheet causing that node to (i) determine whether any change to the post-cache processed client request is needed for the benefit of the origin server and (ii) generate a processed origin request identifying the content item and including, if needed, any changes to the post-cache processed client request for the benefit of the origin server; and

transmitting, by the upstream computer, the processed origin request to the origin server.

4. The computer-implemented method of claim 3 , wherein the processed origin request is identical to the post-cache processed client request.

5. The computer-implemented method of claim 3 , wherein the processed origin request is identical to the processed client request.

6. The computer-implemented method of claim 3 ,

wherein the origin server generates an origin response including the content item identified in the processed origin request and transmits the origin response to the downstream computer.

7. The computer-implemented method of claim 1 , wherein:

the control object further comprises a client response sheet implementing at least a portion of the customer's business logic;

the response that the edge node receives to the processed client request comprises the cached processed origin response; and

the method further comprises applying, by the edge node, the client response sheet responsive to the cached processed origin response, the client response sheet causing the edge node to (i) determine any changes to the processed origin response are needed for the benefit of the client and (ii) generate the processed client response including the content item and, if needed, any changes to the processed origin response for the benefit of the client.

8. The computer-implemented method of claim 7 , wherein the processed client response is identical to the cached processed origin response.

9. The computer-implemented method of claim 7 , wherein the processed client response is identical to the processed origin response.

10. The computer-implemented method of claim 7 , wherein the processed client response is identical to the origin response.

11. A computer system comprising a processor, a storage device, and a network interface, the processor being configured to implement operations comprising:

receiving a control object from a central authority via the network interface, the control object comprising client request sheet implementing at least a portion of a customer's business logic and an origin response sheet implementing at least a portion of the customer's business logic, wherein a downstream computer receives the origin response sheet and applies the origin response sheet responsive to the origin response, the origin response sheet causing that node to (i) determine any change to the origin response is needed for the benefit of the cache server and (ii) generate a processed origin response including the content item and any changes to the origin response for the benefit of the cache server, wherein the cache server receives the processed origin response and transmits a cached process origin response to the computer system, and wherein the cached processed origin response is identical to the processed origin response;

storing the received control object in the storage device;

receiving a content request from a client, the content request identifying a content item;

applying the client request sheet responsive to the content request, the client request sheet causing the computer system to (i) determine any change to the content request is needed for the benefit of a cache server and any change to the content request is needed for the benefit of an origin server, and (ii) generate a processed client request identifying the content item and including any changes to the content request for the benefit of the cache server and the origin server;

transmitting the processed client request to the cache server;

receiving a response to the processed client request from the cache server;

transmitting a processed client response to the client,

wherein the client request sheet further causes the edge node to (i) authenticate the client and (ii) indicate in the processed client request that the client is authenticated,

wherein, based on the processed client request indicating that the client is authenticated, neither the cache server nor the origin server performs an additional authentication of the client.

12. The computer system of claim 11 , wherein the processed client response is identical to the processed origin response.

13. The computer system of claim 11 , wherein the processed client response is identical to the origin response.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 9, 2024
From: LEVEL 3 COMMUNICATIONS, LLC
To: SANDPIPER CDN, LLC
Reel/Frame 068256/0091 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 9, 2023
From: CROWDER, WILLIAM; JENSEN, DANIEL; JAKOBOWSKI, PAWEL; LIPSTONE, LAURENCE; POWER, WILLIAM
To: LEVEL 3 COMMUNICATIONS, LLC
Reel/Frame 064192/0596 →
Continuity (4)
Continuation 17951817 · Sep 23, 2022
Continuation 17362079 · Jun 29, 2021
Provisional Application 63153134 · Feb 24, 2021
Related Publication 20230370532A1 · Nov 16, 2023