1 / 76

End-to-End Multicast Congestion Control and Avoidance

End-to-End Multicast Congestion Control and Avoidance. Jiang Li Advisor: Shivkumar Kalyanaraman. Outline. Overview of multicast and multicast congestion management Solution series LE-SBCC ORMCC GMCC MCA+ Simulations & Experiments Future work. Multicast.

judson
Télécharger la présentation

End-to-End Multicast Congestion Control and Avoidance

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. End-to-End Multicast Congestion Control and Avoidance Jiang Li Advisor: Shivkumar Kalyanaraman

  2. Outline • Overview of multicast and multicast congestion management • Solution series • LE-SBCC • ORMCC • GMCC • MCA+ • Simulations & Experiments • Future work

  3. Multicast • Efficient One-to-Many Data Distribution • Unicast: one copy for EACH receiver • Multicast: one copy for ALL receivers Multicast Unicast Source Source Router Router Receiver 1 Receiver 2 Receiver 1 Receiver 2

  4. When / Where to Use Multicast? • Whenever / wherever efficient one-to-many delivery of same data is needed • Applications: • News/sports/stock/weather updates • Distance learning • Configuration, routing updates, service location • Teleconferencing (audio, video, shared whiteboard, text editor) • Distributed interactive gaming or simulations • Email distribution lists • Content distribution; Software distribution • Web-cache updates • Database replication

  5. Research on Multicast • Routing • Reliable transmission • Congestion management • Security • Address allocation • And more

  6. Multicast Congestion Management • Adapt sending rate to available bandwidth • Single-rate • Multi-rate Source Router 2Mbps 1Mbps 1Mbps 1Mbps 2Mbps Receiver 2 Receiver 1

  7. Challenges • Multiple paths • Complex congestion pattern • Heterogeneous bandwidth • Dynamically changing Source Router Bottlenecks … 0.5Mbps 2Mbps ` 1Mbps Receivers

  8. Potential Problems • Drop-to-Zero • React to congestion more than necessary Source Congestion ! Cut rate Router Congestion ! Cut rate btnk3 Congestion ! Cut rate btnk1 Sending rate 4Mbps Congestion ! Cut rate btnk2 3Mbps Congestion ! Cut rate 2Mbps 2Mbps 1Mbps 1Mbps 0 Mbps 0 Mbps Rate increase

  9. Potential Problems (cont’d) • Feedback implosion Source Router … Receivers

  10. Potential Problems (cont’d) • Large number of states and large computation complexity • O(1) number of states wanted • O(1) computation time wanted • Unfriendliness to other existent congestion control protocols (e.g. TCP) • Break others or be broken by others

  11. End-to-end Solution Categories • End-to-end vs. third-party assisted • End: source, receiver • Third-party: router, proxy etc Easy to deploy. Our choice. (End) Receiver (Third party) (End) Router Source (End) Receiver Network (Third party) Proxy (uncontrollable by end users)

  12. Congestion Control vs. Congestion Avoidance • Congestion control • Reactive • Congestion is managed when packets are lost • Congestion avoidance • Proactive • Congestion is managed when queue is being built up at bottlenecks • Low avg. queue length, high b/w utilization Queue length Packet drop begins Buffer size Time t 0 Cong. Ctrl Cong. Avoid.

  13. A Series of Solutions • LE-SBCC (single-rate congestion control) • Purely source-based, compatible with many multicast transport protocols • ORMCC (single-rate congestion control) • O(1)state and computation complexity • Scalable to large groups • GMCC (multi-rate congestion control) • Adaptive to receiver heterogeneity • MCA+ (single-rate congestion avoidance) • Responsive to incipient congestion

  14. Outline • Overview of multicast and multicast congestion management • Solution series • LE-SBCC • ORMCC • GMCC • MCA+ • Simulations • Future work

  15. LE-SBCC • Loss-Event Oriented Source-Based Multicast Congestion Control • Motivations • Compatible with all multicast transport protocols (e.g. RMTP, PGM) • Easiest deployment • Trade-offs • For small to medium sessions • Single-rate

  16. Can be deployed by upgrading source only Characteristics • Based on source • Source does most of the work, e.g. • Filtering feedback packets • Adjusting sending rate • Minimum receiver support • Single-bit feedback • Can be piggybacked by ACK or NAK • Commonly available in transport protocols

  17. Problem • How to react to congestion? Source Router Rcvr 1 Rcvr 2 Rcvr 3 Rcvr 4 Rcvr 5

  18. Source Reacts to 70 feedback packets Router 70 40 50 30 60 Rcvr 1 Rcvr 2 Rcvr 3 Rcvr 4 Rcvr 5 Idea • React to a number of feedback packets approx. equal to those from the most congested receiver. • React to the most congested receiver

  19. Source Router 70 40 50 30 60 Rcvr 1 Rcvr 2 Rcvr 3 Rcvr 4 Rcvr 5 Feedback Filter Cascade Rate adaptation MaxLPRF LI2LE ATF Feedback packets RTT Estimator RTT (Round Trip Time): biased towards the most congested receiver

  20. LI LI LE LE Filter 1: LI2LE • Pass at most one feedback packet per RTTper receiver • Loss indication (LI): an original feedback packet • Loss event (LE): a packet passing the filter Filtering receiver 1’s feedback RTT Filtering receiver 2’s feedback t0 RTT t1 < RTT

  21. Filter 2: Max-LPRF • Passes every LE with the probability: Source Approx. 70 LEs Router X1=70 X5=40 X4=60 X3=30 X2=50 Rcvr 1 Rcvr 2 Rcvr 3 Rcvr 4 Rcvr 5

  22. Filter 3: ATF • Enforce at most one rate cut per RTT. Rate cut Sending rate Accepted for rate cut Ignored Loss events Time RTT t0 t0+RTT

  23. RTT RTT RTT RTT RTT RTT Rate Adaptation • AIMD (additive increase/multiplicative decrease) • Other (e.g. TFRC, binomial) V s: packet size s/RTT V/2 Sending rate Time

  24. Outline • Overview of multicast and multicast congestion management • Solution series • LE-SBCC • ORMCC • GMCC • MCA+ • Simulations & Experiments • Future work

  25. ORMCC • LE-SBCC • O(N) state at the source (N: # receivers) • Subject to feedback implosion • ORMCC • O(1) state and computation complexity • Statistics-based feedback suppression • Proprietary support required from receivers

  26. Source Functions • Dynamically maintains a congestion representative (CR) (the slowest receiver) • Using TRAC (Throughput Rate At Congestion) • Receiving rate during congestion epochs • Slowest receiver has the lowest average TRAC • Only accepts CR’s input for rate adaptation (AIMD) • Detect & recover from loss of CR • Omitted here

  27. Receiver Functions • Measures TRAC • Only during congestion epochs • Average over several packets or a short period to avoid oscillation • Sends feedback with TRAC • Suppresses if its average TRAC < average CR TRAC – σ • σ : std. deviation of CR TRAC • Average CR TRAC andσare multicast by the source

  28. Outline • Overview of multicast and multicast congestion management • Solution series • LE-SBCC • ORMCC • GMCC • MCA+ • Simulations & Experiments • Future work

  29. GMCC (Generalized Multicast Congestion Control) • LE-SBCC & ORMCC • Single-rate • GMCC: A multi-rate scheme • Various receivers receive data at different rates. • Can run in single-rate mode • Leverage ORMCC and greatly simplify the scheme Source Router 2Mbps 1Mbps 1Mbps 1Mbps 2Mbps Receiver 2 Receiver 1

  30. Previous Multi-Rate Schemes • Receiver-based schemes • The source sends data in each layer without regarding to network situation • Receivers increase/decrease their receiving rates by constantly join/leave layers • Coarse control, heavy router burden (Very short) (Very short) Receiver Source Join interval Leave interval 1 layer = 1 multicast group Layer 4 Data ~ Layer 3 Layer 2 Layer 1 Leave Join

  31. Previous Multi-Rate Schemes (cont’d) • SMCC • Source adaptation • Static layering (pre-defined maximum rate for each layer) (Dynamic) (Dynamic) Receiver Source Join interval Leave interval single-rate Layer 4 Data single-rate Layer 3 ~ Layer 2 single-rate single-rate Layer 1 Leave Join

  32. GMCC • Independent single-rate congestion control in each layer • Dynamic layering(no rate limit for each layer) (Dynamic) (Dynamic) Source Receiver Leave interval Join interval Layer 4 Layer 3 Data ~ Layer 2 Layer 1 Leave Join

  33. =2Mbps Key Ideas • “Unsatisfied” receivers join a new layer. Source Router 1Mbps 1Mbps 1Mbps 1Mbps 2Mbps Receiver 2 Receiver 1 Unsatisfied: much less congested than the most congested one (in a layer)

  34. Key Ideas (cont’d) • No receiver is allowed to be the most congested in more than one layer. Source Router 0.33Mbps 0.5Mbps 0.33Mbps 1Mbps 0.33Mbps 0.5Mbps 0.5Mbps 1Mbps 0.33Mbps 1Mbps 2Mbps Receiver 2 Receiver 1

  35. Layer 3 Layer 3 Layer 2 Layer 2 Layer 2 Layer 2 Layer 1 Layer 1 Layer 1 Layer 1 Receiver Operations • Join • A receiver joins a higher layer if it sees much less congestion than CR in its top joined layer. • CR: The most congested receiver • Leave • A receiver leaves its top joined layer if it is the most congested in more than one layers. Join Less congested Leave Most congested

  36. Source Operations • Control on and off of each layer • Only the top layer can be deactivated • A previously unnoticed problem • Do single-rate multicast congestion control in each layer • Very similar to ORMCC Receivers Layer 3 Layer 2 Layer 1

  37. Outline • Overview of multicast and multicast congestion management • Solution series • LE-SBCC • ORMCC • GMCC • MCA+ • Simulations & Experiments • Future work

  38. MCA+ • Multicast congestion avoidance with feedback suppression • MCA+ = ORMCC + incipient congestion detection • Using accumulation to detect incipient congestion

  39. MCA+: Accumulation • A flow’s accumulation is a time-shifted, distributed sum of the queued bits in all nodes along its path. • Can be measured end-to-end • Showed theoretically by colleague’s work Routers Accumulations: Red flow: 5 packets Blue flow: 4 packets Yellow flow: 9 packets Data t2 t3 t1 t4 Packets in queues

  40. N packets sent (λt) M packets received (μt) MCA+: Accumulation Measurement • Use control packets as pivot points • (λ: input rate, μ: output rate) Sender side CP0 CPi CP0 CPi Receiver side Accumulation (N – M packets) Propagation Delay Time

  41. MCA+: Accumulation & Congestion • Accumulation ≥ 2 packets → congestion • By receivers. • Possible one packet accumulation even when underloaded • More noise, higher threshold • Accumulation ≤ 1 packet, synchronize (begin another measurement period). • Feedback and rate adaptation • Very similar to ORMCC

  42. Outline • Overview of multicast and multicast congestion management • Solution series • LE-SBCC • ORMCC • GMCC • MCA+ • Simulations & Experiments • Future work

  43. Problems to Solve -- Review • Drop-to-Zero • TCP-friendliness • State and computation complexity • Feedback implosion

  44. Simulations: Drop-to-Zero Avoidance Test • Topology Source Router Bottlenecks … ` Receivers

  45. Throughput rates of two randomly chosen unicast flows Multicast flow rate Drop-to-Zero Avoidance Test (cont’d) • LE-SBCC, using ns-2 • Multicast rate ≈ Unicast rate

  46. Simulations: Drop-to-Zero Avoidance Test (cont’d) • ORMCC, 10000 receivers, using ROSS Unicast ORMCC Multicast ORMCC

  47. Simulations: Drop-to-Zero Avoidance Test (cont’d) • ORMCC vs PGMCC & TFMCC, 500 receivers, using ROSS Unicast PGMCC ORMCC PGMCC TFMCC

  48. Simulations: Drop-to-Zero Avoidance Test (cont’d) • MCA+

  49. Bottleneck Utilization Improvement of MCA+ • Average queue length

  50. Bottleneck Utilization Improvement of MCA+ • Bandwidth utilization

More Related