Systems, methods, and apparatuses for implementing a streaming platform IO pump and regulator
First Claim
1. A method at a first computing device, the method comprising:
- initiating an original connection from the first computing device to a second computing device via a public Internet;
requesting data from the second computing device via the original connection;
wherein the second computing device is to receive the request and process the request to generate the data requested and buffer the generated data into a queue at the second computing device until an acknowledgement is received for the data from the first computing device;
determining, at the first computing device, the data fails to arrive from the second computing device by an anticipated arrival time;
initiating a new connection from the first computing device to the second computing device;
re-sending the request for the data to the second computing device via the new connection;
wherein the second computing device is to receive the request for the data resent by the first computing device via the new connection and further wherein the second computing device is to pull a buffered copy of the generated data from the queue at the second computing device and re-send the buffered copy of the data requested to the first computing device;
receiving the data requested at the first computing device via the original connection after the anticipated arrival time; and
sending the acknowledgement from the first computing device for the data requested to the second computing device via the original connection prior to receiving the data requested via the new connection.
1 Assignment
0 Petitions
Accused Products
Abstract
In accordance with disclosed embodiments, there are provided methods, systems, and apparatuses for implementing a streaming platform IO pump and regulator including, for example, means for executing an application at the computing device; requesting data for the application from a second computing device communicably interfaced with the first computing device via a public Internet; calculating an estimated arrival time for the data to be returned from the second computing device; determining the data fails to arrive within the estimated arrival time calculated; initiating a new connection to the second computing device; and re-sending the request for the data for the application to the second computing device via the new connection. Other related embodiments are disclosed.
-
Citations
20 Claims
-
1. A method at a first computing device, the method comprising:
-
initiating an original connection from the first computing device to a second computing device via a public Internet; requesting data from the second computing device via the original connection; wherein the second computing device is to receive the request and process the request to generate the data requested and buffer the generated data into a queue at the second computing device until an acknowledgement is received for the data from the first computing device; determining, at the first computing device, the data fails to arrive from the second computing device by an anticipated arrival time; initiating a new connection from the first computing device to the second computing device; re-sending the request for the data to the second computing device via the new connection; wherein the second computing device is to receive the request for the data resent by the first computing device via the new connection and further wherein the second computing device is to pull a buffered copy of the generated data from the queue at the second computing device and re-send the buffered copy of the data requested to the first computing device; receiving the data requested at the first computing device via the original connection after the anticipated arrival time; and sending the acknowledgement from the first computing device for the data requested to the second computing device via the original connection prior to receiving the data requested via the new connection. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17)
-
-
18. Non-transitory computer readable storage media having instructions stored thereupon that, when executed by a processor of a first computing device, the instructions cause the first computing device to perform operations comprising:
-
initiating an original connection from the first computing device to a second computing device via a public Internet; requesting data from the second computing device via the original connection; wherein the second computing device is to receive the request and process the request to generate the data requested and buffer the generated data into a queue at the second computing device until an acknowledgement is received for the data from the first computing device; determining, at the first computing device, the data fails to arrive from the second computing device by an anticipated arrival time; initiating a new connection from the first computing device to the second computing device; re-sending the request for the data to the second computing device via the new connection; wherein the second computing device is to receive the request for the data re-sent by the first computing device via the new connection and further wherein the second computing device is to pull a buffered copy of the generated data from the queue at the second computing device and re-send the buffered copy of the data requested to the first computing device; receiving the data requested at the first computing device via the original connection after the anticipated arrival time; and sending the acknowledgement from the first computing device for the data requested to the second computing device via the original connection prior to receiving the data requested via the new connection. - View Dependent Claims (19)
-
-
20. A first computing device communicably interfaced with a second computing device over a public Internet, wherein the first computing device comprises:
-
a processor and a memory to execute instructions at the first computing device; a network interface to initiate an original connection from the first computing device to the second computing device via a public Internet; the network interface to further request data from the second computing device via the original connection; wherein the second computing device is to receive the request and process the request to generate the data requested and buffer the generated data into a queue at the second computing device until an acknowledgement is received for the data from the first computing device; an Input/Output Pump (IO Pump) to determine the data fails to arrive from the second computing device by an anticipated arrival time; the IO pump to initiate a new connection from the first computing device to the second computing device; the network interface to re-send the request for the data to the second computing device via the new connection; wherein the second computing device is to receive the request for the data resent by the first computing device via the new connection and further wherein the second computing device is to pull a buffered copy of the generated data from the queue at the second computing device and re-send the buffered copy of the data requested to the first computing device; the network interface to receive the data requested via the original connection after the anticipated arrival time; and the IO pump to send the acknowledgement from the first computing device for the data requested to the second computing device via the original connection prior to receiving the data requested via the new connection.
-
Specification