4 Internet QoS Management Rolf Stadler School of Electrical Engineering KTH Royal Institute of Technology stadler@ee.kth.se September 2008 Overview Network Management Performance Mgt QoS Mgt Resource Control Mechanisms Service Quality Network Resources Resource abstractions 1
Outline 4.1 Communication resources on the Internet Quality of Service (QoS) of network services 4.2 The critical resources on a router 4.3 Internet flows with QoS 4.4 Multiclass networks Providing QoS in multiclass networks 4.5 Performance management in a multiclass network A DiffServ management architecture Elements of a generic architecture QoS Management QoS management deals with allocating network resources to services in order to meet service-level objectives in an efficient way. In this course, we focus on QoS on the IP network layer. QoS management is part of performance management. Performance management, specifically network planning and provisioning involve other layers than the network layer: E.g., optical networks for physical layer service, or access networks for link layer service. 2
The traditional Internet Service The network performs best-effort packet delivery. No guarantee that a packet is delivered within a certain time, or delivered at all. However, there is a fairness principle: All packets are treated the same way. Performance management primarily consists of monitoring the network links for high/low utilization; (re-) configuring the routing mechanism; adding and upgrading links if needed. Quality of Service (QoS) on the Internet Many applications have specific performance requirements vis-à-vis the network service, such as min. bandwidth and bounds on end-to-end delay and packet loss. These requirements are called QoS requirements. QoS mechanisms are control mechanisms that allow to differentiate the traffic, i.e., give certain traffic (packets) better service than other traffic. provide performance guarantees to certain traffic, generally in a statistical sense. Giving performance guarantees to traffic implies allocating network resources to that traffic. Most Internet Service Providers (ISPs) do not apply explicit QoS control. They attempt achieving QoS through over-provisioning. 3
(Simplified) Functional Model of a Router (1) Input Port Output Port/Multiplexer Routing Table Process S Serves input buffers. Examines packet headers. Performs route lookup Switches packets to output port. Input Link Input Buffer Output Buffer Output Link Functional Model of a Router (2) A router can be seen as a packet processor, operating on serveral streams of IP packets at the same time. The previous slide gives a simplified model, allowing for many hardware and software realizations. The resources related to router are link capacity (bits/sec), buffer capacity (bytes), switching capacity (packets/sec). The critical resources, i.e., potential performance bottlenecks, are located at the output ports; specifically, link capacity and buffer space on the outgoing links. 4
Output Port of a Router (1) Buffer Manager Output Buffer Link Scheduler Output Link Process S Output Port of a Router (2) Output port (multiplexer) is location of critical resources regarding packet-level QoS. It contains two control mechanisms: Buffer manager and link scheduler. Buffer manager manages buffer space. Inserts packets into output buffer. Drops packets in case of buffer overflow. Simplest policy is FIFO; more complex policies to support specific QoS requirements. Link scheduler manages transmission time on ouput link. Selects the packet in buffer that is transmitted next. Simplest policy is FCFS; more complex policies to to support specific QoS requirements. 5
Flows with QoS (Quality of Service) Many applications, such as video and audio, are based on flows rather than single packets. Concept of a flow in a packet-switched network Is similar to a call in traditional telephone networks. A flow consists of a sequence of packets with same flowid in IP header and with max interarrival time. The 4-tuple (sourceip, sourceport, destip, destport) can be used as flowid. Flows have performance characteristics, e.g., peak rate, average rate. Flows have QoS requirements, e.g., bounds on end-to-end delay, loss, and mimimal throughput for packets. How to Support QoS for Flows Isolate flows Resource allocation per flow Buffer allocation, configuring scheduling on routers per flow during flow setup phase Admission control per flow and (often) per output port Aggregate flows into classes Resource allocation per class Flows with identical (or similar) performance characteristics and QoS requirements are assigned to the same class. Buffer allocation, scheduling on routers per class during provisioning phase Admission control per flow at network ingress point For per-flow resource allocation, resources are reserved at run-time, every time a flow is established. Example of a protocol for this purpose: RSVP. Per-class resource allocation is configured in the provisioning phase and adjusted at run-time through management protocols, such as SNMP. 6
Multiclass Networks The reason for having multiclass networks: Guaranteeing QoS for aggregate flows requires less complex control mechanisms than for single flows. All packets within an aggregated flow are treated the same way. Multiclass networks can support several best-effort and guaranteed services at the same time. To provide QoS guarantees to flows, admission control is performed at the edge of the network. Differentiated Services (DiffServ) is an Internet standard for a multiclass network. An complement/alternative to DiffServ is MPLS (multiprotocol label switching). While DiffServ differentiates through buffer management and scheduling, MPLS does so through routing. DiffServ as a Multiclass Internet Service Each service class is identified by a 6-bit DSCP (DiffServ Code Point) in the IP header. Upon entering a DiffServ domain, each packet is marked with a DSCP. Buffer management and scheduling policies for each class determined by PHBs (per-hop behaviors). Two types of routers in a DiffServ domain: (1) edge routers, which mark and police entering packets; (2) core routers, which enforce the PHBs. 7
DiffServ Service Classes and QoS Control Mechanism Mapping DSCP to Per Hop Behavior (PHB). Traffic Control Blocks (TCBs) used to implement packet classification and PHB. Functional Model of a DiffServ Router TCBs are attached to input ports and/or output ports of routers. (The Routing module corresponds to the process S in previous slide.) Ingress routers have Ingress TCBs to mark packets. Core routers have Egress TCBs to implement per-hop-behavior. 8
DiffServ Service Classes Service classes Expedited Forwarding (EF): hard quantitative guarantees, suitable for real-time, inelastic traffic Assured Forwarding (AF1-4): relative qualitative guarantees Best Effort Suggested scheduling policies Priority queuing among EF, AF, and Best Effort queues Weighted fair queuing within AF among AFx queues Monitoring End-to-end Aggregated Flows in a DiffServ Network A (sourceip, destip) and DSCP define an aggregated flow with ingress and egress points. The router MIB II allow to determine the flow paths. The router DiffServ MIBs provide the local performance metrics for each aggregated flow, from which the endto-end performance metrics are computed. See [Kim 00] for details. 9
QoS Management of Multiclass Networks Goal of QoS Management Achieve QoS objectives of user traffic. Use networking resources efficiently. Provisioning phase Predict traffic matrix (demand) and estimate network resources needed. Configure the mapping of user traffic to service classes. Configure, for each class, buffers, schedulers, etc. (i.e., assign resources to classes) Configure flow admission control. Configure network routes. Operational phase Monitor traffic matrix. Monitor QoS for each class. Adjust allocation of network resources to classes according to changes in traffic matrix and management objectives. Elements of a QoS Management Architecture for a Multiclass Network A QoS architecture can be built as a feedback control system with the resource controllers as the managed system. Functionality of the architecture Change QoS objectives of service classes Change communication resources allocated to service classes In this example We focus on managing flow admission controllers. There is one flow admission controller per output port (link). The system achieves local QoS objectives per service class, on the packet and flow levels. The discussion is qualitative. For more details and a quantitative discussion see, see [Chan 97] and [Hyman 93]. 10
A Management Architecture with Monitor-Control Loop Control Management Application Monitoring Management Parameters Global State Map Management to Control Parameters Create Abstractions Management System Control Parameters Service Delivery System (Network) Example: Changing the Allocation of Network Resources to service Classes Continuous monitoring States of link admission controllers (dots in window on left side) Control operation Changing the max allowable blocking rate for flows changes the allocation of network resources. This change is realized in the prototype network by modifying the control parameters of the link admission controllers. 11
Scenario Description The network supports three service classes, with flows for video, audio and data communication. A window shows the states of all link admission controllers as 3-dim vectors. Each dimension indicates the number of active flows of a particular class on a link. The panel shows the max. allowable blocking rates for all classes. Initial state The system is highly loaded. The load is steady. Management action The blocking rate for voice flows is increased. Result The operating point of the network changes. As audio flows leave the network, they are (likely) replaced by video or data flows. The QoS objectives of the audio class is decreased. Network resources are transferred from audio to other classes. 12
Schedulable Region: An Abstraction for the Capacity of an Output Port number of class II flows Example: Class I: Characteristics: max 64 kb/s, QoS: < 1ms, < 10e-2 Class II: Characteristics: max 1 Mb/s, QoS: < 2ms, < 10e-6 Boundary fixed rate allocation Boundary of Schedulable Region (local QoS requirements guaranteed) system state number of class I flows 13
The Schedulable Region (2) The schedulable region abstracts the capacity of an output port in a multiclass network. It defines all system states for which the local QoS requirements for all flows can be met. The previous slide shows the case of two classes of flows. An extension to n>2 classes is straightforward [Chan 97]. The boundary of the schedulable regions can be computed via simulation or can be estimated in real-time. The schedulable region can be used to characterize the link capacity for an admission controller. For details see [Hyman 93]. Generic Model of a Resource Controller The L-E Model Control Parameters State Abstractions Request Intensities Legislator Resource Capacity Intensity Estimator Control Policy Capacity Estimator Request Request Response Executor Resource State 14
The L-E Model Is a design of a manageable resource control system. Legislator optimizes an objective function, produces a local control policy, according to which resources are allocated by the Executor. Operates on two time scales Legislator on a slow time scale, Executor on a fast time scale, is triggered by requests. Management Interface Control parameters for sub components and state abstractions Can be implemented on a single machine or in a distributed way with legislator and executor running on different machines. For details see [Chan97]. Application of L-E Model to a Link Admission Controller Control parameters (set by management system): Blocking constraintsh per class, revenue generated by flow, time scale of executing legislator, etc. Resource capacity: schedulable region. Resource state: number of flows of each class currently on the link. Control policy: set of allowable (resource states) and allowable transitions between those states. Request intensities: rate of accepted and rejected flow requests. Legislator: objective functions that maximizes an expected system utility while observing QoS requirements on the packet level and the flow level. 15
Managing the communication resources of a multimedia network [Chan97]. (a) operator interface; (b) management parameters; (c) performance management subsystem; (d) control parameters; (e) resource control subsystem. For Further Study DiffServ management: [Kim 00] Jae-Young Kim, Won-Ki Hong, Sook-Hyun Ryu and Tae-Sang Choi, "Constructing End-to-End Traffic Flows for Managing Differentiated Services Networks", Proc. of the 11th IFIP/IEEE International Workshop on Distributed Systems: Operations and Management (DSOM 2000), Austin, TX, USA, December 2000, pp. 83-94. Schedulable region and L-E model: [Chan 97] M.C. Chan, G. Pacifici and R. Stadler, "Managing multimedia network services," Journal of Network and Systems Management (JNSM), Vol. 5, No. 3, 1997. In-depth treatment of schedulable region concept: [Hyman 93] Hyman, J.M.; Lazar, A.A.; Pacifici, G.: A separation principle between scheduling and admission control for broadband switching, Selected Areas in Communications, IEEE Journal on, Volume: 11 Issue: 4, May 1993, pp. 605 616. 16