Scalable and dynamic quality of service control
Abstract
Applications and users dynamically make QoS provisioning requests for individual traffic flows traversing client and server hosts. A traffic flow provisioning request is conveyed to a services manager, which determines a set of traffic attributes for the flow and determines the networks the flow traverses between the client and server hosts. The services manger then oversees the admission of the flow to appropriate traffic classes in each determined network and the obtaining of a DSCP value for each network. Lastly, the services manger conveys the DSCP value of the first network traversed back to the client or server host, depending on the direction of the flow, which host is then configured to appropriately mark the DSCP field of the traffic flow packets. In a further embodiment, the services manager also instructs the client or server host to perform packet policing and shaping for the flow.
Claims
exact text as granted — not AI-modified1 . A services manager for managing quality of service (QoS) for traffic flows generated by a plurality of hosts interconnected by one or more networks, wherein at least one of the networks is enabled with a set of traffic classes, the services manager comprising:
means for receiving a QoS provisioning request from a middleware module for any given traffic flow; means for determining traffic attributes for the given traffic flow using a topology database, wherein the traffic attributes include which of the one or more networks the given traffic flow traverses; means for obtaining a DSCP (Differentiated Services Code Point) value for the given traffic flow based on whether the one or more networks the traffic flow traverses is configured to support the flow given the determined traffic attributes; and means for conveying the obtained DSCP value to a first host when the traffic flow is from the first host to a second host.
2 . The services manager of claim 1 , wherein the conveying means further conveys the obtained DSCP value to the second host when the traffic flow is from the second to the first host.
3 . The services manager of claim 1 , wherein the obtained DSCP value corresponds to a determined network.
4 . The services manager of claim 1 , wherein the DSCP obtaining means comprises a network control module for interfacing one or more network control systems, wherein each network control system corresponds to a network that has an enabled set of traffic classes, and wherein each network control system performs admission control for that network by determining if a given traffic class corresponding to the determined traffic attributes has sufficient available bandwidth to support the traffic flow and, if so, returns a DSCP value for that traffic class.
5 . The services manager of claim 4 , wherein the DSCP obtaining means further comprises one or more SLA (service level agreement) control modules, wherein each SLA control module corresponds to a network to which the plurality of hosts have a service level agreement for an enabled set of traffic classes, and wherein each SLA control module performs admission control over the service level agreement for its corresponding network by determining if a given traffic class within the service level agreement and corresponding to the determined traffic attributes has sufficient available bandwidth to support the traffic flow and, if so, returns a DSCP value for that traffic class.
6 . The services manager of claim 1 , wherein the traffic attribute determining means comprises a default QoS database with a plurality of default traffic flow characterizations, and wherein the traffic attribute determining means uses the database to determine a default traffic flow characterization for the given traffic flow and converts the determined default traffic flow characterization to the traffic attributes.
7 . The services manager of claim 6 , wherein the traffic attributes determining means further comprises an alternate QoS database with a plurality of alternate traffic flow characterizations,
wherein the traffic attribute determining means uses the alternate QoS database to determine an alternate traffic flow characterization and thereby alternate traffic attributes, and wherein if the DSCP obtaining means cannot determine a DSCP value given the determined traffic attributes, the obtaining means obtains a DSCP value for the given traffic flow based on whether the networks the traffic flow traverses is configured to support the flow given the determined alternate traffic attributes.
8 . A system at a host for managing quality of service (QoS) for a plurality of traffic flows traversing one or more networks, wherein at least one of the networks is enabled with a set of traffic classes, the system comprising:
a middleware control module for receiving QoS provisioning requests for the plurality of traffic flows and for conveying the requests to a services manager intended for determining which of the one or more networks any given traffic flow of the plurality of traffic flows traverses and for obtaining a DSCP (Differentiated Services Code Point) value that corresponds to a determined network that is traffic class enabled and is the first network the any given traffic flow traverses, and wherein the middleware control module is for receiving the determined DSCP values for one or more of the traffic flows generated by the host, and means responsive to the middleware control module for using the DSCP values for the one or more of the traffic flows generated by the host to mark the transmitted packets corresponding to these traffic flows.
9 . The system of claim 8 , further comprising a policy enforcement module for policing and packet shaping the transmitted packets corresponding to one or more of traffic flows generated by the host.
10 . The system of claim 8 , further comprising means for conveying the obtained DSCP value to a second host when the traffic flow is from the second to the first host.
11 . The system of claim 8 , further comprising:
means for determining a default traffic characterization for the given traffic flow based on a flow identification in the provisioning request, and means for converting the default traffic characterization into the traffic attributes.
12 . The system of claim 8 , comprising:
means for determining an alternate traffic flow characterization for the given traffic flow, means for converting the default traffic characterization into alternate traffic attributes, and means for obtaining a DSCP value for the given traffic flow based on whether the one or more networks the traffic flow traverses is configured to support the flow given the determined alternate traffic attributes.
13 . A system for managing quality of service (QoS) for traffic flows generated by a plurality of hosts separated by one or more networks, wherein at least one of the networks is enabled with a set of traffic classes, the system comprising:
a services manager, and a middleware module at least one of the plurality of hosts, wherein the middleware module at the one host receives a QoS request for a traffic flow the host generates and conveys a QoS provisioning request to the services manager upon receiving the QoS request for the traffic flow, and wherein the services manager receives the QoS provisioning request from the middleware module, obtains a DSCP (Differentiated Services Code Point) value for the traffic flow only if it is determined that the one or more networks the traffic flow traverses is configured to support the flow, and if the DSCP value is obtained, conveys the obtained DSCP value for the traffic flow to the middleware module, and wherein the middleware module uses the obtained DSCP value received from the services manager to mark the DSCP field of packets of the traffic flow; wherein the services manager, upon receiving the QoS provisioning request, determines the one or more networks the traffic flow traverses, and as part of obtaining the DSCP value further determines if for each traffic class enabled network the traffic flow traverses there is sufficient bandwidth in a traffic class to support the traffic flow; and wherein the QoS request contains an identification of the traffic flow and wherein the middleware module conveys this identification to the services manager as part of the QoS provisioning request.
14 . The system of claim 13 , wherein the services manager, upon receiving the QoS provisioning request, determines a default traffic flow characterization for the traffic flow based on the traffic flow identification, and uses the default traffic flow characterization to obtain a DSCP value by determining if the one or more networks the traffic flow traverses is configured to support the flow based on the characterization.
15 . The system of claim 13 , wherein if the services manager cannot obtain a DSCP value based on the determined default traffic flow characterization, the services manager determines an alternate traffic flow characterization for the traffic flow based on the traffic flow identification, and uses the determined alternate traffic flow characterization to obtain a DSCP value by determining if the one or more networks the traffic flow traverses is configured to support the flow based on the alternate characterization.
16 . The system of claim 13 , further comprising a policy enforcement module at least one of the plurality of hosts, wherein the one host containing the policy enforcement module generates a second traffic flow, and wherein the middleware module receives a QoS request for the second traffic flow and conveys a QoS provisioning request to the services manager upon receiving the QoS request for the second traffic flow.
17 . The system of claim 16 , wherein the services manager obtains a DSCP value for the second traffic flow if the networks the second traffic flow traverses can support the flow, and if the DSCP value for the second traffic flow is obtained, conveys the obtained DSCP value for the second traffic flow to the policy enforcement module.
18 . The system of claim 16 , wherein the policy enforcement module uses the obtained DSCP value received from the services manager to mark the DSCP field of packets of the second traffic flow.
19 . The system of claim 16 , wherein the services manager further conveys, when a DSCP value is obtained for the second traffic flow, packet policing and packet shaping instructions to the policy enforcement module, and wherein the policy enforcement module uses the packet policing and packet shaping instructions received from the services manager to police and shape the packets of the second traffic flow.
20 . The system of claim 13 , further comprising a policy enforcement module at the one host, and wherein when the DSCP value is obtained for the traffic flow, the services manager further conveys packet policing and packet shaping instructions to the policy enforcement module, and the policy enforcement module uses the packet policing and packet shaping instructions received from the services manager to police and shape the packets of the traffic flow.Cited by (0)
No later patents cite this yet.
References (0)
No backward citations on record.