US 12,192,304 B2
Systems and methods for edge caching
Benjamin Kotvis, Sussex, WI (US); and Marc Brumfield, Lemont, IL (US)
Assigned to Insight Direct USA, Inc., Chandler, AZ (US)
Filed by Insight Direct USA, Inc., Chandler, AZ (US)
Filed on Feb. 27, 2023, as Appl. No. 18/114,731.
Prior Publication US 2024/0291905 A1, Aug. 29, 2024
Int. Cl. G06F 15/16 (2006.01); H04L 67/1008 (2022.01); H04L 67/288 (2022.01); H04L 67/568 (2022.01)
CPC H04L 67/568 (2022.05) [H04L 67/1008 (2013.01); H04L 67/288 (2013.01)] 11 Claims
OG exemplary drawing
 
1. A method of selectively providing data from a caching edge device, the method comprising:
receiving, by the caching edge device, a request from a local device for data stored on a server, wherein:
the caching edge device is configured to receive requests from the local device and to selectively forward the requests to the server,
the request includes a domain of the server,
the server is intermittently connected to the caching edge device, and
the caching edge device is configured to selectively forward requests to the server when the server is connected to the caching edge device;
determining, by the caching edge device, whether to deliver to the local device a copy of the data by analyzing the request using a forwarding rules engine including a computer-implemented machine learning model, wherein:
analyzing the request using the forwarding rules engine comprises:
analyzing the domain of the server,
inspecting the memory to determine whether the memory stores the copy of the data, and
determining whether the server is connected to the caching edge device, and the computer-implemented machine learning model is trained to:
accept, as inputs, requests for data, and
output determinations of whether to block the requests for data and transmit local copies of data, and
the copy of the data is stored to a memory of the caching edge device;
after determining that the memory does not store the copy of the data:
requesting the data from the server;
receiving the data from the server; and
storing the data to the memory to create the copy of the data; and
after determining to deliver the copy of the data to the local device:
electronically transmitting, by the caching edge device, the copy of the data from the memory of the caching edge device to the local device; and
blocking, by the caching edge device, the request from the local device to the server.