coupled conges on control for rtp media
play

Coupled Conges,on Control for RTP Media Safiqul Islam, - PowerPoint PPT Presentation

Coupled Conges,on Control for RTP Media Safiqul Islam, Michael Welzl, Stein Gjessing and Naeem Khademi Department of Informa,cs University of Oslo Problem


  1. Coupled ¡Conges,on ¡Control ¡for ¡ RTP ¡Media ¡ Safiqul ¡Islam, ¡Michael ¡Welzl, ¡Stein ¡Gjessing ¡and ¡Naeem ¡Khademi ¡ Department ¡of ¡Informa,cs ¡ University ¡of ¡Oslo ¡ ¡

  2. Problem ¡statement ¡ Each ¡Flow ¡has ¡its ¡own ¡Conges@on ¡ Control ¡module ¡ CC ¡ Flow 1 � CC ¡ Flow 2 � CC ¡ Compe,,on ¡ Flow 3 � leads ¡to: ¡ • M o r e ¡ q u e u e ¡ g r o w t h ¡ • M o r e ¡ p a c k e t ¡ d r o p s ¡ • M o r e ¡ d e l a y ¡ Flow n � • F a i r n e s s ¡ p r o b l e m s ¡ i n ¡ c a s e ¡ o f ¡ h e t e r o g e n e o u s ¡ R T T s ¡ 2 ¡

  3. Problem ¡statement ¡– ¡cont. ¡ Single ¡ Conges,on ¡ Controller ¡ CC ¡ Flow 1 � CC ¡ Flow 2 � CC ¡ Flow 3 � Flow n � 3 ¡

  4. Coupled ¡CC ¡– ¡related ¡work ¡ Conges,on ¡ Single ¡ Manager ¡– ¡ Conges,on ¡ Controller ¡ CC ¡ RFC ¡3124 ¡ Flow 1 � Best ¡known, ¡perhaps ¡the ¡oldest ¡related ¡ work. ¡Hard ¡to ¡implement: ¡ ¡ CC ¡ • Provides ¡a ¡common ¡conges,on ¡ Flow 2 � framework ¡ Ensemble ¡TCP ¡-­‑ ¡ • Uses ¡a ¡scheduler ¡to ¡distribute ¡the ¡ ETCP ¡ CC ¡ available ¡bandwidth. ¡ Flow 3 � Ensemble ¡Flow ¡ Conges,on ¡ Management ¡ • U,lizes ¡the ¡concept ¡of ¡Transport ¡Control ¡ Block ¡(TCB) ¡informa,on ¡sharing ¡from ¡ RFC2140. ¡ ¡ Flow n � 4 ¡

  5. Shared ¡boUlenecks ¡ • Coupled ¡CC ¡only ¡makes ¡sense ¡across ¡a ¡common ¡ boUleneck ¡ – This ¡was ¡ignored ¡in ¡prior ¡work ¡ – But ¡how ¡to ¡know? ¡ 1. Mul,plexing ¡(same ¡5-­‑, ¡actually ¡6-­‑tuple) ¡ Fits ¡rtcweb ¡(coupled-­‑cc ¡proposed ¡in ¡rmcat) ¡– ¡but ¡only ¡for ¡ – same ¡source/des,na,on ¡hosts ¡ 2. Configura,on ¡(e.g. ¡common ¡wireless ¡uplink) ¡ 3. Measurement ¡ Never ¡100% ¡reliable, ¡but: ¡different ¡receivers ¡possible! ¡ – Historically ¡considered ¡imprac,cal, ¡but ¡recent ¡work: ¡ – ¡ David ¡Hayes, ¡Simone ¡Ferlin-­‑Oliveira, ¡Michael ¡Welzl: ¡"Prac=cal ¡Passive ¡Shared ¡ Bo?leneck ¡Detec=on ¡Using ¡Shape ¡Summary ¡Sta=s=cs", ¡accepted ¡for ¡publica=on, ¡IEEE ¡ LCN ¡2014, ¡8-­‑11 ¡September ¡2014 ¡ 5 ¡

  6. Coupled ¡CC ¡ Single ¡ Conges,on ¡ Controller ¡ Flow 1 � Flow 2 � Flow 3 � This ¡might ¡work ¡well ¡for ¡ Flow n � flows ¡having ¡same ¡tuple ¡but ¡ what ¡happens ¡when ¡ boUleneck ¡changes? ¡ 6 ¡

  7. Coupled ¡CC ¡ Single ¡ Single ¡ Conges,on ¡ Conges,on ¡ Controller ¡ Controller ¡ Flow 1 � ¡ • Add ¡another ¡CC? ¡ • Add ¡another ¡scheduler? ¡ Flow 2 � • What ¡about ¡previous ¡ CC. ¡state? ¡ ¡ ¡ ¡ Flow 3 � What ¡we ¡think: ¡ • BeUer ¡to ¡have ¡a ¡simple ¡ algorithm ¡that ¡loosely ¡ couples ¡exis,ng ¡cc ¡with ¡ minimal ¡changes. ¡ ¡ Flow n � 7 ¡

  8. Coupled ¡CC ¡ Flow ¡State ¡ Exchange ¡(FSE) ¡ CC ¡ Flow 1 � CC ¡ Flow 2 � CC ¡ Flow 3 � Flow n � 8 ¡

  9. The ¡Flow ¡State ¡Exchange ¡(FSE) ¡ Sender ¡Host ¡ ¡ Flow ¡1 ¡cc ¡ FSE ¡ Flow ¡2 ¡cc ¡ Flow ¡3 ¡cc ¡ Shared ¡ BoUleneck ¡ Detec,on ¡ Flow ¡n ¡cc ¡ (SBD) ¡ 9 ¡

  10. The ¡Flow ¡State ¡Exchange ¡(FSE) ¡ Sender ¡Host ¡ ¡ ¡Update_Rate ¡() ¡ Store ¡Informa,on ¡ Flow ¡1 ¡cc ¡ New_Rate ¡ Flow ¡2 ¡cc ¡ Calculate ¡Rate ¡ FSE ¡ Flow ¡n ¡cc ¡ 10 ¡

  11. The ¡Flow ¡State ¡Exchange ¡(FSE) ¡ Sender ¡Host ¡ ¡ Store ¡Informa,on ¡ Flow ¡1 ¡cc ¡ ¡Update_Rate ¡() ¡ Flow ¡2 ¡cc ¡ Calculate ¡Rate ¡ New_Rate ¡ FSE ¡ Flow ¡n ¡cc ¡ 11 ¡

  12. Simple ¡algorithm ¡ • Every ¡,me ¡the ¡ conges,on ¡controller ¡of ¡ a ¡flow ¡determines ¡a ¡ new ¡sending ¡rate, ¡the ¡ for ¡all ¡flows ¡i ¡in ¡FG ¡do ¡ flow ¡calls ¡UPDATE ¡ ¡FSE_R(i) ¡= ¡(P(i)* Σ CR)/ Σ P ¡ • FSE ¡updates ¡the ¡sum ¡of ¡all ¡ ¡send ¡FSE_R(i) ¡to ¡the ¡flow ¡I ¡ rates, ¡calculates ¡the ¡sending ¡ end ¡for ¡ rates ¡for ¡all ¡the ¡flows ¡and ¡ distributes ¡them ¡ • Results ¡were ¡not ¡good ¡ Details ¡are ¡in ¡the ¡paper ¡ • 12 ¡

  13. Updated ¡algorithm ¡ Idea: ¡reduce ¡the ¡rate ¡on ¡conges,on ¡as ¡one ¡flow. ¡ ¡ • No ¡conges,on: ¡ ¡increase ¡the ¡aggregate ¡by ¡I/N ¡ where ¡I ¡is ¡the ¡increase ¡factor. ¡ • Conges,on: ¡Propor,onally ¡reduce ¡the ¡rate ¡to ¡ emulate ¡the ¡conges,on ¡response ¡of ¡one ¡flow. ¡ ¡ – Avoid ¡over-­‑reac,ng: ¡set ¡a ¡,me ¡(2RTTs) ¡to ¡react ¡ only ¡once ¡in ¡the ¡same ¡loss ¡event. ¡ 13 ¡

  14. Some ¡simula,on ¡results ¡ F1 ¡ F1 ¡ F2 ¡ F2 ¡ R1 ¡ R2 ¡ Fn ¡ Fn ¡ Implemented ¡in ¡ns-­‑2 ¡ • Two ¡rate ¡based ¡protocols: ¡ • – Rate ¡Adapta,on ¡Protocol ¡(RAP) ¡ ¡ – TCP ¡Friendly ¡Transport ¡Protocol ¡(TFRC) ¡ ¡ ¡ • BoUleneck ¡– ¡10 ¡Mbps, ¡Queue-­‑length ¡– ¡62 ¡Packets ¡(1/2 ¡BDP), ¡Packet ¡Size ¡– ¡1000 ¡Bytes, ¡ ¡ RTT ¡– ¡100 ¡ms ¡ • All ¡tests ¡(except ¡when ¡x-­‑axis ¡= ¡,me) ¡ran ¡for ¡300 ¡seconds, ¡carried ¡out ¡10 ¡,mes ¡with ¡random ¡ start ¡,mes ¡picked ¡from ¡first ¡second; ¡stddev ¡consistently ¡very ¡small ¡( ¡<= ¡0.2% ¡) ¡ 14 ¡

  15. Evalua,on ¡– ¡priori,za,on ¡and ¡fairness ¡ ¡ Fairness ¡ Priori@za@on ¡ ¡ 1 Fairness Index 0.8 10 Flow 1 0.6 Flow 2 Sending Rate (Mbps) 2 ¡Flows ¡ 8 0.4 6 0.2 FSE Without FSE 0 4 5:1 10:1 15:1 20:1 RTT Ratio 2 1 0 0 50 100 150 200 250 300 Time(s) Fairness Index 0.8 5 ¡Flows ¡ 0.6 Priority ¡of ¡flow ¡1 ¡increased ¡over ¡ 0.4 ,me ¡ 0.2 FSE Without FSE 0 15 ¡ 1:1:1:1:1 16:8:4:2:1 32:16:8:4:2 48:24:12:6:3 RTT Ratio

  16. Evalua,on ¡– ¡FSE ¡controlled ¡flows ¡ compe,ng ¡with ¡synthe,c ¡traffic ¡ 6 Flow #1 • TMIX ¡synthe,c ¡traffic, ¡ Flow #2 taken ¡from ¡60 ¡minute ¡ 5 Goodput (Mbps) trace ¡of ¡campus ¡traffic ¡at ¡ 4 the ¡University ¡of ¡Carolina ¡ 3 [TCP ¡Evalua,on ¡suite] ¡ • We ¡used ¡the ¡pre-­‑ 2 processed ¡version ¡of ¡ 1 this ¡traffic ¡which ¡is ¡ adapted ¡to ¡provide ¡ ¡ 0 1 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.2 0.1 an ¡approximate ¡load ¡ Priority of Flow #2 of ¡50% ¡ 16 ¡

  17. 35 60 RAP ¡ TFRC ¡ Average Queue Length Average Queue Length 30 55 25 50 Average ¡ 45 20 Queue ¡ 15 40 35 10 FSE FSE Without FSE Without FSE 5 30 2 4 6 8 10 12 14 16 18 20 2 4 6 8 10 12 14 16 18 20 11 2.5 # of Flows # of Flows Receiver ¡makes ¡assump,ons ¡about ¡ 10 Packet Loss Ratio % Packet Loss Ratio % sending ¡rate ¡(expected ¡length ¡of ¡loss ¡ 9 2 8 interval) ¡ è ¡loss ¡event ¡ra,o ¡p ¡calcula,on ¡ 7 1.5 wrong ¡ è ¡sender ¡too ¡aggressive ¡ 6 5 Packet ¡ 1 4 Loss ¡ 3 0.5 2 FSE Ra,o ¡ FSE 1 Without FSE Without FSE 0 0 2 4 6 8 10 12 14 16 18 20 2 4 6 8 10 12 14 16 18 20 100 # of Flows 100 # of Flows 90 Link Utilization % 90 Link Utilization % 80 80 Link ¡ U,liza,on ¡ 70 70 FSE 60 60 Without FSE FSE Throughput - 1 flow Without FSE 50 50 2 4 6 8 10 12 14 16 18 20 2 4 6 8 10 12 14 16 18 20 17 ¡ # of Flows # of Flows

  18. Different ¡max ¡Queue ¡Lengths ¡ ¡ ¡ RAP ¡ TFRC ¡ 70 180 Average Queue Length 65 Average Queue Length 160 60 140 55 50 120 45 100 10 ¡Flows ¡ 40 80 35 30 60 25 FSE FSE 40 20 Without FSE Without FSE 15 20 60 80 100 120 140 160 180 60 80 100 120 140 160 180 Queue Length Queue Length 90 180 Average Queue Length Average Queue Length 160 80 140 70 15 ¡Flows ¡ 120 60 100 50 80 40 60 30 FSE FSE 40 Without FSE Without FSE 20 60 80 100 120 140 160 180 20 18 ¡ 60 80 100 120 140 160 180 Queue Length Queue Length

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