Recovery of disconnected channels over a reliable protocol
First Claim
Patent Images
1. A terminal server method comprising:
- sending data to a client using a network protocol;
storing at least a portion of the sent data in a buffer wherein the buffer stores the data in a format different from the format used in the network protocol;
determining that a connection to the client failed;
reestablishing a connection to the client;
receiving a signal from the client identifying an amount of data that was successfully received by the client;
determining that the client failed to receive a specific portion of the data stored in the buffer based on the signal received from the client; and
sending the specific portion of the data stored in the buffer to the client.
2 Assignments
0 Petitions
Accused Products
Abstract
Example embodiments of the present disclosure provide techniques for recovering from a channel failure at the protocol layer. At least a portion of data that is sent from a source to a target across the channel can be stored in a communication protocol layer buffer. In the event that the channel fails and is reestablished the target can send a signal indicating how much data it actually received. The signal can be used by the source to determine which portion of the data in the buffer was lost en route to the target and the lost portion can be resent.
-
Citations
19 Claims
-
1. A terminal server method comprising:
-
sending data to a client using a network protocol; storing at least a portion of the sent data in a buffer wherein the buffer stores the data in a format different from the format used in the network protocol; determining that a connection to the client failed; reestablishing a connection to the client; receiving a signal from the client identifying an amount of data that was successfully received by the client; determining that the client failed to receive a specific portion of the data stored in the buffer based on the signal received from the client; and sending the specific portion of the data stored in the buffer to the client. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A computer-readable storage device comprising instructions stored thereon that upon execution by a processor cause a terminal server to:
-
send data to a terminal server client using a network protocol; store a copy of the data that was sent to the terminal server client in a buffer after removing the data from the format used by the network protocol; determine that a channel established between the terminal server and the terminal server client failed based on a determination that a predetermined amount of time since a packet was last received from the terminal server client has elapsed; receive in a reconnection request information from the terminal server client identifying an amount of the data that was successfully received by the client; and sending a specific portion of the data stored in the buffer to the client, the specific portion of the data selected based on the information identifying the amount of the data that was successfully received by the terminal server client. - View Dependent Claims (10, 11, 12, 13)
-
-
14. A client device comprising:
-
a processor; and a memory, the memory being in communication with the processor when powered, the memory including instructions stored thereon that upon execution cause the client device to; store information identifying an amount data that was received from a computer system over a network channel established between the client device and the computer system, the amount of data being a portion of the total amount of data that was sent by the computer system to the client device; determine that the network channel failed; send information identifying the amount of data that was received from the computer system where the amount may vary; and receive a second portion of the total amount of data from the computer system, the second portion including a least a part of the total amount of data that was lost en route to the client device. - View Dependent Claims (15, 16, 17, 18, 19)
-
Specification