Quality of Service Outline Realtime Applications Integrated Services Differentiated Services MPLS 1 Realtime Applications • Realtime applications raise new challenges for Internet, which is originally designed for data applications. • Require “deliver on time” assurances – must come from inside the network Microphone Sampler, A D converter Buffer, D A Speaker • Example application (audio) – – – – sample voice once every 125us each sample has a playback time packets experience variable delay in network add constant factor to playback time: playback point 2 Playback Buffer Sequence number Packet arrival Packet generation Playback Network delay Buffer Time 3 Example Distribution of Delays 90% 97% 98% 3 99% 2 1 50 100 150 200 Delay (milliseconds) 4 Taxonomy Applications Elastic Real time Intolerant T olerant Nonadaptive Adaptive Rate adaptive Delay adaptive 5 Type of QoS • ATM classify the QoS services provided to the user into five categories: – CBR: constant bit rate service, e.g., telephony. – RT-VBR: real-time variable bit rate service, e.g., compressed videoconferencing. – NR-VBR: non real-time variable bit rate service, e.g., watch a movie on internet. – ABR: available bit rate service, e.g., file transfer. – UBR: unspecified bit rate service, e.g., web browsing. 6 Two Approaches to QoS • Fine-grained: – Integrated Service (RSVP), ATM • Coarse-grained: – Differentiated Service (Class-Based) 7 Integrated Services • Service Classes – Guaranteed • Provides hard bound for delay, bandwidth, etc – controlled-load • Emulate lightly loaded network • Mechanisms – – – – signaling protocol (request reservation) admission control (accept reservation) packet scheduling (implement reservation) policing (enforce reservation) 8 Flowspec • Provides information about traffic to the network • Rspec: describes service requested from network – controlled-load: no parameter – guaranteed: delay target • Tspec: describes flow’s traffic characteristics – average bandwidth + burstiness 9 Token Bucket • Used for charactering user traffic, two parameters – token rate r – bucket depth B • Mechanism – must have a token to send a byte, must have n tokens to send n bytes – accumulate tokens at rate of r per second – can accumulate no more than B tokens – maximum burst duration (D) is governed by the following equality: B+ D*r = D*L, where L is the link transmission speed. 10 Per-Router Mechanisms • Admission Control – decide if a new flow can be supported • to make such decision, a traffic source offers a flow specification, which routers translate into resource usage and make the admission decision – answer depends on service class – not the same as policing • Packet Processing – classification: associate each packet with the appropriate reservation – scheduling: manage queues so each packet receives the requested service – policing: handling traffic out of flow spec. 11 Reservation Protocol • • • • • • • • • • • Called signaling in ATM Proposed Internet standard: RSVP Consistent with robustness of today’s connectionless model Uses soft state (refresh periodically) Designed to support multicast Receiver-oriented Two messages: PATH and RESV Source transmits PATH messages every 30 seconds Destination responds with RESV message Merge requirements in case of multicast Can specify number of speakers for reserving resources 12 RSVP Example Sender 1 PATH R Sender 2 R PATH RESV (merged) R RESV R R Receiver A RESV Receiver B 13 RSVP versus ATM (Q.2931) • RSVP – – – – – receiver generates reservation soft state (refresh/timeout) separate from route establishment QoS can change dynamically receiver heterogeneity • ATM – – – – – sender generates connection request hard state (explicit delete) concurrent with route establishment QoS is static for life of connection uniform QoS to all receivers 14 Differentiated Services • Problem with IntServ: scalability • Idea: segregate packets into a small number of classes – e.g., premium vs best-effort • Packets marked according to class at edge of network • Core routers implement some per-hop-behavior (PHB) • The classes defined in DiffServ include – – – – expedited forwarding assured forwarding best effort service classes are indicated in the 8-bit IP TOS field 15 Expedited Forwarding (EF) – EF is for applications such as internet telephony. It provides low delay or CBR service – Rate-limit EF packets at the edges – PHB implemented with class-based priority queues or WFQ 16 Diffserv (con’t) • Assured forwarding uses RED drop probabilities to differentiate service qualities, and in or out of profile traffic. The aim is to simulate a lighted loaded network even if the network is congested. • Best effort service does not guarantee any quality of service, packets in this category get whatever bandwidth that is left over after expedited and assured services. 17 DiffServ (cont) • Assured Forwarding (AF) – customers sign service agreements with ISPs – edge routers mark packets as being “in” or “out” of profile – core routers run RIO: RED with in/out P(drop) 1.0 MaxP AvgLen Min out Min in Max out Max in 18 Label Switching and MPLS • Multiprotocol label switching (MPLS) has the following advantages: – Fast forwarding by using a short fixed label that facilitates fast table lookup in hardware. – Traffic engineering by pinning down the route, which is different from packet switching. – Multi-protocol capable, can be used to forward IP packets as well as ATM cells. • The label is inserted between L3 and L2 headers. – It has four fields: a 20 bit label field, a 3 bit QoS field, a label stacking indicator bit, and a 8 bit TTL. 19 MPLS Header 20 MPLS • The label plays the same role as ATM VCI/VPI. • The virtual circuit (label switched path) in MPLS defines a forwarding equivalent class (FEC) – shares the same path through the network and QoS treatment, – is typically a trunk. • Labels can be stacked – a backbone network can stack a label to facilitate trunk switching 21 MPLS • Two approaches to distribute labels – Data driven approach • when a packet hits a router, the router asks the downstream router to generate a label, which is attached to the packet. So the label is generated hop-by-hop in a way similar to datagram routing. – Control driven approach • the source sets up a label-switched path to the destination before traffic arrives, which is a kind of source routing and similar to signaling. 22 MPLS 23