Client-side ad caching for lower ad serving latency
First Claim
1. A computer-implemented method comprising:
- performing a first request for one or more advertisements over one or more networks from an advertisement server;
receiving the one or more advertisements over the one or more networks from the advertisement server in response to the first request;
storing the one or more advertisements in a cache on a client device, wherein the one or more advertisements are encrypted before storing;
after storing the one or more advertisements in the cache on the client device, intercepting, by a client module that executes on the client device, from an application executing on the client device, an advertisement request for advertisements that satisfy one or more criteria that are specified in the advertisement request;
wherein the advertisement request was directed by the application executing on the client device toward the advertisement server rather than toward the client module that executes on the client device;
authenticating, by the client module, a credential received from the application at the client device by comparing the credential with a stored credential;
in response to intercepting the advertisement request for advertisements that satisfy one or more criteria that are specified in the advertisement request, determining, at the client device, whether the cache on the client device contains any advertisements that satisfy the one or more criteria specified in the advertisement request; and
in response to determining that the cache on the client device contains one or more particular advertisements that satisfy the criteria specified in the advertisement request, decrypting the one or more particular advertisements and providing the decrypted one or more particular advertisements to the application from the cache on the client device, instead of sending the advertisement request for advertisements that satisfy one or more criteria that are specified in the advertisement request to the advertisement server;
wherein the method is performed by one or more computing devices.
9 Assignments
0 Petitions
Accused Products
Abstract
Advertisements are served over the Internet to clients on demand. A client module executing on a client device fetches advertisements over the Internet from an advertisement server. The client module stores these advertisements in a cache on the client device. When an application executing on the client device needs to display an advertisement, instead of contacting the advertisement server directly, the application makes a call to the client module. The client module, instead of contacting the advertisement server immediately, determines whether the cache on the client device contains any advertisements that satisfy criteria specified by the application. If the cache does contain advertisements that satisfy the criteria, then the client module provides those advertisements to the application. Otherwise, then the client module requests criteria-satisfying advertisements from the advertisement server at that time, and provides at least one of those to the application.
12 Citations
14 Claims
-
1. A computer-implemented method comprising:
-
performing a first request for one or more advertisements over one or more networks from an advertisement server; receiving the one or more advertisements over the one or more networks from the advertisement server in response to the first request; storing the one or more advertisements in a cache on a client device, wherein the one or more advertisements are encrypted before storing; after storing the one or more advertisements in the cache on the client device, intercepting, by a client module that executes on the client device, from an application executing on the client device, an advertisement request for advertisements that satisfy one or more criteria that are specified in the advertisement request; wherein the advertisement request was directed by the application executing on the client device toward the advertisement server rather than toward the client module that executes on the client device; authenticating, by the client module, a credential received from the application at the client device by comparing the credential with a stored credential; in response to intercepting the advertisement request for advertisements that satisfy one or more criteria that are specified in the advertisement request, determining, at the client device, whether the cache on the client device contains any advertisements that satisfy the one or more criteria specified in the advertisement request; and in response to determining that the cache on the client device contains one or more particular advertisements that satisfy the criteria specified in the advertisement request, decrypting the one or more particular advertisements and providing the decrypted one or more particular advertisements to the application from the cache on the client device, instead of sending the advertisement request for advertisements that satisfy one or more criteria that are specified in the advertisement request to the advertisement server; wherein the method is performed by one or more computing devices. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. One or more non-transitory computer-readable media storing instructions which, when processed by one or more processors, cause:
-
performing a first request for one or more advertisements over one or more networks from an advertisement server; receiving the one or more advertisements over the one or more networks from the advertisement server in response to the first request; storing the one or more advertisements in a cache on a client device, wherein the one or more advertisements are encrypted before storing; after storing the one or more advertisements in the cache on the client device, intercepting, by a client module that executes on the client device, from an application executing on the client device, an advertisement request for advertisements that satisfy one or more criteria that are specified in the advertisement request; wherein the advertisement request was directed by the application executing on the client device toward the advertisement server rather than toward the client module that executes on the client device; authenticating, by the client module, a credential received from the application at the client device by comparing the credential with a stored credential; in response to intercepting the advertisement request for advertisements that satisfy one or more criteria that are specified in the advertisement request, determining, at the client device, whether the cache on the client device contains any advertisements that satisfy the one or more criteria specified in the advertisement request; and in response to determining that the cache on the client device contains one or more particular advertisements that satisfy the criteria specified in the advertisement request, decrypting the one or more particular advertisements and providing the one decrypted or more particular advertisements to the application from the cache on the client device, instead of sending the advertisement request for advertisements that satisfy one or more criteria that are specified in the advertisement request to the advertisement server. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
Specification