Claims
- 1. A congestion management system for controlling access of data transmission units to a plurality of shared resources, each data transmission unit having a priority level and being associated with a connection, and each shared resource being represented by a partition, the congestion management system including:
(a) a plurality of connection data strictures, each connection data structure representing a connection, and each connection data structure having:
(a1) a connection depth counter which indicates a number of data transmission units currently active on the connection, (a2) a predetermined number of connection priority level thresholds, each connection priority level threshold corresponding to a priority level assignable to a data transmission unit, and each connection priority level threshold being determinative of whether an incoming data transmission unit may be allowed on the connection based on a priority level of the incoming data transmission unit, (a3) a maximum connection threshold indicating a maximum number of data transmission units that may be active at any one time on the connection, and (a4) at least one pointer, the or each pointer referencing a partition associated with a connection represented by the connection data structure; (b) a plurality of partition data structures, each partition data structure representing a partition, and each partition data structure having:
(b1) a partition depth counter which indicates a number of data transmission units currently active on the connection, (b2) a predetermined number of partition priority level thresholds, each partition priority level threshold corresponding to a priority level assignable to a data transmission unit, and each partition priority level threshold being determinative of whether an incoming data transmission unit may be allowed on the connection based on the priority level of the incoming data transmission unit, (b3) a maximum partition threshold indicating a maximum number of data transmission units that may be active at any time on a partition; and (c) processing means for determining whether an incoming data transmission unit is allowed on a specific connection and a specific partition based on the priority level of the incoming data transmission unit, a connection priority level threshold, and a partition priority level threshold, for updating the plurality of connection data structures and updating the plurality of partition data structures when an incoming data transmission unit is allowed.
- 2. A system as defined in claim 1, wherein each connection data structure contains a reserved area, the reserved area having a connection reserved threshold corresponding to a reserved status assignable to a data transmission unit such that a DTU having a reserved status is allowed access to a connection, and the reserved area having an actual reserved depth counter which indicates a number of DTUs currently active in the reserved area.
- 3. A system as defined in claim 2, wherein the congestion management system includes a reserved partition data structure to represent a reserved partition, the reserved partition data structure having a reserved partition depth counter which indicates a number of DTUs currently active in the reserved partition.
- 4. A system as defined in claim 1, wherein the plurality of shared resources includes a pool of buffer memory.
- 5. A system as defined in claim 4, wherein a partition represents an object selected from the group consisting of:
(a) an output port, and (b) an input port.
- 6. A method for controlling access of a data transmission unit to at least one destination, the or each destination is represented by a partition, the data transmission unit being associated with a connection, the method including the steps of:
(a) determining if the data transmission unit can be accepted at the connection, (b) determining if the data transmission unit can be accepted at the or each partition, (c) if the data transmission unit is rejected at either the connection or at least one partition, rejecting the data transmission unit, and (d) if the data transmission unit is accepted at the connection and at the or at all the partitions, accepting the data transmission unit such that the data transmitted unit is granted access to the or each destination.
- 7. A method as defined in claim 6, further including an initial step of determining if the data transmission unit can be accepted at a reserved partition, the initial step being executed prior to step (a), such that if the data transmission unit is accepted at the reserved partition, accepting the data transmission unit such that the data transmitted unit is granted access to the or each destination.
- 8. A method for updating a data traffic management system upon departure of a data transmission unit, the method including:
(a) identifying a connection and at least one partition associated with a departing data transmission unit, (b) decrementing by one a connection depth counter for the connection associated with the data transmission unit; and (c) decrementing by one a partition depth counter for each partition associated with the data transmission unit.
Parent Case Info
[0001] This application relates to U.S. Provisional Patent Application 60/238,038 filed Oct. 6, 2000.
Provisional Applications (1)
|
Number |
Date |
Country |
|
60238038 |
Oct 2000 |
US |