towards
play

Towards TVF 4 TVF 3 TVF 2 TVF 1 r log(Packet Value) r + D 3 D 3 r + - PowerPoint PPT Presentation

Towards TVF 4 TVF 3 TVF 2 TVF 1 r log(Packet Value) r + D 3 D 3 r + D 3 + D 2 Core-Stateless Fairness D 2 r + D 3 + D 2 + D 1 D 1 on Multiple Timescales 1 2 3 4 5 6 7 log(Throughput) Szilveszter Ndas(Ericsson Research) Gerg Gombos,


  1. Towards TVF 4 TVF 3 TVF 2 TVF 1 r log(Packet Value) r + D 3 D 3 r + D 3 + D 2 Core-Stateless Fairness D 2 r + D 3 + D 2 + D 1 D 1 on Multiple Timescales 1 2 3 4 5 6 7 log(Throughput) Szilveszter Nádas(Ericsson Research) Gergő Gombos, Ferenc Fejes and Sándor Laki(ELTE EötvösLorándUniversity) szilveszter.nadas@ericsson.com 5:1 1:1 http://ppv.elte.hu 1:5 Speed Link Capacity Same throughput time Improved Szilveszter Nadas | ppv.elte.hu | 2019-07-22 @ ANRW2019 | Towards Core-Stateless Fairness on Multiple Timescales | | Page 1 throughput

  2. Goal: Extend fairness to multiple timescales — Define multi-timescale fairness — Build on existing framework — Re-using the existing Per Packet Value-based resource sharing framework — Build on Multi-Timescale Bandwidth Profile (MTS-BWP) — Provide efficient and versatile implementation — provide fine-grained fairness on multiple timescales — that is independent of traffic mixes and resource bandwidths. — Demonstrate advantages — “ getting a scheme to instantly serve web flows for improved performance while maintaining fairness between other persistent traffic remains an open and significant design problem to be investigated ” [1] Szilveszter Nadas | ppv.elte.hu | 2019-07-22 @ ANRW2019 | Towards Core-Stateless Fairness on Multiple Timescales | | Page 2

  3. Overview of Core-Stateless Resource Sharing Example: Per Packet Value based CS RS — PPV is a Core-Stateless Resource Sharing framework, which — allows a wide variety of detailed and flexible policies; — enforces those policies for all traffic mixes; and — scales well with the number of flows Packet Marker Packet Marker (per node) Packet Marker Edge (per node) (per node) — Packet Marking at the edge Packet Desired Resource Sharing is marking — encodes policy into a value marked on each packet defined by packet marking Only — Resource Node – AQM and Scheduling (no policy or flow information is needed) Resource — behavior based on packet marking only Node — no need for Core — policy information Resource mngment — flow identification — separate queues — very fast and simple implementations exist Szilveszter Nadas | ppv.elte.hu | 2019-07-22 @ ANRW2019 | Towards Core-Stateless Fairness on Multiple Timescales | | Page 3

  4. Bitrate measurement and timescales Speed Link Packet#1 Packet#2 t Packet#1 Packet#2 — Bitrateis a derived measure arrived arrived Packet — Discrete packet arrivals are translated to bitrate arrivals — Bitrate always has a timescale associated time 𝐶𝑗𝑢𝑠𝑏𝑢𝑓 = 𝑊𝑝𝑚𝑣𝑛𝑓 (𝑐𝑗𝑢𝑡) Bitrate Bitrate 𝑈𝑗𝑛𝑓 (𝑡𝑓𝑑) derived (RTT) RTT — Natural timescales : ~ RTT Bitrate time (Session) ~ 1s – speed shown in apps Session ~ Session duration (target) ~ 1 minute: short term history and activity Bitrate time (1 min) ~ 10 minutes: longer term activity 1 min ~ Month: monthly cap Szilveszter Nadas | ppv.elte.hu | 2019-07-22 @ ANRW2019 | Towards Core-Stateless Fairness on Multiple Timescales | | Page 4 time

  5. 5:1 Fairness on multiple timescales 1:1 1:1 Speed Link Capacity — When to measure bitrate — When source is active – to describe performance time — During both active and inactive periods – to judge the fairnessof resource sharing 5:1 — Fairnessgoal on multiple timescales 1:1 — Balanced fairness: multiple timescales are considered 1:5 Speed — Allow higher share on shorter timescales for flows Link below their fair share in longer timescales Capacity — We aim at smooth transition as the relations between the rates measured on different timescales changes Same throughput time Improved throughput Szilveszter Nadas | ppv.elte.hu | 2019-07-22 @ ANRW2019 | Towards Core-Stateless Fairness on Multiple Timescales | | Page 5

  6. Per Packet Value marking defined by Throughput-Value Functions (TVF) — For a single timescale — Fine grained control — Independent of — Traffic mix — Resource bandwidth High c. — Each of these result in a Packet Value limit: Medium c. — Congestion Threshold log Value (CTV) Low congestion — Intersection of the TVFs and the CTV defines desired resource sharing log Szilveszter Nadas | ppv.elte.hu | 2019-07-22 @ ANRW2019 | Towards Core-Stateless Fairness on Multiple Timescales | | Page 6

  7. Packet marking based on Rate Measurement 1000 PPV = 100 log(Packet Value) 100 10 random = 20 Meas. Rate = 48 1 4 16 64 256 log(Throughput [Mbps]) R: rate r=rnd([0,R]) PV=TVF(r) IN pkt stream OUT pkt stream measurement Szilveszter Nadas | ppv.elte.hu | 2019-07-22 @ ANRW2019 | Towards Core-Stateless Fairness on Multiple Timescales | | Page 7

  8. Rate measurement algorithms (RMA) and examples — Token Bucket Based RMA — For the ~RTT times-caleonly — Models the fair throughput and buffer share at the bottleneck — A single Token Bucket — its rate changes when empty/full — Sliding window-based RMA — All longer timescales (TS) — Rate = “amount of bits arrived in [t - TS,TS]”/TS — TS=[10ms, 1s, 5s, 10s] — Efficient approximation of this (see article) — When transmission starts — Time-Dependent Rate Measurement — R 1 > R 2 > R 3 > R 4 algorithm with Time Window Moving Average (TDRM-TWMA) — Rate decrease/transmission stop — R 1 < R 2 < R 3 < R 4 Szilveszter Nadas | ppv.elte.hu | 2019-07-22 @ ANRW2019 | Towards Core-Stateless Fairness on Multiple Timescales | | Page 8

  9. Multi-Timescale Throughput-Value Function(MTS-TVF) — (Single-TS) TVF — MTS-TVF — 1 TVF per flow type — 1 TVF per TS per flow type TVF TVF 4 TVF 3 TVF 2 TVF 1 Packet Value Packet Value Throughput Throughput Szilveszter Nadas | ppv.elte.hu | 2019-07-22 @ ANRW2019 | Towards Core-Stateless Fairness on Multiple Timescales | | Page 9

  10. Multi-Timescale Throughput-Value Function(MTS-TVF) Resource Sharing TVF 4 TVF 3 TVF 2 TVF 1 — Dominant timescale (TS i ) Packet Value — When the rate measurement on that timescale (R i ) is the largest — (or the longest timescale among largest and roughly equal rate measurements) — Example: Two flows of the same flow type — One has dominant TS=TS 1 (just arrived) — The other has TS=TS 4 (long history) — They shall share the bottleneck according to TVF 4 vs. TVF 1 — as if they would be of different flow types in the Throughput single-TS framework Throughput Throughput — But: we aim at smooth transitions when relation of flow with of flow with between R i s change dominant TS 4 dominant TS 1 Szilveszter Nadas | ppv.elte.hu | 2019-07-22 @ ANRW2019 | Towards Core-Stateless Fairness on Multiple Timescales | | Page 10

  11. Multi-Timescale Bandwidth Profile (MTS-BWP) DP 1 DP 2 DP 3 DP 4 R 14 R 24 R 34 — Provides multi-timescale fairness among flows R 44 — Only in well defined scenarios BS 14 TS 4 BS 24 BS 34 BS 44 — Number of flows R 13 R 23 R 33 R 43 — System capacity BS 13 TS 3 — A 4 timescale, 4 Drop precedence example BS 23 BS 33 BS 43 R 12 R 22 — (ET = Enough tokens) R 32 R 42 TS 2 BS 12 BS 22 BS 32 BS 42 — Any MTS-TVF can be quantized to an MTS- R 11 R 21 R 31 R 41 BWP — Not practical implementation BS 11 BS 21 TS 1 BS 31 BS 41 — E.g. 65k different PVs → 65k*4 token flow in buckets flow out Yes Yes ET? Yes forward ET? Yes No ET? No ET? No No drop Szilveszter Nadas | ppv.elte.hu | 2019-07-22 @ ANRW2019 | Towards Core-Stateless Fairness on Multiple Timescales | | Page 11

  12. Practical packet marking using MTS-TVF — Using a quantized MTS-TVF to MTS-BWP TVF 1 TVF 2 — Multi-Timescale Bandwidth Profile (MTS-BWP) R i,2 R i,1 Packet Value — Also measures rate on each timescale (indirectly) R i+1,1 PV i PV i TB i,2 R i+1,2 TB i,1 — The limiting Token Buckets determine the rate measurement PV i+1 PV i+1 TB i+1,2 TB i+1,1 — At these rate measurements it switches between timescales, R 2 + D R 2 Throughput — i.e. between TVFs Szilveszter Nadas | ppv.elte.hu | 2019-07-22 @ ANRW2019 | Towards Core-Stateless Fairness on Multiple Timescales | | Page 12

  13. Efficient packet marking based on Multi-Timescale Throughput-Value Function — Measure rate for all the timescales TVF 4 TVF 3 TVF 2 TVF 1 r — R 4 , R 3 , R 2 , R 1 log(Packet Value) r + D 3 D 3 — At R i s determine distance between the r + D 3 + D 2 TVFs D 2 r + D 3 + D 2 + D 1 — Blue region of the TVFs are used — Changes as R i s change — Algorithm D 1 — r is is a uniform rnd [0,R 1 ] 6 1 2 3 4 5 7 — Determine right region i= - — Relation between R i s and r — Determine D i s log(Throughput) Szilveszter Nadas | ppv.elte.hu | 2019-07-22 @ ANRW2019 | Towards Core-Stateless Fairness on Multiple Timescales | | Page 13

  14. Simulations — NS-3, NS-3 DCE (TCP Congestion Control) — Core scheduler unchanged from our article “Towards a Congestion Control -Independent Core- Stateless AQM” — 10 ms delay target — A flow consist of either — 1 DCTCP connection or — 4 Cubic TCP connections (faster slow start) — TS=[10ms, 1s, 5s, 10s] — TVF 4 is Gold or Silver as single-TS TVF — Shorter TSs weights 2, 4, 8, i.e. Szilveszter Nadas | ppv.elte.hu | 2019-07-22 @ ANRW2019 | Towards Core-Stateless Fairness on Multiple Timescales | | Page 14

  15. Greedy flows of the same traffic class (DCTCP) New flow is boosted Immediate fair share Multi-Timescale PPV Reference: Single-Timescale PPV Szilveszter Nadas | ppv.elte.hu | 2019-07-22 @ ANRW2019 | Towards Core-Stateless Fairness on Multiple Timescales | | Page 15

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend