Message reordering timers
First Claim
1. A method for data communication between a sending node and a receiving node over a data channel coupling the sending node and the receiving node, the method comprising:
- receiving, at the receiving node, data messages belonging to a set of data messages transmitted in a sequential order from the sending node;
sending, from the receiving node to the sending node, feedback messages characterizing a delivery status of the set of data messages at the receiving node, including;
starting, at the receiving node, a first timer upon receipt of a first data message associated with a first position in the sequential order prior to receipt of one or more missing data messages associated with positions preceding the first position in the sequential order,delaying sending, from the receiving node to the sending node, an acknowledgement indicating a gap corresponding to the one or more missing data messages until expiration of the first timer,when the one or more missing data messages are received before expiration of the first timer, refraining from sending the acknowledgement indicating the gap from the receiving node to the sending node,starting a second timer upon receipt of at least one but not all of the one or more missing data messages before expiration of the first timer,delaying sending, from the receiving node to the sending node, the acknowledgement indicating the gap corresponding to the one or more missing data messages until expiration of the second timer, andwhen all of the one or more missing data messages are received before expiration of the second timer, refraining from sending the acknowledgement indicating the gap from the receiving node to the sending node.
2 Assignments
0 Petitions
Accused Products
Abstract
A method for data communication from a first node to a second node over a data channel coupling the first node and the second node includes receiving data messages at the second node, the messages belonging to a set of data messages transmitted in a sequential order from the first node, sending feedback messages from the second node to the first node, the feedback messages characterizing a delivery status of the set of data messages at the second node, including maintaining a set of one or more timers according to occurrences of a number of delivery order events, the maintaining including modifying a status of one or more timers of the set of timers based on occurrences of the number of delivery order events, and deferring sending of said feedback messages until expiry of one or more of the set of one or more timers.
-
Citations
18 Claims
-
1. A method for data communication between a sending node and a receiving node over a data channel coupling the sending node and the receiving node, the method comprising:
-
receiving, at the receiving node, data messages belonging to a set of data messages transmitted in a sequential order from the sending node; sending, from the receiving node to the sending node, feedback messages characterizing a delivery status of the set of data messages at the receiving node, including; starting, at the receiving node, a first timer upon receipt of a first data message associated with a first position in the sequential order prior to receipt of one or more missing data messages associated with positions preceding the first position in the sequential order, delaying sending, from the receiving node to the sending node, an acknowledgement indicating a gap corresponding to the one or more missing data messages until expiration of the first timer, when the one or more missing data messages are received before expiration of the first timer, refraining from sending the acknowledgement indicating the gap from the receiving node to the sending node, starting a second timer upon receipt of at least one but not all of the one or more missing data messages before expiration of the first timer, delaying sending, from the receiving node to the sending node, the acknowledgement indicating the gap corresponding to the one or more missing data messages until expiration of the second timer, and when all of the one or more missing data messages are received before expiration of the second timer, refraining from sending the acknowledgement indicating the gap from the receiving node to the sending node. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A system for data communication over a data channel coupling a plurality of nodes, the system comprising:
a receiving node of the plurality of nodes configured to; receive data messages belonging to a set of data messages transmitted in a sequential order from a sending node of the plurality of nodes, send, to the sending node, feedback messages characterizing a delivery status of the set of data messages at the receiving node, including; starting a first timer upon receipt of a first data message associated with a first position in the sequential order prior to receipt of one or more missing data messages associated with positions preceding the first position in the sequential order, delaying sending, to the sending node, an acknowledgement indicating a gap corresponding to the one or more missing data messages until expiration of the first timer, when the one or more missing data messages are received before expiration of the first timer, refraining from sending the acknowledgement indicating the gap from to the sending node, starting a second timer upon receipt of at least one but not all of the one or more missing data messages before expiration of the first timer, delaying sending, to the sending node, the acknowledgement indicating the gap corresponding to the one or more missing data messages until expiration of the second timer, and when all of the one or more missing data messages are received before expiration of the second timer, refraining from sending the acknowledgement indicating the gap to the sending node. - View Dependent Claims (8, 9, 10, 11, 12)
-
13. A non-transitory computer-readable medium storing software comprising instructions for causing a receiving node in a data communication system to:
-
receive data messages belonging to a set of data messages transmitted in a sequential order from a sending node of the plurality of nodes, send, to the sending node, feedback messages characterizing a delivery status of the set of data messages at the receiving node, including; starting a first timer upon receipt of a first data message associated with a first position in the sequential order prior to receipt of one or more missing data messages associated with positions preceding the first position in the sequential order, delaying sending, to the sending node, an acknowledgement indicating a gap corresponding to the one or more missing data messages until expiration of the first timer, when the one or more missing data messages are received before expiration of the first timer, refraining from sending the acknowledgement indicating the gap from to the sending node, starting a second timer upon receipt of at least one but not all of the one or more missing data messages before expiration of the first timer, delaying sending, to the sending node, the acknowledgement indicating the gap corresponding to the one or more missing data messages until expiration of the second timer, and when all of the one or more missing data messages are received before expiration of the second timer, refraining from sending the acknowledgement indicating the gap to the sending node. - View Dependent Claims (14, 15, 16, 17, 18)
-
Specification