摘要 |
A buffer transfer session can be used to send a data object from one device to another using a low-overhead, reliable point-to-point data transfer protocol. In response to a request to transfer a data object to the receiving device, the sending device can locate the requested data object and establish a first buffer transfer session to transfer the data object to the receiving device. The buffer transfer session can be assigned a unique session identifier. The sending device can send the data object as a sequence of packets, each including the session identifier and a portion of the data object. Multiple buffer transfer sessions can be established concurrently between the two devices. In some instances, transfers can be paused and resumed, canceled, switched to a different transport, or persisted across disconnection/reconnection events. |
主权项 |
1. A method for transferring data between a first device and a second device, the method comprising:
establishing, by the first device, a point-to-point communication link with the second device; receiving, at the first device, an instruction to send a first data object to the second device; locating, by the first device, the first data object; assigning, by the first device, a first unique identifier for a first transfer session; sending, by the first device to the second device via the point-to-point communication link, a first send-ready message including the first unique identifier; receiving, by the first device from the second device via the point-to-point communication link, a first receive-ready message responsive to the first send-ready message; and in response to the first receive-ready message, sending, by the first device to the second device via the point-to-point communication link, a first plurality of packets, each packet in the first plurality of packets including the first unique identifier and a different portion of the first data object, wherein the first plurality of packets includes a number of packets sufficient to transfer the entirety of the first data object and wherein the packets do not include sender device identification or recipient device identification. |