Apparatus and methods to change thresholds to control congestion in ATM switches
DCFirst Claim
Patent Images
1. A method for processing cells in an ATM switch, the method comprising:
- creating one or more queues for the cells;
determining a region ID for the one or more queues, wherein the range of the possible number of cells in the one or more queues is subdivided into regions and the region ID identifies the region containing the current number of cells in the one or more queues;
determining a threshold for the number of cells from the region ID in order to control congestion of the switch; and
changing the threshold when the region ID changes so that threshold changes inversely depending on the number of cells.
8 Assignments
Litigations
0 Petitions
Accused Products
Abstract
In an ATM switch, queue thresholds vary dynamically depending on switch congestion. All the queues are organized in one or more classes. The thresholds for each class depend inversely on the number of cells in all the queues of the class.
100 Citations
32 Claims
-
1. A method for processing cells in an ATM switch, the method comprising:
-
creating one or more queues for the cells; determining a region ID for the one or more queues, wherein the range of the possible number of cells in the one or more queues is subdivided into regions and the region ID identifies the region containing the current number of cells in the one or more queues; determining a threshold for the number of cells from the region ID in order to control congestion of the switch; and changing the threshold when the region ID changes so that threshold changes inversely depending on the number of cells. - View Dependent Claims (2, 3, 4, 5, 6, 7, 9, 10, 11, 12, 22)
-
-
8. A method for processing cells in an ATM switch, the method comprising:
-
creating a plurality of queues for the cells; setting a threshold for the number of cells in order to control congestion of the switch; and changing the threshold depending on congestion of the switch; wherein the threshold is a discard threshold such that when any cell C1 arrives for any queue Q1 which is one of the queues, and when the total number of cells in the queue Q1 exceeds the threshold, then; if the cell C1 arrives in the frame based operation mode in which each frame of cells from one input virtual channel (IVC) is transmitted to a destination port or sub-port without any intervening cells from other IVCs or frames, and the cell C1 is the first cell in a frame, then the whole frame is discarded, but if the cell C1 is not the first in a frame and a previous cell in the frame was not discarded, then the cell C1 is not discarded; if the cell C1 arrives in the normal mode with the cell loss priority flag CLP=1, the cell is discarded, but if CLP=0, the cell is not discarded.
-
-
13. An ATM switch comprising:
-
a circuit for creating one or more queues for cells; a circuit for determining a region ID for the one or more queues, wherein the range of the possible number of cells in the one or more queues is subdivided into regions and the region ID identifies the region containing the current number of cells in the one or more queues; and a circuit for determining a threshold for the number of cells from the region ID in order to control congestion of the switch so that the threshold changes inversely depending on the number of cells when the region ID changes. - View Dependent Claims (14, 15, 16, 17, 18, 19, 21)
-
-
20. An ATM switch comprising:
-
a circuit for creating a plurality of queues for cells; a circuit for setting a threshold for the number of cells in order to control congestion of the switch; and a circuit for changing the threshold depending on congestion of the switch; wherein the threshold is a discard threshold such that when a cell C1 arrives for any queue Q1 which is one of the queues, and the total number of cells in the queue Q1 exceeds the threshold, then; if the cell C1 arrives in the frame based operation mode in which each frame of cells from one input virtual channel (IVC) is transmitted to a destination port or sub-port without any intervening cells from other IVCs or frames, and the cell C1 is the first cell in a frame, then the whole frame is discarded, but if the cell C1 is not the first in a frame and a previous cell in the frame was not discarded, then the cell C1 is not discarded; if the cell C1 arrives in the normal mode with the cell lost priority flag CLP=1, the cell is discarded, but if CLP=0, the cell is not discarded.
-
-
23. An ATM switch comprising:
-
a circuit for creating a plurality of classes of queues for ATM cells; a circuit for providing a class ID that identifies the class containing the queue for an incoming cell; a class counter table for storing a class counter for each class, wherein the class counter is a current number of cells in each class, and for providing a class counter in response to a class ID; a region ID table for storing a current region ID for each class, wherein the range of the possible number of cells in each class is subdivided into regions and the region ID for each class identifies the region containing the current number of cells in the class, the region ID table being for providing a region ID in response to a class ID; one or more limit tables for storing upper and lower limits for each region of each class, and for providing the upper and lower limits in response to a class ID and a region ID; and a circuit for comparing a class counter with the upper and lower limits and for changing the respective region ID when the class counter indicates that the region ID is to be changed. - View Dependent Claims (24, 25)
-
-
26. A method for processing cells in an ATM switch, the method comprising:
-
creating a plurality of classes of queues for ATM cells; providing a class ID that identifies the class containing the queue for an incoming cell; a class counter table storing a current number of cells in each class and providing the class counter in response to the class ID; a region ID table storing a current region ID for each class, wherein the range of the possible number of cells in each class is subdivided into regions and the region ID for each class identifies the region containing the current number of cells in the class, the region ID table providing the region ID for the incoming cell in response to the cell'"'"'s class ID; one or more limit tables storing upper and lower limits for each region of each class, and providing the upper and lower limits in response to the class ID and the region ID of the incoming cell; and comparing a class counter with the upper and lower limits and changing the respective region ID if the class counter indicates that the region ID is to be changed. - View Dependent Claims (27, 28)
-
-
29. A method for processing network data in a network routing apparatus, the method comprising:
-
creating one or more queues for the network data; determining a region ID for the one or more queues, wherein the range of the possible amount of data in the one or more queues is subdivided into regions and the region ID identifies the region containing the current amount of data in the one or more queues; determining a threshold for the amount of data from the region ID in order to control congestion of the apparatus; and changing the threshold when the region ID changes so that the threshold changes inversely depending on the amount of data. - View Dependent Claims (30)
-
-
31. A network routing apparatus comprising:
-
a circuit for creating one or more queues for network data; a circuit for determining a region ID for the one or more queues, wherein the range of the possible amount of data in the one or more queues is subdivided into regions and the region ID identifies the region containing the current amount of data in the one or more queues; and a circuit for determining a threshold for the amount of data from the region ID in order to control congestion of the apparatus so that the threshold changes inversely depending on the amount of data when the region ID changes. - View Dependent Claims (32)
-
Specification