SYSTEM AND METHOD FOR PACKET DELIVERY BACKTRACKING
First Claim
1. A method for ensuring reliable and efficient packet delivery of data over highly mobile mesh networks, in which each network comprises two or more network nodes, in which each of said nodes contains at least one transceiver device and a processor that implements a data communications protocol to communicate data to other network devices in an ad-hoc network, and in which the data are divided into data packets, with each data packet being encoded with a protocol header that includes that packet'"'"'s source address, destination, cost information, and data flags that indicate a type and other attributes of said each data packet, the method comprising:
- (a) maintaining, at each of said nodes, a bridge table with entries for all encountered nodes, routes for all known nodes, alternate routes for all known nodes, and flags for indicating nodes that are undiscovered;
(b) encoding, in each data packet, source and destination nodes and a set of flags that encode packet features, the packet features comprising an indication of whether the packet is unrouteable, discovery, introduction, or mesh/client;
(c) updating the bridge table based on successful and unsuccessful routing of the packets to both known and unknown nodes;
(d) routing failed packets via a known alternate route; and
(e) sending undeliverable packets back toward a source of the packets, when a route to the destination is not known, in an effort to both mark the failed route and to find an alternate route to the destination node device.
2 Assignments
0 Petitions
Accused Products
Abstract
Traditional computer networks have been designed with the need for highly reliable packet delivery. This is largely handled by a centrally managed simple send-acknowledge protocol. In a highly dynamic mesh network, these methods are inadequate to ensure the most reliable packet delivery. This invention uses the natural redundancy of routes in a mesh and other techniques to increase the reliability of a network, even as the paths to any given node are dynamic in nature.
50 Citations
14 Claims
-
1. A method for ensuring reliable and efficient packet delivery of data over highly mobile mesh networks, in which each network comprises two or more network nodes, in which each of said nodes contains at least one transceiver device and a processor that implements a data communications protocol to communicate data to other network devices in an ad-hoc network, and in which the data are divided into data packets, with each data packet being encoded with a protocol header that includes that packet'"'"'s source address, destination, cost information, and data flags that indicate a type and other attributes of said each data packet, the method comprising:
-
(a) maintaining, at each of said nodes, a bridge table with entries for all encountered nodes, routes for all known nodes, alternate routes for all known nodes, and flags for indicating nodes that are undiscovered; (b) encoding, in each data packet, source and destination nodes and a set of flags that encode packet features, the packet features comprising an indication of whether the packet is unrouteable, discovery, introduction, or mesh/client; (c) updating the bridge table based on successful and unsuccessful routing of the packets to both known and unknown nodes; (d) routing failed packets via a known alternate route; and (e) sending undeliverable packets back toward a source of the packets, when a route to the destination is not known, in an effort to both mark the failed route and to find an alternate route to the destination node device. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A node for use in a highly mobile mesh network for ensuring reliable and efficient packet delivery of data over the highly mobile mesh network, in which each network comprises two or more of said nodes, said node comprising:
-
at least one transceiver device; and a processor that implements a data communications protocol to communicate data to other network devices in an ad-hoc network, and in which the data are divided into data packets, with each data packet being encoded with a protocol header that includes that packet'"'"'s source address, destination, cost information, and data flags that indicate a type and other attributes of said each data packet, the processor being configured for; (a) maintaining a bridge table with entries for all encountered nodes, routes for all known nodes, alternate routes for all known nodes, and flags for indicating nodes that are undiscovered; (b) encoding, in each data packet, source and destination nodes and a set of flags that encode packet features, the packet features comprising an indication of whether the packet is unrouteable, discovery, introduction, or mesh/client; (c) updating the bridge table based on successful and unsuccessful routing of the packets to both known and unknown nodes; (d) routing failed packets via a known alternate route; and (e) sending undeliverable packets back toward a source of the packets, when a route to the destination is not known, in an effort to both mark the failed route and to find an alternate route to the destination node device. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
Specification