Device for and method of network routing
First Claim
1. A device for routing traffic in a mobile mesh network, comprising:
- a) a network-graph receiver for receiving a graph of a mesh network, where the network includes at least one node of a first type and at least one node of a second type, where the node of the first type is a router node, where the node of the second type is a gateway node, and where nodes are neighbors if they can communicate with each other, having an input, and having an output;
b) a gateway node temperature value assigner for assigning a maximum user-definable temperature value to each gateway node, having an input connected to the output of the network graph receiver, and having an output;
c) a router node temperature value assigner for calculating a temperature for each router node, where the temperature value for each router node is the highest temperature of a neighboring node times a user-definable conductivity value, having an input connected to the output of the gateway node temperature value assigner, and having an output;
d) a node self-utilization value assigner for determining a self-utilization value for each router node and each gateway node, where the self-utilization value for each node is a user-definable percentage of a total time that the node spends transmitting, receiving, and waiting while the node'"'"'s neighboring node is transmitting, having an input connected to the output of the router node temperature value assigner, and having an output;
e) a router node neighborhood-utilization value assigner for determining a neighborhood-utilization value for each router node, where the neighborhood-utilization value for each router node is a maximum of the router node'"'"'s self-utilization value and the self-utilization values of all of its neighboring nodes, having an input connected to the output of the self-utilization value assigner, and having an output;
f) a gateway node pressure value assignor for determining a pressure value for each gateway node, where the pressure value for each gateway node is the gateway node'"'"'s self-utilization value, having an input connected to the output of the router node neighborhood-utilization value assigner, and having an output;
g) a router node pressure value assigner for determining a pressure value for each router node, where the pressure value for each router node is a function of the neighborhood-utilization value of the router node and pressure values of the router node'"'"'s neighboring nodes that have higher temperature values than the router node'"'"'s temperature value, having an input connected to the output of the gateway node pressure value assigner, and having an output;
h) a traffic router node identifier for identifying a router node that was sent traffic from a mobile device, having an input connected to the output of the router node pressure value assigner, and having an output;
i) a highest neighbor node temperature finder for identifying each node in the mesh network that is a neighbor node of the router node identified in the last operation of the device that has a higher temperature than the router node, having an input bus connected to the output of the traffic router node identifier, and having an output;
j) a lowest pressure value finder for identifying the node identified by the highest neighbor node temperature finder that has the lowest pressure value, having an input connected to the output of the highest neighbor node temperature finder, and having an output;
k) a hop-node identifier for sending traffic from the router node identified by the traffic router node identifier to the node identified by the lowest pressure value finder, having an input connected to the output of the lowest pressure value finder, and having an output connected to the input bus of the output of the highest neighbor node temperature finder, where the device stops if the node to which traffic was sent is a gateway node, otherwise the node identified by the lowest pressure value finder is a router node and operation of the device returns to the highest neighbor node temperature finder.
0 Assignments
0 Petitions
Accused Products
Abstract
A device and method of routing traffic in a network by receiving the network, assigning a maximum temperature value to gateway nodes, calculating temperature values for router nodes, determining self-utilization values for nodes, determining neighborhood-utilization values for router nodes, determining pressure values for gateway nodes, determining pressure values for router nodes, identifying router node sent traffic, identifying neighboring nodes having higher temperatures than router node, identifying neighboring node with lowest pressure value, sending traffic to neighboring node with lowest pressure value, and stopping if the neighboring node is a gateway node, otherwise identifying the node as a router node and returning to the step of finding neighboring nodes.
18 Citations
4 Claims
-
1. A device for routing traffic in a mobile mesh network, comprising:
-
a) a network-graph receiver for receiving a graph of a mesh network, where the network includes at least one node of a first type and at least one node of a second type, where the node of the first type is a router node, where the node of the second type is a gateway node, and where nodes are neighbors if they can communicate with each other, having an input, and having an output; b) a gateway node temperature value assigner for assigning a maximum user-definable temperature value to each gateway node, having an input connected to the output of the network graph receiver, and having an output; c) a router node temperature value assigner for calculating a temperature for each router node, where the temperature value for each router node is the highest temperature of a neighboring node times a user-definable conductivity value, having an input connected to the output of the gateway node temperature value assigner, and having an output; d) a node self-utilization value assigner for determining a self-utilization value for each router node and each gateway node, where the self-utilization value for each node is a user-definable percentage of a total time that the node spends transmitting, receiving, and waiting while the node'"'"'s neighboring node is transmitting, having an input connected to the output of the router node temperature value assigner, and having an output; e) a router node neighborhood-utilization value assigner for determining a neighborhood-utilization value for each router node, where the neighborhood-utilization value for each router node is a maximum of the router node'"'"'s self-utilization value and the self-utilization values of all of its neighboring nodes, having an input connected to the output of the self-utilization value assigner, and having an output; f) a gateway node pressure value assignor for determining a pressure value for each gateway node, where the pressure value for each gateway node is the gateway node'"'"'s self-utilization value, having an input connected to the output of the router node neighborhood-utilization value assigner, and having an output; g) a router node pressure value assigner for determining a pressure value for each router node, where the pressure value for each router node is a function of the neighborhood-utilization value of the router node and pressure values of the router node'"'"'s neighboring nodes that have higher temperature values than the router node'"'"'s temperature value, having an input connected to the output of the gateway node pressure value assigner, and having an output; h) a traffic router node identifier for identifying a router node that was sent traffic from a mobile device, having an input connected to the output of the router node pressure value assigner, and having an output; i) a highest neighbor node temperature finder for identifying each node in the mesh network that is a neighbor node of the router node identified in the last operation of the device that has a higher temperature than the router node, having an input bus connected to the output of the traffic router node identifier, and having an output; j) a lowest pressure value finder for identifying the node identified by the highest neighbor node temperature finder that has the lowest pressure value, having an input connected to the output of the highest neighbor node temperature finder, and having an output; k) a hop-node identifier for sending traffic from the router node identified by the traffic router node identifier to the node identified by the lowest pressure value finder, having an input connected to the output of the lowest pressure value finder, and having an output connected to the input bus of the output of the highest neighbor node temperature finder, where the device stops if the node to which traffic was sent is a gateway node, otherwise the node identified by the lowest pressure value finder is a router node and operation of the device returns to the highest neighbor node temperature finder. - View Dependent Claims (2, 4)
-
-
3. A method of routing traffic in a mobile mesh network, comprising the steps of:
-
a. receiving a graph of a mesh network, where the network includes at least one node of a first type and at least one node of a second type, where the node of the first type is a router node, where the node of the second type is a gateway node, and where nodes are neighbors if they can communicate with each other; b. assigning a maximum user-definable temperature value to each gateway node; c. calculating a temperature for each router node, where the temperature value for each router node is the highest temperature of a neighboring node times a user-definable conductivity value; d. determining a self-utilization value for each router node and each gateway node, where the self-utilization value for each node is a user-definable percentage of a time that the node spends transmitting, receiving, and waiting while its neighbor node is transmitting; e. determining a neighborhood-utilization value for each router node, where the neighborhood-utilization value for each router node is a maximum of the router node'"'"'s self-utilization value and the self utilization values of all of its neighbor nodes, if any; f. determining a pressure value for each gateway node, where the pressure value for each gateway node is the gateway node'"'"'s self-utilization value; g. determining a pressure value for each router node, where the pressure value for each router node is a function of the router node'"'"'s neighborhood-utilization value and pressure values of the router node'"'"'s neighbor nodes that have higher temperature values than the router node'"'"'s temperature value; h. identifying a router node that was sent traffic from a mobile device; i. identifying each node in the mesh network that is a neighbor node of the router node identified in the most recently performed last step that has a higher temperature than the router node; j. identifying the node identified in step (i) that has the lowest pressure value; k. sending traffic from the router node involved in step (i) to the node identified in step (j); and l. stopping if the node to which traffic was sent in step (k) is a gateway node, otherwise identifying the node identified in step (j) as a router node and returning to step (i).
-
Specification