Scalable protocol-agnostic reliable transport
AssigneeIntel Corporation
InventorsMark Debbage, Bruce G. Warren
Life of this patent
Estimating the term…
Abstract
Examples described herein relate to a network interface device that includes circuitry to track one or more gaps in received packet sequence numbers using data and circuitry to indicate to a sender of packets non-delivered packets to identify a range of delivered packets. In some examples, the data identifies delivered packets and undelivered packets for one or more connections. In some examples, to indicate to a sender of packets non-delivered packets to identify a range of delivered packets, the circuitry is to provide negative acknowledgement sequence range indicating a start and end of non-delivered packets.
Claims18
An apparatus comprising:
- a network interface device comprising:
- a network interface;
- a direct memory access (DMA) circuitry;
- a host interface;
- circuitry to track one or more gaps in packet sequence numbers associated with received packets by storage of received packet sequence numbers in a data and
- circuitry to transmit an indication in at least one packet, to a sender of the packets with the packet sequence numbers, wherein
- the indication is to indicate a range of one or more non-delivered packets and a range of one or more delivered packets,
- the indication comprises a negative acknowledgement sequence number range that is to indicate a range that includes a start sequence number and end sequence number of non-delivered packets,
- the indication includes an opcode,
- the opcode is to indicate a format of the indication, and
- the format of the indication is selected from among:
- positive acknowledgment of packet receipt, negative acknowledgement of packet receipt, invalid state, and receiver not ready to process a particular packet.
A method comprising:
- a network interface device:
- transmitting a first group of packets using a reliable transport protocol and transmitting a second group of packets using an unreliable transport protocol, wherein:
- for the first group of packets transmitted using the reliable transport protocol:
- transmitting one or more packets to a receiver and
- re-transmitting one or more packets based on receipt of an indication of a range with start and end of non-delivered packets and
- for the second group of packets transmitted using the unreliable transport protocol:
- transmitting the second group of packets to the receiver.
At least one non-transitory computer-readable medium comprising instructions stored thereon, that if executed by one or more processors, cause the one or more processors to:
- configure a network interface device to
- track, in a data, one or more gaps in packet sequence numbers based on received packets and
- transmit an indication to a sender of the packets with the packet sequence numbers, wherein:
- the indication is to indicate a range of one or more non-delivered packets and a range of one or more delivered packets,
- the indication comprises a negative acknowledgement sequence number range that is to indicate a range that includes a start sequence number and end sequence number of non-delivered packets,
- the indication includes an opcode,
- the opcode is to indicate a format of the indication, and
- the format of the indication is selected from among:
- positive acknowledgment of packet receipt, negative acknowledgement of packet receipt, invalid state, and receiver not ready to process a particular packet.
Dependencies are inferred from the claim text.