Claims
- 1. A method of performing rate policing and re-marking of one or more data units at an ingress node of a communications network, comprising the steps of:
receiving a data unit in a first data flow at the ingress node; extracting information from a header field of the data unit including an indication of at least one class of service requirement for the first data flow; performing token bucket processing on the data unit to determine whether the data unit conforms to the class of service requirement for the first data flow; in the event the data unit does not conform to the class of service requirement for the first data flow, accessing one of a first plurality of actions to be taken on the non-conforming data unit at the ingress node based at least on the service class requirement of the first data flow, the first plurality of actions including re-marking the data unit with at least one new class of service requirement and dropping the data unit from the network; and in the event the data unit conforms to the class of service requirement for the first data flow, passing the conforming data unit on the network.
- 2. The method of claim 1 further comprising the steps of:
determining whether the first data flow is a sub-flow of an aggregated data flow; in the event the first data flow is a sub-flow of an aggregated data flow:
accessing a class of service requirement for the aggregated data flow, performing token bucket processing on the data unit to determine whether the data unit conforms to the class of service requirement for the aggregated data flow, in the event the data unit does not conform to the class of service requirement for the aggregated data flow, accessing one of a second plurality of actions to be taken on the non-conforming data unit at the ingress node based at least one the service class requirement for the first data flow, the second plurality of actions including re-marking the data unit with at least one new class of service requirement and dropping the data unit from the network; and in the event the data unit conforms to the class of service requirement for the aggregated data flow, passing the conforming data unit on the network.
- 3. The method of claim 1 wherein the extracting step includes extracting an indication of the length of the data unit from the data unit header field.
- 4. The method of claim 3 wherein the performing step includes accessing a token bucket value for the first data flow and subtracting the data unit length from the token bucket value.
- 5. The method of claim 1 wherein the accessing step includes accessing one of the first plurality of actions from an action table.
- 6. The method of claim 5 wherein the accessing step includes accessing one of the first plurality of actions from the action table using the indication of the service class requirement for the first data flow as at least part of a read address.
- 7. The method of claim 2 wherein the second performing step includes accessing a token bucket value for the aggregated data flow and subtracting the data unit length from the token bucket value for the aggregated data flow.
- 8. The method of claim 2 wherein the second accessing step includes accessing one of the second plurality of actions from an action table.
- 9. The method of claim 8 wherein the second accessing step includes accessing one of the second plurality of actions from the action table using the indication of the service class requirement for the first data flow as at least part of a read address.
- 10. The method of claim 1 wherein the receiving step includes receiving respective data units in a plurality of first data flows at the ingress node, the respective data units being received using fair queuing.
- 11. An apparatus for performing rate policing and re-marking of one or more data units at an ingress node of a communications network, comprising:
a switch configured to receive a data unit in a first data flow at the ingress node, extract information from a header field of the data unit including an indication of at least one class of service requirement for the first data flow, and pass the data unit on the network in the event the data unit conforms to the class of service requirement for the first data flow; and rate policing and re-marking logic configured to perform token bucket processing on the data unit to determine whether the data unit conforms to the class of service requirement for the first data flow, access one of a first plurality of actions to be taken on the data unit at the ingress node based at least on the service class requirement of the first data flow in the event the data unit does not conform to the class of service requirement for the first data flow, wherein the first plurality of actions includes re-marking the data unit with at least one new class of service requirement and dropping the data unit from the network.
- 12. The apparatus of claim 11 wherein the rate policing and re-marking logic is further configured to
determine whether the first data flow is a sub-flow of an aggregated data flow, in the event the first data flow is a sub-flow of an aggregated data flow:
access a class of service requirement for the aggregated data flow, perform token bucket processing on the data unit to determine whether the data unit conforms to the class of service requirement for the aggregated data flow, in the event the data unit does not conform to the class of service requirement for the aggregated data flow, access one of a second plurality of actions to be taken on the non-conforming data unit at the ingress node based at least one the service class requirement for the first data flow, the second plurality of actions including re-marking the data unit with at least one new class of service requirement and dropping the data unit from the network; and wherein the switch is further configured to pass the data unit on the network in the event the data unit conforms to the class of service requirement for the aggregated data flow.
- 13. The apparatus of claim 11 wherein the rate policing and re-marking logic is further configured to access one of the first plurality of actions from an action table using the indication of the service class requirement for the first data flow as at least part of a read address.
- 14. The apparatus of claim 13 wherein the action table includes a plurality of data entries, each data entry comprising a plurality of action fields for the first data flow.
- 15. The apparatus of claim 12 wherein the rate policing and re-marking logic is further configured to access one of the second plurality of actions from an action table using the indication of the service class requirement for the first data flow as at least part of a read address.
- 16. The apparatus of claim 15 wherein the action table includes a plurality of data entries, each data entry comprising a plurality of action fields for the aggregated data flow.
CROSS REFERENCE TO RELATED APPLICATIONS
[0001] This application claims priority of U.S. Provisional Patent Application No. 60/264,156 filed Jan. 25, 2001 entitled DUAL USE RATE POLICER AND RE-MARKING LOGIC.
Provisional Applications (1)
|
Number |
Date |
Country |
|
60264156 |
Jan 2001 |
US |