140 likes | 263 Views
EE689 Lecture 14. Review of Last lecture Receiver-driven Layered Multicast. Receiver-driven Multicast. Sender based schemes don’t scale well as number of receivers increase Receiver based schemes scale better
E N D
EE689 Lecture 14 • Review of Last lecture • Receiver-driven Layered Multicast
Receiver-driven Multicast • Sender based schemes don’t scale well as number of receivers increase • Receiver based schemes scale better • Receivers can decide the level of reliability needed - level of quality desired etc. • Receivers can coordinate and reduce the work for loss recovery
Layered Multicast • Receivers and network connectivity heterogeneous • Difficult to deal with packet losses • Receivers with higher connectivity should be allowed to get a better quality picture • Receivers with lower connectivity can get better quality through layered video than random losses of packets in flat video
RLM • RLM - developed at LBL • Café Mocha - at TAMU • Use layered video coding • Allow receivers to subscribe to different layers • Organize multicast into several groups - each group corresponds to a different layer
Network Congestion • Network congestion - dynamic • With higher traffic, multicast should backoff to lower layers • With less traffic, could get higher quality • Have to allow receivers to drop/add layers dynamically • Add/Join Experiments
Add-Join Experiments • Receivers add a layer to see if there is enough BW • If packet losses go up, then experiment unsuccessful - don’t add layer • Associate a timer with each layer • On a failure, double the timer for next join experiment
Join Experiments • On unsuccessful joins, all the receivers on the same subnet could learn from failure • Increase everyone’s timer on a failed expt. • If everyone tries an experiment at the same time, • results can be different than individual attempts • can cause increased traffic
Join Experiments • Add a random component to join experiments • If a join experiment is in progress, don’t initiate another one • multicast a join experiment • allows shared learning, increase your timer on someone else’s failed experiment • convergence time can be high • priorities in network affect RLM scalability
Simultaneous joins • Simultaneous join experiments may happen on different layers • If experiment fails • join experiment at the highest layer => failed • join experiment a a lower layer => not sure, could be due to other experiment • Start a Measurement mode to determine if long-term congestion persists.
States of RLM • Steady state (S), Drop state (D), Measurement state (M) and Hysteresis (H) • Hysteresis state allows not reacting to transient congestion caused by join experiments • use a detection timer T
Issues • Latency Scalability • Session Scalability • Bandwidth Heterogeneity • Superposition
Network Implications • Receiver Consensus • One bad user can cause trouble for subnet • Group Maintenance • add/join should happen quickly (IGMP) • Fairness • multiple multicasts -how to share BW • how to ensure multicast doesn’t hog BW
TCP-friendly Multicast • Arrange layers in an exponentially increasing data rates • In steady state, packet drop => congestion, drop a layer • If layers are doubling in data rates, dropped layer = reducing multicast rate by half => TCP friendly
Summary • Receiver-driven layered multicast works • Critically dependent on timers • Much work is being done to make many of these mechanisms more efficient • Need for reducing overhead • add/join experiments