IP Library › Granted Patent US 9,215,620
Granted Patent B2
US 9,215,620 · App. 12/114,822 · Granted Dec 15, 2015

Distributed bi-directional flow control in wireless mesh networks

Inventors: Johannes Petrus Kruys (Harmelen, NL); Lu Qian (Solon, OH); Predrag Tosic (Milpitas, CA)
Assignee: Cisco Technology, Inc.
H04W28/12H04L47/11H04L47/125H04L47/14H04L47/263H04L47/30H04L47/33
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 9,215,620
App. No.
12/114,822
Filed
May 5, 2008
Granted
Dec 15, 2015
Kind
B2
Art Unit
2474
USPC
370/236
Abstract

A distributed, bidirectional congestion control and starvation avoidance system for wireless mesh networks. In particular implementations, the nodes of the wireless mesh network monitor their respective local buffers for traffic load, and signal upstream and downstream nodes in response to detected congestion or excess capacity to dynamically allocate transmit capacity between neighboring nodes. Particular implementations are capable of mitigating congestion and preventing starvation in a fully distributed, low-overhead, scalable and efficient manner.

Claims (26)

1. A method comprising:

buffering packets to be transmitted in a downstream direction into a transmit queue;

monitoring the transmit queue for congestion;

if a number of packets buffered in the transmit queue exceeds an upper threshold, conditionally asserting a positive forward pressure signal comprising a priority class identifier to a downstream node to request an increase in a downstream transmit rate of the downstream node; and conditionally asserting a positive back pressure signal to an upstream node to request reduction of a downstream transmit rate of the upstream node, wherein the priority class identifier specifies one of a plurality of classes for determining processing priority of the positive forward pressure signal in relation to at least one other positive forward pressure signal.

2. The method of claim 1 further comprising:

if the number of packets buffered in the transmit queue falls below a lower threshold, conditionally asserting a negative forward pressure signal to the downstream node to allow a decrease in the downstream transmit rate of the downstream node; and conditionally asserting a negative back pressure signal to the upstream node to allow an increase of the downstream transmit rate of the upstream node.

3. The method of claim 1 further comprising:

asserting a null forward pressure signal to the downstream node, if the number of packets in the transmit queue does not exceed the upper threshold or does not fall below the lower threshold.

4. The method of claim 1 further comprising:

asserting a null back pressure signal to the upstream node, if the number of packets in the transmit queue does not exceed the upper threshold or does not fall below the lower threshold.

5. The method of claim 1 wherein the transmit queue corresponds to an access class of a plurality of access classes.

6. The method of claim 1 wherein the positive back pressure signal is asserted in frame headers appended to wireless frames transmitted to the upstream node.

7. The method of claim 1 wherein the positive forward pressure signal is asserted in frame headers appended to wireless frames transmitted to the downstream node.

8. Logic encoded in one or more non-transitory computer readable media for execution and when executed operable to:

buffer packets to be transmitted in a downstream direction into a transmit queue;

monitor the transmit queue for congestion;

if a number of packets buffered in the transmit queue exceeds an upper threshold, conditionally assert a positive forward pressure signal comprising a priority class identifier to a downstream node to request an increase in a downstream transmit rate of the downstream node; and conditionally assert a positive back pressure signal to an upstream node to request reduction of a downstream transmit rate of the upstream node, wherein the priority class identifier specifies one of a plurality of classes for determining processing priority of the positive forward pressure signal in relation to at least one other positive forward pressure signal.

9. The logic of claim 8 wherein the logic is further operable to:

if the number of packets buffered in the transmit queue falls below a lower threshold, conditionally assert a negative forward pressure signal to the downstream node to allow a decrease in the downstream transmit rate of the downstream node; and conditionally assert a negative back pressure signal to the upstream node to allow an increase of the downstream transmit rate of the upstream node.

10. The logic of claim 8 wherein the logic is further operable to:

assert a null forward pressure signal to the downstream node, if the number of packets in the transmit queue does not exceed the upper threshold or does not fall below the lower threshold.

11. The logic of claim 8 wherein the logic is further operable to:

assert a null back pressure signal to the upstream node, if the number of packets in the transmit queue does not exceed the upper threshold or does not fall below the lower threshold.

12. The logic of claim 8 wherein the transmit queue corresponds to an access class of a plurality of access classes.

13. The logic of claim 8 wherein the positive back pressure signal is asserted in frame headers appended to wireless frames transmitted to the upstream node.

14. The logic of claim 8 wherein the positive forward pressure signal is asserted in frame headers appended to wireless frames transmitted to the downstream node.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 24, 2008
From: KRUYS, JOHANNES PETRUS; QIAN, LU (NMI); TOSIC, PREDRAG (NMI)
To: CISCO TECHNOLOGY, INC.
Reel/Frame 021186/0047 →
Continuity (1)
Related Publication 20090274047A1 · Nov 5, 2009