Patent ID: 11863567
Assignee: FASTLY, INC.
Field: Digital communication (Electrical engineering)
Classification: CPC H | IPC H

Claim 8:
9. A computing apparatus comprising:
a storage system;
a processing system operatively coupled to the storage system; and
program instructions stored on the storage system to provide bot detection in a content delivery network that, when executed by the processing system, direct the processing system to:
identify a content request without a valid token for content not cached on the cache node;
in response to the content request, generate a synthetic response for the content request, wherein the synthetic response includes at least a request for a proof of work and fingerprinting attributes associated with an end user device that generated the content request, wherein the request for a proof of work comprises a problem to be solved by the end user device;
communicate the synthetic response to the end user device;
obtain a response from the end user device to the synthetic response;
determine that the content request is associated with a bot based on the response;
in response to determining that the content request is associated with a bot, prevent a second content request to an origin server to obtain the content;

identify a second content request without a valid token for second content not cached on the cache node;
in response to the second content request, generate a second synthetic response for the content request, wherein the second synthetic response includes at least a request for a proof of work and fingerprinting attributes associated with a second end user device that generated the second content request;
obtain a second response from the second end user device to the second synthetic response;
determine that the second content request is not associated with a bot based on the response; and
in response to determining that the second content request is not associated with a bot:
obtain the second content from an origin server; and
provide the second content to the second end user device.