IP Library Granted Patent US 7,969,942
Granted Patent B2
US 7,969,942 · App. 12/404,170 · Granted Jun 28, 2011

Bonding multiple radios in wireless multi-hop mesh networks

Assignee: Firetide, Inc.
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,969,942
App. No.
12/404,170
Granted
Jun 28, 2011
Kind
B2
Abstract

In a mesh network composed of multiple-radio nodes, we assign each radio to one of a plurality of channels, and treat a plurality of links between a pair of nodes as one logical link (bonded link). In some embodiments, the routing protocol is adapted to view each bonded link as one link having a combination of at least some of the properties of the constituent physical links. Traffic sent along a path is dynamically load balanced between the interfaces at each intermediate node based on the current utilization of each interface. In at least some embodiments, route discovery packets record the metrics of each component link of the bonded links leaving a node, but only one route discovery packet per pair of nodes is forwarded, reducing the route discovery packet traffic compared to if each route discovery packet were forwarded over each component link between the pair of nodes.

Claims (52)

1. A non-transitory computer readable medium having a set of instructions stored therein which when executed by a processing device causes the processing device to perform traffic management procedures in a mesh network having a plurality of nodes each having multiple radio interfaces, the procedures comprising:

between at least one pair of the nodes, establishing a respective collection of individual links, each link having a respective channel assignment;

managing at least one of the collection of links as a corresponding single logical link having the capacity of the sum of the individual links of the collection;

for at least one of the logical links, dynamically load balancing traffic across the individual links of the corresponding collection;

for each logical link being dynamically load balanced, balancing the load at least in part based on the current utilization of each link of the corresponding collection;

identifying particular flows within each of one or more classes of traffic flows;

for each logical link being dynamically load balanced, balancing the load such that all traffic corresponding to a particular identified flow is steered over a respective selected one of the individual links;

at the node where each particular identified flow first enters the mesh network, assigning the particular identified flow with a corresponding flow ID based on a selected one of the classes of traffic flows; and

implementing the steering of each traffic flow based on its corresponding flow ID.

2. The non-transitory computer readable medium of claim 1 , the procedures further including:

defining one of the classes as corresponding to sets of application related flows distinguished by the combination of their source IP address and destination IP address.

3. The non-transitory computer readable medium of claim 1 , the procedures further including:

defining one of the classes as corresponding to application related flows distinguished by the combination of their source IP address, destination IP address, source port, and destination port.

4. The non-transitory computer readable medium of claim 1 , the procedures further including:

generating route discovery packets in accordance with a predetermined criteria; and

forwarding only one instance of each route discovery packet between each pair of nodes having a logical link.

5. A method of traffic management in a mesh network having a plurality of nodes each having multiple radio interfaces, the method comprising:

between at least one pair of the nodes, establishing a respective collection of individual links, each link having a respective channel assignment;

managing at least one of the collection of links as a corresponding single logical link having the capacity of the sum of the individual links of the collection;

for at least one of the logical links, dynamically load balancing traffic across the individual links of the corresponding collection;

for each logical link being dynamically load balanced, balancing the load at least in part based on the current utilization of each link of the corresponding collection;

identifying particular flows within each of one or more classes of traffic flows;

for each logical link being dynamically load balanced, balancing the load such that all traffic corresponding to a particular identified flow is steered over a respective selected one of the individual links;

at the node where each particular identified flow first enters the mesh network, assigning the particular identified flow with a corresponding flow ID based on a selected one of the classes of traffic flows; and

implementing the steering of each traffic flow based on its corresponding flow ID.

6. The method of claim 5 , further including:

defining one of the classes as corresponding to sets of application related flows distinguished by the combination of their source IP address and destination IP address.

7. The method of claim 5 , further including:

generating route discovery packets in accordance with a predetermined criteria; and

forwarding only one instance of each route discovery packet between each pair of nodes having a logical link.

8. The method of claim 5 , wherein each node has 2 radios per logical link.

9. The method of claim 5 , wherein at least some nodes have more than 2 radios available but allocate at most 2 radios per logical link.

10. The method of claim 5 , wherein the managing of the individual links as a single logical link is performed selectively.

11. The method of claim 5 , wherein the managing of the individual links as a single logical link is performed always.

12. The method of claim 5 , further including:

defining one of the classes as corresponding to application related flows distinguished by the combination of their source IP address, destination IP address, source port, and destination port.

13. A multiple-radio node used in a mesh network having a plurality of instances of the node, each multiple-radio node comprising:

a plurality of radio interfaces;

means for establishing a respective collection of individual links with at least one other of the multiple-radio node instances, each link having a respective channel assignment;

means for managing at least one of the collection of links as a corresponding single logical link having the capacity of the sum of the individual links of the collection;

means for dynamically load balancing traffic across the individual links of the corresponding collection, for at least one of the logical links;

means for balancing the load for each logical link being dynamically load balanced, the balancing being at least in part based on the current utilization of each link of the corresponding collection;

means for identifying particular flows within each of one or more classes of traffic flows;

means for balancing the load for each logical link being dynamically load balanced, the balancing being such that all traffic corresponding to a particular identified flow is steered over a respective selected one of the individual links;

means for ascertaining if a particular identified flow first entered the mesh network through the instant node, and when positively ascertained, assigning the particular identified flow with a corresponding flow ID based on a selected one of the classes of traffic flows; and

means for implementing the steering of each traffic flow based on its corresponding flow ID.

14. The multiple-radio node of claim 13 , further including:

means for defining one of the classes as corresponding to sets of application related flows distinguished by the combination of their source IP address and destination IP address.

15. The multiple-radio node of claim 13 , further including:

means for defining one of the classes as corresponding to application related flows distinguished by the combination of their source IP address, destination IP address, source port, and destination port.

16. The multiple-radio node of claim 13 , further including:

means for generating route discovery packets and forwarding only one instance of each route discovery packet between each pair of nodes having a logical link.

Assignments (7)
RELEASE OF SECURITY INTEREST Recorded Jun 21, 2019
From: SILICON VALLEY BANK
To: FIRETIDE, INC.
Reel/Frame 049559/0441 →
MEMORANDUM AND NOTICE OF SECURITY INTEREST IN INTELLECTUAL PROPERTY Recorded Apr 30, 2015
From: FIRETIDE, INC.
To: SILICON VALLEY BANK, AS ADMINISTRATIVE AGENT
Reel/Frame 035556/0641 →
RELEASE OF SECURITY INTEREST Recorded Aug 21, 2014
From: SQUARE 1 BANK
To: FIRETIDE, INC.
Reel/Frame 033588/0276 →
SECURITY INTEREST Recorded Mar 21, 2014
From: FIRETIDE, INC.
To: SQUARE 1 BANK
Reel/Frame 032492/0833 →
RELEASE OF SECURITY INTEREST Recorded Feb 27, 2014
From: SILICON VALLEY BANK
To: FIRETIDE, INC.
Reel/Frame 032309/0610 →
SECURITY AGREEMENT Recorded Feb 4, 2013
From: FIRETIDE, INC.
To: SILICON VALLEY BANK
Reel/Frame 029745/0148 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 16, 2009
From: KANODIA, SACHIN; NATARAJAN, MOHAN; JETCHEVA, JORJETA
To: FIRETIDE, INC.
Reel/Frame 022556/0472 →
Continuity (3)
Continuation PCTUS2007078951 · Sep 19, 2007
Provisional Application 60826153 · Sep 19, 2006
Related Publication 20090175169A1 · Jul 9, 2009