E N D
Class of Service (CoS) &Quality of Service (QoS)Sources:MPLS ForumV. Alwayn, Advanced MPLS Design and Implementation, Cisco PressE. W. Gray, MPLS Implementing the Technology, Addison WesleyB. Davie and Y. Rekhter, MPLS Technology and Applications, Morgan KaufmannE. Osborne and A. Simha, Traffic Engineering with MPLS, CiscoPress
What exactly is CoS ? • Class of Service(CoS): • Groups of flows with same level of treatment • Traffic differentiation or the ability to treat packets differently based on the application or packet’s importance or priority • Service-level depends on state of the network and relative priority • Example: 802.1p (Ethernet): No resources allocated per call, but differentiation of service level through priority. Relative priority, i.e. If network is congested service WILL degrade. • CoS is the ability of network devices to prioritize best-effort traffic • No guarantees, highest class traffic get priority over other traffic when congestion happens • No connections maintained end-to-end • No per-flow state information maintained
Class of Service • How many classes? • Service provider specific. Example: Sprint has 4 classes (once) • Class A Premium Traffic: reserved for latency-sensitive applications only, e.g., VoIP or Video over IP. • Class B Critical Traffic: highest class for data applications, e.g., financial transactions • Class C Business Traffic: second class for data applications, e.g. database applications. • Class D Standard Traffic: This class is the default class, all traffic not prioritized in the above queues will be serviced in this class. Typical traffic for this queue is web browsing. • Bandwidth allocation recommendations (depends on ISPs): • 35% for VoIP, 25% for class B, 15% for class C, 25% for class D
What exactly is QoS ? • Quality of Service (QoS) • Mechanisms that allow network managers to contorl the mix of bandwidth, delay, jitter, and packet loss • Hard allocation of resources • What you pay for is what you get • Example: Connection set-up in an ATM network which allocates a fixed amount of resources • QoS is the ability to guarantee transmission characteristics end-to-end, not a device feature • Bandwidth, maximum end-to-end delay, maximum delay variation • Signaling and end-to-end connections may be required • Granularity and state information on a per flow basis • Prioritization of service classes, bandwidth allocation, and congestion aviodance • Evolution of standards: • Best Effort Service: 1981 • Integrated Services (IntServ): 1997 • Differentiated Services (DiffServ): 1998 • DiffServ-Aware TE (DS-TE)
IP QoS – group discussion • 2-minute competition • Identify types of policies/mechanisms in support of IP QoS • Control policies • Admission control, policy control, congestion control, conditioning policy (between networks) • Data or packet policies • marking, classification • policing, dropping policy • Queuing / scheduling policy • LLQ, Priority Queuing • WFQ, CBWFQ • Hybrid • Adaptive queuing • …
The QoS Pendulum Time
IP QoS over MPLS • Service providers that offer IP services over an MPLS backbone must support IP QoS over their MPLS infrastructure – IP QoS over MPLS VPNs or MPLS traffic engineered paths. • MPLS can offer IP QoS services more efficiently over a range of platforms, including ATM LSRs. • Some useful QoS capabilities such as guaranteed-bandwidth LSPs can be supported over MPLS networks.
What is IntServ ? • An architecture allowing the delivery of the required level of QoS toreal-time applications • Introduces a circuit-switched modelto IP • A signalling-based system where the endsystem has to request the required service-level • RSVP – one of the signaling protocols of choice • A way of providing end-to-end QoS, state maintenance (for each RSVP flow and reservation), and admission control at each NE
The IntServ Model Signalling required by end-stations for Resource-Reservation (RSVP) Sender Receiver
The IntServ Model – Connection Set-Up Step 1: RSVP Path Step 2: RSVP RESV Step 3: Data Sender Receiver
IntServ Characteristics • Introduces the model of connections or flows • Defines a traffic specification called Tspec, which specifies the kind of application traffic that ingresses the network. • IntServ also defines a reservation spec called Rspec, which requests specific QoS levels and ther reservation of resources. • Requires the following to verify that traffic conform to its Tspec: • Known QoS requirements • Signalling protocol (i.e., RSVP) • Significant enhancements on network element: • Admission control • Policy control • Packet classification and marking • Packet scheduling and queuing • Packet dropping policy
IntServ Summary • Provides the means for real-time applications over IP • Introduces a connection / flow approach • Uses RSVP as signalling mechanism • Requires the end-station / application to signal for QoS • Requires network elements to maintain connection state
MPLS Implementation of IntServ • Path setup, including bandwidth reservation, is the same as before • In operational mode, • Ingress: associates all packets associated with a FEC and assign them to a particular LSP. • Tandom node: when a packet arrives, it looks up the label in its table and recognizes all the QoS-related mechanisms associated with the packet, such as policing and queuing. The IP header needs not be examined.
IP Precedence • Main problem with IntServ: • The IntServ RSVP per-flow approach to QoS is not scalableand adds complexity to implementation. • Solution?: • IP precedence simplifies it by adopting an aggregate modelfor flowsby classifying various flows into aggregated classes and providing the appropriate QoS for the classified flows.
What is DiffServ • An architecture for implementing scalable, stateless service differentiation • A service defines significant characteristics of packet transmission in one direction across a set of one or more paths in the network • Examples of characteristics: • Delay • Jitter • Packet loss
DiffServ Architecture Each router participates in providing a packet its class of service. This is called as “Per Hop Behaviour (PHB)”.
Classification of Packets • What parameters can be used for classification? • Source/destination IP addresses • Incoming/outgoing interface • IP precedence values, DSCP value • ….
The DiffServ Model Differentiated Services Domain (DS Domain) DS Boundary Nodes (Ingress / Egress) DS Interior Nodes
The DiffServ Model Chacteristics of per-hop-behaviors (PHB) defined per DS Domain IP packets crossing a link and requiring same DiffServ behavior are referred to as Behavior Aggregate (BA) Traffic Classification and Conditioning between DS Domains Contiguous DS Domains can be grouped into DS Regions
DiffServ Service Concepts Service = Conditioning + Behaviors DS Domain Conditioning at ingress devices Per-hopbehaviour in transit nodes
DiffServ Service Classes orPer Hop Behaviors (PHB) • Describes the forwarding behavior applied to an aggregate of flows • The means a network-node allocates resources to meet a behavior aggregate • Per Hop Behaviors are implemented (on each router) via: • Queue management and scheduling • Buffer size, Queue depth, Over-subscription policy • Scheduling • Scheme to determine which queue to service when link is available • Congestion management and avoidance • Optimize resource utilization
DSCP CU DiffServ Service Classes IP Packet with DiffServ Fields Version Hdr Len TOS Total Len more IP Hdr … 4 bit 4bit 1byte 2bytes 0 1 2 3 4 5 6 7 DiffServ Field (DSCP) defines Per-Hop Behavior (PHB) (i.e., marking) The remaining two unused bits in the TOS byte are used for TCP ECN which is defined in RFC3168.
DiffServ Service Classes 0 1 2 3 4 5 6 7 Best Effort DSCP 0 0 0 0 0 0 unused • The common best effort forwarding behavior available in all routers • Network will deliver these packets whenever resources available • Node should make sure that these packets don’t get ‘starved’ • Packets with an unidentified DSCP should also receives this PHB
DiffServ Service Classes Assured Forward (AF) DSCP 0 1 2 3 4 5 6 7 Drop Class Precedence unused • Class – specifies the PHB that packet is to receive. AF is a method of providing low packet loss, but it makes minimal guarantees about latency. • AF1 – 001 • AF2 – 010 • AF3 – 011 • AF4 – 100 • Drop Precedence - marks relative importance of a packet within a given class. • 010 low • 100 medium • 110 high
DiffServ Service Classes 0 1 2 3 4 5 6 7 Expedited Forward (EF) DSCP 1 0 1 1 1 0 unused • These packets must be policed at ingress • Non conforming packets are discarded • These packets must be shaped on egress • These packets should receive Priority Queuing or LLQ (Premium Service PHB)
Best Effort DSCP • Best Effort Service • Client gets available Resources only Bronze Service Assured Forward (AF) DSCP • Specified Forwarding Behavior • Specified Drop Precedence Silver Service Expedited Forward (EF) DSCP • Priority Delivery • Must adhere to “traffic contract” Gold Service DiffServ Service ClassesSummary
How Is A DiffServ Service Established? DS Domain 3 DS Domain 1 DS Domain 2 DS Administrators set up DS-capable routers within their domain for conditioning and PHB per service class
How Is A DiffServ Service Used? DS Domain 3 DS Domain 1 DS Domain 2 Source now sends traffic marked for Gold service level NO SIGNALLING OR STATE IS INVOLVED
Service Classes Are Locally Significant • Service for a given DiffServ category (e.g., Gold) is not necessarily the same in Domain 2 as in Domain 1 • Interdomain agreements must be brokered to ensure E2E QoS DS Domain 3 DS Domain 1 DS Domain 2 Policy-driven approach is seen as a good mechanism to achieve end to end consistency
DiffServ Characteristics • DiffServ is a relatively simple and coarse method to provide differentiated Classes of Service. • Offers a small well defined set of building blocks from which several services may be built. • Flows (stream of packets with a common observable characteristics) are conditioned at the network ingress and receive a certain forwarding treatment per hop behaviorwithin the network. • Multiple queuing mechanisms offer differentiated forwarding treatments.
DiffServ Summary • Model consists of a set of Differentiated Services Domains (Policy / Management Domain) • Interconnections of DS Domains require Traffic Classification and Conditioning • DiffServ deals with aggregates of flows assigned to a PHB • DiffServ operates stateless and does not require signalling • DiffServ is a refined CoS mechanism
MPLS and DiffServ – Basic Operation Packet‘s forwarded according to Destination Address (DA) and DiffServ Control Point (DSCP) IWF DiffServ enabled Network MPLS enabled Network with DIffServ capabilities
MPLS and DiffServ – Basic Operation Packet‘s forwarded along an LSP based on Label that identfies a specific FEC IWF DiffServ enabled Network MPLS enabled Network with DIffServ capabilities
MPLS and DiffServ – Basic Operation MPLS provides Traffic Engineering in addition to CoS/QoS IWF DiffServ enabled Network MPLS enabled Network with DIffServ capabilities
Drop Class Precedence unused DSCP to MPLS Mapping (1) DiffServ DSCP • Class – specifies the PHB that packet is to receive • AF1 – 001 • AF2 – 010 • AF3 – 011 • AF4 – 100 • Drop Precedence - marks relative importance of a packet within a given class • 001 low • 010 medium • 011 high 12 possible combinations 0 1 2 3 4 5
DSCP to MPLS Mapping (2) • What to map? • DSCP has 6 bits • MPLS header? • How to map?
Drop Class Precedence unused DSCP to MPLS Mapping (3) DiffServ DSCP • E-LSP – the MPLS ‘shim’ EXP field maps PHBs using only the drop precedence field of the DSCP 0 1 2 3 4 5 MPLS Label EXP 0 1 2
Drop Class Precedence unused DSCP to MPLS Mapping DiffServ DSCP • L-LSP – the DSCP is completely used to map LSPs for a single FEC / BA pair 0 1 2 3 4 5 DSCP 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 PSC - PHB Scheduling Class
E-LSP and L-LSP • PSC = PHB Scheduling Class (PSC) • E-LSP (<= 8 PHB) • EXP-Inferred-PSC LSP • A single LSP can support up to eight BA’s • EXP (3-bits) maps LSP using drop precedence (3-bits) • L-LSP (<= 64 PHB ) • Label-Only-Inferred-PSC LSP • A separate LSP for a single FEC / BA (OA) pair • Label maps LSP using DSCP (6-bits) • Defined for both CR-LDP and RSVP-TE
DiffServ TLV for E-LSP CR-LDP Map Entry Format
DiffServ TLV for L-LSP CR-LDP 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 DSCP PSC
MPLS – DiffServ Interworking Behavior Aggregate (BA) get‘s mapped to LSP by LER. (multiple possible scenarios) Packet classified by Destination and DiffServ Code Point (i.e., Class of Service) IWF DiffServ enabled Network MPLS enabled Network with DIffServ capabilities