Frame based quality of service
First Claim
1. A method of providing quality of service levels to received data units, comprising:
- assigning a plurality of virtual connections to a first quality of service group;
associating at least a first quality of service level with said first quality of service group;
allocating at least a first resource for processing data units received over said plurality of virtual connections, said first resource sufficient to support said first quality of service level with respect to received data units associated with said plurality of virtual connections;
assigning at least one virtual connection to a second quality of service group, said at least one virtual connection not one of said plurality of virtual connections;
associating a second quality of service level with said second quality of service group;
allocating at least a second resource for processing data units received over said at least one virtual connection, said second resource sufficient to support said second quality of service level with respect to received data units associated with said at least one virtual connection;
preventing said second resource from being used to process said received data units associated with said first quality of service group;
receiving a request to establish a new virtual connection, said request including a third quality of service level;
determining whether said third quality of service level is equal to said first quality of service level;
determining whether said third quality of service is equal to said second quality of service level;
forming, in the event that said third quality of service level is not equal to said first quality of service level and is not equal to said second quality of service level, a third quality of service group;
assigning said third quality of service level to said third quality of service group; and
assigning said new virtual connection to said third quality of service group.
2 Assignments
0 Petitions
Accused Products
Abstract
A system and method for providing QoS levels to received data units, such as ATM cells and/or Frame Relay Frames. A QoS level associated with a virtual connection is supported through allocation and management of resources used to process data units received over the connection. Resources used to support QoS levels are assigned to groups of connections referred to as “QoS groups”. Resources used to support one group of connections may be isolated from resources supporting other connections. When a connection is established, if a QoS group exists having the QoS level of the new connection, the connection may be added to that QoS group. Similarly, where the QoS levels for multiple connections must be modified, if those connections are within a single QoS group, then modification of the QoS level for that group would advantageously result in modification of the QoS for each virtual connection within the QoS group.
-
Citations
28 Claims
-
1. A method of providing quality of service levels to received data units, comprising:
-
assigning a plurality of virtual connections to a first quality of service group;
associating at least a first quality of service level with said first quality of service group;
allocating at least a first resource for processing data units received over said plurality of virtual connections, said first resource sufficient to support said first quality of service level with respect to received data units associated with said plurality of virtual connections;
assigning at least one virtual connection to a second quality of service group, said at least one virtual connection not one of said plurality of virtual connections;
associating a second quality of service level with said second quality of service group;
allocating at least a second resource for processing data units received over said at least one virtual connection, said second resource sufficient to support said second quality of service level with respect to received data units associated with said at least one virtual connection;
preventing said second resource from being used to process said received data units associated with said first quality of service group;
receiving a request to establish a new virtual connection, said request including a third quality of service level;
determining whether said third quality of service level is equal to said first quality of service level;
determining whether said third quality of service is equal to said second quality of service level;
forming, in the event that said third quality of service level is not equal to said first quality of service level and is not equal to said second quality of service level, a third quality of service group;
assigning said third quality of service level to said third quality of service group; and
assigning said new virtual connection to said third quality of service group. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
assigning, in the event that said third quality of service level is equal to said first quality of service level, said new virtual connection to said first quality of service group. -
3. The method of claim 1, further comprising
assigning, in the event that said third quality of service level is equal to said second quality of service level, said new virtual connection to said second quality of service group. -
4. The method of claim 1, wherein said received data units are Asynchronous Transfer Mode cells.
-
5. The method of claim 1, wherein said received data units are Frame Relay Frames.
-
6. The method of claim 1, wherein said first quality of service level reflects a delay sensitivity of said received data units associated with each of said plurality of virtual connections.
-
7. The method of claim 1, wherein said first quality of service level reflects a loss sensitivity for said received data units associated with each of said plurality of virtual connections.
-
8. The method of claim 1, wherein said first resource for processing data units received over said plurality of virtual connections includes at least one receive buffer.
-
9. The method of claim 1, wherein said first resource for processing data units received over said plurality of virtual connections includes at least one receive queue.
-
10. The method of claim 1, wherein said first resource for processing data units received over said plurality of virtual connections includes at least one flow control credit.
-
11. The method of claim 1, wherein said first resource for processing data units received over said plurality of virtual connections includes an allocation of output link bandwidth.
-
-
12. A method of providing quality of service levels to received data units, comprising:
-
assigning a plurality of virtual connections to a first quality of service group;
associating at least a first quality of service level with said first quality of service group;
allocating at least a first resource for processing data units received over said plurality of virtual connections, said first resource sufficient to support said first quality of service level with respect to received data units associated with said plurality of virtual connections;
receiving a request to assign a new quality of service level to each of said plurality of virtual connections; and
modifying said first quality of service level to said new quality of service level.
-
-
13. A system for providing quality of service levels to received data units, comprising:
-
a controller operable to assign a plurality of virtual connections to a first quality of service group, associate at least a first quality of service level with said first quality of service group, allocate at least a first resource for processing data units received over said plurality of virtual connections, said first resource sufficient to support said first quality of service level with respect to received data units associated with said plurality of virtual connections, assign at least one virtual connection to a second quality of service group, said at least one virtual connection not one of said plurality of virtual connections, associate a second quality of service level with said second quality of service group, allocate at least a second resource for processing data units received over said at least one virtual connection, said second resource sufficient to support said second quality of service level with respect to received data units associated with said at least one virtual connection, prevent said second resource from being used to process said received data units associated with said at least one virtual connection receive a request to establish a new virtual connection, said request including a third quality of service level, and for determining whether said third quality of service level is equal to said first quality of service level determine whether said third quality of service is equal to said second quality of service level form, in the event that said third quality of service level is not equal to said first quality of service level and is not equal to said second quality of service level, a third quality of service group, assign said third quality of service level to said third quality of service group, and assign said new virtual connection to said third quality of service group. - View Dependent Claims (14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26)
assign, in the event that said third quality of service level is equal to said first quality of service level, said new virtual connection to said first quality of service group. -
15. The system of claim 14, wherein said controller is further operable to
assign, in the event that said third quality of service level is equal to said second quality of service level, said new virtual connection to said second quality of service group. -
16. The system of claim 13, wherein said received data units are Asynchronous Transfer Mode cells.
-
17. The system of claim 13, wherein said received data units are Frame Relay Frames.
-
18. The system of claim 13, wherein said first quality of service level reflects a delay sensitivity for said received data units associated with each of said plurality of virtual connections.
-
19. The system of claim 13, wherein said first quality of service level reflects a loss sensitivity for said received data units associated with each of said plurality of virtual connections.
-
20. The system of claim 13, wherein said first resource for processing data units received over said plurality of virtual connections includes at least one receive buffer.
-
21. The system of claim 13, wherein said first resource for processing data units received over said plurality of virtual connections includes at least one receive queue.
-
22. The system of claim 13, wherein said first resource for processing data units received over said plurality of virtual connections includes at least one flow control credit.
-
23. The system of claim 13, wherein said first resource for processing data units received over said plurality of virtual connections includes an allocation of output link bandwidth.
-
24. The system of claim 13, wherein said controller comprises:
-
a processor;
a memory;
program code, stored in said memory, said program code executable on said processor.
-
-
25. The system of claim 13, wherein said controller comprises:
at least one application specific integrated circuit.
-
26. The system of claim 13, wherein said controller comprises:
at least one field programmable gate array.
-
-
27. A system for providing quality of service levels to received data units, comprising:
-
a controller operable to assign a plurality of virtual connections to a first quality of service group, associate at least a first quality of service level with said first quality of service group, allocate at least a first resource for processing data units received over said plurality of virtual connections, said first resource sufficient to support said first quality of service level with respect to received data units associated with said plurality of virtual connections; and
wherein said controller is further operable to receive a request to assign a new quality of service level to each of said plurality of virtual connections, and to modify said first quality of service level to said new quality of service level.
-
-
28. A system for providing quality of service levels to received data units, comprising:
-
means for assigning a plurality of virtual connections to a first quality of service group;
means for associating at least a first quality of service level with said first quality of service group; and
means for allocating at least a first resource for processing data units received over said plurality of virtual connections, said first resource sufficient to support said first quality of service level with respect to received data units associated with said plurality of virtual connections;
means for assigning at least one virtual connection to a second quality of service group, said at least one virtual connection not one of said plurality of virtual connections;
means for associating a second quality of service level with said second quality of service group;
means for allocating at least a second resource for processing data units received over said at least one virtual connection, said second resource sufficient to support said second quality of service level with respect to received data units associated with said at least one virtual connection;
means for preventing said second resource from being used to process said received data units associated with said at least one virtual connection;
means for receiving a request to establish a new virtual connection, said request including a third quality of service level, and for determining whether said third quality of service level is equal to said first quality of service level;
means for determining whether said third quality of service is equal to said second quality of service level means for forming, in the event that said third quality of service level is not equal to said first quality of service level and is not equal to said second quality of service level, a third quality of service group;
means for assigning said third quality of service level to said third quality of service group; and
means for assigning said new virtual connection to said third quality of service group.
-
Specification