Quality of Service Sprig 2018 CS 438 Staff - Uiversity of Illiois 1
Quality of Service How good are late data ad lowthroughput chaels? It depeds o the applicatio. Do you care if... Your e-mail takes 1/2 hour to reach your fried? You have to sped 1/2 hour to make a cheaper plae reservatio o the Web? Your call to 911 takes 1/2 hour to go through your ifty ew IP phoe service? Sprig 2018 CS 438 Staff - Uiversity of Illiois 2
Applicatio Requiremets Iteret curretly provides oe sigle class of best-effort service No assuraces about delivery High speed etworks have eabled ew applicatios Require deliver o time assuraces from the etwork Real-time applicatios Sesitive to the timeliess of their data Voice Video Idustrial cotrol Sprig 2018 CS 438 Staff - Uiversity of Illiois 3
Timely Delivery How to achieve timely delivery Whe actual RTT small (< 2/3) relative to acceptable delay Retrasmit Whe base RTT (o queuig delay) large (> 2) relative to acceptable delay Impossible Otherwise possible, but ot through retrasmissio Sprig 2018 CS 438 Staff - Uiversity of Illiois 4
Timely Delivery Withi the 48-state U.S Base RTT (o queueig delay) peaks aroud 75 msec Actual RTT is ofte 10-100 msec Humas otice about 50 msec delay for voice Use erasure codes across packets, or Support delay prefereces i the etwork; called quality of service, or QoS Sprig 2018 CS 438 Staff - Uiversity of Illiois 5
Real-time Applicatios Two types or applicatios Hard real-time Elastic (soft real-time) Example real-time applicatio requiremets - audio Sample voice oce every 125µs Each packet has a playback time Packets experiece variable delay i etwork Add costat factor to playback time playback poit Microphoe Sampler, A D coverter Buffer, D A Speaker Sprig 2018 CS 438 Staff - Uiversity of Illiois 6
Real-Time Applicatios Playback Buffer Sequece umber Packet geeratio Network delay Buffer Packet arrival Playback Time Sprig 2018 CS 438 Staff - Uiversity of Illiois 7
Delay Distributio 3 What is a good delay? 90% 97% 98% 99% Packets (%) 2 1 50 100 Delay (millisecods) 150 200 Sprig 2018 CS 438 Staff - Uiversity of Illiois 8
Quality of Service Approaches Approach : Admissio cotrol Flow tells the etwork what it wats Network decides if flow ca be admitted Fie-graied Provide QoS to idividual applicatios or flows Example: Resource Reservatio Protocol (RSVP) Coarse-graied Provide QoS to large classes of data or aggregated flows Example: Differetiated Services (DIFFSERV) Sprig 2018 CS 438 Staff - Uiversity of Illiois 9
Mechaisms Flow specificatio Tell the etwork what the flow wats Admissio cotrol Network decides if it ca hadle flow Reservatio Eable admissio cotrol Packet classificatio Map packets to flows Schedulig Forwardig policy Sprig 2018 CS 438 Staff - Uiversity of Illiois 10
Characterizig a Flow Describe flow s traffic characterizatio Average badwidth + burstiess: toke bucket filter Toke rate: r Bucket depth: B Use Must have a toke to sed a byte Must have tokes to sed bytes Start with o tokes Accumulate tokes at rate of r per secod Ca accumulate o more tha B tokes Sprig 2018 CS 438 Staff - Uiversity of Illiois 11
Toke Bucket Filters r tokes/sec Toke Bucket Capacity, B Data Each byte eeds a toke i order to pass Droppig Filter: drops packets if toke is ot available Buffered Filter: buffers data util tokes become available Sprig 2018 CS 438 Staff - Uiversity of Illiois 12
Toke Bucket Operatio Tokes Tokes Tokes Overflow Buffer tokes up to capacity of bucket Packet Eough tokes à packet goes through, tokes removed Packet Not eough tokes à wait for tokes to accumulate Sprig 2018 CS 438 Staff - Uiversity of Illiois 13
Toke Bucket Filters Questio Give a fiite legth data stream, will it be affected by a toke bucket filter? Not if durig every time iterval, the umber of bytes is less tha or equal to B + rt, where t is the legth of the iterval Give a toke rate r ad a fiite data trace, how ca the miimum toke bucket size B be foud such that the filter has o effect? Sprig 2018 CS 438 Staff - Uiversity of Illiois 14
Toke Bucket Filters Give a toke rate r ad a fiite data trace, how ca the miimum toke bucket size B be foud such that the filter has o effect? Feed stream ito queue Empty queue at costat rate r Simply observe the maximum buffer size Why? If the buffer is trucated to size B, the the umber of empty buffer positios is equivalet to the umber of tokes i a (r,b) toke bucket filter Sprig 2018 CS 438 Staff - Uiversity of Illiois 15
Toke Bucket Filters Queue Legth 500 400 300 200 100 Uits of traffic r = 8 30 20 10 10 30 50 70 Queue legth for costat rate server Time (secods) Tokes left i bucket if B = 500 Time (secods) 10 30 50 70 The umber of empty buffer positios for buffer size B ad a costat rate server is equivalet to the umber of tokes i a (r,b) toke bucket filter Sprig 2018 CS 438 Staff - Uiversity of Illiois 16
Toke Bucket Filters r = 15 kbps Rate (kbps) 50 40 30 20 10 0 10 20 30 40 50 60 70 80 90 100 Time (msec) What is the miimum size of B required so that the filter lets the stream pass with o loss or delay? Sprig 2018 CS 438 Staff - Uiversity of Illiois 17
Toke Bucket Filters r = 15 kbps Rate (kbps) 50 40 30 20 10 Mi B = (40 15) * 20 + (50 15) * 10 (15 10) * 20 + (20 15) * 40 = 950 bits 0 10 20 30 40 50 60 70 80 90 100 Time (msec) Sprig 2018 CS 438 Staff - Uiversity of Illiois 18
Toke Bucket Filters What is the miimum B eeded for arbitrary r > 0 If r 50 B = 0 If 50 > r 40 Mi B = (50 r) * 10 If 40 > r 20 Rate (kbps) 50 40 30 20 10 0 10 20 30 40 50 60 70 80 90 100 Mi B = (40 r) * 20 + (50 r) * 10 If 20 > r 10 Mi B = (40 r) * 20 + (50 r) * 10 (r 10) * 20 + (20 r) * 40 If 10 > r 0 Mi B = (40 r) * 20 + (50 r) * 10 + (10 r) * 20 + (20 r) * 40 Time (msec) Sprig 2018 CS 438 Staff - Uiversity of Illiois 19
Differetiated Services Goal Scalability through the use of oly a small umber of service classes Two classes Questios Regular ad premium (i.e. first class ad bulk mail) Diffserv Proposes 6 bits of IP ToS field (26 = 64 classes) Who is allowed to set the premium bit? Typically a ISP Should we allow a idividual customer or applicatio? How do routers react to such a classificatio? IETF has specified per-hop behavior Sprig 2018 CS 438 Staff - Uiversity of Illiois 20
Differetiated Services Expedited forwardig Per-hop behavior Need to strictly limit the load of traffic receivig expedited forwardig Give strict priority Use weighted fair queueig (WFQ) ad assig sufficietly large weights for traffic receivig expedited forwardig Sprig 2018 CS 438 Staff - Uiversity of Illiois 21
Differetiated Services Assured forwardig Per-hop behavior Like RED but with i ad out packets (RIO) Does ot reorder packets For more tha two classes of traffic, use weighted RED Profile meters at the edges of ISP etworks could mark packets as i or out 1.0 P(drop) I Out AvgLe Sprig 2018 CS 438 Staff - Uiversity of Illiois 22