Method and system for managing congestion in a network
First Claim
1. A system for minimizing congestion of data packets in a communication system comprising:
- at least one ingress system, the ingress system including a first free queue, a first flow queue, a first congestion adjustment module for receiving congestion indications from the free queue and the flow queue, for generating and storing transmit probabilities and for performing per packet flow control actions;
a switch fabric for receiving data packets from the ingress system and for providing a congestion indication to the ingress system; and
at least one egress system for receiving the data from the switch fabric, the egress system including a second free queue;
a second flow queue;
a second congestion adjustment module for receiving congestion indications from the second free queue and the second flow queue, for generating and storing transmit probabilities and for performing per packet flow control actions, and a scheduler for adjusting data packets responsive to the first and second adjustment modules for determining the order and transmission of data packets out of the egress system.
2 Assignments
0 Petitions
Accused Products
Abstract
A system for minimizing congestion in a communication system is disclosed. The system comprises at least one ingress system for providing data. The ingress system includes a first free queue and a first flow queue. The system also includes a first congestion adjustment module for receiving congestion indications from the free queue and the flow queue. The first congestion adjustment module generates end stores transmit probabilities and performs per packet flow control actions. The system further includes a switch fabric for receiving data from the ingress system and for providing a congestion indication to the ingress system. The system further includes at least one egress system for receiving the data from the switch fabric. The egress system includes a second free queue and a second flow queue. The system also includes a second congestion adjustment module for receiving congestion indications from the second free queue and the second flow queue. The second congestion adjustment module generates and stores transmit probabilities and performs per packet flow control actions. Finally, the system includes a scheduler for determining the order and timing of transmission of packets out the egress system and to another node or destination. A method and system in accordance with the present invention provides for a unified method and system for logical connection of congestion with the appropriate flow control responses. The method and system utilizes congestion indicators within the ingress system, egress system, and the switch fabric in conjunction with a coarse adjustment system and fine adjustment system within the ingress device and the egress device to intelligently manage the system.
242 Citations
19 Claims
-
1. A system for minimizing congestion of data packets in a communication system comprising:
-
at least one ingress system, the ingress system including a first free queue, a first flow queue, a first congestion adjustment module for receiving congestion indications from the free queue and the flow queue, for generating and storing transmit probabilities and for performing per packet flow control actions;
a switch fabric for receiving data packets from the ingress system and for providing a congestion indication to the ingress system; and
at least one egress system for receiving the data from the switch fabric, the egress system including a second free queue;
a second flow queue;
a second congestion adjustment module for receiving congestion indications from the second free queue and the second flow queue, for generating and storing transmit probabilities and for performing per packet flow control actions, and a scheduler for adjusting data packets responsive to the first and second adjustment modules for determining the order and transmission of data packets out of the egress system.- View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
a coarse adjustment module for generating and storing transmit probabilities; and
a fine adjustment module which is responsive to the coarse adjustment module for performing per packet flow control actions.
-
-
3. The system of claim 2 wherein the coarse adjustment module comprises a per flow background update module.
-
4. The system of claim 3 wherein the per flow background update module comprises a plurality of queue accounting blocks for receiving congestion indications and for providing current system measurements, and a transmit probability engine coupled to the plurality of queue accounting blocks.
-
5. The system of claim 4 wherein fine adjustment module comprises a per packet action module for receiving the control response.
-
6. The system of claim 3 wherein the per packet module comprises a transmit probability memory for receiving current system measurements, packet classification information and transmit probability information, a comparator coupled to the transmit probability memory, a random number generator coupled to the comparator and a transmit block coupled to the comparator, for receiving the current system measurements and the packet classification information.
-
7. The system of claim 5 wherein each of the ingress system and egress system includes at least one per bit rate module, the at least one per bit rate module for providing a congestion indication to its associated per packet action module.
-
8. The system of claim 5 wherein the first free queue provides a congestion indication to its associated per packet action module.
-
9. The system of claim 5 wherein the second free queue provides a congestion indication to its associated per packet action module.
-
10. The system of claim 1 wherein the second free queue provides a congestion indication to the first free queue.
-
11. The system of claim 1 wherein each of the ingress system, egress system and switch fabric include a memory coupled thereto.
-
12. A system for minimizing congestion of data packets in a communication system comprising:
-
at least one ingress system, the ingress system including a first free queue, a first flow queue, a first congestion adjustment module for receiving congestion indications from the free queue and the flow queue, for generating and storing transmit probabilities and for performing per packet flow control actions;
a switch fabric for receiving data packets from the ingress system and for providing a congestion indication to the ingress system; and
at least one egress system for receiving the data from the switch fabric, the egress system including a second free queue;
a second flow queue;
a second congestion adjustment module for receiving congestion indications from the second free queue and the second flow queue, for generating and storing transmit probabilities and for performing per packet flow control actions, and a scheduler for adjusting data packets responsive to the first and second adjustment modules for determining the order and transmission of data packets out of the egress system wherein each of the first and second congestion adjustment modules comprises;
a per flow background update module for generating and storing transmit probabilities; and
a per packet action module which is responsive to the per flow background update module for performing per packet flow control actions. - View Dependent Claims (13, 14, 15, 16, 17, 18, 19)
-
Specification