US2018262564A1PendingUtilityA1

Using resource timing data for server push in multiple web page transactions

Assignee: AKAMAI TECH INCPriority: Jan 30, 2015Filed: Mar 14, 2018Published: Sep 13, 2018
Est. expiryJan 30, 2035(~8.5 yrs left)· nominal 20-yr term from priority
H04L 67/1076H04L 43/0852H04L 67/40H04L 67/133
54
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

This patent document describes, among other things, methods and systems for determining which if any page resources a server might push to a client (using, e.g., an HTTP 2.0 server push mechanism). The approaches described herein improve web page load times by pushing page resources that a client is likely to need to render the base page, while reducing wasteful server pushes of resources that the client is unlikely to request from the server because, for example, they are already cached at the client.

Claims

exact text as granted — not AI-modified
1 . A method performed by one or more computing machines, comprising:
 identifying a particular object X as a push candidate for each of a plurality of pages 1 . . . N, where each page represents a step in a transaction;   determining a frequency with which a particular resource associated with a given page is loaded by a plurality of clients, so as to produce freq 1  . . . freq N ;   receiving requests from a particular client for each of the plurality of pages 1 . . . N;   receiving a request from the particular client for a particular page that comes after the plurality of pages 1 . . . N in the transaction;   computing a probability that the particular client already has the particular object;   determining whether to push the particular object to the particular client, in response to the request for the particular page, based at least in part on the probability;   when the determination is to push the particular object, pushing the particular object to the particular client in response to the particular request;   when the determination is not to push the particular object, not pushing the particular object to the particular client in response to the particular request   
     
     
         2 . The method of  claim 1 , wherein determining whether to push the particular object to the particular client, in response to the request for the particular page, based at least in part on the probability comprises comparing the probability to a threshold. 
     
     
         3 . The method of  claim 1 , further comprising: collecting, from the plurality of clients, resource timing data for the given page over a plurality of client page loads, to determine the frequencies. 
     
     
         4 . (canceled) 
     
     
         5 . The method of  claim 1 , wherein the transaction is a web page navigation sequence in an e-commerce transaction. 
     
     
         6 . A computer apparatus having at least one microprocessor and memory storing computer-readable instructions for execution on the at least one microprocessor, the instructions comprising:
 instructions for identifying a particular object X as a push candidate for each of a plurality of pages 1 . . . N, where each page represents a step in a transaction;   instructions for determining a frequency with which a particular object associated with a given page is loaded by a plurality of clients, so as to produce freq 1  . . . freq N ;   instructions for receiving requests from a particular client for each of the plurality of pages 1 . . . N;   instructions for receiving a request from the particular client for a particular page that comes after the plurality of pages 1 . . . N in the transaction;   instructions for computing a probability that the particular client already has the particular object cached;   instructions for determining whether to push the particular object to the particular client, in response to the request for the particular page, based at least in part on the probability;   when the determination is to push the particular object, pushing the particular object to the particular client in response to the particular request;   when the determination is not to push the particular object, not pushing the particular object to the particular client in response to the particular request   
     
     
         7 . The computer apparatus of  claim 6 , wherein determining whether to push the particular object to the particular client, in response to the request for the particular page, based at least in part on the probability comprises comparing the probability to a threshold. 
     
     
         8 . The computer apparatus of  claim 6 , further comprising: instructions for collecting, from the plurality of clients, resource timing data for the given page over a plurality of client page loads, to determine the frequencies. 
     
     
         9 . (canceled) 
     
     
         10 . The computer apparatus of  claim 6 , wherein the transaction is a web page navigation sequence in an e-commerce transaction. 
     
     
         11 . A method, comprising:
 with a computer system, for each of a plurality of pages associated with a particular web navigation sequence:
 collecting, from a plurality of clients, resource timing data for the given page over a plurality of client page loads; 
 determining scores for a set of one or more objects for pushing from a client from a server, based on a function of the resource timing data; 
 sending the scores to a server distinct from the computer system; 
   at the server:
 receiving a request for HTML associated with a given page in the plurality of pages, from a client, where the given page is common to a plurality of web navigation sequences; 
 determining a probability that a client device is beginning the particular web navigation sequence associated with the plurality of pages; 
 discounting a score associated with at least one of the one or more objects based on the probability that the client is beginning the particular web navigation sequence. 
   
     
     
         12 . The method of  claim 11 , wherein determining the probability comprises identifying possible web navigation sequences based on the page requests seen so far, and assigning a probability to the web navigation sequence based on how common that web navigation sequence is. 
     
     
         13 .- 14 . (canceled)

Join the waitlist — get patent alerts

Track US2018262564A1 — get alerts on status changes and closely related new filings.

We store only your email — no account needed. See our privacy policy.