Quality-of-Service ECE1545.

Slides:



Advertisements
Similar presentations
Quality of Service CS 457 Presentation Xue Gu Nov 15, 2001.
Advertisements

Spring 2003CS 4611 Quality of Service Outline Realtime Applications Integrated Services Differentiated Services.
Spring 2000CS 4611 Quality of Service Outline Realtime Applications Integrated Services Differentiated Services.
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.
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.
Copyright: RSVP The ReSerVation Protocol by Sujay koduri.
15-441: Computer Networking Lecture 18: QoS Thanks to David Anderson and Srini Seshan.
ACN: IntServ and DiffServ1 Integrated Service (IntServ) versus Differentiated Service (Diffserv) Information taken from Kurose and Ross textbook “ Computer.
CS Summer 2003 Lecture 8. CS Summer 2003 Populating LFIB with LDP Assigned/Learned Labels Changes in the LFIB may be triggered routing or.
CSE 401N Multimedia Networking-2 Lecture-19. Improving QOS in IP Networks Thus far: “making the best of best effort” Future: next generation Internet.
1 Quality of Service Outline Realtime Applications Integrated Services Differentiated Services.
Multicast Communication
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.
Spring 2002CS 4611 Quality of Service Outline Realtime Applications Integrated Services Differentiated Services.
CS 268: Integrated Services Ion Stoica February 23, 2004.
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.
QoS Guarantees  introduction  call admission  traffic specification  link-level scheduling  call setup protocol  required reading: text, ,
Integrated Services (RFC 1633) r Architecture for providing QoS guarantees to individual application sessions r Call setup: a session requiring QoS guarantees.
1 Integrated and Differentiated Services Multimedia Systems(Module 5 Lesson 4) Summary: r Intserv Architecture RSVP signaling protocol r Diffserv Architecture.
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”
© 2006 Cisco Systems, Inc. All rights reserved. 3.3: Selecting an Appropriate QoS Policy Model.
© 2006 Cisco Systems, Inc. All rights reserved. Optimizing Converged Cisco Networks (ONT) Module 3: Introduction to IP QoS.
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 Quality of Service Outline Realtime Applications Integrated Services Differentiated Services MPLS.
CS Spring 2009 CS 414 – Multimedia Systems Design Lecture 21 – Case Studies for Multimedia Network Support (Layer 3) Klara Nahrstedt Spring 2009.
© Jörg Liebeherr, Quality-of-Service Architectures for the Internet Integrated Services (IntServ)
Network Support for QoS – DiffServ and IntServ Hongli Luo CEIT, IPFW.
© Jörg Liebeherr, Quality-of-Service Architectures for the Internet.
CS640: Introduction to Computer Networks Aditya Akella Lecture 21 – QoS.
EE 122: Lecture 15 (Quality of Service) Ion Stoica October 25, 2001.
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.
EE 122: Integrated Services Ion Stoica November 13, 2002.
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.
Integrated Services & RSVP Types of pplications Basic approach in IntServ Key components Service models.
1 Lecture 15 Internet resource allocation and QoS Resource Reservation Protocol Integrated Services Differentiated Services.
Multicast and Quality of Service Internet Technologies and Applications.
Chapter 30 Quality of Service Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
10. Mai 20061INF-3190: Multimedia Protocols Quality-of-Service Foreleser: Carsten Griwodz
Internet Quality of Service
Multi Protocol Label Switching (MPLS)
Instructor Materials Chapter 6: Quality of Service
QoS & Queuing Theory CS352.
CS 268: Computer Networking
RSVP and Integrated Services in the Internet: A Tutorial
EE 122: Lecture 16/17 (Integrated Services)
Chapter 25 Multimedia TCP/IP Protocol Suite
© 2008 Cisco Systems, Inc. All rights reserved.Cisco ConfidentialPresentation_ID 1 Chapter 6: Quality of Service Connecting Networks.
Taxonomy of network applications
Advanced Computer Networks
QoS Guarantees introduction call admission traffic specification
EE 122: Quality of Service and Resource Allocation
Computer Science Division
Chapter 16. Internetwork Operation
Anup K.Talukdar B.R.Badrinath Arup Acharya
CIS679: Two Planes and Int-Serv Model
University of Houston Quality of Service Datacom II Lecture 3
Real-Time Protocol (RTP)
EECS 122: Introduction to Computer Networks Packet Scheduling and QoS
Real-Time Protocol (RTP)
کنترل جریان امیدرضا معروضی.
Presentation transcript:

Quality-of-Service ECE1545

Quality of Service What is Quality-of-Service? QoS refers to traffic control mechanisms that seek to either differentiate performance based on application or network-operator requirements, or provide predictable or guaranteed performance to applications, sessions, or traffic aggregates. Why is this an issue? The default service in many packet networks is to give all applications the same service, and not consider any service requirements to the network This is called a best-effort service.

QoS: History QoS for packet networks was a big issue in the 1990s IntServ and DiffServ architectures for the Internet QoS has not played an important role in 2000s until 2019s Recently it has become increasingly important (not under “QoS” label): IEEE TSN working group in 802.1Q (Time sensitive networking) IETF DetNet working group (Deterministic Networking) Driving factors: Ultra-reliable and low-latency communication of 5G Internet of Things ECE1545

Slide from Ericsson Research

Quality of Service Who needs Quality-of-Service? Video and audio conferencing  bounded delay and loss rate Video and audio streaming  bounded packet loss rate Time-critical applications (real-time control)  bounded delays “valuable applications”  better service than less valuable applications How are Quality-of-Service requirements specified? QoS parameters are Delay Delay Variation (Jitter) Throughput Error Rate

Quality of Service What is the granularity of QoS? Per-flow QoS  Guarantees are specified and enforced for single end-to-end data flow Class-based QoS  Guarantees are specified and enforced for groups of flows

Granularity of QoS Per-flow guarantees Transition: there is in fact a trade-off between per-flow and per-class architectures. Per-flow architectures GRAPH Provide strict bounds on delays, loss rates and throughputs Require per-flow reservations in the network Require per-flow classification at routers Per-class architectures Bundle traffic flows with similar service requirements into a small number of aggregates (classes) Provide service differentiation to aggregates Per-class guarantees do not immediately translate into per-flow guarantees Per-flow reservations are not needed Per-flow guarantees Require per-flow reservations in the network Require per-flow classification at routers

Granularity of QoS Per-class guarantees 2 1 1 2 1 1 2 1 2 1 2 2 1 2 Transition: there is in fact a trade-off between per-flow and per-class architectures. Per-flow architectures GRAPH Provide strict bounds on delays, loss rates and throughputs Require per-flow reservations in the network Require per-flow classification at routers Per-class architectures Bundle traffic flows with similar service requirements into a small number of aggregates (classes) Provide service differentiation to aggregates Per-class guarantees do not immediately translate into per-flow guarantees Per-flow reservations are not needed Per-class guarantees Bundle traffic flows with similar service requirements into “classes” No per-flow reservations Per-class guarantees do not immediately translate into per-flow guarantees

Levels of QoS guarantees Absolute QoS guarantees Assumes per-flow guarantees The QoS of a flow is independent of QoS of other flows Objective of service: “Isolation” Guarantees can be deterministic or statistical Needs resource reservation mechanism

Levels of QoS guarantees Adaptive QoS guarantees Adapts QoS to load conditions in the network; potentially with upper and lower bounds. Objective of Service: “Fairness” Does not need resource reservation Needs adaptive feedback mechanism No QoS guarantees (Best Effort) - Objective of Service: “Sharing” - Always works

Components of QoS in a Network U t i l y Application needs  absolute QoS QoS U t i l y Application can adapt utility  adaptive QoS QoS U t i l y Application toler- ates QoS variations  best effort

Types of QoS guarantees Deterministic QoS Service guarantees are enforced for all traffic For example, deterministic delay guarantees have the form: Delay of a packet from flow X < D (D is called a delay bound) Statistical QoS Allows a certain fraction of traffic to violate the service guarantees Prob [ Delay of a packet from flow X < D ] > 1 - e Where e is a small number (e.g., e = 10-6)

Quality of Service Network Admission Control Switch Receiver Sender Policing and Shaping Traffic description: 1 Mbps throughput, 100 kB max. burst Quality of Service parameters: 10-5 loss rate, 50 msec delay

Traffic Contract An application submits to network a reservation request for a new flow with a traffic specification and desired QoS Network performs admission control functions which determines if sufficient resources are available to (a) satisfy the desired QoS of new flow (b) without violating QoS of existing flows If sufficient resources are available, network reserves resources for flow; Otherwise, it rejects the flow Network performs policing and shaping at the network entrance to ensure that application adheres to its specification

Why is QoS Hard ? QoS is easy to achieve if the network over allocates resources for each flow Allocating bandwidth at the peak rate, yields deterministic QoS, but is very inefficient Challenge of QoS Networking: Build a network that can provide QoS with the least amount of resources  Using better algorithms has the same effect as adding bandwidth (or other resources)  Exploit multiplexing gain in packet networks Problem: Complexity and scalability of QoS techniques

Designing Networks for Multiplexing Gain Scheduling Earliest-Deadline-First GPS Static Priority FCFS Peak Rate Peak Rate Allocation Token Bucket Deterministic service Multiple Buckets Statistical service Average Rate Traffic Characterization/ Conditioning Service / Admission Control

Designing Networks for Multiplexing Gain Scheduling Earliest-Deadline-First GPS Static Priority FCFS Peak Rate Peak Rate Allocation Token Bucket Deterministic service Multiple Buckets Statistical service Average Rate Traffic Characterization/ Conditioning Service / Admission Control

Designing Networks for Multiplexing Gain Scheduling Earliest-Deadline-First GPS Static Priority FCFS Peak Rate Peak Rate Allocation Token Bucket Deterministic service Multiple Buckets Statistical service Average Rate Traffic Characterization/ Conditioning Service / Admission Control

? Designing Networks for Multiplexing Gain Scheduling Traffic Earliest-Deadline-First GPS Static Priority ? FCFS Peak Rate Peak Rate Allocation Token Bucket Deterministic service Multiple Buckets Statistical service Average Rate Traffic Characterization/ Conditioning Service / Admission Control

Classification and Scheduling Routers need to be able to classify arriving packets according to their QoS requirements  Packet Classification isolate traffic flows and provide requested QoS  Packet Scheduling

Packet Classification Packet classification is done before routing table lookup HEADER ---- Predicate Action Classifier (Policy Database) Packet Classification Forwarding Engine Action Incoming Packet CS757

Packet Scheduling Allocating output bandwidth Controlling packet delay Packet scheduling algorithm determines the order in which backlogged packets are transmitted on an output link Allocating output bandwidth Controlling packet delay scheduler CS757

Traffic Conditioning Traffic conditioning mechanisms at the network boundary need to enforce that traffic from a flow adheres to its specification Policing Drop traffic that violates the specification Shaping Buffer traffic at network entrance that violates specification Marking Mark packets with a lower priority or as best effort, if the traffic specification is violated

Admission Control Admission Control Conditions determine if the network can support the QoS requirements for a given set of flows Example: End-to-end delay must be less than delays at all nodes 3 1 2 d1,j d2,j d3,j Dj = d1,j + d2,j + d3,j

Distributed Admission Control Example: End-to-end delay must be less than a delay bound D Calculate smallest possible delay bound at each node: d1,d2 ,d3 and reserve resources At receiver: If D < d1+d2+d3 , reject flow, send reject message to sender and release resources If D > d1+d2+d3 , accept flow, commit resource reservation and notify sender D,d1,d2,d3 R D,d1 D,d1,d2 3 D 1 2 S Reject D < d1+d2+d3  Reject Accept D > d1+d2+d3  Accept

Centralized Admission Control Example: End-to-end delay must be less than a delay bound D Calculate smallest possible delay bound at each node: d*1,d*2 ,d*3 and reserve resources At receiver: If D < d1+d2+d3 , send reject message to sender If D > d1+d2+d3 , accept flow and reserve resources R 3 D 1 2 S D < d1+d2+d3  Reject Reject server D > d1+d2+d3  Accept Accept Reserve

Quality-of-Service Architectures for the Internet Integrated Services (IntServ)

QoS Service Architectures for the Internet Two QoS architectures have been defined for Internet. Integrated Services (IntServ) Proposed in 1994 Per-flow Quality of Service Resource reservation/admission control Can support delay guarantees Differentiated Services (DiffServ) Proposed in 1998 Class-based QoS Resource reservation not always needed

Integrated Services IntServ specifies two types of services: Guaranteed Service Guaranteed bandwidth End-to-end delay bounds No loss due to buffer overflows Controlled Load Service Provides a service that is equivalent to a best effort service in a lightly loaded netework Low loss Low delay No absolute guarantees

Integrated Services in IntServ At network entrance: Policing and Shaping Somewhere in the network: Admission Control At switches: Classification, Scheduling Between hosts and routers: Signaling FlowSpec (TSpec, RSpec) Distributed or Centralized Weighted Fair Queuing or other latency-rate algorithm RSVP

Guaranteed Service A flow must perform a reservation request during a flow setup phase Uses RSVP Traffic Specification (T-SPEC): E(t) = min (M + pt, rt + b) M is max. packet size p is peak rate r is average rate b is burst size Routers along a path accept or reject reservation This follows LeBoudec textbook

Latency-rate Schedulers Guaranteed service assumes that routers implement a latency-rate service curve with delay T and rate R: S(t) = R · (t – T)+ with T = L /R + D L is the maximum packet size of this flow D = Lall / C is the maximum packet transmission time Lall is maximum packet size at this link C is the link capacity Router implementations (some in software): Cisco – WFQ Extreme Networks – WFQ, CBQ, DRR Nortel - CBQ

RSVP Functional Diagram Host Router RSVPD RSVPD Application Routing Process Policy Control Policy Control D A T Admissions Control Admissions Control Packet Classifier Packet Scheduler Packet Classifier Packet Scheduler DATA DATA Source: Gordon Chaffee, UC Berkeley

Resource Reservation Senders advertise using PATH message Receivers reserve using RESV message Flowspec + filterspec + policy data Travels upstream in reverse direction of Path message Merging of reservations Sender/receiver notified of changes Source: Gordon Chaffee, UC Berkeley © Jörg Liebeherr, 2000-2003 CS757

RSVP in IntServ Flow set-up: advertisement with PATH message from source contains TSPEC (p,M,r,b) of the source contains ADSPEC (Ltot, Dtot) which is updated on the path ADSPEC contains: Ltot = i Ci Dtot = i Di PATH do not result in reservations ! (p,M,r,b) (p,M,r,b) ( ) Sender (p,M,r,b) (L1, D1 ) (L1+L2, D1+D2) Receiver Source: P. Thiran

RSVP in IntServ ( ) (p,M,r,b) (L1, D1 ) (L1+L2, D1+D2) R’ R’ R’ Flow set-up: Receiver responds with a RESV message. RESV messages make the reservations at the node Receiver writes the service level requested by receiver in an R-SPEC R-Spec specifies the reserved rate R’ R’ is determined at the receiver using the formla: ((b-M)/R’) (p-R)+/(p-r) + (M + i Li)/R’ + i Di This assumes that all nodes reserve the same rate Rn= R’. R’ is computed so that end-to-end delay bound <= delay objective. (p,M,r,b) ( ) (L1, D1 ) (L1+L2, D1+D2) R’ R’ R’ Source: P. Thiran

RSVP UDP Reservation (1) PATH 2 2. The Host A RSVP daemon generates a PATH message that is sent to the next hop RSVP router, R1, in the direction of the session address, 128.32.32.69. R4 PATH 1. An application on Host A creates a session, 128.32.32.69/4078, by communicating with the RSVP daemon on Host A. 1 R1 PATH 3 3. The PATH message follows the next hop path through R5 and R4 until it gets to Host B. Each router on the path creates soft session state with the reservation parameters. PATH Host B 128.32.32.69 Host A 24.1.70.210 R5 Source: Gordon Chaffee, UC Berkeley

RSVP UDP Reservation (2) PATH 4. An application on Host B communicates with the local RSVP daemon and asks for a reservation in session 128.32.32.69/4078. The daemon checks for and finds existing session state. 4 RESV 5 5. The Host B RSVP daemon generates a RESV message that is sent to the next hop RSVP router, R4, in the direction of the source address, 24.1.70.210. PATH R1 Host B 128.32.32.69 RESV PATH PATH Host A 24.1.70.210 RESV 6 6. The RESV message continues to follow the next hop path through R5 and R1 until it gets to Host A. Each router on the path makes a resource reservation. RESV R5 Source: Gordon Chaffee, UC Berkeley

RSVP Flowspecs Source: Gordon Chaffee, UC Berkeley Sender TSpec, Controlled Load Flowspec . . . Token Bucket Rate [r] Token Bucket Size [b] Peak Data Rate [p] Minimum Policed Unit [m] Maximum Policed Unit [M] Guaranteed Flowspec . . . Token Bucket Rate [r] Token Bucket Size [b] Peak Data Rate [p] Minimum Policed Unit [m] Maximum Policed Unit [M] Rate [R] Slack Term [S] Source: Gordon Chaffee, UC Berkeley

Reservation Merging (3) 50Kbs (7) 100 Kbs (6) 100 Kbs (2) 50Kbs Reservations merge as they travel up tree. (6) 100 Kbs R3 (2) 50Kbs (5) 100 Kbs (9) 60Kbs R4 R6 R7 (1) 50Kbs (8) 60Kbs (4) 100 Kbs Receiver #1 Receiver #2 Receiver #3