Latency reduction via adaptive speculative preconnection
First Claim
1. A computing device-implemented method for reducing web page load time comprising:
- initiating a connection to a first uniform resource locator (URL) host;
obtaining speculative information associated with the first URL host, wherein the speculative information comprises a likelihood of connecting to a second URL host as a result of initiating a connection to the first URL host;
determining, using a computing device, whether to preconnect to the second URL host based on the speculative information;
providing an instruction to preconnect to the second URL host when a determination to preconnect is made; and
preconnecting to the second URL host to establish a preconnection when an instruction to preconnect is provided, wherein the preconnecting comprises;
transmitting a synchronization (SYN) packet to the second URL host;
receiving an acknowledgement (ACK) packet in response to the transmitting the SYN packet; and
waiting for an instruction to load content located at the second URL host before transmitting a content request to the second URL host using the preconnection, wherein the preconnection is ready to acquire content from the second URL host when content associated with the first URL host is received over the connection.
2 Assignments
0 Petitions
Accused Products
Abstract
Methods, systems, and computer program products for reducing web latency using adaptive speculative preconnection are provided. Exemplary methods, systems, and computer program products for reducing web latency include initiating a connection to a first URL hostname, and obtaining speculative information associated with the first URL hostname. The speculative information includes a likelihood of connecting to a second URL hostname as a result of initiating a connection to the first URL hostname. The methods, systems, and computer program products also include determining whether to preconnect to the second URL hostname based on the speculative information. The methods, systems, and computer program products further include providing an instruction to preconnect to the second URL hostname when a determination to preconnect is made.
73 Citations
23 Claims
-
1. A computing device-implemented method for reducing web page load time comprising:
-
initiating a connection to a first uniform resource locator (URL) host; obtaining speculative information associated with the first URL host, wherein the speculative information comprises a likelihood of connecting to a second URL host as a result of initiating a connection to the first URL host; determining, using a computing device, whether to preconnect to the second URL host based on the speculative information; providing an instruction to preconnect to the second URL host when a determination to preconnect is made; and preconnecting to the second URL host to establish a preconnection when an instruction to preconnect is provided, wherein the preconnecting comprises; transmitting a synchronization (SYN) packet to the second URL host; receiving an acknowledgement (ACK) packet in response to the transmitting the SYN packet; and waiting for an instruction to load content located at the second URL host before transmitting a content request to the second URL host using the preconnection, wherein the preconnection is ready to acquire content from the second URL host when content associated with the first URL host is received over the connection. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14)
-
-
15. A system for reducing web page load time comprising:
-
a connector, implemented with a computing device, to initiate a connection to a first uniform resource locator (URL) host; an adapter configured to obtain speculative information associated with the first URL host, wherein the speculative information comprises a likelihood of connecting to a second URL host as a result of initiating a connection to the first URL host; and a speculator configured to determine whether to preconnect to the second URL host based on the speculative information, and provide an instruction to preconnect to the second URL hostname when a determination to preconnect is made; a preconnector configured to preconnect to the second URL host to establish a preconnection when an instruction to preconnect to the second URL host is provided, wherein the preconnector transmits a synchronization (SYN) packet, receives an acknowledgement (ACK) packet in response to transmitting the SYN packet, and waits for an instruction to load content located at the second URL host before transmitting a content request to the second URL host using the preconnection, wherein the preconnection is ready to acquire content from the second URL host when content associated with the first URL host is received over the connection. - View Dependent Claims (16, 17, 18, 19, 20)
-
-
21. A non-transitory computer-program product comprising a computer-usable medium having computer program logic recorded thereon for enabling a processor to reduce web page load time, the computer program logic comprising computer readable program code that enables a processor to perform operations to:
-
initiate a connection to a first uniform resource locator (URL) host; to obtain speculative information associated with the first URL host, wherein the speculative information comprises a likelihood of connecting to a second URL host as a result of initiating the connection to the first URL host; determine whether to preconnect to the second URL host based on the speculative information; provide an instruction to preconnect to the second URL host when a determination to preconnect to the second URL host is made; and preconnect to the second URL host to establish a preconnection when an instruction to preconnect is provided, wherein the preconnect comprises operations to; transmit a synchronization (SYN) packet to the second URL host; receive an acknowledgement (ACK) packet in response to transmission of the SYN packet; and wait for an instruction to load content located at the second URL host before transmitting a content request to the second URL host using the preconnection, wherein the preconnection is ready to acquire content from the second URL host when content associated with the first URL host is received over the connection. - View Dependent Claims (22, 23)
-
Specification