RELIABLE MESSAGE DISTRIBUTION IN AN AD HOC MESH NETWORK
First Claim
1. A network processing node, comprising:
- a processor sending Data Distribution Service (DDS) messages associated with data items contained in the network processing node, the DDS messages identifying a global revision value associated with a revision status for multiple different data items in the network processing node and data-revision numbers that identify revision status for the individual data items.
2 Assignments
0 Petitions
Accused Products
Abstract
Abstract of the Disclosure
A Data Distribution Service (DDS) transfers information between nodes in an ad hoc mobile mesh network. The DDS includes many different novel features including techniques for coalescing retransmit requests to minimize traffic, providing a reasonable level of reliability for event oriented communications, multicasting retransmissions for use by many nodes, and providing other optimizations for multicast traffic. The DDS uses UDP datagrams for communications. Communications operate in a truly peer-to-peer fashion without requiring central authority or storage, and can be purely ad hoc and not depend on any central server. The protocol is NACK-based, which is more suited to a mesh network than a traditional approach like TCP, which uses positive acknowledgements of all data. The DDS is amenable to very long recovery intervals, matching well with nodes on wireless networks that lose coverage for significant periods of time and also works well with constantly changing network topologies. Reliability can also be handled over a span of time that might correspond to losing wireless coverage.
47 Citations
24 Claims
-
1. A network processing node, comprising:
-
a processor sending Data Distribution Service (DDS) messages associated with data items contained in the network processing node, the DDS messages identifying a global revision value associated with a revision status for multiple different data items in the network processing node and data-revision numbers that identify revision status for the individual data items. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
the node sending the DATA message, a global revision value for the node sending the DATA message, a data-name identifying a data item contained in the DATA message, a data-revision value for the data item, and the actual data item identified by the data-name.
-
-
5. The network processing device according to claim 1 wherein the processor receives a Negative Acknowledge (NACK) message that identifies global revision values for data that was not successfully received.
-
6. The network processing device according to claim 5 wherein the NACK message identifies the network processing node associated with the identified global revision values.
-
7. The network processing device according to claim 5 wherein the NACK message contains a group of multiple global revision values each associated with the same or different data items that have not been successfully received.
-
8. The network processing device according to claim 5 wherein the processor sends a CHANGE message identifying for the global revision values identified in the NACK message a data-name identifying a data item and a data-revision number for the identified data item.
-
9. The network processing device according to claim 8 wherein the processor receives a RETRANSMIT message that identifies the data-names in the CHANGE message that are requested to be retransmitted, the processor in response to the RETRANSMIT message sending a DATA message that contains the data items for the identified data-names.
-
10. The network processing device according to claim 8 wherein the processor only sends global revision values and associated data-names in the CHANGE message only for the latest versions of the data items associated with the global revision values in the NACK message.
-
11. The network processing device according to claim 8 wherein the processor maintains time stamps for the data items and sends out EXPIRED messages for requested updates to data items with expired time stamps.
-
12. An ad-hoc mesh network, comprising:
-
multiple mobile nodes that operate in wireless peer-to-peer manner within the mesh network whereby the nodes can dynamically move out of the mesh network and are automatically reconfigured to resume communications after moving back into the mesh network, at least some of the nodes operating a Data Distribution Service (DDS) that sends and receives DDS messages that use Global Revision Values (GRVs) for tracking changes to groups of different data items located on different nodes and for maintaining consistent versions of the data items on the different nodes. - View Dependent Claims (13, 14, 15, 16, 17, 18, 19)
-
-
20. A method for sending messages in a mesh network, comprising:
-
receiving a wireless message that identifies a global revision number for a remote set of multiple different data items located in a remote wireless device, the global revision number associated with a latest change made to any one of the data items; comparing the received global revision number with a locally stored global revision number corresponding with a remote device sending the wireless message; and sending a notice message when the received global revision number is different than the locally stored global revision number, the notice message identifying the global revision numbers associated with data items that have not yet been received from the remote device. - View Dependent Claims (21, 22, 23, 24)
-
Specification