Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 1 Quality of Service (QoS) Shivkumar Kalyanaraman Rensselaer Polytechnic Institute

Slides:



Advertisements
Similar presentations
IETF Differentiated Services Concerns with Intserv: r Scalability: signaling, maintaining per-flow router state difficult with large number of flows r.
Advertisements

CS640: Introduction to Computer Networks Aditya Akella Lecture 20 – QoS.
CSE Computer Networks Prof. Aaron Striegel Department of Computer Science & Engineering University of Notre Dame Lecture 20 – March 25, 2010.
CS 268: Lecture 8 Router Support for Congestion Control Ion Stoica Computer Science Division Department of Electrical Engineering and Computer Sciences.
1 Providing Quality of Service in the Internet Based on Slides from Ross and Kurose.
Real-Time Protocol (RTP) r Provides standard packet format for real-time application r Typically runs over UDP r Specifies header fields below r Payload.
CS 4700 / CS 5700 Network Fundamentals Lecture 12: Router-Aided Congestion Control (Drop it like it’s hot) Revised 3/18/13.
CPSC Topics in Multimedia Networking A Mechanism for Equitable Bandwidth Allocation under QoS and Budget Constraints D. Sivakumar IBM Almaden Research.
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 1 ECSE-6600: Internet Protocols Informal Quiz #11 Shivkumar Kalyanaraman: GOOGLE: “Shiv RPI”
Differentiated Services. Service Differentiation in the Internet Different applications have varying bandwidth, delay, and reliability requirements How.
CS 268: Lecture 15/16 (Packet Scheduling) Ion Stoica April 8/10, 2002.
ACN: IntServ and DiffServ1 Integrated Service (IntServ) versus Differentiated Service (Diffserv) Information taken from Kurose and Ross textbook “ Computer.
Katz, Stoica F04 EECS 122: Introduction to Computer Networks Packet Scheduling and QoS Computer Science Division Department of Electrical Engineering and.
CS Summer 2003 Lecture 8. CS Summer 2003 Populating LFIB with LDP Assigned/Learned Labels Changes in the LFIB may be triggered routing or.
Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTP
CS 268: Differentiated Services Ion Stoica February 25, 2003.
CS 268: Lecture 8 (Router Support for Congestion Control) Ion Stoica February 19, 2002.
CSE 401N Multimedia Networking-2 Lecture-19. Improving QOS in IP Networks Thus far: “making the best of best effort” Future: next generation Internet.
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 1 Better-than-best-effort: QoS, Int-serv, Diff-serv, RSVP, RTP Shivkumar Kalyanaraman Rensselaer.
1 Quality of Service Outline Realtime Applications Integrated Services Differentiated Services.
Computer Networking Lecture 17 – Queue Management As usual: Thanks to Srini Seshan and Dave Anderson.
School of Information Technologies IP Quality of Service NETS3303/3603 Weeks
Internet QoS Syed Faisal Hasan, PhD (Research Scholar Information Trust Institute) Visiting Lecturer ECE CS/ECE 438: Communication Networks.
CSc 461/561 CSc 461/561 Multimedia Systems Part C: 3. QoS.
CS 268: Lecture 10 (Integrated Services) Ion Stoica March 4, 2002.
CS 268: Lecture 17 (Dynamic Packet State) Ion Stoica April 15, 2002.
Spring 2002CS 4611 Quality of Service Outline Realtime Applications Integrated Services Differentiated Services.
CS 268: Integrated Services Ion Stoica February 23, 2004.
1 CS 194: Distributed Systems Resource Allocation Scott Shenker and Ion Stoica Computer Science Division Department of Electrical Engineering and Computer.
24-1 Chapter 24. Congestion Control and Quality of Service part Quality of Service 23.6 Techniques to Improve QoS 23.7 Integrated Services 23.8.
CS 218 F 2003 Nov 3 lecture:  Streaming video/audio  Adaptive encoding (eg, layered encoding)  TCP friendliness References: r J. Padhye, V.Firoiu, D.
CIS679: RTP and RTCP r Review of Last Lecture r Streaming from Web Server r RTP and RTCP.
Ch 7. Multimedia Networking Myungchul Kim
Packet Scheduling From Ion Stoica. 2 Packet Scheduling  Decide when and what packet to send on output link -Usually implemented at output interface 1.
CIS679: Scheduling, Resource Configuration and Admission Control r Review of Last lecture r Scheduling r Resource configuration r Admission control.
Integrated Services (RFC 1633) r Architecture for providing QoS guarantees to individual application sessions r Call setup: a session requiring QoS guarantees.
CSE679: QoS Infrastructure to Support Multimedia Communications r Principles r Policing r Scheduling r RSVP r Integrated and Differentiated Services.
CS Spring 2011 CS 414 – Multimedia Systems Design Lecture 23 - Multimedia Network Protocols (Layer 3) Klara Nahrstedt Spring 2011.
CSE QoS in IP. CSE Improving QOS in IP Networks Thus far: “making the best of best effort”
QOS مظفر بگ محمدی دانشگاه ایلام. 2 Why a New Service Model? Best effort clearly insufficient –Some applications need more assurances from the network.
CS 268: Integrated Services Lakshminarayanan Subramanian Feb 20, 2003.
CSC 336 Data Communications and Networking Lecture 8d: Congestion Control : RSVP Dr. Cheer-Sun Yang Spring 2001.
1 Internet Quality of Service (QoS) By Behzad Akbari Spring 2011 These slides are based on the slides of J. Kurose (UMASS)
1 Quality of Service Outline Realtime Applications Integrated Services Differentiated Services MPLS.
Multimedia networking: outline 7.1 multimedia networking applications 7.2 streaming stored video 7.3 voice-over-IP 7.4 protocols for real-time conversational.
Network Support for QoS – DiffServ and IntServ Hongli Luo CEIT, IPFW.
CS640: Introduction to Computer Networks Aditya Akella Lecture 20 - Queuing and Basics of QoS.
EE 122: Lecture 15 (Quality of Service) Ion Stoica October 25, 2001.
1 Multimedia Networking: Beyond Best-Effort Internet.
Ch 6. Multimedia Networking Myungchul Kim
Queue Scheduling Disciplines
Chapter 6 outline r 6.1 Multimedia Networking Applications r 6.2 Streaming stored audio and video m RTSP r 6.3 Real-time, Interactive Multimedia: Internet.
Univ. of TehranIntroduction to Computer Network1 An Introduction Computer Networks An Introduction to Computer Networks University of Tehran Dept. of EE.
An End-to-End Service Architecture r Provide assured service, premium service, and best effort service (RFC 2638) Assured service: provide reliable service.
Providing QoS in IP Networks
Univ. of TehranIntroduction to Computer Network1 An Introduction Computer Networks An Introduction to Computer Networks University of Tehran Dept. of EE.
1 Lecture 15 Internet resource allocation and QoS Resource Reservation Protocol Integrated Services Differentiated Services.
Internet Quality of Service
Advanced Computer Networks
EE 122: Quality of Service and Resource Allocation
EE 122: Lecture 18 (Differentiated Services)
Computer Science Division
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute
EE 122: Differentiated Services
CIS679: Two Planes and Int-Serv Model
Real-Time Protocol (RTP)
Real-Time Protocol (RTP)
کنترل جریان امیدرضا معروضی.
Presentation transcript:

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 1 Quality of Service (QoS) Shivkumar Kalyanaraman Rensselaer Polytechnic Institute Based in part on slides of Ion Stoica, Jim Kurose, Srini Seshan, Srini Keshav

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 2 q Why better-than-best-effort (QoS-enabled) Internet ? q Quality of Service (QoS) building blocks q End-to-end protocols: RTP, H.323 q Network protocols: q Integrated Services(IntServ), RSVP. q Scalable differentiated services: DiffServ q Control plane: QoS routing, traffic engineering, policy management, pricing models Overview

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 3 Why Better-than-Best-Effort (QoS)? q To support a wider range of applications q Real-time, Multimedia, etc q To develop sustainable economic models and new private networking services q Current flat priced models, and best-effort services do not cut it for businesses

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 4 Quality of Service: What is it? Multimedia applications: network audio and video network provides application with level of performance needed for application to function. QoS

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 5 What is QoS? q “Better performance” as described by a set of parameters or measured by a set of metrics. q Generic parameters: q Bandwidth q Delay, Delay-jitter q Packet loss rate (or loss probability) q Transport/Application-specific parameters: q Timeouts q Percentage of “important” packets lost

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 6 What is QoS (contd) ? q These parameters can be measured at several granularities: q “micro” flow, aggregate flow, population. q QoS considered “better” if q a) more parameters can be specified q b) QoS can be specified at a fine-granularity. q QoS spectrum: Best Effort Leased Line

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 7 Fundamental Problems q In a FIFO service discipline, the performance assigned to one flow is convoluted with the arrivals of packets from all other flows! q Cant get QoS with a “free-for-all” q Need to use new scheduling disciplines which provide “isolation” of performance from arrival rates of background traffic B Scheduling Discipline FIFO B

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 8 Fundamental Problems q Conservation Law (Kleinrock):  (i)W q (i) = K q Irrespective of scheduling discipline chosen: q Average backlog (delay) is constant q Average bandwidth is constant q Zero-sum game => need to “set-aside” resources for premium services

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 9 QoS Big Picture: Control/Data Planes

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 10 QoS Components q QoS => set aside resources for premium services q QoS components: q a) Specification of premium services: (service/service level agreement design) q b) How much resources to set aside? (admission control/provisioning) q c) How to ensure network resource utilization, do load balancing, flexibly manage traffic aggregates and paths ? (QoS routing, traffic engineering)

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 11 QoS Components (Continued) q d) How to actually set aside these resources in a distributed manner ? (signaling, provisioning, policy) q e) How to deliver the service when the traffic actually comes in (claim/police resources)? (traffic shaping, classification, scheduling) q f) How to monitor quality, account and price these services? (network mgmt, accounting, billing, pricing)

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 12 How to upgrade the Internet for QoS? q Approach: de-couple end-system evolution from network evolution q End-to-end protocols: RTP, H.323 etc to spur the growth of adaptive multimedia applications q Assume best-effort or better-than-best-effort clouds q Network protocols: IntServ, DiffServ, RSVP, MPLS, COPS … q To support better-than-best-effort capabilities at the network (IP) level

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 13 QOS SPECIFICATION, TRAFFIC, SERVICE CHARACTERIZATION, BASIC MECHANISMS

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 14 Service Specification q Loss: probability that a flow’s packet is lost q Delay: time it takes a packet’s flow to get from source to destination q Delay jitter: maximum difference between the delays experienced by two packets of the flow q Bandwidth: maximum rate at which the soource can send traffic q QoS spectrum: Best Effort Leased Line

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 15 Hard Real Time: Guaranteed Services q Service contract q Network to client: guarantee a deterministic upper bound on delay for each packet in a session q Client to network: the session does not send more than it specifies q Algorithm support q Admission control based on worst-case analysis q Per flow classification/scheduling at routers

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 16 Soft Real Time: Controlled Load Service q Service contract: q Network to client: similar performance as an unloaded best-effort network q Client to network: the session does not send more than it specifies q Algorithm Support q Admission control based on measurement of aggregates q Scheduling for aggregate possible

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 17 Traffic and Service Characterization q To quantify a service one has two know q Flow’s traffic arrival q Service provided by the router, i.e., resources reserved at each router q Examples: q Traffic characterization: token bucket q Service provided by router: fix rate and fix buffer space q Characterized by a service model (service curve framework)

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 18 Token Bucket q Characterized by three parameters (b, r, R) q b – token depth q r – average arrival rate q R – maximum arrival rate (e.g., R link capacity) q A bit is transmitted only when there is an available token q When a bit is transmitted exactly one token is consumed r tokens per second b tokens <= R bps regulator time bits b*R/(R-r) slope R slope r

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 19 Characterizing a Source by Token Bucket q Arrival curve – maximum amount of bits transmitted by time t q Use token bucket to bound the arrival curve time bits Arrival curve time bps

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 20 Example q Arrival curve – maximum amount of bits transmitted by time t q Use token bucket to bound the arrival curve size of time interval bits Arrival curve time bps (b=1,r=1,R=2)

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 21 Per-hop Reservation  Given b,r,R and per-hop delay d  Allocate bandwidth r a and buffer space B a such that to guarantee d bits b slope r Arrival curve d BaBa slope r a

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 22 What is a Service Model? q The QoS measures (delay,throughput, loss, cost) depend on offered traffic, and possibly other external processes. q A service model attempts to characterize the relationship between offered traffic, delivered traffic, and possibly other external processes. “external process” Network element offered traffic delivered traffic (connection oriented)

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 23 Arrival and Departure Process Network Element R in R out R in (t) = arrival process = amount of data arriving up to time t R out (t) = departure process = amount of data departing up to time t bits t delay buffer

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 24 Traffic Envelope (Arrival Curve)  Maximum amount of service that a flow can send during an interval of time t slope = max average rate b(t) = Envelope slope = peak rate t “Burstiness Constraint”

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 25 Service Curve  Assume a flow that is idle at time s and it is backlogged during the interval ( s, t )  Service curve: the minimum service received by the flow during the interval ( s, t )

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 26 Big Picture t t slope = C t R in (t) Service curve bits R out (t)

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 27 Delay and Buffer Bounds t S (t) = service curve E(t) = Envelope Maximum delay Maximum buffer bits

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 28 Mechanisms: Traffic Shaping/Policing q Token bucket: limits input to specified Burst Size (b) and Average Rate (r). q Traffic sent over any time T <= r*T + b q a.k.a Linear bounded arrival process (LBAP) q Excess traffic may be queued, marked BLUE, or simply dropped

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 29 Mechanisms: Queuing/Scheduling q Use a few bits in header to indicate which queue (class) a packet goes into (also branded as CoS) q High $$ users classified into high priority queues, which also may be less populated => lower delay and low likelihood of packet drop q Ideas: priority, round-robin, classification, aggregation,... Class C Class B Class A Traffic Classes Traffic Sources $$$$$$ $$$ $

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 30 Mechanisms: Buffer Mgmt/Priority Drop q Ideas: packet marking, queue thresholds, differential dropping, buffer assignments Drop RED and BLUE packets Drop only BLUE packets

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 31 SCHEDULING

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 32 Packet Scheduling q Decide when and what packet to send on output link q Usually implemented at output interface 1 2 Scheduler flow 1 flow 2 flow n Classifier Buffer management

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 33 Focus: Scheduling Policies q Priority Queuing: classes have different priorities; class may depend on explicit marking or other header info, eg IP source or destination, TCP Port numbers, etc. q Transmit a packet from the highest priority class with a non-empty queue q Preemptive and non-preemptive versions

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 34 Scheduling Policies (more) q Round Robin: scan class queues serving one from each class that has a non-empty queue

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 35 Round-Robin Discussion q Advantages: protection among flows q Misbehaving flows will not affect the performance of well-behaving flows q Misbehaving flow – a flow that does not implement any congestion control q FIFO does not have such a property q Disadvantages: q More complex than FIFO: per flow queue/state q Biased toward large packets – a flow receives service proportional to the number of packets

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 36 Generalized Processor Sharing(GPS) q Assume a fluid model of traffic q Visit each non-empty queue in turn (RR) q Serve infinitesimal from each q Leads to “max-min” fairness q GPS is un-implementable! q We cannot serve infinitesimals, only packets

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 37 Generalized Processor Sharing q A work conserving GPS is defined as q where  w i – weight of flow i  W i ( t 1, t 2 ) – total service received by flow i during [ t 1, t 2 )  W ( t 1, t 2 ) – total service allocated to all flows during [ t 1, t 2 )  B(t) – number of flows backlogged

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 38 Fair Rate Computation in GPS  Associate a weight w i with each flow i  If link congested, compute f such that f = 2 : min(8, 2*3) = 6 min(6, 2*1) = 2 min(2, 2*1) = 2 10 ( w 1 = 3) ( w 2 = 1) ( w 3 = 1)

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 39 Bit-by-bit Round Robin q Single flow: clock ticks when a bit is transmitted. For packet i: q P i = length, A i = arrival time, S i = begin transmit time, F i = finish transmit time q F i = S i +P i = max (F i-1, A i ) + P i q Multiple flows: clock ticks when a bit from all active flows is transmitted  round number q Can calculate F i for each packet if number of flows is known at all times q This can be complicated

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 40 q Standard techniques of approximating fluid GPS q Select packet that finishes first in GPS assuming that there are no future arrivals q Important properties of GPS q Finishing order of packets currently in system independent of future arrivals q Implementation based on virtual time q Assign virtual finish time to each packet upon arrival q Packets served in increasing order of virtual times Packet Approximation of Fluid System

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 41 Fair Queuing (FQ) q Idea: serve packets in the order in which they would have finished transmission in the fluid flow system q Mapping bit-by-bit schedule onto packet transmission schedule q Transmit packet with the lowest F i at any given time q Variation: Weighted Fair Queuing (WFQ)

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 42 Approximating GPS with WFQ q Fluid GPS system service order q Weighted Fair Queueing q select the first packet that finishes in GPS

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 43 FQ Example F=10 Flow 1 (arriving) Flow 2 transmitting Output F=2 F=5 F=8 Flow 1Flow 2 Output F=10 Cannot preempt packet currently being transmitted

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 44 FQ Advantages q FQ protect well-behaved flows from ill-behaved flows q Example: 1 UDP (10 Mbps) and 31 TCP’s sharing a 10 Mbps link

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 45 System Virtual Time: V(t) q Measure service, instead of time q V(t) slope – rate at which every active flow receives service q C – link capacity q N(t) – number of active flows in fluid system at time t Service in fluid flow system time V(t)

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 46 System Virtual Time  Virtual time ( V GPS ) – service that backlogged flow with weight = 1 would receive in GPS

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 47 Service Allocation in GPS  The service received by flow i during an interval [ t 1,t 2 ), while it is backlogged is

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 48 Virtual Time Implementation of Weighted Fair Queueing if session j backlogged if session j un-backlogged  a j k – arrival time of packet k of flow j  S j k – virtual starting time of packet k of flow j  F j k – virtual finishing time of packet k of flow j  L j k – length of packet k of flow j

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 49 Virtual Time Implementation of Weighted Fair Queueing q Need to keep per flow instead of per packet virtual start, finish time only q System virtual time is used to reset a flow’s virtual start time when a flow becomes backlogged again after being idle

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 50 System Virtual Time in GPS /2 1/8 2*C C

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 51 Virtual Start and Finish Times  Utilize the time the packets would start S i k and finish F i k in a fluid system

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 52 Big Picture q FQ does not eliminate congestion  it just manages the congestion q You need both end-host congestion control and router support for congestion control q end-host congestion control to adapt q router congestion control to protect/isolate q Don’t forget buffer management: you still need to drop in case of congestion. Which packet’s would you drop in FQ? q one possibility: packet from the longest queue

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 53 QoS ARCHITECTURES

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 54 Parekh-Gallager theorem q Let a connection be allocated weights at each WFQ scheduler along its path, so that the least bandwidth it is allocated is g q Let it be leaky-bucket regulated such that # bits sent in time [t 1, t 2 ] <= g(t 2 - t 1 ) +  q Let the connection pass through K schedulers, where the kth scheduler has a rate r(k) q Let the largest packet size in the network be P

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 55 Significance q P-G Theorem shows that WFQ scheduling can provide end-to-end delay bounds in a network of multiplexed bottlenecks q WFQ provides both bandwidth and delay guarantees q Bound holds regardless of cross traffic behavior (isolation) q Needs shapers at the entrance of the network q Can be generalized for networks where schedulers are variants of WFQ, and the link service rate changes over time

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 56 Stateless vs. Stateful QoS Solutions q Stateless solutions – routers maintain no fine grained state about traffic  scalable, robust  weak services q Stateful solutions – routers maintain per-flow state  powerful services q guaranteed services + high resource utilization q fine grained differentiation q protection  much less scalable and robust

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 57 Existing Solutions StatefulStateless QoS q Tenet [Ferrari & Verma ’89] q IntServ [Clark et al ’91] q ATM [late ’80s] q DiffServ - [Clark & Wroclawski ‘97] - [Nichols et al ’97] Network support for congestion control q Round Robin [Nagle ’85] q Fair Queueing [Demers et al ’89] q Flow Random Early Drop (FRED) [Lin & Morris ’97] q DecBit [Ramkrishnan & Jain ’88] q Random Early Detection (RED) [Floyd & Jacobson ’93] q BLUE [Feng et al ’99] q REM [Low at al ’00]

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 58 Integrated Services (IntServ) q An architecture for providing QOS guarantees in IP networks for individual application sessions q Relies on resource reservation, and routers need to maintain state information of allocated resources (eg: g) and respond to new Call setup requests

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 59 Signaling semantics q Classic scheme: sender initiated q SETUP, SETUP_ACK, SETUP_RESPONSE q Admission control q Tentative resource reservation and confirmation q Simplex and duplex setup; no multicast support

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 60 RSVP: Internet Signaling q Creates and maintains distributed reservation state q De-coupled from routing: q Multicast trees setup by routing protocols, not RSVP (unlike ATM or telephony signaling) q Receiver-initiated: scales for multicast q Soft-state: reservation times out unless refreshed q Latest paths discovered through “PATH” messages (forward direction) and used by RESV mesgs (reverse direction).

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 61 Call Admission q Session must first declare its QOS requirement and characterize the traffic it will send through the network q R-spec: defines the QOS being requested q T-spec: defines the traffic characteristics q A signaling protocol is needed to carry the R- spec and T-spec to the routers where reservation is required; RSVP is a leading candidate for such signaling protocol

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 62 Call Admission q Call Admission: routers will admit calls based on their R-spec and T-spec and base on the current resource allocated at the routers to other calls.

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 63 Stateful Solution: Guaranteed Services Sender Receiver q Achieve per-flow bandwidth and delay guarantees q Example: guarantee 1MBps and < 100 ms delay to a flow

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 64 Stateful Solution: Guaranteed Services Sender Receiver q Allocate resources - perform per-flow admission control

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 65 Stateful Solution: Guaranteed Services Sender Receiver q Install per-flow state

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 66 Sender Receiver q Challenge: maintain per-flow state consistent Stateful Solution: Guaranteed Services

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 67 Stateful Solution: Guaranteed Services Sender Receiver q Per-flow classification

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 68 Stateful Solution: Guaranteed Services Sender Receiver q Per-flow buffer management

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 69 Stateful Solution: Guaranteed Services Sender Receiver Per-flow scheduling

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 70 Stateful Solution Complexity q Data path q Per-flow classification q Per-flow buffer management q Per-flow scheduling q Control path q install and maintain per-flow state for data and control paths Classifier Buffer management Scheduler flow 1 flow 2 flow n output interface … Per-flow State

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 71 Stateless vs. Stateful q Stateless solutions are more q scalable q robust q Stateful solutions provide more powerful and flexible services q guaranteed services + high resource utilization q fine grained differentiation q protection

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 72 Question q Can we achieve the best of two worlds, i.e., provide services implemented by stateful networks while maintaining advantages of stateless architectures? q Yes, in some interesting cases. DPS, CSFQ. q Can we provide reduced state services, I.e., maintain state only for larger granular flows rather than end-to-end flows? q Yes: Diff-serv

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 73 Differentiated Services (DiffServ) q Intended to address the following difficulties with Intserv and RSVP; q Scalability: maintaining states by routers in high speed networks is difficult sue to the very large number of flows q Flexible Service Models: Intserv has only two classes, want to provide more qualitative service classes; want to provide ‘relative’ service distinction (Platinum, Gold, Silver, …) q Simpler signaling: (than RSVP) many applications and users may only w ant to specify a more qualitative notion of service

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 74 Differentiated Services Model q Edge routers: traffic conditioning (policing, marking, dropping), SLA negotiation q Set values in DS-byte in IP header based upon negotiated service and observed traffic. q Interior routers: traffic classification and forwarding (near stateless core!) q Use DS-byte as index into forwarding table Ingress Edge Router Egress Edge Router Interior Router

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 75 Diffserv Architecture Edge router: - per-flow traffic management - marks packets as in- profile and out-profile Core router: - per class TM - buffering and scheduling based on marking at edge - preference given to in-profile packets - Assured Forwarding scheduling... r b marking

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 76 Packet format support q Packet is marked in the Type of Service (TOS) in IPv4, and Traffic Class in IPv6: renamed as “DS” q 6 bits used for Differentiated Service Code Point (DSCP) and determine PHB that the packet will receive q 2 bits are currently unused

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 77 Traffic Conditioning q It may be desirable to limit traffic injection rate of some class; user declares traffic profile (eg, rate and burst size); traffic is metered and shaped if non-conforming

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 78 Per-hop Behavior (PHB) q PHB: name for interior router data-plane functions q Includes scheduling, buff. mgmt, shaping etc q Logical spec: PHB does not specify mechanisms to use to ensure performance behavior q Examples: q Class A gets x% of outgoing link bandwidth over time intervals of a specified length q Class A packets leave first before packets from class B

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 79 PHB (contd) q PHBs under consideration: q Expedited Forwarding: departure rate of packets from a class equals or exceeds a specified rate (logical link with a minimum guaranteed rate) q Emulates leased-line behavior q Assured Forwarding: 4 classes, each guaranteed a minimum amount of bandwidth and buffering; each with three drop preference partitions q Emulates frame-relay behavior

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 80 Question q Can we achieve the best of two worlds, i.e., provide services implemented by stateful networks while maintaining advantages of stateless architectures? q Yes, in some interesting cases. DPS, CSFQ. q Can we provide reduced state services, I.e., maintain state only for larger granular flows rather than end-to-end flows? q Yes: Diff-serv

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 81 Scalable Core (SCORE) q A trusted and contiguous region of network in which q edge nodes – perform per flow management q core nodes – do not perform per flow management core nodes edge nodes

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 82 The DPS Approach 1. Define a reference stateful network that implements the desired service Reference Stateful Network

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 83 The DPS Idea q Instead of having core routers maintaining per- flow state have packets carry per-flow state Reference Stateful Network SCORE Network

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 84 Dynamic Packet State (DPS) q Ingress node: compute and insert flow state in packet’s header

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 85 Dynamic Packet State (DPS) q Ingress node: compute and insert flow state in packet’s header

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 86 Dynamic Packet State (DPS) q Core node: q process packet based on state it carries and node’s state q update both packet and node’s state

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 87 Dynamic Packet State (DPS) q Egress node: remove state from packet’s header

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 88 Example: DPS-Guaranteed Services q Goal: provide per-flow delay and bandwidth guarantees q How: emulate ideal model in which each flow traverses dedicated links of capacity r q Per-hop packet service time = (packet length) / r rrr flow (reservation = r )

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 89 Guaranteed Services q Define reference network to implement service q control path: per-flow admission control, reserve capacity r on each link q data path: enforce ideal model, by using Jitter Virtual Clock (Jitter-VC) scheduler Reference Stateful Network Jitter-VC

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 90 Guaranteed Services q Use DPS to eliminate per-flow state in core q control path: emulate per-flow admission control q data path: emulate Jitter-VC by Core-Jitter Virtual Clock (CJVC) Reference Stateful Network SCORE Network Jitter-VC CJVC

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 91 End-to-end Adaptive Applications Internet End-to-end Closed-loop control Video Coding, Error Concealment, Unequal Error Protection (UEP) Packetization, Marking, Source Buffer Management Congestion control Video Coding, Error Concealment, Unequal Error Protection (UEP) Packetization, Marking, playout Buffer Management Congestion control

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 92 End-to-end: Real-Time Protocol (RTP) q Provides standard packet format for real-time application q Typically runs over UDP q Specifies header fields below q Payload Type: 7 bits, providing 128 possible different types of encoding; eg PCM, MPEG2 video, etc. q Sequence Number: 16 bits; used to detect packet loss

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 93 Real-Time Protocol (RTP) q Timestamp: 32 bytes; gives the sampling instant of the first audio/video byte in the packet; used to remove jitter introduced by the network q Synchronization Source identifier (SSRC): 32 bits; an id for the source of a stream; assigned randomly by the source

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 94 RTP Control Protocol (RTCP) q Protocol specifies report packets exchanged between sources and destinations of multimedia information q Three reports are defined: Receiver reception, Sender, and Source description q Reports contain statistics such as the number of packets sent, number of packets lost, inter-arrival jitter q Used to modify sender transmission rates and for diagnostics purposes

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 95 Eg: Streaming & RTSP q User interactive control is provided, e.g. the public protocol Real Time Streaming Protocol (RTSP) q Helper Application: displays content, which is typically requested via a Web browser; e.g. RealPlayer; typical functions: q Decompression q Jitter removal q Error correction: use redundant packets to be used for reconstruction of original stream q GUI for user control

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 96 Using a Streaming Server q Web browser requests and receives a Meta File (a file describing the object) q Browser launches the appropriate Player and passes it the Meta File; q Player contacts a streaming server, may use a choice of UDP vs. TCP to get the stream

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 97 Receiver Adaptation Options q If UDP: Server sends at a rate appropriate for client; to reduce jitter, Player buffers initially for 2-5 seconds, then starts display q If TCP: sender sends at maximum possible rate; retransmit when error is encountered; Player uses a much large buffer to smooth delivery rate of TCP

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 98 H.323 q H.323 is an ITU standard for multimedia communications over best-effort LANs. q Part of larger set of standards (H.32X) for videoconferencing over data networks. q H.323 includes both stand-alone devices and embedded personal computer technology as well as point-to-point and multipoint conferences. q H.323 addresses call control, multimedia management, and bandwidth management as well as interfaces between LANs and other networks.

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 99 H.323 Architecture

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 100 Inter-domain QoS: Challenge q Provide high quality service across ISPs q Problem: intermediate ISPs don’t have incentive to provide “good” service q e.g., “hot-potato” policy ISP 1 ISP 2 ISP 3 ?

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 101 Approach: Virtual ISP (V-ISP) q Avoid crossing ISP boundaries q Each ISP will provide good service; V-ISP can easily verify it q Allocate/buy service across each ISP and compose them ISP 1 ISP 2 ISP 3 Proxy (edge) GPoP (core) GPoP (core) Proxy (edge)

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 102 Composition Tools for QoS q Dynamic Packet State (DPS): q Proxy (edge): maintain per flow state; label packets q Giga PoPs (core): maintain no per flow state; process packets based on their labels I E I E I E Logical FIFO B q Closed-loop building blocks: q No core upgrades, smaller QoS service spectrum

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 103 Closed-Loop Building Blocks for QoS International Link or International Link or

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 104 Edge-based QoS building blocks New: Closed-loop control ! Policy/ Bandwidth Broker I E I E I E Logical FIFO B

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 105 Closed-loop QoS Building Blocks  FIFO B q Loops: differentiate service on an RTT-by-RTT basis using purely edge-based policy configuration. B Priority/WFQ q Scheduler: differentiates service on a packet-by- packet basis

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 106 OverQoS: Overlay QoS using FEC

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 107 QoS: an application-level approach sophisticated services in application architecturally “above” network core open services: let 1000 flowers bloom simple, fast, diffserv network

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 108 QoS: an application-level approach Application-level infrastructure accommodate network-level service additional tailoring of user services

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 109 Browsers Web Servers Routers Networks Content Delivery Motivation: congestion

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 110 Reduces load on server Avoids network congestion Browsers Web Server Replicated content Router Content Source Content Sink Content Delivery: idea

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 111 Request Routing(RR) Distribution System Surrogate Client Origin CDN: Architectural Layout q Publisher informs RR of Content Availability. q Content Pushed to Distribution System. q Client Requests Content, Requested redirected to RR. q RR finds the most suitable Surrogate q Surrogate services client request

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 112 Summary q QoS big picture, building blocks q Integrated services: RSVP, 2 services, scheduling, admission control etc q Diff-serv: edge-routers, core routers; DS byte marking and PHBs q Real-time transport/middleware: RTP, H.323 q New problems: inter-domain QoS, Application-level QoS, Content delivery/web caching