System and method for reliably communicating information without explicit acknowledgements
First Claim
Patent Images
1. A method comprising:
- determining, by a transmitting node, whether a first message is to be broadcast in a communications network in which the transmitting node is present;
responsive to determining that a first message is to be broadcast;
incrementing, by the transmitting node, a value of a counter, andbroadcasting, by the transmitting node and in the communications network, the first message along with a first sequence number that is associated with the first message, the first sequence number being based on the value of the counter;
clearing, by the transmitting node, a timer that was previously set;
identifying, by the transmitting node, a value of the timer randomly between an upper bound and a lower bound; and
setting, by the transmitting node, the timer to the identified value.
0 Assignments
0 Petitions
Accused Products
Abstract
A system and method communicates commands from a command originator to receiving devices, yet the receiving devices do not confirm receipt of the command. The most current command (e.g. the one with the highest sequence number) is rebroadcast by the command originator and the receiving devices, tending to be more frequent upon detection of an event indicating that the most current command was not received by at least one other device, and less frequently upon detection of an event indicating that the most current command was provided with sufficient duplication that if another device could receive it, the device likely did receive it, subject to a maximum and minimum rate.
-
Citations
27 Claims
-
1. A method comprising:
-
determining, by a transmitting node, whether a first message is to be broadcast in a communications network in which the transmitting node is present; responsive to determining that a first message is to be broadcast; incrementing, by the transmitting node, a value of a counter, and broadcasting, by the transmitting node and in the communications network, the first message along with a first sequence number that is associated with the first message, the first sequence number being based on the value of the counter; clearing, by the transmitting node, a timer that was previously set; identifying, by the transmitting node, a value of the timer randomly between an upper bound and a lower bound; and setting, by the transmitting node, the timer to the identified value. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A method comprising:
-
determining, by a receiving node in a communications network, whether a second message and a second sequence number that is associated with the second message have been received; based on determining that a second message and a second sequence number have been received, comparing, by the receiving node, the second sequence number to sequence numbers associated with previously received messages; responsive to comparing the second sequence number to sequence numbers associated with previously received messages, determining that the second sequence number is higher than the sequence numbers associated with previously received messages; based on determining that the second sequence number is higher; storing, by the receiving node, the second message and the second sequence number, and performing, by the receiving node, an action based on information associated with the second message; identifying, by the receiving node, a value of a timer based on a set of parameters; and setting, by the receiving node, the timer to the identified value. - View Dependent Claims (11, 12, 13, 14, 15)
-
-
16. A system comprising:
-
a transmitting node included in a communications network, the transmitting node comprising first instructions stored in a non-transitory machine-readable first medium for execution by a first processing device and configured to cause the first processing device to perform operations comprising; determining, by the transmitting node, whether a first message is to be broadcast in the communications network; responsive to determining that the first message is to be broadcast; incrementing, by the transmitting node, a value of a counter, and broadcasting, by the transmitting node and in the communications network, the first message along with a first sequence number associated with the first message, the first sequence number being based on the value of the counter; clearing, by the transmitting node, a first timer that was previously set; identifying, by the transmitting node, a value of the first timer randomly between an upper bound and a lower bound; and setting, by the transmitting node, the first timer to the identified value; and a receiving node included in the communications network, the receiving node comprising second instructions stored in a non-transitory machine-readable second medium for execution by a second processing device and configured to cause the second processing device to perform operations comprising; determining, by the receiving node, whether a second message and a second sequence number that is associated with the second message have been received; based on determining that the second message and second sequence number have been received, comparing, by the receiving node, the second sequence number to sequence numbers associated with previously received messages; responsive to comparing the second sequence number to sequence numbers associated with previously received messages, determining that the second sequence number is higher than the sequence numbers associated with previously received messages; based on determining that the second sequence number is higher; storing, by the receiving node, the second message and the second sequence number, and performing, by the receiving node, an action based on information associated with the second message; identifying, by the receiving node, a value of a second timer based on a set of parameters; and setting, by the receiving node, the second timer to the identified value. - View Dependent Claims (17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27)
-
Specification