System and method for periodic retransmission of messages
First Claim
Patent Images
1. A method for retransmission of messages, comprising:
- transmitting a plurality of messages from a source to a destination using a packet-based network and a communication protocol, the destination operable to transmit an acknowledgement to the source indicating the receipt of the messages;
placing messages that have been transmitted in a queue for possible bundling and retransmission;
removing a message from the queue upon receipt of an acknowledgement associated with that message from the destination; and
periodically retransmitting selected messages in the queue from the source to the destination before the expiration of a retransmission timer established by the communication protocol, wherein one or more of the messages to be retransmitted may be bundled in a packet with another message being transmitted from the source for the first time such that an additional packet is not created for the retransmission of the retransmitted messages.
1 Assignment
0 Petitions
Accused Products
Abstract
A method for retransmission of messages includes transmitting a first message from a source to a destination using a packet-based network. The destination is capable of transmitting an acknowledgement to the source indicating the receipt of the first message. The method also includes determining that the first message has not been acknowledged and periodically retransmitting the first message from the source to the destination. In doing so, the first message is bundled in a packet with a second message that is being transmitted from the source for the first time. Therefore, an additional packet is not created for the retransmission of the first message.
129 Citations
27 Claims
-
1. A method for retransmission of messages, comprising:
-
transmitting a plurality of messages from a source to a destination using a packet-based network and a communication protocol, the destination operable to transmit an acknowledgement to the source indicating the receipt of the messages;
placing messages that have been transmitted in a queue for possible bundling and retransmission;
removing a message from the queue upon receipt of an acknowledgement associated with that message from the destination; and
periodically retransmitting selected messages in the queue from the source to the destination before the expiration of a retransmission timer established by the communication protocol, wherein one or more of the messages to be retransmitted may be bundled in a packet with another message being transmitted from the source for the first time such that an additional packet is not created for the retransmission of the retransmitted messages. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
determining the number of duplicate acknowledgements received at the source from the destination that are associated with the message; and
in response to determining that the number of duplicate acknowledgements is less than the selected number of times the message was retransmitted, initiating a congestion control procedure after the message has been retransmitted the selected number of times.
-
-
7. The method of claim 1, wherein a plurality of unacknowledged messages are bundled and retransmitted with one or more messages being transmitted for the first time, the unacknowledged messages retransmitted in order according to a transmission sequence number (TSN) associated with each message, the unacknowledged message having the lowest TSN being bundled and retransmitted first.
-
8. The method of claim 1, wherein the messages are transmitted using the Stream Control Transmission Protocol (SCTP).
-
9. The method of claim 1, wherein the packet-based network comprises the Internet.
-
10. A system for retransmission of messages, comprising a source device coupled to a packet-based network and operable to:
-
transmit a plurality of messages to a destination device using the packet-based network and a communication protocol, the destination device coupled to the packet-based network and operable to receive the messages and transmit an acknowledgement to the source device indicating the receipt of the messages;
place transmitted messages in a queue for possible bundling and retransmission;
remove a message from the queue upon receipt of an acknowledgement associated with that message from the destination device; and
periodically retransmit selected messages in the queue to the destination device before the expiration of a retransmission timer associated with the communication protocol, the source device operable to bundle the messages to be retransmitted in a packet with another message being transmitted from the source device for the first time such that an additional packet is not created for the retransmission of the retransmitted messages. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17, 18, 20, 21)
determine the number of duplicate acknowledgements received from the destination device that are associated with the message; and
in response to determining that the number of duplicate acknowledgements is less than the selected number of times the message was retransmitted, initiate a congestion control procedure after the message has been retransmitted the selected number of times.
-
-
16. The system of claim 10, wherein the source device is operable to a bundle and retransmit a plurality of unacknowledged messages with one or more messages being transmitted for the first time, the unacknowledged messages retransmitted in order according to a transmission sequence number (TSN) associated with each message, the unacknowledged message having the lowest TSN being bundled and retransmitted first.
-
17. The system of claim 10, wherein the source device transmits messages using the Stream Control Transmission Protocol (SCTP).
-
18. The system of claim 10, wherein the packet-based network comprises the Internet.
-
20. The software of claim 17, further operable to bundle one or more messages to be retransmitted in a packet with one or more messages being transmitted for the first time until the addition of another message to be retransmitted would cause the maximum transmission unit (MTU) of the network to be exceeded.
-
21. The software of claim 17, wherein periodically retransmitting a message in the queue comprises bundling and retransmitting the message at a selected rate of retransmission retransmission greater than a retransmission rate of a retransmission timer associated with the message.
22.The software of claim 19, wherein periodically retransmitting a message in the queue comprises bundling and retransmitting the message continuously until the message is removed from the queue.
-
19. Communication software embodied in a computer-readable medium and operable to;
-
transmit a plurality of messages from a source to a destination using a packet-based network and a communication protocol, the destination operable to transmit an acknowledgement to the source indicating the receipt of the messages;
place messages that have been transmitted in a queue for possible bundling and retransmission;
remove a message from the queue upon receipt of an acknowledgement associated with that message from the destination; and
periodically retransmit selected messages in the queue from the source to the destination before the expiration of a retransmission timer established by the communication protocol, wherein one or more of the messages to be retransmitted may be bundled in a packet with another message being transmitted from the source for the first time such that an additional packet is not created for the retransmission of the retransmitted messages. - View Dependent Claims (22, 24, 25, 26)
-
-
23. The software of claim 23, further operable to:
-
determine the number of duplicate acknowledgements received at the source from the destination that are associated with the message; and
in response to determining that the number of duplicate acknowledgements is less than the selected number of times the message was retransmitted, initiate a congestion control procedure after the message has been retransmitted the selected number of times.
-
-
27. A system for retransmission of messages, comprising:
-
means for transmitting a plurality of messages from a source to a destination using a packet-based network and a communication protocol, the destination operable to transmit an acknowledgement to the source indicating the receipt of the messages;
means for queuing messages that have been transmitted for possible bundling and retransmission;
means for removing a message from the queue upon receipt of an acknowledgement associated with that message from the destination; and
means for periodically retransmitting selected messages in the queue from the source to the destination before the expiration of a retransmission timer established by the communication protocol, wherein one or more of the messages to be retransmitted may be bundled in a packet with another message being transmitted from the source for the first time such that an additional packet is not created for the retransmission of the retransmitted messages.
-
Specification