Congestion management for packet routers
First Claim
1. A method of regulating packet flow to a downstream entity capable of forwarding packets to a plurality of intermediate destinations, the method comprising:
- maintaining a database of queues, each queue in the database being associated with packets intended to be forwarded to a corresponding one of a plurality of final destinations via a corresponding one of the intermediate destinations, each queue in the database being further associated with a state that is either active or inactive;
upon receipt of a message from the downstream entity indicating a reduced ability of a particular one of the intermediate destinations to accept packets intended to be forwarded to a particular one of the final destinations, rendering inactive the state of the queue associated with packets intended to be forwarded to the particular final destination via the particular intermediate destination; and
upon receipt of a message from the downstream entity indicating an increased ability of a particular one of the intermediate destinations to accept packets intended to be forwarded to a particular one of the final destinations, rendering active the state of the queue associated with packets intended to be forwarded to the particular final destination via the particular intermediate destination.
8 Assignments
0 Petitions
Accused Products
Abstract
A method and system for regulating packet flow to a downstream entity capable of forwarding packets to a plurality of intermediate destinations. The method includes maintaining a database of queues, each queue in the database being associated with packets intended to be forwarded to a corresponding one of a plurality of final destinations via a corresponding one of the intermediate destinations. Each queue in the database is further associated with a state that is either active or inactive. Upon receipt of a message from the downstream entity indicating a reduced (increased) ability of a particular one of the intermediate destinations to accept packets intended to be forwarded to a particular one of the final destinations, the method provides for rendering inactive (active) the state of the queue associated with packets intended to be forwarded to the particular final destination via the particular intermediate destination.
83 Citations
42 Claims
-
1. A method of regulating packet flow to a downstream entity capable of forwarding packets to a plurality of intermediate destinations, the method comprising:
-
maintaining a database of queues, each queue in the database being associated with packets intended to be forwarded to a corresponding one of a plurality of final destinations via a corresponding one of the intermediate destinations, each queue in the database being further associated with a state that is either active or inactive;
upon receipt of a message from the downstream entity indicating a reduced ability of a particular one of the intermediate destinations to accept packets intended to be forwarded to a particular one of the final destinations, rendering inactive the state of the queue associated with packets intended to be forwarded to the particular final destination via the particular intermediate destination; and
upon receipt of a message from the downstream entity indicating an increased ability of a particular one of the intermediate destinations to accept packets intended to be forwarded to a particular one of the final destinations, rendering active the state of the queue associated with packets intended to be forwarded to the particular final destination via the particular intermediate destination. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30)
-
-
31. A congestion manager for regulating packet flow to a downstream entity capable of forwarding packets to a plurality of intermediate destinations, comprising:
-
means for maintaining a database of queues, each queue in the database being associated with packets intended to be forwarded to a corresponding one of a plurality of final destinations via a corresponding one of the intermediate destinations, each queue in the database being further associated with a state that is either active or inactive;
means for rendering inactive, upon receipt of a message from the downstream entity indicating a reduced ability of a particular one of the intermediate destinations to accept packets intended to be forwarded to a particular one of the final destinations, the state of the queue associated with packets intended to be forwarded to the particular final destination via the particular intermediate destination; and
means for rendering active, upon receipt of a message from the downstream entity indicating an increased ability of a particular one of the intermediate destinations to accept packets intended to be forwarded to a particular one of the final destinations, the state of the queue associated with packets intended to be forwarded to the particular final destination via the particular intermediate destination.
-
-
32. A computer readable storage medium containing a program element for execution by a computing device to implement a congestion manager for regulating packet flow to a downstream entity capable of forwarding packets to a plurality of intermediate destinations, the program element including:
-
program code means for maintaining a database of queues, each queue in the database being associated with packets intended to be forwarded to a corresponding one of a plurality of final destinations via a corresponding one of the intermediate destinations, each queue in the database being further associated with a state that is either active or inactive;
program code means for rendering inactive, upon receipt of a message from the downstream entity indicating a reduced ability of a particular one of the intermediate destinations to accept packets intended to be forwarded to a particular one of the final destinations, the state of the queue associated with packets intended to be forwarded to the particular final destination via the particular intermediate destination; and
program code means for rendering active, upon receipt of a message from the downstream entity indicating an increased ability of a particular one of the intermediate destinations to accept packets intended to be forwarded to a particular one of the final destinations, the state of the queue associated with packets intended to be forwarded to the particular final destination via the particular intermediate destination.
-
-
33. A congestion manager capable of forwarding packets to a plurality of intermediate destinations, comprising:
-
a queue processor for maintaining information on a plurality of queues, each queue being associated with packets intended to be forwarded to a corresponding one of a plurality of final destinations via a corresponding one of the intermediate destinations; and
a controller in communication with the queue processor;
said controller being adapted to maintain information on a state of each queue, the state of a queue being either active or inactive;
said controller being further adapted to respond to a message from a particular one of the intermediate destinations indicative of a reduced ability of the particular intermediate destination to accept packets intended to be forwarded to a particular one of the final destinations by rendering inactive the state of the queue associated with packets intended to be forwarded to a particular one of the final destinations via the particular intermediate destination; and
said controller being further adapted to respond to a message from a particular one of the intermediate destinations indicative of an increased ability of the particular intermediate destination to accept packets intended to be forwarded to a particular one of the final destinations by rendering active the state of the queue associated with packets intended to be forwarded to a particular one of the final destinations via the particular intermediate destination. - View Dependent Claims (34, 35, 36, 37)
-
-
38. A method of regulating packet flow to a downstream entity capable of forwarding packets to a plurality of intermediate destinations, the method comprising:
-
maintaining a database of queues, each queue in the database being associated with packets of a corresponding one of a plurality of service classes intended to be forwarded to a corresponding one of a plurality of final destinations via a corresponding one of the intermediate destinations, each queue in the database being further associated with a state that is either active or inactive;
upon receipt of a message from the downstream entity indicating a reduced ability of a particular one of the intermediate destinations to accept packets of a particular one of the service classes intended to be forwarded to a particular one of the final destinations, rendering inactive the state of the queue associated with packets of the particular service class intended to be forwarded to the particular final destination via the particular intermediate destination; and
upon receipt of a message from the downstream entity indicating an increased ability of a particular one of the intermediate destinations to accept packets of a particular one of the service classes intended to be forwarded to a particular one of the final destinations, rendering active the state of the queue associated with packets of the particular service class intended to be forwarded to the particular final destination via the particular intermediate destination. - View Dependent Claims (39, 40, 41, 42)
-
Specification