IP Library Granted Patent US 10,742,754
Granted Patent B2
US 10,742,754 · App. 14/868,647 · Granted Aug 11, 2020

Persistent edge state of end user devices at cache nodes

Inventor: Simon Wistow (San Francisco, CA)
Assignee: Fastly, Inc.
H04L67/22H04L63/0428H04L67/2804H04L67/2847G06Q10/10G06Q20/3829G06Q30/0267
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 10,742,754
App. No.
14/868,647
Granted
Aug 11, 2020
Kind
B2
Abstract

Systems, methods, apparatuses, and software for caching tracking elements of network content are provided herein. In one example, a method of operating a cache node of a content delivery network that caches content for delivery to end user devices is provided. The method includes receiving content requests from an end user device for content cached by the cache node and responsively providing the content for delivery to the end user device, processing the content requests to determine a edge state that corresponds to the end user device, transferring information related to the edge state for delivery to at least one other cache node of the content delivery network for handling of content requests received at the at least one other cache node.

Claims (63)

1. A method of operating a cache node of a content delivery network, the method comprising:

caching content from a plurality of origin servers on the cache node;

receiving content requests from a plurality of end user devices for content;

retrieving content from an origin server if content requested is not cached in the cache node of the content delivery network;

responsively providing the content for delivery to the end user devices;

processing the content requests to determine edge state that corresponds to the content requests and persists in the cache node over more than one content request; and

transferring information related to the edge state for delivery to at least one other cache node of the content delivery network for handling of content requests received from one or more of the end user devices at the at least one other cache node.

2. The method of claim 1 , wherein processing the content requests to determine the edge state that corresponds to the content requests comprises

storing, in the cache node, metrics associated with at least the content requests of the end user devices to establish the edge state.

3. The method of claim 2 , wherein the metrics comprise at least one of a geographic location associated with the end user devices, a network address associated with the content requests for the end user devices, a type of content browser application employed by the end user devices to issue the content requests, a version of the content browser application, and identities of at least one browser plug-in element associated with the content browser application.

4. The method of claim 1 , further comprising:

determining further content requests received at the cache node as being associated with ones of the end user devices based on at least the edge state.

5. The method of claim 1 , further comprising:

tracking activity of the end user devices for further content requests received at the cache node based at least on the edge state.

6. The method of claim 1 , wherein the content requests are associated with content for a first web site, and further comprising:

determining that further content requests received by the cache node for content of a second web site are associated with ones of the end user devices based on at least the edge state; and

identifying browsing statistics for the ones of the end user devices comprising a web site browsing sequence for the ones of the end user devices based at least on the content requests and the further content requests.

7. The method of claim 6 , further comprising:

transferring the browsing statistics for delivery to a content provider associated with at least one of the first web site and the second web site.

8. The method of claim 1 , further comprising:

determining further content requests received at the cache node as being associated with at least one of the end user devices based at least on the edge state; and

executing at least one per-user function at the cache node responsive to the further content requests being associated with the at least one of the end user devices.

9. The method of claim 1 , further comprising:

in the cache node, receiving further information related to the edge state that is transferred by the at least one other cache node, wherein the further information corresponds to activity of the end user devices at the at least one other cache node; and

incorporating the further information into the edge state for handling the content requests received at the cache node for the end user devices.

10. A content delivery network comprising a plurality of cache nodes that cache content for delivery to end user devices, the content delivery network comprising:

a first cache node configured to:

receive first content requests from an end user device for content cached by the cache node;

cache content from a plurality of origin servers in the content delivery network;

retrieve content from an origin server if content requested is not cached in the first cache node of the content delivery network;

responsively provide the content for delivery to the end user device;

process the first content requests to determine an edge state that corresponds to the end user device, and persists in the cache node over more than one content request;

transfer information related to the edge state for delivery to at least a second cache node of the content delivery network; and

the second cache node configured to:

receive second content requests and determine that the second content requests are associated with the end user device based at least on the information related to the edge state.

11. The content delivery network of claim 10 , comprising:

the first cache node configured to store metrics associated with at least the first content requests of the end user device to establish the edge state.

12. The content delivery network of claim 11 , wherein the metrics comprise at least one of a geographic location associated with the end user device, a network address associated with the first content requests, a type of content browser application employed by the end user device to issue the first content requests, a version of the content browser application, and identities of at least one browser plug-in element associated with the content browser application.

13. The content delivery network of claim 10 , comprising:

the first cache node configured to determine further content requests received at the cache node as being associated with the end user device based on at least the edge state.

14. The content delivery network of claim 10 , comprising:

the first cache node configured to track activity of the end user device for further content requests received at the cache node based at least on the edge state.

15. The content delivery network of claim 10 , wherein the first content requests are associated with content for a first web site, and comprising:

the first cache node configured to determine that further content requests received by the cache node for content of a second web site are associated with the end user device based on at least the edge state; and

the first cache node configured to identify browsing statistics for the end user device comprising a web site browsing sequence for the end user device based at least on the first content requests and the further content requests.

16. The content delivery network of claim 15 , comprising:

the first cache node configured to transfer the browsing statistics for delivery to a content provider associated with at least one of the first web site and the second web site.

17. The content delivery network of claim 10 , comprising:

the first cache node configured to determine further content requests received at the cache node as being associated with the end user device based at least on the edge state; and

the first cache node configured to execute at least one per-user function at the cache node responsive to the further content requests being associated with the end user device.

18. The content delivery network of claim 10 , comprising:

the first cache node configured to receive further information related to the edge state that is transferred by the second cache node, wherein the further information corresponds to activity of the end user device at the second cache node; and

incorporating the further information into the edge state for handling the content requests received at the first cache node for the end user device.

19. A method of operating a cache node of a content delivery network that caches content for delivery to end user devices, the method comprising:

in the cache node, caching content from a plurality of origin servers;

in the cache node, receiving a content request issued by an end user device;

in the cache node, retrieving content from an origin server if content requested is not cached in the cache node of the content delivery system;

in the cache node, responsively providing the requested content for delivery to the end user devices;

in the cache node, establishing edge state data for the end user device based at least on the content request and properties of the end user device; and

in the cache node, persisting the edge state data for handling further content requests from the end user device.

20. The method of claim 19 , further comprising:

in the cache node, receiving further information related to the edge state data that is transferred by at least one other cache node, wherein the further information corresponds to activity of the end user device at the at least one other cache node; and

incorporating the further information into the edge state data for handling the content requests received at the cache node for the end user device.

Assignments (2)
SECURITY INTEREST Recorded Feb 17, 2021
From: FASTLY, INC.
To: SILICON VALLEY BANK, AS ADMINISTRATIVE AND COLLATERAL AGENT
Reel/Frame 055316/0616 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 29, 2015
From: WISTOW, SIMON
To: FASTLY, INC.
Reel/Frame 036678/0714 →
Continuity (1)
Related Publication 20170093759A1 · Mar 30, 2017