Network Support for Quality of Service (QoS)

Slides:



Advertisements
Similar presentations
1 CONGESTION CONTROL. 2 Congestion Control When one part of the subnet (e.g. one or more routers in an area) becomes overloaded, congestion results. Because.
Advertisements

CS640: Introduction to Computer Networks Aditya Akella Lecture 20 – QoS.
1.  Congestion Control Congestion Control  Factors that Cause Congestion Factors that Cause Congestion  Congestion Control vs Flow Control Congestion.
Engineering Internet QoS
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.
Differentiated Services. Service Differentiation in the Internet Different applications have varying bandwidth, delay, and reliability requirements How.
CSIS TAC-TOI-01 Quality of Service & Traffic Engineering (QoS & TE) Khaled Mohamed Credit: some of the sides are from Cisco Systems.
End-to-End Analysis of Distributed Video-on-Demand Systems Padmavathi Mundur, Robert Simon, and Arun K. Sood IEEE Transactions on Multimedia, February.
Chapter 6 Multimedia Networking Computer Networking: A Top Down Approach Featuring the Internet, 2 nd edition. Jim Kurose, Keith Ross Addison-Wesley, July.
ACN: IntServ and DiffServ1 Integrated Service (IntServ) versus Differentiated Service (Diffserv) Information taken from Kurose and Ross textbook “ Computer.
CSE 401N Multimedia Networking-2 Lecture-19. Improving QOS in IP Networks Thus far: “making the best of best effort” Future: next generation Internet.
School of Information Technologies IP Quality of Service NETS3303/3603 Weeks
CSc 461/561 CSc 461/561 Multimedia Systems Part C: 3. QoS.
Quality of Service. Overview Why QoS? When QoS? One model: Integrated services Contrast to Differentiated Services (more modern; more practical; not covered)
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”
Distributed Multimedia March 19, Distributed Multimedia What is Distributed Multimedia?  Large quantities of distributed data  Typically streamed.
K. Salah 1 Beyond Best Effort Technologies Our primarily objective here is to understand more on QoS mechanisms so that you can make informed decision.
1 Internet Quality of Service (QoS) By Behzad Akbari Spring 2011 These slides are based on the slides of J. Kurose (UMASS)
Beyond Best-Effort Service Advanced Multimedia University of Palestine University of Palestine Eng. Wisam Zaqoot Eng. Wisam Zaqoot November 2010 November.
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.
Packet switching network Data is divided into packets. Transfer of information as payload in data packets Packets undergo random delays & possible loss.
CS640: Introduction to Computer Networks Aditya Akella Lecture 20 - Queuing and Basics of QoS.
Multimedia and QoS#1 Quality of Service Support. Multimedia and QoS#2 QOS in IP Networks r IETF groups are working on proposals to provide QOS control.
Ch 6. Multimedia Networking Myungchul Kim
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.
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
Tel Hai Academic College Department of Computer Science Prof. Reuven Aviv Markov Models for data flow In Computer Networks Resource: Fayez Gebali, Analysis.
04/02/08 1 Packet Scheduling IT610 Prof. A. Sahoo KReSIT.
Internet Quality of Service
Advanced Computer Networks
Congestion Control in Data Networks and Internets
Instructor Materials Chapter 6: Quality of Service
QoS & Queuing Theory CS352.
Topics discussed in this section:
Klara Nahrstedt Spring 2009
Congestion Control, Quality of Service, and Internetworking
Buffer Management in a Switch
Queue Management Jennifer Rexford COS 461: Computer Networks
RSVP and Integrated Services in the Internet: A Tutorial
All Rights Reserved, copyright
Week 6: Traffic Models and QoS
Measuring Service in Multi-Class Networks
© 2008 Cisco Systems, Inc. All rights reserved.Cisco ConfidentialPresentation_ID 1 Chapter 6: Quality of Service Connecting Networks.
CONGESTION CONTROL.
Advanced Computer Networks
QoS Guarantees introduction call admission traffic specification
Week 5: Traffic Models and QoS
EE 122: Quality of Service and Resource Allocation
COS 461: Computer Networks
EE 122: Lecture 18 (Differentiated Services)
Computer Science Division
Congestion Control, Quality of Service, & Internetworking
Network Simulation NET441
Figure Areas in an autonomous system
EE 122: Differentiated Services
CIS679: Two Planes and Int-Serv Model
The Network Layer Congestion Control Algorithms & Quality-of-Service
Real-Time Protocol (RTP)
EECS 122: Introduction to Computer Networks Packet Scheduling and QoS
Real-Time Protocol (RTP)
کنترل جریان امیدرضا معروضی.
Presentation transcript:

Network Support for Quality of Service (QoS) CS 352, Lecture 24 http://www.cs.rutgers.edu/~sn624/352-S19 Srinivas Narayana (heavily adapted from slides by Prof. Badri Nath and the textbook authors)

Review: Streaming multimedia Watching media prerecorded at servers at multiple quality levels, ex: Netflix Client downloads an initial portion and starts viewing/listening Need continuous playout: Manage network delays through a client buffer Playout rate must be not larger than average download rate Predominant model: Dynamic Adaptive Streaming over HTTP DASH video is divided into chunks Each chunk can be retrieved with an independent bitrate and from an independent (CDN) location

Review: Conversational multimedia Two parties making a real-time conversation, ex: Skype Important to bound playout delays & adapt to loss More than ~400 ms audio delay provides for a very poor experience Fixed and adaptive playout delays at the granularity of “talk spurts” Retransmissions not really effective to conceal loss Forward error correction mechanisms Relay-based call routing: used by Skype Useful to overcome NATs But need extra infrastructure to make it work

Network support How can the network benefit multimedia network transfers?

Network support for Multimedia A best effort Internet architecture does not offer any guarantees on delay, bandwidth, and loss Network may drop, reorder, corrupt packets Network may treat transfers randomly regardless of their “importance” However, multimedia apps require delay and loss bounds How to provide quality of service (QoS) for multimedia applications through network mechanisms? Provision enough resources: make the best of best effort service Mechanisms to handle traffic differently based on importance Result: specific protocols and architectures for QoS

Dimensioning best effort networks approach: deploy enough link capacity so that congestion doesn’t occur, multimedia traffic flows without delay or loss low complexity of network mechanisms (use current “best effort” network) high bandwidth costs challenges: network dimensioning: how much bandwidth is “enough?” estimating network traffic demand: needed to determine how much bandwidth is “enough” (for that much traffic)

Providing multiple classes of service thus far: making the best of best effort service one-size fits all service model alternative: multiple classes of service partition traffic into classes network treats different classes of traffic differently (analogy: VIP service versus regular service) granularity: differential service among multiple classes, not among individual connections history: ToS bits 0111

Multiple classes of service: scenario H3 H1 R1 R2 H4 H2 R1 output interface queue 1.5 Mbps link

Scenario 1: mixed HTTP and VoIP example: 1Mbps VoIP, HTTP share 1.5 Mbps link. HTTP bursts can congest router, cause audio loss want to give priority to audio over HTTP R1 R2 Principle 1 packet marking needed for router to distinguish between different classes; and new router policy to treat packets accordingly

Principles for QOS guarantees (more) what if applications misbehave (VoIP sends higher than declared rate) policing: force source adherence to bandwidth allocations marking, policing at network edge 1 Mbps phone R1 R2 1.5 Mbps link packet marking and policing Principle 2 provide protection (isolation) for one class from others

Principles for QOS guarantees (more) allocating fixed (non-sharable) bandwidth to flow: inefficient use of bandwidth if flows doesn’t use its allocation 1 Mbps phone 1 Mbps logical link R1 R2 1.5 Mbps link 0.5 Mbps logical link Principle 3 while providing isolation, it is desirable to use resources as efficiently as possible

Review: Queues on routers Where does contention between the two connections happen in the network earlier? Contention == increased queueing (and queuing delays), possibility of loss Where are the queues located on the routers? Principle: It is useful to provide quality of service by managing how packets traverse router queues, ie: packet scheduling

Packet scheduling for QoS Shaping and policing

Review: Packet scheduling for QoS packet scheduling: choose next queued packet to send on outgoing link previously covered under the networking layer FCFS: first come first served simply multi-class priority round robin weighted fair queueing (WFQ) queue (waiting area) packet arrivals departures link (server)

Packet scheduling mechanisms Goal: provide isolation between different kinds of traffic by limiting traffic not to exceed declared parameters Three commonly used criteria: (long term) average rate: how many pkts can be sent per unit time (in the long run) crucial question: what is the interval length: 100 packets per sec or 6000 packets per min have same average! peak rate: e.g., 6000 pkts per min (ppm) avg.; 1500 ppm peak rate (max.) burst size: max number of pkts sent consecutively (with no intervening idle)

QoS mechanism (1): Leaky Bucket Used in conjunction with resource reservation to police the host’s reservation At the host-network interface, allow packets into the network at a constant rate Packets may be generated in a bursty manner, but after they pass through the leaky bucket, they enter the network evenly spaced

Leaky Bucket: Analogy Packets from host Leaky Bucket Network

Shaping traffic with leaky buckets The leaky bucket is a traffic shaper: It changes the characteristics of packet stream Traffic shaping makes traffic more manageable and more predictable Usually, a system/network administrator would set the rate at which packets may be sent through the leaky bucket Administrator also sets up policies to map any connection that started up to a leaky bucket (and rate) of its own

Issues with a leaky bucket In some cases, we may want to allow short bursts of packets to enter the network without smoothing them out For a leaky bucket, average rate == peak rate But sometimes, we can allow the peak rate to be higher Ex: a short transfer that only has a few packets For this purpose we use a token bucket, which is an enhanced leaky bucket

QoS mechanism (2): Token Bucket token bucket: limit input to specified burst size and average rate bucket can hold b tokens tokens generated at rate r tokens/sec unless bucket full over interval of length t: number of packets admitted less than or equal to (r * t + b)

Token Bucket: Notes The bucket holds tokens instead of packets Tokens are generated and placed into the token bucket at a constant rate When a packet arrives at the token bucket, it is transmitted if there is a token available. Otherwise it may be buffered until a token becomes available Or even dropped: in which case we call it a policer The Internet is full of traffic policers The token bucket has a fixed size, so when it becomes full, subsequently generated tokens are discarded

Token Bucket vs. Leaky Bucket Case 1: Short burst arrivals Arrival time at bucket 1 2 3 4 5 6 Departure time from a leaky bucket Leaky bucket rate = 1 packet / 2 time units Leaky bucket size = 4 packets 1 2 3 4 5 6 Departure time from a token bucket Token bucket rate = 1 tokens / 2 time units Token bucket size = 2 tokens 1 2 3 4 5 6

Token Bucket vs. Leaky Bucket Case 2: Large burst arrivals Arrival time at bucket 1 2 3 4 5 6 Departure time from a leaky bucket Leaky bucket rate = 1 packet / 2 time units Leaky bucket size = 2 packets 1 2 3 4 5 6 Departure time from a token bucket Token bucket rate = 1 token / 2 time units Token bucket size = 2 tokens 1 2 3 4 5 6 Departure time from a token bucket policer Token bucket rate = 1 token / 2 time units Token bucket size = 2 tokens ??

QoS guarantees for delays too! token bucket, WFQ combine to provide guaranteed upper bound on delay, i.e., QoS guarantee! arriving traffic token rate, r bucket size, b per-flow rate, R WFQ D = b/R max arriving traffic

Differentiated Services Using marking and packet scheduling to provide QoS

Differentiated services want “qualitative” service classes “behaves like a wire” relative service distinction: Platinum, Gold, Silver scalability: simple functions in network core, relatively complex functions at edge routers (or hosts) signaling, maintaining per-flow router state difficult with large number of flows don’t define define service classes, provide functional components to build service classes

Edge-router packet marking profile: pre-negotiated rate r, bucket size b packet marking at edge based on per-flow profile rate r b user packets possible use of marking: class-based marking: packets of different classes marked differently intra-class marking: conforming portion of flow marked differently than non-conforming one

Diffserv architecture b marking scheduling . edge router: per-flow traffic management marks packets as in-profile and out-profile core router: per class traffic management buffering and scheduling based on marking at edge preference given to in-profile packets over out-of-profile packets

Per-connection QoS guarantees basic fact of life: can not support traffic demands beyond link capacity 1 Mbps phone R1 R2 1.5 Mbps link 1 Mbps phone Principle 4 call admission: flow declares its needs, network may block call (e.g., busy signal) if it cannot meet needs

QoS guarantee scenario resource reservation call setup, signaling (RSVP) traffic, QoS declaration per-element admission control request/ reply QoS-sensitive scheduling (e.g., WFQ)

Summary of network support for QoS Need ways to distinguish traffic (marking) and handle traffic contention (scheduling) Packet scheduling: a great place to provide QoS by isolating traffic from each other Abstractions: Leaky bucket: shape traffic Token bucket: shape and police traffic The Internet DiffServ architecture builds on these mechanisms Resource reservation and call admission required to ensure QoS when demand exceeds capacity However, not very widely deployed on the Internet today