190 likes | 339 Views
The Impact of Multicast Layering on Network Fairness. Dan Rubenstein Jim Kurose Don Towsley. S 1. r 2,2. r 1,1. S 2. router. r 2,1. Motivation. How should multicast flows share bandwidth “fairly” within a network?. r 2,2. S 1. r 1,1. S 2. r 2,1. Layered Multicast.
E N D
The Impact of Multicast Layering on Network Fairness Dan Rubenstein Jim Kurose Don Towsley Dan Rubenstein
S1 r2,2 r1,1 S2 router r2,1 Motivation • How should multicast flows share bandwidth “fairly” within a network? Dan Rubenstein
r2,2 S1 r1,1 S2 r2,1 Layered Multicast • Layering permits multi-rate sessions • receivers in same session receive at differing rates • Used for • multicast video [MJV’96/’97] • (reliable) data via FEC [RV’98, BLMR’98] Q: How can multi-rate sessions affect fairness within a network? Dan Rubenstein
Talk Overview Paper Contributions • Formally extend max-min fair (MMF) definition to cover multi-rate (i.e., layered) sessions • Demonstrate that desirable fairness properties hold in multi-rate max-min fair rate allocations • Quantify a practical coordination problem within multi-rate sessions: redundancy • Examine how redundancy impacts fairness of a practical congestion control protocol Dan Rubenstein
Unicast MMF [H ‘81, …, BG ‘92] • When possible, take from the rich, give to the poor... • “rates” are max-min fair when for all rates B, either • B uses all link bandwidth on some link • increasing B causes a decrease in some other rate A, where initially A B r1 r1 r2 r2 S1 S1 S2 S2 S3 S3 r3 r3 Not MMF! Dan Rubenstein
Unicast MMF [H ’81, …, BG ’92] • When possible, take from the rich, give to the poor... • “rates” are max-min fair when for all rates B, either • B uses all link bandwidth on some link • increasing B causes a decrease in some other rate A, where initially A B r1 r1 r2 r2 S1 S1 S2 S2 S3 S3 r3 r3 MMF! Not MMF! • Hayden proves: For any unicast network, there is a unique max-min fair allocation. Dan Rubenstein
Single-rate Multicast MMF [TS’97] r2,2 S1 • all receivers in session must receive at same rate • “fairness” applies to session rates • a session’s link BW is identical on all utilized links r1,1 S2 r2,1 • TS’97 proves: for any single-rate multicast network • there is a unique max-min fair allocation Dan Rubenstein
r2,2 S1 r1,1 S2 r2,1 Multi-rate MMF • receivers in a session can receive at differing rates • make receiving rates “fair” • session’s link BW is the maximum used on downstream links (like layered protocols) • We prove: for any multi-rate multicast network, • there is a unique max-min fair allocation • (Proofs extend to networks w/ mix of single-rate & multi-rate sessions) Dan Rubenstein
No SPRF! Same paths Single-rate MMF Why is multi-rate MMF “desirable”? • We identify desirable fairness properties • Derived from desirable properties of unicast max-min fair allocations • e.g., Same-path-receiver-fairness (SPRF): 2 rcvrs with same paths from sources should receive at identical rates. SPRF! Multi-rate MMF Dan Rubenstein
The other fairness properties... • Deal with competing session’s rates & link utilizations (give from richer to poorer)... • Fully-Utilized-Receiver-Fairness: Each receiving rate should be no “poorer” than other rates over some competing link • Per-Session-Link-Fairness: Each session should be no “poorer” than other sessions on some link over some branch of the session’s multicast tree. • Per-Receiver-Link-Fairness: Each session should be no “poorer” than other sessions on some link over every branch of the session’s multicast tree. Dan Rubenstein
Multi-rate MMF is “desirable” • We prove these “desirable” properties hold within the multi-rate MMF allocation in any network. • We show these properties need not hold within the single-rate MMF allocation • (e.g., Same-path-receiver-fairness) • We measure “desirability” of the MMF allocation as individual session types (single- or multi-rate) vary • construct allocation ordering relation • show “desirability” increases as sessions switch to multi-rate. Dan Rubenstein
Practicalities... • In practice: finite # of layers smallset of available rates • Problem: fixed set of layers might not yield fair rate • Solution: join and leave layers to achieve desired (fair) average rate • Leads to another problem... } MMF rate Layer 2 } Layer 1 time Dan Rubenstein
r1,1 r1,2 r1,2 session’s link redundancy = s/M s: session’s shared link rate M: session’s max rcvr rate on link • Redundancy of 1 is optimal • Redundancy > 1: some desired fairness properties don’t hold Redundancy • Lack of intra-session join/leave coordination increases shared link usage Link usage r1,1 coord uncoord Dan Rubenstein
Redundancy in Practice • Simple example • one layer • Unsynched (random) joins and leaves • redundancy highest when all receivers “touch” a layer • Also find: using multiple layers reduces redundancy Dan Rubenstein
Redundancy vs. Fair rates • E.g., single bottleneck link: redundancy lowers fair rates • Less impact on rates when fraction, f, of sessions with redundancy is small. • f likely to be small Dan Rubenstein
Redundancy in Practice • What is the redundancy of a practical, layered, congestion control protocol? • Protocol we consider: (simple model based on the work of [VCR’98]): • Lose a packet, leave a layer • Join layer, 2 versions: • uncoordinated points in time • coordinated by sender Independent-loss links • Markov models and simulation on mod-star topology Shared-loss link Dan Rubenstein
A practical CC protocol: redundancy • Results w/ 100 rcvrs: • allocations are “close” to multi-rate max-min fair • sender-coordinated joins keeps redundancy smaller than 3 • Redundancy < 3 means fair rate within .9 of optimal! Dan Rubenstein
Conclusion • Multi-rate sessions change “the rules” for fairness • can achieve desirable fairness properties • Keep redundancy low • simple techniques likely to do quite well in practice Dan Rubenstein
Open Issues • Extensions to other fairness definitions: • TCP fairness • Proportional fairness • Eliminating redundancy • Network support (router filters) • Prioritized layers • Effects of join/leave latencies • Stability • How fast should/can protocols join/leave layers Dan Rubenstein