Download presentation
Presentation is loading. Please wait.
1
QoS Architectures in Computer Networks
Prof. A. Sahoo KReSIT IIT Bombay
2
Introduction For Many Years Internet was primarily used for networking research. File transfer, were the most popular application: They do not need any performance guarantee from underlying network. New applications such as VoIP, video conferencing, e-commerce apps are sensitive to network performance. 11/11/2018 IIT Bombay
3
Introduction (cont’d)
Internet cannot provide any resource guarantees : the service is best effort Internet does not provide service differentiation : all packets are treated equal. But applications such as VoIP require low delay, jitter and packet loss; whereas file transfer app can tolerate fair amount of delay and loss. Thus there is a need to differentiate between packets of such applications. 11/11/2018 IIT Bombay
4
Current State of Internet
Uses best-effort service model No guarantee of timeliness or delivery No service discrimination Bandwidth and network congestion problems Unpredictable network response time 11/11/2018 IIT Bombay
5
What is QoS The capability to provide resource assurance and service differentiation so that delay, jitter or loss sensitive applications can perform satisfactorily is often referred to as quality of service (QoS). can be provided through relative prioritization of resource allocation to different flows/packets in the network. 11/11/2018 IIT Bombay
6
Resource Allocation Many problems in the Internet come down to issue of resource allocation. Packets get delayed or dropped because network resource cannot meet the traffic demands. A network consists of shared resources : bandwidth, buffer, serving traffic from competing users. To support QoS network must allocate resources and decide who should get how much resources. 11/11/2018 IIT Bombay
7
Resource Allocation (cont’d)
Current Internet does not support active resource allocation. Network treats all packets equally and serves them FCFS. Hence current Internet offers best effort service. Adequate for some apps (e.g. file transfer), but not suitable for realtime apps. 11/11/2018 IIT Bombay
8
Integrated Services (Intserv)
11/11/2018 IIT Bombay
9
Integrated Services Based on per flow resource reservation.
Apps must make a reservation before transmitting traffic. App characterize its traffic and resource requirement. Network uses routing protocol to find a path. A reservation protocol is used to install the reservation state along that path. 11/11/2018 IIT Bombay
10
Integrated Services (cont’d)
At each hop admission control checks whether sufficient resources are available to accept the new reservation. Resource reservation enforced by packet classification and scheduling mechanisms. Two new service models were introduced : guaranteed service and controlled load. Guaranteed service provides deterministic worst case delay Controlled load provides less firm guarantee : it’s close to a lightly loaded best-effort network. 11/11/2018 IIT Bombay
11
Integrated Services (cont’d)
Overhead of setting up reservation is high. Scalability problem : Backbone will have a large number of flows and keeping flow information is not feasible. 11/11/2018 IIT Bombay
12
Basic Approach A set of mechanisms and protocols is used for making explicit resource reservation. To receive performance guarantee from the network resource reservation must be set up before the application can start transmitting packets. 11/11/2018 IIT Bombay
13
Basic Approach (Cont’d)
Sender starts the setup of a reservation by sending characteristics and resource requirement of the flow. The network can accept the new application flow only if sufficient resource is there. Once reservation is setup successfully, application can start sending data packets. 11/11/2018 IIT Bombay
14
Key Components IIT Bombay QoS routing agent Admission control
Reservation setup agent Resource reservation table Control plane Flow identification Packet scheduler Data plane 11/11/2018 IIT Bombay
15
Key Component (cont’d)
Control Plane sets up resource reservation. Data plane forwards data packets based on reservation state. To setup reservation, app first characterizes its traffic flow and specifies QoS requirements : referred to as flow specification The reservation setup request is then sent to the network. 11/11/2018 IIT Bombay
16
Key Component (cont’d)
Router upon getting the request, interacts with QoS routing agent to find the next hop. It then coordinates with the admission control module to determine if there are sufficient resources to meet the requested resources. Once reservation set up is successful, the information for the reserved flow is installed into the resource reservation table. Info. in the resource reservation table is used to configure flow identification module and the packet scheduling module in the data plane. 11/11/2018 IIT Bombay
17
Route Selection IntServ does not specify any route selection of its own. It relies on existing routing protocols to forward its control packets further. Obviously a more efficient routing protocol which can find a path that is likely to have sufficient resources is desired. 11/11/2018 IIT Bombay
18
Reservation Setup To setup reservation a reservation set up protocol is needed that goes hop by hop along the path to install the reservation state in the routers. The reservation protocol must also deal with changes in the network topology. In IntServ, RSVP has been developed as the resource reservation protocol. 11/11/2018 IIT Bombay
19
Admission Control In order to provide guaranteed resources for reserved flows, a network must monitor its resource usage and admit a new flow only if it has sufficient resource. It has two functions : to determine if a new flow reservation can be set up based on the admission control policies and to monitor and measure the available resources. 11/11/2018 IIT Bombay
20
Flow Identification Router must examine every incoming packet and decide whether the packet belongs to one of the reserved flows. IP flow is identified by src addr, dest addr, proto ID, src port, dst port : five-tuple. These five fields of the incoming packet is compared against the five-tuple of all the flows in the reservation table for flow identification. 11/11/2018 IIT Bombay
21
Packet Scheduling Packet scheduler responsible for resource allocation
Directly affects delay, jitter and packet loss Primary task is to select a packet to transmit when outgoing link is ready such that the QoS promised to flows is provided 11/11/2018 IIT Bombay
22
Service Models Describe interface between the network and its users.
IntServ has standardized two basic service models: Guaranteed service Controlled load service 11/11/2018 IIT Bombay
23
Flow Specification A service contract that specifies the traffic that the source will send If application violates the contract then it may not get the QoS expected. This is done by policing the traffic to ensure that it conforms to its traffic description. 11/11/2018 IIT Bombay
24
Flow characterization
Peak rate : highest rate at which a source can generate traffic. Can be calculated from packet size and the spacing between two packets. Average rate : The avg. transmission rate over a time interval. Typically calculated with a moving time window. Burst : The max amount of data that can be injected at peak rate. 11/11/2018 IIT Bombay
25
Flow specification (cont’d)
In IntServ, traffic is described in terms of leaky bucket parameters. It has two parameters : token arrival rate r and bucket depth b. Token gets into bucket at the rate r and packet is sent only if there are enough tokens. When a packet is sent, tokens equal to the packet size is removed from the bucket. 11/11/2018 IIT Bombay
26
Guaranteed Service Provides guaranteed bandwidth and strict bounds for delay. Intended for apps that require highest assurance on bw and delay : mission critical apps, intolerant playback apps. Can be viewed as a virtual circuit with guaranteed bw. Provides bounds on maximal queuing delay. 11/11/2018 IIT Bombay
27
Controlled load service
Strict bw assurance and delay bound comes at a price : resources have to be reserved for the worst case. For some apps a service model with less strict guarantees and lower cost would better serve their needs. End-to-end behavior somewhat vague. A very high percentage of packets will be successfully delivered by the network to the receivers. The transit delay experienced by a very high percentage of packets will not greatly exceed min delay. 11/11/2018 IIT Bombay
28
RSVP A resource reservation protocol defined under IntServ.
Used by hosts to communicate service requirements to the network and by routers in the network to establish reservation state along a path 11/11/2018 IIT Bombay
29
Basic Features Simplex Reservation : Receiver Oriented
Makes reservation only in one direction. Treats sender as logically distinct from a receiver For two way communication, the two ends must establish reservation for both directions. Receiver Oriented Receivers of a flow initiates and maintains the resource reservation. 11/11/2018 IIT Bombay
30
Basic Features (Cont’d)
Routing Independent Designed to operate with current and future unicast and multicast routing protocols The path for a flow is done separately by routing protocols Policy Independent RSVP transports and maintains traffic control and policy control parameters that are opaque to RSVP Control params are passed to relevant control modules for processing. 11/11/2018 IIT Bombay
31
Basic Features (Cont’d)
Soft State RSVP maintains soft states providing graceful support for dynamic membership changes and automatic adaptation to routing changes. Reservation state has a timer associated with the state. When timer expires, the state is automatically deleted. RSVP periodically refreshes the reservation state to maintain the state along the paths. 11/11/2018 IIT Bombay
32
Basic Features (Cont’d)
Reservation Style RSVP provides several reservation models or styles to fit a variety of applications Can be used to share a reservation among traffic streams from multiple senders or to select a particular sender. 11/11/2018 IIT Bombay
33
Protocol Overview IIT Bombay (1) (2) (3) (4) (5) (6) PATH RESV
11/11/2018 IIT Bombay
34
Protocol Overview (Cont’d)
Two primary RSVP msgs : PATH and RESV PATH msgs are sent from source towards the receivers. Used to pass characteristics of the path. Installs path state in each node along the way Includes IP address of previous hop (needed to send RESV msg) After receiving PATH msg receiver can request a reservation by sending RESV msg. 11/11/2018 IIT Bombay
35
Protocol Overview (Cont’d)
RESV must follow the exact same reverse path upstream. They create reservation state in each node along the paths After receiving RESV msg sender can start sending data packets. 11/11/2018 IIT Bombay
36
IntServ References R. Braden, D. Clark, S. Shenker, “Integrated Services in the Internet Architecture: an Overview”, RFC1633 J. Wroclawski, “The Use of RSVP with IETF Integrated Services”, RFC2210. J. Wroclawski , “Specification of the Controlled-Load Network Element Service”, RFC2211 S. Shenker, C. Patridge, R. Guerin, “Specification of Guaranteed Quality of Service, RFC2212 R. Braden, L.Zhang et. al., “Resource Reservation Protocol (RSVP)”, RFC2205 11/11/2018 IIT Bombay
37
Differentiated Service
11/11/2018 IIT Bombay
38
DiffServ Differentiated Services (DiffServ) is proposed by IETF as a scalable QoS solution for the next generation Internet. Developed for relatively simple, coarse methods of providing different levels of service for Internet traffic. Divides traffic into a small number of classes and allocates resources on a per class basis. Core of a diffserv network distinguishes between small number of forwarding classes rather than individual flows. 11/11/2018 IIT Bombay
39
DiffServ (cont.) Complex per-flow classification and scheduling used in intServ (causes scalability) not needed. Operates on a per-hop behavior (PHB) basis Classifies packets by marking the headers; Routers discriminate packets based on their markings Packet marking is done on the basis of a service level agreement (SLA) between the host and the ISP Provides service assurances but no QoS guarantee 11/11/2018 IIT Bombay
40
Basic Approach Traffic is divided into a small number of groups called forwarding classes Forwarding class that a packet belongs to is encoded into a field in the IP packet header. Each forwarding class represents a predefined forwarding treatment in terms of drop priority and bandwidth allocation. 11/11/2018 IIT Bombay
41
Basic Approach(cont.) Achieves scalability by implementing traffic classification and conditioning functions at network boundary nodes Classification involves mapping packets to different forwarding classes. Conditioning : checking whether traffic flows meet the service agreement and dropping/remarking non-conformant packets. Interior nodes forward packets based solely on the forwarding class. 11/11/2018 IIT Bombay
42
Basic Approach(cont.) Resource allocation for aggregated traffic rather than individual flows Performance assurance to individual flows in a forwarding class provided through prioritization and provisioning rather than per-flow reservation Traffic policing on the edge and class-based forwarding in the core Define forwarding behaviors not services 11/11/2018 IIT Bombay
43
Basic Approach(cont.) Guarantee by provisioning rather than reservation Allocate resources to forwarding class and control the amount of traffic for these classes Provides only service assurance; no bw or delay guarantee Based on SLAs, not dynamic signaling Focus on a single domain, not end-to-end Forwarding classes can be defined for a single domain and between domains service providers can extend or map their definitions through bilateral agreement 11/11/2018 IIT Bombay
44
Per Hop Behavior (PHB) Forwarding treatments at a node
Each PHB is represented by a 6-bit value called DSCP All packets with the same code points are referred to as a behavior aggregate (BA) and they receive the same forwarding treatment. Basic building block in diffserv for resource allocation to different BAs. 11/11/2018 IIT Bombay
45
PHB (cont.) May describe forwarding behavior in either relative or absolute terms Minimal bw for BA : absolute term Allocate bw proportionally : relative Typically implemented by means of buffer management and packet scheduling. 11/11/2018 IIT Bombay
46
Services Describes the overall treatment of a customer’s traffic within a DS domain or end-to-end. This is what is visible to the customers; PHBs are hidden inside the network node. Realizing a service involves many components to work together: mapping of traffic to specific PHBs, traffic conditioning at the boundary, network provisioning, PHB-based forwarding in the core 11/11/2018 IIT Bombay
47
Services (cont.) In diffserv, services are defined in the form of a Service Level Agreement (SLA) between a customer and its service provider One important element of SLA in diffserv is the traffic conditioning agreement (TCA). TCA details the service parameters for traffic profiles and policing actions. 11/11/2018 IIT Bombay
48
Services (cont.) This may include
Traffic profiles, such as token bucket parameters for each of the classes Performance metrics : throughput, delay Actions for non-conformant packets In addition to TCA, an SLA may also contain other characteristics and business-related agreements such as availability, security, monitoring, auditing, billing. 11/11/2018 IIT Bombay
49
Services (cont.) SLAs may be static or dynamic
Services can be defined in either quantitative or qualitative terms Services may have different scopes: All traffic from ingress node A and any egress nodes All traffic between ingress node A and egress node B 11/11/2018 IIT Bombay
50
Diffserv Architecture
Leaf marker Intermediate marker BB Intermediate marker BB Intermediate marker BB BB Leaf marker --end user --edge router --core router 11/11/2018 IIT Bombay
51
Packet Classifier and Traffic Conditioner
MARKER METER SHAPER DROPPER PACKETS 11/11/2018 IIT Bombay
52
Classifier Divides an incoming packet stream into multiple groups based on predefined rules Two basic types of classifiers: Behavior aggregate (BA) Multifield (MF) BA classifier selects packets based solely on DSCP value in the packet header BA classifier is used when DSCP has been set (marked) before the packet reaches the classifier 11/11/2018 IIT Bombay
53
Classifier (Cont.) MF classifier uses a combination of one or more fields of the five-tuple (src addr, src port, dest addr, dest port, proto ID) in the packet header for classification Classification policies may specify a set of rules and corresponding DSCP values for marking the matched packets 11/11/2018 IIT Bombay
54
Traffic Conditioner Performs traffic policing function to enforce the TCA between customer and service providers Four basic elements : meter, marker, shaper and dropper 11/11/2018 IIT Bombay
55
Meter For each forwarding class meter measures the traffic flow from a customer against its traffic profile In-profile packets are allowed to enter the network Out-profile packets are further conditioned based on TCA 11/11/2018 IIT Bombay
56
Marker Sets the DS field of a packet to a particular DSCP, adding marked packet to forwarding class. May act on unmarked packets or remark previously marked packets. Can occur at different locations: Can be marked by the application Marked by the first-hop routers on LAN Such marking is usually associated with an MF classification 11/11/2018 IIT Bombay
57
Marker (cont.) Marking can be done on non-conforming packets:
Packets may be marked with a special DSCP to indicate non-conformance These packets would be dropped first in the event of network congestion Since packets travel through different domains, packets that have been marked may be remarked (to a different DSCP). 11/11/2018 IIT Bombay
58
Marker (cont.) When packet remarked with new DSCP receives worse forwarding treatment than from previous DSCP : PHB demotion With better forwarding treatment : PHB promotion 11/11/2018 IIT Bombay
59
Shaper Shapers delay non-conformance packets in order to bring the stream into compliance. A stronger form of policing than marking Shaping may also be needed at a boundary node to a different domain (to make sure that the traffic is conformant before entering the next domain) Usually has finite buffer, so may also drop packets when buffer is full 11/11/2018 IIT Bombay
60
Dropper Discards packets in a traffic stream in order to bring the stream into compliance with a traffic profile. Strongest policing entity Can be implemented as a special case of a shaper by setting the shaper buffer size to zero. 11/11/2018 IIT Bombay
61
Differentiated Services Field
Uses 6 bits in the IP header to encode forwarding treatment These 6 bits are those out of the IP TOS field (8 bits long) DiffServ redefines existing IP TOS field to indicate forwarding behavior Replacement field, called DS field supersedes existing definition of TOS First 6 bits used as DSCP to encode the PHB, remaining 2 bits are currently unused (CU). 11/11/2018 IIT Bombay
62
Differentiated Services Field (cont.)
xxxxx0 – standard action xxxx11 – experimental and local use xxxx01 – experimental and local use but may be subject to standard action (in case pool 1 is exhausted) 11/11/2018 IIT Bombay
63
Assured Forwarding (AF)
One of the two PHB groups standardized by IETF. Four forwarding classes and three drop precedences within each forwarding class. The three drop precedences within each forwarding class are used to select which packet to drop during congestion Highest drop precedence is dropped first. 11/11/2018 IIT Bombay
64
Assured Forwarding (AF)
Class 1 Class 2 Class 3 Class 4 Low drop 001010 010010 011010 100010 Medium drop 001100 010100 011100 100100 High drop 001110 010110 011110 100110 11/11/2018 IIT Bombay
65
Expedited Forwarding (EF)
Proposed to characterize a forwarding treatment similar to that of a simple priority queuing. Forwarding treatment of traffic aggregate must equal or exceed a configurable rate Should receive this rate independent of load of other traffic passing through the node Provides low delay and low loss service Code point <101110> used for EF PHB 11/11/2018 IIT Bombay
66
References “An Architecture for Differentiated Services” – RFC 2475
“A Framework for Integrated Services Operation over Diffserv Networks” – RFC 2998 “Random Early Detection Gateways for Congestion Avoidance” – IEEE/ACM Trans. On Networking vol. 1, No-4, August 1993 “Explicit Allocation of Best-Effort Packet Delivery Service” – IEEE/ACM Trans. On Networking, vol. 6, no-4, August 1998. 11/11/2018 IIT Bombay
67
Multi Protocol Label Switching (MPLS)
11/11/2018 IIT Bombay
68
MPLS Basics Multi Protocol Label Switching is arranged between Layer 2 and Layer 3 11/11/2018 IIT Bombay
69
MPLS Basics (cont.) MPLS Characteristics
Mechanisms to manage traffic flows of various granularities (Flow Management) Is independent of Layer-2 and Layer-3 protocols Maps IP-addresses to fixed length labels Interfaces to existing routing protocols (RSVP, OSPF) Supports ATM, Frame-Relay and Ethernet 11/11/2018 IIT Bombay
70
Label Generic label format 11/11/2018 IIT Bombay
71
Label (cont.) Label distribution
MPLS does not specify a single method for label distribution BGP has been enhanced to piggyback the label information within the contents of the protocol RSVP has also been extended to support piggybacked exchange of labels. 11/11/2018 IIT Bombay
72
Label (cont.) IETF has also defined a new protocol known as the label distribution protocol (LDP) for explicit signaling and management Extensions to the base LDP protocol have also been defined to support explicit routing based on QoS requirements. 11/11/2018 IIT Bombay
73
Label Edge Router - LER Resides at the edge of an MPLS network and assigns and removes the labels from the packets. Support multiple ports connected to dissimilar networks (such as frame relay, ATM, and Ethernet). 11/11/2018 IIT Bombay
74
Label Switching Router - LSR
Is a high speed router in the core on an MPLS network. ATM switches can be used as LSRs without changing their hardware. Label switching is equivalent to VP/VC switching. 11/11/2018 IIT Bombay
75
Positions of LERs & LSRs
11/11/2018 IIT Bombay
76
Forward Equivalence Class - FEC
Is a representation of a group of packets that share the same requirements for their transport. The assignment of a particular packet to a particular FEC is done just once (when the packet enters the network). 11/11/2018 IIT Bombay
77
Label-Switched Paths - LSPs
A path is established before the data transmission starts. A path is a representation of a FEC. 11/11/2018 IIT Bombay
78
LSP Details MPLS provides two options to set up an LSP
hop-by-hop routing Each LSR independently selects the next hop for a given FEC. explicit routing Is similar to source routing. The ingress LSR specifies the list of nodes through which the packet traverses. The LSP setup for an FEC is unidirectional. The return traffic must take another LSP! 11/11/2018 IIT Bombay
79
MPLS Operation The following steps must be taken for a data packet to travel through an MPLS domain. label creation and distribution table creation at each router label-switched path creation label insertion/table lookup packet forwarding 11/11/2018 IIT Bombay
80
Step 1 Label creation and label distribution
Before any traffic begins the routers make the decision to bind a label to a specific FEC and build their tables. In LDP, downstream routers initiate the distribution of labels and the label/FEC binding. In addition, traffic-related characteristics and MPLS capabilities are negotiated using LDP. A reliable and ordered transport protocol should be used for the signaling protocol. 11/11/2018 IIT Bombay
81
Step 2 Table creation On receipt of label bindings each LSR creates entries in the label information base (LIB). The contents of the table will specify the mapping between a label and an FEC. mapping between the input port and input label table to the output port and output label table. The entries are updated whenever renegotiation of the label bindings occurs. 11/11/2018 IIT Bombay
82
Example of LIB Table Input Port Incoming Port Label Output Port
Outgoing Port Label 1 3 6 2 9 7 11/11/2018 IIT Bombay
83
MPLS Operation Example
11/11/2018 IIT Bombay
84
Step 3 Label switched path creation
The LSPs are created in the reverse direction to the creation of entries in the LIBs. 11/11/2018 IIT Bombay
85
MPLS Operation Example
11/11/2018 IIT Bombay
86
Step 4 Label insertion/table-lookup
The first router (LER1) uses the LIB table to find the next hop and request a label for the specific FEC. Subsequent routers just use the label to find the next hop. 11/11/2018 IIT Bombay
87
MPLS Operation Example
11/11/2018 IIT Bombay
88
Step 5 Packet forwarding
When a packet arrives at LER1, it determines the FEC of the packet. LER1 inserts the label for that FEC, finds the next hop the FEC (which is LSR1) and forward the packet to LSR1. Each subsequent LSR, i.e., LSR2 and LSR3, will examine the label in the received packet, replace it with the outgoing label and forward it. When the packet reaches LER4, it will remove the label because the packet is departing from an MPLS domain and deliver it to the destination. The actual data path followed by the packet is indicated by the broken red lines. 11/11/2018 IIT Bombay
89
MPLS Operation Example
11/11/2018 IIT Bombay
90
Advantages of Label Switching
Simpler packet forwarding paradigm IP lookup involves longest-prefix match, which requires extensive preprocessing and multiple memory access. With label switching, packets are forwarded by doing an exact match against a short label by looking up the label switching table Makes forwarding independent of routing architectures. Once Label Switching Paths (LSP) are established packet forwarding is always the same. Thus new routing schemes can be developed without changes in the forwarding logic 11/11/2018 IIT Bombay
91
Advantages of Label Switching (cont.)
Better forwarding granularity. For current IP based routing granularity is destination-based. But sometimes more granularity is desired e.g. an ISP may want to know from which interface a particular packet came from. Label switching allows multiple granularities e.g. packets from a particular ingress interface can be put into an LSP. Can be used for traffic engineering 11/11/2018 IIT Bombay
92
References “Multiprotocol Label Switching Architecture” – RFC 3031
“MPLS Technology and Applications” – Bruce Davie, Yakov Rekhter, Morgan Kaufmann Publishers “RSVP-TE: Extensions to RSVP for LSP Tunnels” – RFC 3209 “LDP Specification “ – RFC 3036 11/11/2018 IIT Bombay
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.