Comparison of MaxNet and XCP: Network Congestion Control using explicit signalling Speaker: Bartek Wydrowski Compiled from work by: Lachlan Andrew (2), Steven Low (1), Iven Mareels (2), Bartek Wydrowski (1), Moshe Zukerman (2). (1) (2) Talk Overview • MaxNet & XCP Overview. • Steady state: Rate allocation properties. • Summary of Maxnet and XCP. • Maxnet: A little more details • Stability. • Convergence Speed. Network Congestion Control Sources transmit at a rate controlled by a “congestion signal” Links generate the congestion signal based on level of congestion at link S1 S2 S3 L1 L2 L3 Congestion level of end-to-end path is fed back to source D1 D2 D3 Network Congestion Control Congestion signal on the Internet is implicit, and can be modelled as the sum of the end-to-end link congestion levels – this is where XCP, MaxNet differs. Si Source p p 1 Link 1 Link 2 2 p N Link N Link l drops packets at rate pl: Link 1 Link 2 Link l ECN marks packets at rate pl: Link 1 Link 2 Link l delays packets for time pl: Link 1 Link 2 T1 T2 Destination MaxNet: Overview MaxNet: Quick Overview MaxNet is: • A Fully distributed flow control architecture for large networks. • Max-Min fair in principle. • Stable for networks of arbitrary topology, number of users, capacity and delay. • Fast convergence properties. • Addresses short-flow control. Philosophy: • Simple Architecture. • Ability to scale. • Simplicity ability to design/predict. MaxNet: Packet Format Packet Data Congestion Signal N Bits (price_k) MaxNet: Source Algorithm Source Algorithm – Demand Function. Each source can have a different demand function which determines the source’s relative need for capacity. x– Transmission Rate p - Price Xi = D(price_k) Source rate Congestion Feedback from ACK k Source demand function MaxNet: Packet Marking Source 1 Source 2 Packet Signal = max(Packet Signal,p1(t)) Packet Signal = max(Packet Signal ,p2(t)) Signal =max(p2,p3) Packet Signal = max(Packet Signal ,p3(t)) Signal =max(p1,p2,p3) MaxNet: Link Algorithm Router Algorithm: Packet marking according to Price_k = max ( Price_k , pl(t) ) Congestion signal in pkt k Link price updated at each control interval, say every 10ms. (single price for all flows on link) pl(t+1) = pl(t) + b(y(t)-aC) Constant: convergence speed Aggregate input rate Link capacity Constant to control Link utilization MaxNet: Steady State Properties S0 S1 S2 S3 2 Mbps L1 3 Mbps L2 2 Mbps L3 p1 p2 D0 D1 D2 D3 q0 = p1 = max(p1) q1 = p1 = max(p1,p2) q2 = p1 = max(p ,pmax(p 1= 2,p3) q = p 3 3 2, p3) p3 Mbps S3 1.33 S0,S1,S2 0.66 q3 q0, q1, q2 Price MaxNet: Steady State Properties Link 2 capacity Link 2 capacity 3 Mbps 3 Mbps 1 Mbps 1 Mbps Source 0 and 1 T2 T1 1.4 1.2 1 0.8 0.6 0.4 0.2 0 Rate (Mbps) Rate (Mbps) T1 Source 2 and 3 0 2000 4000 6000 Time Step 8000 10000 T2 1.5 1 0.5 0 0 2000 4000 6000 Time Step 8000 10000 XCP: Overview XCP Architecture XCP Packet Header H_cwnd H_rtt H_feedback Sender 1. Initializes pkt k: H_throughput_k H_rtt_k H_feedback_k router router 2. Each Router Computes Feedback: H_feedback_k = min(H_feedback_k,H_lk) Where H_lk = link l’s feedback for pkt k. Thus, feedback from router with minimum ‘feedback signal’ is obtained from source to destination path. Receiver 3. Send header back to sender in ACK. XCP Architecture Source Algorithm: • Rate is governed by window • Source sends packet containing XCP header • Source receives feedback in ACK and adjusts window Change in source window Source transmission rate Feedback from ACK XCP Architecture Router Algorithm: Feedback computed for each packet H_feedback_k = min (H_feedback_k,H_feedback_i) Round trip time of source i in packet Feedback in Pkt k header Window of source i in packet Sum over control interval Aggregate input rate Mean of all RTTs Link capacity Packet size Queue MaxNet, XCP: Steady State Properties MaxNet: Steady State Properties MaxNet is Max-Min fair for homogenous sources. If all sources have the same demand function (homogenous), then MaxNet results in a max-min rate allocation. Max-min fairness maximises the minimum rate allocation, and maximizes each subsequently larger rate without reducing the smaller rates. MaxNet: Steady State Properties For general demand functions, MaxNet is weighted min-max fair. (Min-Max price fair) Transmission rate Sources can prioritize their rate allocation by changing their demand functions. Roughly speaking, their rate allocation will be in proportion to the magnitude of the demand function. x1 x2 Link price XCP: Steady State Properties • Analysis to compute XCP equilibrium rates for arbitrary topology: Steven H. Low, Lachlan L. H. Andrew, Bartek P. Wydrowski, “Understanding XCP: Equilibrium and Fairness”. Rate allocation is a solution to a max-min problem with additional constraints • Effects of additional constraint: • Utilization can be below 100%. • Rates can be arbitrarily small fraction of max-min fair rates • In some topologies, residual terms are redundant. XCP: Steady State Properties Given a topology, our analysis can predict rate allocation. •Matches NS2 results very precisely •Predicts interesting pathological cases XCP: Steady State Properties Utilization of a link varies with number of sources bottlenecked at other links. •Lower and upper bound are: ρl = fraction of flows at link l not bottlenecked at link l l = fraction of traffic at link l not bottlenecked at link l = shuffling parameter a , b = XCP parameters (conv speed,buffer) With standard alpha and gamma parameters, utilization is at least 80%. XCP Scenario 1 C1=155 Mbps C2=200 Mbps Alpha = 0.4 Beta = 0.226 Gamma = 0.1 XCP Utilisation XCP Scenario 1 Rate allocation can be arbitrarily smaller than max-min fair rates. Eg: C1=155 Mbps C2=C1(n-1)/n i=n^2-1 j=1 Alpha = 0.4 Beta = 0.226 Gamma = 0.1 XCP Max-Min Fairness XCP- Stability counter-example Sources 0..9 Source 10 Sink 200Mbps 1x = 50ms 5x = 250ms 10x = 500ms 100Mbps 50ms MaxNet & XCP comparison Criteria MaxNet XCP Rate Allocation MaxMin Weighted MaxMin Constrained MaxMin (less than MaxMin) Bits per Packet • Naïve encoding: 40 Bits/pkt with naïve linear encoding. • Smarter encoding: 4 Bits/pkt (effectively) Every nth packet carries signal, say n=10, and exponential encoding of price. 96 Bits/pkt from BSD implementation. Router operations per packet 2= 1 addition +1 max 12 = 3 multiplications + 1 division + 6 additions + 2 comparisons XCP & MaxNet Research status Criteria MaxNet XCP Stability Linear stability for networks of arbitrary size, RTTs, capacity and number of flows proven. Linear stability for single link and aggregate of flows, all with same RTT. Have counter example for more general case. Convergence Speed Linear analysis shows faster convergence than ECN, loss (RENO), delay (FAST,VEGAS) based schemes. No control analysis available. Some simulation results show faster than TCPRENO. Implementation progress Custom Simulation, TCP-FAST can be adopted. NS2 BSD MaxNet: Stability Properties MaxNet Stability MaxNet is stable (local proven) over arbitrary network dimensions of: Number of sources, links, hops, delay, capacity Same properties as were shown for SumNet in: F. Paganini, J.C. Doyle and S.H. Low, “Scalable laws for stable network congestion control,” in Proc. IEEE Conf. Decision Contr. (CDC), (Orlando, FL), 2001, pp. 185-90. Network Control Model Physical Network L1 S1 S2 S3 L2 L3 D1 D2 D3 Control Model Network Model quantities are small signal variations about equilibrium. S1 S2 S3 Source Rate x 0 0 0 0 Aggregate Rate y L1 L2 L3 Aggregate price q 0 0 0 0 Link price d Network Control Model MaxNet open-loop transfer function. S1 S2 S3 0 0 0 L1 0 L2 L3 0 0 0 0 1 T H ( s ) R f s Rb s C s Link Integrator Action Source Gain Link Gain Backward Routing Matrix Forward Routing Matrix MaxNet Stability Requirements K x0i Constrains slope Of source demand function i x– Transmission Rate Source Gain p - Price Link Gain 1 a Cl Constrains speed of link control law pl(t+1) = pl(t) + b(y(t)-aC) MaxNet: Convergence Properties MaxNet: Convergence Speed MaxNet has faster asymptotic convergence than the SumNet architecture. (MaxNet is able to place the dominant pole further to the left than SumNet.) SumNet, MaxNet simulations Power = Throughput/delay 12.00 Power 10.00 8.00 MaxNet 6.00 SumNet 4.00 2.00 0.00 0 0.005 0.01 0.015 0.02 0.025 0.03 Source Gain Convergence Time Delay 4000 25000 3500 20000 2500 MaxNet 2000 SumNet Del ay Conver gence T ime 3000 15000 MaxNet 10000 SumNet 1500 1000 5000 500 0 0 0 0 0.005 0.01 0.015 Source Gain 0.02 0.025 0.005 0.01 0.015 0.02 0.025 0.03 0.035 0.04 0.045 0.05 0.03 Source Gain Conclusion • MaxNet steady state, stability and speed properties have been investigated. • XCP steady state properties were recently analyzed. • MaxNet offers (at least) steady state and implementation simplicity, advantages over XCP.
© Copyright 2026 Paperzz