Systems for exchanging data using intermediate devices
Abstract
When significant latency exists between a test device executing an application and a remote device used to debug the application, an intermediate device is used to receive requests from the remote device. When a first request is received, the intermediate device determines other requests that are related to the first request, sequentially sends the other requests to the test device, and receives a response after each request, using a wired connection or a wireless network having lower latency than wireless communication between the remote device and the test device. The intermediate device then sends each of the responses to the remote device. The remote device stores the responses. The remote device is then able to use the stored data to determine responses for subsequent requests.
Claims
exact text as granted — not AI-modifiedWhat is claimed is:
1. A system comprising:
one or more first hardware processors to execute first computer-executable instructions to:
receive a first request from a first computing device, wherein the first request is indicative of one or more of a second computing device or an application associated with the second computing device;
send one or more of the first request or data indicative of the first request to the second computing device;
receive a first response from the second computing device;
determine a second request based on one or more of the first request or the first response;
send the second request to the second computing device;
receive a second response from the second computing device;
send one or more of the second response or data indicative of the second response to the first computing device; and
send one or more of the first response or data indicative of the first response to the first computing device.
2. The system of claim 1 , further comprising:
a wired communication interface; and
a wireless communication interface;
wherein one or more of the wired communication interface or the wireless communication interface is used to:
receive the first request,
send the one or more of the second response or the data indicative of the second response, and
send the one or more of the first response or the data indicative of the first response; and
wherein the wired communication interface is used to:
send the one or more of the first request or the data indicative of the first request;
send the second request; and
receive the second response.
3. The system of claim 1 , wherein:
the one or more first hardware processors are associated with a third computing device,
the third computing device communicates with the second computing device using a first communication method associated with a first latency,
the first computing device is in communication with the second computing device using a wireless network associated with a second latency, and
the second latency is greater than the first latency.
4. The system of claim 1 , wherein:
the one or more first hardware processors are associated with a third computing device,
the third computing device is within a threshold distance of the second computing device, and
the first computing device is at a distance greater than the threshold distance from the second computing device.
5. The system of claim 1 , wherein the one or more of the second response or the data indicative of the second response is sent to the first computing device before the one or more of the first response or the data indicative of the first response is sent to the first computing device.
6. The system of claim 1 , further comprising first computer-executable instructions to:
determine a third request based on one or more of: the first request, the first response, the second request, or the second response;
send the third request to the second computing device;
receive a third response from the second computing device; and
send one or more of the third response or data indicative of the third response to the first computing device.
7. The system of claim 6 , wherein:
the one or more of the second response or the data indicative of the second response is sent to the first computing device before the one or more of the first response or the data indicative of the first response is sent to the first computing device, and
the one or more of the third response or the data indicative of the third response is sent to the first computing device before the one or more of the first response or the data indicative of the first response is sent to the first computing device.
8. The system of claim 6 , wherein the one or more of the second response or the data indicative of the second response and the one or more of the third response or the data indicative of the third response are sent to the first computing device as a single transmission.
9. The system of claim 1 , wherein the first response includes an indication of one or more first memory regions associated with the second computing device, the system further comprising first computer-executable instructions to:
include an indication of one or more second memory regions in the second request, wherein the one or more second memory regions includes at least one memory region not included in the one or more first memory regions, and the second response includes data associated with the at least one memory region.
10. A system comprising:
one or more first hardware processors to execute first computer-executable instructions to:
send a first request to a first computing device, wherein the first request indicates one or more of a second computing device or an application associated with the second computing device;
receive a second response from the first computing device, wherein the second response is associated with a second request;
store at least a portion of the second response as stored data;
receive a first response from the first computing device, wherein the first response is associated with the first request;
determine one or more of the second request or a third request based on one or more of the first request or the first response; and
determine, based on the stored data, one or more of the second response or a third response to the third request.
11. The system of claim 10 , further comprising first computer-executable instructions to:
determine a fourth request based on one or more of the first request, the first response, the second request, the second response, the third request, or the third response;
determine a lack of correspondence between the fourth request and the stored data;
in response to the lack of correspondence, send the fourth request to the first computing device; and
receive a fourth response from the first computing device.
12. The system of claim 10 , further comprising first computer-executable instructions to:
determine a fourth request based on one or more of the first request, the first response, the second request, the second response, the third request, or the third response;
determine that the fourth request is associated with a modification to the stored data;
in response to the fourth request being associated with the modification to the stored data, send the fourth request to the first computing device; and
receive a fourth response from the first computing device.
13. The system of claim 10 , further comprising first computer-executable instructions to:
determine a fourth request based on one or more of the first request, the first response, the second request, the second response, the third request, or the third response;
determine that the fourth request is associated with a modification to a portion of the stored data;
in response to the fourth request being associated with the modification to the portion of the stored data, delete the portion of the stored data;
after deleting the portion of the stored data, determine a lack of correspondence between the fourth request and the stored data;
in response to the lack of correspondence, send the fourth request to the first computing device; and
receive a fourth response from the first computing device.
14. A system comprising:
one or more first hardware processors associated to execute first computer-executable instructions to:
send a first request to a first computing device, wherein the first request indicates one or more of a second computing device or an application associated with the second computing device;
receive a second response from the first computing device, wherein the second response is associated with a second request;
store at least a portion of the second response as stored data;
receive a first response from the first computing device, wherein the first response is associated with the first request; and
determine one or more of the second request or a third request based on one or more of the first request or the first response; and
determine correspondence between the stored data and the one or more of the second request or the third request.
15. The system of claim 14 , further comprising first computer-executable instructions to:
based on the correspondence between the stored data and the one or more of the second request or the third request, use the stored data to determine one or more of the second response or a third response associated with the third request.
16. The system of claim 14 , further comprising first computer-executable instructions to:
based on the correspondence between the stored data and the one or more of the second request or the third request, determine insufficient stored data for determination of one or more of the second response or a third response associated with the third request;
in response to the insufficient stored data, send the one or more of the second request or the third request to the first computing device; and
receive the one or more of the second response or the third response from the first computing device.
17. The system of claim 14 , further comprising first computer-executable instructions to:
determine that the one or more of the second request or the third request is associated with a modification to a portion of the stored data;
delete the portion of the stored data;
send the one or more of the second request or the third request to the first computing device; and
receive one or more of the second response or a third response associated with the third request from the first computing device.
18. The system of claim 14 , further comprising first computer-executable instructions to:
determine that the one or more of the second request or the third request is associated with a modification to at least a portion of the stored data;
send the one or more of the second request or the third request to the first computing device; and
receive one or more of the second response or a third response associated with the third request from the first computing device.
19. The system of claim 14 , wherein the one or more first hardware processors are associated with a third computing device, the system further comprising one or more second hardware processors associated with the first computing device to execute second computer-executable instruction to:
receive the first request from the third computing device;
send one or more of the first request or data indicative of the first request to the second computing device;
receive the first response from the second computing device;
determine the second request based on one or more of the first response or the first request;
send the second request to the second computing device;
receive the second response from the second computing device;
send the second response to the third computing device; and
send the first response to the third computing device.
20. The system of claim 19 , further comprising second computer-executable instructions to:
determine a fourth request based on one or more of: the first request, the first response, the second request, or the second response;
send the fourth request to the second computing device;
receive a fourth response from the second computing device; and
before sending the first response to the third computing device, send the second response and the fourth response to the third computing device as a single transmission.Cited by (0)
No later patents cite this yet.
References (0)
No backward citations on record.