Swarm autonomous routing algorithm for mobile ad hoc network communications
First Claim
1. A method for relaying communications among a plurality of communication nodes in a mobile ad hoc network (MANET), wherein each node is a device that has computing and wireless communication broadcasting and receiving capabilities plus a broadcastable identifier, wherein wireless communication comprises broadcasting a packet containing a message portion, and wherein the method is implemented in each node such that each node considers itself to be a current node in the context of the method steps it carries out;
- the method in the current node comprising the steps of;
identifying a set of neighbor nodes for the current node by determining whether a node qualifies by being within wireless communication range;
without knowledge of a route to a packet'"'"'s ultimate destination, broadcasting any packet originated at the current node, or re-broadcasting any received packet to relay it, by randomly selecting no more than one of the neighbor nodes to have its identifier set in the packet as a designated receiver node that should re-broadcast the packet;
andexamining received packets to learn the designated receiver node identifier if one is contained therein, then using the following steps to guide re-broadcasting actions;
if the current node is the designated receiver node, then re-broadcasting the packet;
andif the current node is not the designated receiver node, then only re-broadcasting the packet according to a predetermined non-designated receiver re-broadcast probability.
1 Assignment
0 Petitions
Accused Products
Abstract
A Swarm Autonomous Routing Algorithm (SARA) is performed by simple communication node devices for node to node communications in a network, especially a Mobile Ad hoc NETwork (MANET). Each node maintains a table of pheromone values for known neighbor nodes. Pheromone values are dynamic for adapting to a dynamic arrangement of nodes, and are updated either passively or actively. Routing tables are not used. When a node receives a packet, it uses the pheromone table to simply determine whether or not to forward (rebroadcast) the packet to a neighbor node, and if possible, determines and indicates the best neighbor node for next forwarding the packet. Destination Zone Routing (DZR) and Swarm Location Service (SLS) are alternative enhancements of SARA that can be used for more efficient routing when nodes are location aware/knowledgeable. SLS may also be used to improve routing algorithms other than SARA.
62 Citations
15 Claims
-
1. A method for relaying communications among a plurality of communication nodes in a mobile ad hoc network (MANET), wherein each node is a device that has computing and wireless communication broadcasting and receiving capabilities plus a broadcastable identifier, wherein wireless communication comprises broadcasting a packet containing a message portion, and wherein the method is implemented in each node such that each node considers itself to be a current node in the context of the method steps it carries out;
- the method in the current node comprising the steps of;
identifying a set of neighbor nodes for the current node by determining whether a node qualifies by being within wireless communication range; without knowledge of a route to a packet'"'"'s ultimate destination, broadcasting any packet originated at the current node, or re-broadcasting any received packet to relay it, by randomly selecting no more than one of the neighbor nodes to have its identifier set in the packet as a designated receiver node that should re-broadcast the packet; and examining received packets to learn the designated receiver node identifier if one is contained therein, then using the following steps to guide re-broadcasting actions; if the current node is the designated receiver node, then re-broadcasting the packet; and if the current node is not the designated receiver node, then only re-broadcasting the packet according to a predetermined non-designated receiver re-broadcast probability. - View Dependent Claims (2)
- the method in the current node comprising the steps of;
-
3. A routing table independent mobile ad hoc network (MANET) communication method for relaying communications among a plurality of communication nodes, wherein each node is a device that has computing and wireless communication broadcasting and receiving capabilities plus a broadcastable identifier, wherein wireless communication comprises broadcasting a packet containing a message portion, a message source node S identifier, and a message destination node D identifier;
- and wherein the method is implemented in each node such that each node considers itself to be a current node in the context of the method steps it carries out;
the method in the current node comprising the steps of;for every broadcast packet received by the current node, processing the received packet for passively learning about other nodes;
thereby minimizing broadcasting by avoiding pro-active learning through exchange of node information protocol packets;wherein packets can contain a sending node identifier and a designated receiver node identifier;
including the current node'"'"'s identifier as the sending node in every packet that is broadcast;establishing a receiving (RX) pheromone and a transmission (TX) pheromone for each other node from which the current node receives a packet, and associating the other node'"'"'s identifier with its respective RX and TX pheromones, wherein receiving from an other node means that the receiving node directly received, in a single hop, a packet transmitted by the other node; defining a neighbor node as being an other node that is associated with RX and TX pheromones that both have values above predetermined minimum values; maintaining a table of neighbor node identifiers with respective RX and TX pheromone values, and continuously updating the table by; defining the RX pheromone as an indicator of whether the associated node can receive packets from the current node; defining the TX pheromone as an indicator of whether the associated node can transmit packets to the current node; increasing the value of an other node'"'"'s TX pheromone whenever a packet is received from the respective other node; decreasing the value of each established TX pheromone whenever a predetermined amount of time elapses from the most recent value modification of the subject TX pheromone; increasing the value of an other node'"'"'s RX pheromone whenever a packet is received from the respective other node and the received packet is a re-broadcast of a packet just previously broadcast by the current node; decreasing the value of each established RX pheromone whenever a predetermined amount of time elapses from the most recent value modification of the subject RX pheromone; and broadcasting any packet originated at the current node or re-broadcasting any received packet to relay it, by selecting no more than one node to be identified in the packet as the designated receiver node, selected from among the nodes currently defined as neighbor nodes; and examining received packets to learn the designated receiver node identifier if one is contained therein, then using the following steps to guide re-broadcasting actions; if the current node is the designated receiver node, then re-broadcasting the packet; and if the current node is not the designated receiver node, then only re-broadcasting the packet according to a predetermined non-designated receiver re-broadcast probability. - View Dependent Claims (4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15)
- and wherein the method is implemented in each node such that each node considers itself to be a current node in the context of the method steps it carries out;
Specification