QoS Mechanisms in Packet Networks
There are Three Types of QoS Mechanisms in Packet Networks.
- Control Plane Mechanisms
- Data Plane Mechanisms
- Its Tradeoffs
Control Plane Mechanisms
Such mechanisms include QoS policy management, signaling, and admission control. QoS policy management is about defining and provisioning the various levels and types of QoS services, as well as managing which user and application gets what QoS. Figure shows a generalized policy-management system as described by IETF that may be used for managing QoS policies.
The components of the system include
(1) a policy repository, which typically is a directory containing the policy data, such as username, applications, and the network resources to which these are entitled.
(2) policy decision points (PDP), which translate the higher-level policy data into specific configuration information for individual network nodes.
(3) policy enforcement points (PEP), which are the data path nodes that act on the decisions made by the PDP.
(4) protocols for communication among the data store, PDP, and PEP. Examples of these protocols include LDAP (lightweight directory access protocol)  for communication between data source and PDP, and COPS (common open protocol services) for communication between PDP to PEP Signaling is about how a user communicates QoS requirements to a network. Signaling mechanisms may be either static or dynamic. In the static case, the PDP takes the high-level policy information in the policy data and creates configuration information that is pushed down to each PEP that enforces the policies. Policy data is usually created based on service-level agreements (SLA) between the user and the network provider. In the dynamic case, QoS requirements are signaled by the user or application as needed just prior to the data flow. RSVP (resource reservation protocol) is a protocol used for such signaling.
When a request for a certain QoS arrives at the PEP, it checks with the PDP for approval, and, if accepted, allocates the necessary resources for delivering the requested QoS. Admission control, the other important control plane function, is the ability of a network to control admission to new traffic,
based on resource availability. Admission control is necessary to ensure that new traffic is admitted into the network only if such admission will not compromise the performance of existing traffic. Admission control may be done either at each node on a per-hop basis, just at the ingress-edge node, or by a centralized system that has knowledge of the end-to-end network conditions.
Data Plane Mechanisms
These methods enforce the agreed-on QoS by classifying the incoming packets into several queues and allocating appropriate resources to each queue. Classification is done by inspecting the headers of incoming packets; resource allocation is done by using appropriate scheduling algorithms and buffer-management techniques for storing and forwarding packets in each queue. There are fundamentally two different approaches to how these queues are defined. The first approach called per-flow handling, is to have a separate queue for each individual session or flow. In this case, packets belonging to a given session or flow need to be uniquely identified.
For IP traffic, this is typically the five fields in the IP header: source and destination IP addresses, source and destination port addresses, and transport-layer protocol fields. The IntServ methods defined by the IETF use per-flow handling of IP packets. From an end user perspective per-flow handling tends to enhance the experienced quality, since a given session is granted resources independent of other sessions. Perflow handling, however, requires that each network node keep state of individual sessions and apply independent processing, which becomes very difficult or impractical when the number of flows becomes very large, particularly in the core of the network.
The second approach is to classify packets into a few different generic classes and put each class in a different queue. This approach is called aggregate handling, since queues here will consist of packets from multiple sessions or flows. Here again, some form of identification in the packet header is used to determine which aggregate class the packet belongs to. DiffServ and 802.1p are examples of aggregate traffic-handling mechanisms for IP and Ethernet packets, respectively. Aggregate handling reduces the state maintenance and processing burden on network nodes and is much more scalable than per-flow methods. The user-experienced quality, however, may be somewhat compromised, since it is affected by traffic from others.
Both control plane and data plane mechanisms involve trade-offs. Higher complexity in both cases can provide better QoS guarantees. In the control plane, for example, admission-control decisions and resource-allocation efficiency can be improved if the user signals the requirements in greater detail to the network. This, however, increases the signaling load. Enforcing finegrained QoS requirements increases the complexity of the data plane mechanisms, such as scheduling and buffer management. Network designers need to strive for reducing unnecessary complexity while delivering meaningful QoS.