Coupled conges-on control for RTP media - - PowerPoint PPT Presentation

coupled conges on control for rtp media
SMART_READER_LITE
LIVE PREVIEW

Coupled conges-on control for RTP media - - PowerPoint PPT Presentation

Coupled conges-on control for RTP media dra$-welzl-rmcat-coupled-cc-02 Michael Welzl, Safiqul Islam, Stein Gjessing RMCAT @ 88th IETF Mee/ng


slide-1
SLIDE 1

Coupled ¡conges-on ¡control ¡ for ¡RTP ¡media ¡

dra$-­‑welzl-­‑rmcat-­‑coupled-­‑cc-­‑02 ¡

Michael ¡Welzl, ¡Safiqul ¡Islam, ¡Stein ¡Gjessing ¡

RMCAT ¡@ ¡88th ¡IETF ¡Mee/ng ¡ Vancouver, ¡BC, ¡Canada ¡ 6 ¡November ¡2013 ¡

1 ¡

FP7 ¡RITE ¡ Reducing ¡Internet ¡Transport ¡Latency ¡

slide-2
SLIDE 2

Flow ¡State ¡Exchange ¡(FSE) ¡

FSE ¡ Flow ¡1 ¡ Flow ¡2 ¡ Flow ¡n ¡ SBD ¡ Flow ¡3 ¡ Flow ¡4 ¡

2 ¡

Hoping ¡to ¡have ¡a ¡ draT ¡by ¡the ¡next ¡IETF ¡

slide-3
SLIDE 3

Previous ¡version: ¡only ¡passive ¡

  • Goal: ¡Minimal ¡change ¡to ¡exis/ng ¡CC ¡

– each ¡/me ¡it ¡updates ¡its ¡sending ¡rate ¡(New_CR), ¡the ¡flow ¡calls ¡update ¡ (New_CR, ¡New_DR), ¡and ¡gets ¡the ¡new ¡rate ¡ – Complicates ¡the ¡FSE ¡algorithm ¡and ¡resul/ng ¡dynamics ¡(e.g. ¡need ¡ dampening ¡to ¡avoid ¡overshoot ¡by ¡slowly-­‑reac/ng ¡flows) ¡

FSE ¡ Flow ¡1 ¡ Flow ¡2 ¡

Update_rate() ¡

Flow ¡n ¡

New_Rate ¡ New_Rate ¡ New_Rate ¡ Update_rate() ¡ Update_rate() ¡

Store ¡Informa/on ¡ Calculate ¡Rates ¡

3 ¡

slide-4
SLIDE 4

Now ¡added: ¡FSE ¡-­‑ ¡Ac/ve ¡

  • Ac/vely ¡ini/ates ¡communica/on ¡will ¡all ¡the ¡flows ¡

– Perhaps ¡harder ¡to ¡use, ¡but ¡simpler ¡algorithm ¡and ¡“nicer” ¡resul/ng ¡dynamics ¡

¡ ¡

FSE ¡ Flow ¡1 ¡ Flow ¡2 ¡

Update_rate() ¡

Flow ¡n ¡

New_Rate ¡ New_Rate ¡ New_Rate ¡

Store ¡Informa/on ¡ Calculate ¡Rates ¡

4 ¡

slide-5
SLIDE 5

Now ¡added: ¡FSE ¡-­‑ ¡Ac/ve ¡

  • Ac/vely ¡ini/ates ¡communica/on ¡will ¡all ¡the ¡flows ¡

– Perhaps ¡harder ¡to ¡use, ¡but ¡simpler ¡algorithm ¡and ¡“nicer” ¡resul/ng ¡dynamics ¡

¡ ¡

FSE ¡ Flow ¡1 ¡ Flow ¡2 ¡

Update_rate() ¡

Flow ¡n ¡

New_Rate ¡ New_Rate ¡ New_Rate ¡

Store ¡Informa/on ¡ Calculate ¡Rates ¡

5 ¡

slide-6
SLIDE 6

Ac/ve ¡algorithm ¡

  • Every ¡/me ¡the ¡conges/on ¡controller ¡of ¡a ¡flow ¡determines ¡a ¡

new ¡sending ¡rate ¡CC_R, ¡the ¡flow ¡calls ¡UPDATE ¡

– Updates ¡the ¡sum ¡of ¡all ¡rates, ¡calculates ¡the ¡sending ¡rates ¡for ¡all ¡ the ¡flows ¡and ¡distributes ¡them ¡to ¡all ¡registered ¡flows ¡

¡

  • Essen/ally ¡all ¡that ¡is ¡leT ¡in ¡this ¡version: ¡

for all flows i in FG do

  • FSE_R(i) = (P(i)*S_CR)/S_P
  • send FSE_R(i) to the flow I

end for

  • Designed ¡to ¡be ¡as ¡simple ¡as ¡possible ¡

– Lacks ¡1 ¡feature ¡(to ¡be ¡included ¡in ¡the ¡next ¡version): ¡immediately ¡ using ¡the ¡capacity ¡freed ¡by ¡applica/on-­‑limited ¡flows ¡

6 ¡

slide-7
SLIDE 7

Dynamic ¡behavior: ¡Rate ¡Adapta/on ¡ Protocol ¡RAP ¡( ¡= ¡rate-­‑based ¡AIMD) ¡

2 3 4 5 6 7 20 21 22 23 24 25 Sending Rate (Mbps) Time (s) Flow 1 Flow 2 2 3 4 5 6 7 20 21 22 23 24 25 Sending Rate (Mbps) Time (s) Flow 1 Flow 2

With ¡FSE ¡ Without ¡FSE ¡

7 ¡

All ¡simula/ons ¡in ¡this ¡presenta/on: ¡ Dumbbell ¡topology ¡with ¡bocleneck ¡10Mb, ¡1 ¡BDP ¡(13 ¡packets) ¡ drop ¡tail ¡queue, ¡RTT ¡= ¡10 ¡ms, ¡dura/on ¡300 ¡seconds ¡

slide-8
SLIDE 8

Dynamic ¡behavior: ¡TFRC ¡

4 4.5 5 5.5 6 20 21 22 23 24 25 Sending Rate (Mbps) Time (s) Flow 1 Flow 2 4 4.5 5 5.5 6 20 21 22 23 24 25 Sending Rate (Mbps) Time (s) Flow 1 Flow 2

With ¡FSE ¡ Without ¡FSE ¡

8 ¡

slide-9
SLIDE 9

FSE ¡goals ¡

  • Charter: ¡

“Develop ¡a ¡mechanism ¡for ¡iden/fying ¡shared ¡boclenecks ¡between ¡ groups ¡of ¡flows, ¡and ¡means ¡to ¡flexibly ¡allocate ¡their ¡rates ¡within ¡ ¡ the ¡aggregate ¡hieng ¡the ¡shared ¡bocleneck.” ¡

(requirement ¡F34 ¡in ¡dra$-­‑ieA-­‑rtcweb-­‑use-­‑cases-­‑and-­‑requirements-­‑12) ¡ – This ¡works ¡perfectly ¡ – Also ¡did ¡in ¡the ¡previous ¡ version ¡

  • But: ¡because ¡this ¡avoids ¡compe//on ¡between ¡flows, ¡we ¡expect ¡

reduced ¡queuing ¡delay ¡and ¡loss ¡as ¡a ¡side ¡effect ¡

2 4 6 8 10 50 100 150 200 250 300 Sending Rate (Mbps) Time(s) Flow 1 Flow2

Priority ¡of ¡flow ¡ 1 ¡increased ¡

  • ver ¡/me ¡

9 ¡

slide-10
SLIDE 10

Average ¡queue ¡length ¡(RAP) ¡

3 4 5 6 7 8 9 10 11 12 2 4 6 8 10 12 14 16 18 20 Average Queue Length Number of Flows FSE Without FSE

10 ¡

slide-11
SLIDE 11

Packet ¡loss ¡ra/o ¡(RAP) ¡

5 10 15 20 25 30 2 4 6 8 10 12 14 16 18 20 Packet Loss Ratio % Number of Flows FSE Without FSE

11 ¡

slide-12
SLIDE 12

What’s ¡going ¡on? ¡

  • Queue ¡drains ¡more ¡oTen ¡without ¡FSE ¡

– Thought ¡behind ¡expected ¡benefits: ¡coupling ¡emulates ¡one ¡flow ¡

  • But, ¡e.g.: ¡2 ¡flows ¡with ¡rate ¡X ¡each; ¡one ¡flow ¡halves ¡its ¡rate: ¡2X ¡è ¡1 ¡½X ¡

– When ¡flows ¡synchronize, ¡both ¡halve ¡their ¡rate ¡on ¡conges/on, ¡which ¡ really ¡halves ¡the ¡aggregate ¡rate: ¡2X ¡è ¡1X ¡

2 4 6 8 10 12 14 15 15.5 16 16.5 17 17.5 18 18.5 19 Queue size (pkts) Time (s) 2 4 6 8 10 12 14 15 15.5 16 16.5 17 17.5 18 18.5 19 Queue size (pkts) Time (s)

With ¡FSE ¡ Without ¡FSE ¡

12 ¡

slide-13
SLIDE 13

Current ¡work ¡

  • Trying ¡to ¡fix ¡this ¡ ¡(propor/onally ¡reduce ¡aggregate ¡

rate ¡on ¡conges/on, ¡but ¡increase ¡by ¡delta/N) ¡

– Some ¡issues, ¡e.g. ¡slow ¡start ¡

  • Why ¡do ¡we ¡have ¡these ¡problems? ¡

– Because ¡all ¡papers ¡on ¡RFC2140 ¡etc. ¡did ¡not ¡focus ¡on ¡ reducing ¡queuing ¡delay ¡ – RFC2140 ¡cwnd ¡sharing ¡probably ¡has ¡the ¡same ¡problem ¡

13 ¡

slide-14
SLIDE 14

Q&A ¡

14 ¡