Enhanced acknowledgement and retransmission mechanism
First Claim
1. A method for communicating via a network, the method comprising:
- transmitting, from a first device via at least a first path of the network to a second device, a series of protocol data units (PDUs), wherein each PDU of the series of PDUs includes an associated sequence number;
receiving a first selective acknowledgement (SACK) message from the second device indicating that at least one unacknowledged PDU of the series of PDUs was not properly received by the second device; and
transmitting a control indicator responsive to receiving the first SACK message, the control indicator including a first sequence number to indicate that the first device will not retransmit an unacknowledged PDU associated with a prior sequence number earlier than the first sequence number.
1 Assignment
0 Petitions
Accused Products
Abstract
Protocol data units (PDUs) associated with a packet stream are transmitted with sequence numbers to support reordering and selective acknowledgement. A selective acknowledgement (SACK) message may be used to indicate at least one sequence number of a lost or corrupted PDU which was not properly received by the receiving device. Responsive to the SACK message, the lost or corrupted PDU is retransmitted via a different path of the network, different from the path used to transmit the original PDU. Lost or corrupted PDUs may not be retransmitted if the estimated retransmission delay is greater than a delay tolerance associated with the quality of service requirements of the application. Instead, a control message (i.e. “cut losses” message) may be transmitted to indicate that PDUs earlier than a particular sequence number will not be transmitted.
22 Citations
37 Claims
-
1. A method for communicating via a network, the method comprising:
-
transmitting, from a first device via at least a first path of the network to a second device, a series of protocol data units (PDUs), wherein each PDU of the series of PDUs includes an associated sequence number; receiving a first selective acknowledgement (SACK) message from the second device indicating that at least one unacknowledged PDU of the series of PDUs was not properly received by the second device; and transmitting a control indicator responsive to receiving the first SACK message, the control indicator including a first sequence number to indicate that the first device will not retransmit an unacknowledged PDU associated with a prior sequence number earlier than the first sequence number. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 35, 36, 37)
-
-
14. A first device comprising:
-
a network interface configured to transmit, from the first device via at least a first path of a network to a second device, a series of protocol data units (PDUs), wherein each PDU of the series of PDUs includes an associated sequence number; and a selective acknowledgement (SACK) and retransmit (SACK/Retransmit) controller configured to receive a first SACK message from a second device indicating that at least one unacknowledged PDU of a series of protocol data units (PDU s) was not properly received by the second device and to transmit a control indicator responsive to receipt of the first SACK message, the control indicator including a first sequence number to indicate that the first device will not retransmit an unacknowledged PDU associated with a prior sequence number earlier than the first sequence number. - View Dependent Claims (15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25)
-
-
26. A non-transitory computer readable medium having instructions stored therein which, when executed by a processor of a first device, cause the first device to:
-
transmit, from the first device via at least a first path of a network to a second device, a series of protocol data units (PDUs), wherein each PDU of the series of PDUs includes an associated sequence number; receive a selective acknowledgement (SACK) message from the second device indicating that at least one unacknowledged PDU of the series of PDUs was not properly received by the second device; and transmit a control indicator responsive to receipt of the SACK message, the control indicator including a first sequence number to indicate that the first device will not retransmit an unacknowledged PDU associated with a prior sequence number earlier than the first sequence number. - View Dependent Claims (27, 28, 29, 30)
-
-
31. An apparatus for communicating via a network, the apparatus comprising:
-
means for transmitting, from a first device via at least a first path of the network to a second device, a series of protocol data units (PDUs), wherein each PDU of the series of PDUs includes an associated sequence number; means for receiving a selective acknowledgement (SACK) message from the second device indicating that at least one unacknowledged PDU of the series of PDUs was not properly received by the second device; and means for transmitting a control indicator responsive to receiving the SACK message, the control indicator including a first sequence number to indicate that the first device will not retransmit an unacknowledged PDU associated with a prior sequence number earlier than the first sequence number. - View Dependent Claims (32, 33, 34)
-
Specification