Patent classifications
H04L49/9057
Multi-stride packet payload mapping for robust transmission of data
Systems and methods for packet payload mapping for robust transmission of data are described. For example, methods may include receiving, using a network interface, packets that each respectively include a primary frame and one or more preceding frames from the sequence of frames of data that are separated from the primary frame in the sequence of frames by a respective multiple of a stride parameter; storing the frames of the packets in a buffer with entries that each hold the primary frame and the one or more preceding frames of a packet; reading a first frame from the buffer as the primary frame from one of the entries; determining that a packet with a primary frame that is a next frame in the sequence has been lost; and, responsive to the determination, reading the next frame from the buffer as a preceding frame from one of the entries.
Multi-stride packet payload mapping for robust transmission of data
Systems and methods for packet payload mapping for robust transmission of data are described. For example, methods may include receiving, using a network interface, packets that each respectively include a primary frame and one or more preceding frames from the sequence of frames of data that are separated from the primary frame in the sequence of frames by a respective multiple of a stride parameter; storing the frames of the packets in a buffer with entries that each hold the primary frame and the one or more preceding frames of a packet; reading a first frame from the buffer as the primary frame from one of the entries; determining that a packet with a primary frame that is a next frame in the sequence has been lost; and, responsive to the determination, reading the next frame from the buffer as a preceding frame from one of the entries.
Direct data placement
A method for communication includes mapping transport sequence numbers in headers of data packets received from a network to respective buffers in a memory of a host computer. At least a part of the data from payloads of the received data packets is written directly to the respective buffers.
Direct data placement
A method for communication includes mapping transport sequence numbers in headers of data packets received from a network to respective buffers in a memory of a host computer. At least a part of the data from payloads of the received data packets is written directly to the respective buffers.
RELIABLE TRANSPORT OFFLOADED TO NETWORK DEVICES
Examples described herein relate to offload reliable transport management to a network interface device and store packets to be resent, based on received packet receipt acknowledgements (ACKs), into one or more kernel space queues that are also accessible in user space.
RELIABLE TRANSPORT OFFLOADED TO NETWORK DEVICES
Examples described herein relate to offload reliable transport management to a network interface device and store packets to be resent, based on received packet receipt acknowledgements (ACKs), into one or more kernel space queues that are also accessible in user space.
Opportunistic content delivery using delta coding
Systems and methods are described for avoiding redundant data transfers using delta coding techniques when reliably and opportunistically communicating data to multiple user systems. According to embodiments, user systems track received block sequences for locally stored content blocks. An intermediate server intercepts content requests between user systems and target hosts, and deterministically chucks and fingerprints content data received in response to those requests. A fingerprint of a received content block is communicated to the requesting user system, and the user system determines based on the fingerprint whether the corresponding content block matches a content block that is already locally stored. If so, the user system returns a set of fingerprints representing a sequence of next content blocks that were previously stored after the matching content block. The intermediate server can then send only those content data blocks that are not already locally stored at the user system according to the returned set of fingerprints.
Opportunistic content delivery using delta coding
Systems and methods are described for avoiding redundant data transfers using delta coding techniques when reliably and opportunistically communicating data to multiple user systems. According to embodiments, user systems track received block sequences for locally stored content blocks. An intermediate server intercepts content requests between user systems and target hosts, and deterministically chucks and fingerprints content data received in response to those requests. A fingerprint of a received content block is communicated to the requesting user system, and the user system determines based on the fingerprint whether the corresponding content block matches a content block that is already locally stored. If so, the user system returns a set of fingerprints representing a sequence of next content blocks that were previously stored after the matching content block. The intermediate server can then send only those content data blocks that are not already locally stored at the user system according to the returned set of fingerprints.
Dynamically controlling a local buffer of a modem of a wireless device
Apparatuses, methods, and systems for dynamically controlling a local buffer of a modem of a wireless device are disclosed. One method includes receiving and queuing transmission packets in the local buffer of the modem of the wireless device for wireless transmission to a receiving device, purging each transmission packet from the local buffer after receiving an acknowledgement of reception of the transmission packet from the receiving device, and requesting acknowledgement from the receiving device when a queue of the transmission packets within the local buffer exceeds a threshold level, wherein the receiving device aggregates acknowledgment responses to a plurality of unpurged transmission packets in the local buffer and transmits an aggregated acknowledgment to the modem.
Dynamically controlling a local buffer of a modem of a wireless device
Apparatuses, methods, and systems for dynamically controlling a local buffer of a modem of a wireless device are disclosed. One method includes receiving and queuing transmission packets in the local buffer of the modem of the wireless device for wireless transmission to a receiving device, purging each transmission packet from the local buffer after receiving an acknowledgement of reception of the transmission packet from the receiving device, and requesting acknowledgement from the receiving device when a queue of the transmission packets within the local buffer exceeds a threshold level, wherein the receiving device aggregates acknowledgment responses to a plurality of unpurged transmission packets in the local buffer and transmits an aggregated acknowledgment to the modem.