Systems and methods for network routing
First Claim
1. A computer network comprising:
- (a) three or more nodes, each comprising a computer processor and data storage;
(b) means for processing data regarding enabling an overhearing node to overhear packet transmissions from a source node to a destination node;
(c) means for processing data regarding determining a cost of transmitting packets from the source node to the destination node;
(d) means for processing data regarding determining a cost of transmitting packets from the source node to the overhearing node to the destination node;
(e) means for processing data regarding storing in the overhearing node state information regarding each overheard packet transmission;
(f) means for processing data regarding the overhearing node updating as necessary the cost of transmitting packets from the source node to the destination node, and the cost of transmitting packets from the source node to the overhearing node to the destination node, based on each overheard packet transmission; and
(g) when the cost of transmitting packets from the source node to the overhearing node to the destination node is less than the cost of transmitting packets from the source node to the destination node, means for processing data regarding the overhearing node sending an advertisement to the source node causing the packet transmissions to be routed from the source node to the destination node through the overhearing node.
0 Assignments
0 Petitions
Accused Products
Abstract
Systems and methods are provided for routing data through a network. In one system, a first node is enabled to overhear packet transmissions from a second node. The cost of transmitting packets from the first node to the second node is updated based on each overheard packet transmission. In another system, when the cost of transmitting packets from a source to an overhearing node to a destination is less than the cost of transmitting packets from the source to the destination, an advertisement is sent to the source causing the packet transmissions to be routed from the source to the destination through the overhearing node. In yet another system, using a safe-sequence tag that is attached to any packet transmitted by any node and updated when it is received by another node, along with stored histories of best metric advertisements, predetermined rules are applied to maintain loop freedom.
-
Citations
4 Claims
-
1. A computer network comprising:
-
(a) three or more nodes, each comprising a computer processor and data storage; (b) means for processing data regarding enabling an overhearing node to overhear packet transmissions from a source node to a destination node; (c) means for processing data regarding determining a cost of transmitting packets from the source node to the destination node; (d) means for processing data regarding determining a cost of transmitting packets from the source node to the overhearing node to the destination node; (e) means for processing data regarding storing in the overhearing node state information regarding each overheard packet transmission; (f) means for processing data regarding the overhearing node updating as necessary the cost of transmitting packets from the source node to the destination node, and the cost of transmitting packets from the source node to the overhearing node to the destination node, based on each overheard packet transmission; and (g) when the cost of transmitting packets from the source node to the overhearing node to the destination node is less than the cost of transmitting packets from the source node to the destination node, means for processing data regarding the overhearing node sending an advertisement to the source node causing the packet transmissions to be routed from the source node to the destination node through the overhearing node. - View Dependent Claims (4)
-
-
2. A computer network comprising:
-
(a) for a first route from a source node to a destination node, means for processing data regarding generating one or more routing advertisements with increasing destination sequence numbers; (b) for a second route from the source node to the destination node through an intermediate overhearing node, which overhears data packet transmissions from at least one node within range of the overhearing node, means for processing data regarding generating one or more routing advertisements with increasing destination sequence numbers; (c) means for processing data regarding including as metrics in each routing advertisement a current cost estimate for reaching the destination node and a minimum cost estimate for reaching the destination node advertised for the destination sequence number; (d) means for processing data regarding including a safe-sequence tag with any packet transmitted by any node; (e) means for processing data regarding updating each safe-sequence tag when it is received by another node; (f) means for storing in the source node a first history of best metrics for the first route; (g) means for storing in the source node a second history of best metrics for the second route; (h) means for storing in the source node a third history of routing advertisements made by the source node; and (i) means for processing data regarding applying predetermined rules to the minimum cost estimates in the first, second, and third histories to maintain loop freedom. - View Dependent Claims (3)
-
Specification