Compiled from work by: Lachlan Andrew (2), Steven Low (1),
description
Transcript of Compiled from work by: Lachlan Andrew (2), Steven Low (1),
![Page 1: Compiled from work by: Lachlan Andrew (2), Steven Low (1),](https://reader035.fdocuments.us/reader035/viewer/2022070412/56814bf1550346895db8d9f5/html5/thumbnails/1.jpg)
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)
![Page 2: Compiled from work by: Lachlan Andrew (2), Steven Low (1),](https://reader035.fdocuments.us/reader035/viewer/2022070412/56814bf1550346895db8d9f5/html5/thumbnails/2.jpg)
Talk Overview
• MaxNet & XCP Overview.• Steady state: Rate allocation properties.• Summary of Maxnet and XCP.• Maxnet: A little more details
• Stability.• Convergence Speed.
![Page 3: Compiled from work by: Lachlan Andrew (2), Steven Low (1),](https://reader035.fdocuments.us/reader035/viewer/2022070412/56814bf1550346895db8d9f5/html5/thumbnails/3.jpg)
Network Congestion Control
S2S1
S3
L1L2
L3D2D1
D3
Links generate the congestion signalbased on level of congestion at link
Sources transmit at a rate controlled by a “congestion signal”
Congestion level of end-to-endpath is fed back to source
![Page 4: Compiled from work by: Lachlan Andrew (2), Steven Low (1),](https://reader035.fdocuments.us/reader035/viewer/2022070412/56814bf1550346895db8d9f5/html5/thumbnails/4.jpg)
Network Congestion Control
Source Destination Link 2 Link N Link 1
Si p2 p
1 p
N
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.
Link l drops packets at rate pl:
Link l ECN marks packets at rate pl:
Link l delays packets for time pl:
Link 1 Link 2
Link 1 Link 2
Link 1 Link 2
T1 T2
![Page 5: Compiled from work by: Lachlan Andrew (2), Steven Low (1),](https://reader035.fdocuments.us/reader035/viewer/2022070412/56814bf1550346895db8d9f5/html5/thumbnails/5.jpg)
MaxNet: Overview
![Page 6: Compiled from work by: Lachlan Andrew (2), Steven Low (1),](https://reader035.fdocuments.us/reader035/viewer/2022070412/56814bf1550346895db8d9f5/html5/thumbnails/6.jpg)
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: Quick Overview
![Page 7: Compiled from work by: Lachlan Andrew (2), Steven Low (1),](https://reader035.fdocuments.us/reader035/viewer/2022070412/56814bf1550346895db8d9f5/html5/thumbnails/7.jpg)
Data
MaxNet: Packet Format
CongestionSignalN Bits
(price_k)
Packet
![Page 8: Compiled from work by: Lachlan Andrew (2), Steven Low (1),](https://reader035.fdocuments.us/reader035/viewer/2022070412/56814bf1550346895db8d9f5/html5/thumbnails/8.jpg)
MaxNet: Source Algorithm
p - Price
x– T
ransmission
Rate
Source Algorithm – Demand Function.Each source can have a different demand function which determines the source’s relative need for capacity.
Source rate
Source demand function
Congestion Feedback from ACK k
Xi = D(price_k)
![Page 9: Compiled from work by: Lachlan Andrew (2), Steven Low (1),](https://reader035.fdocuments.us/reader035/viewer/2022070412/56814bf1550346895db8d9f5/html5/thumbnails/9.jpg)
Packet Signal = max(Packet Signal,p1(t))
Packet Signal = max(Packet Signal ,p2(t))
Packet Signal = max(Packet Signal ,p3(t))
Signal =max(p1,p2,p3)
Source 1
Signal =max(p2,p3)
Source 2
MaxNet: Packet Marking
![Page 10: Compiled from work by: Lachlan Andrew (2), Steven Low (1),](https://reader035.fdocuments.us/reader035/viewer/2022070412/56814bf1550346895db8d9f5/html5/thumbnails/10.jpg)
MaxNet: Link Algorithm
Router Algorithm: Packet marking according to
pl(t+1) = pl(t) + (y(t)-C)
Price_k = max ( Price_k , pl(t) )
Aggregate input rate
Link price updated at each control interval, say every 10ms.(single price for all flows on link)
Link capacityConstant: convergence speed
Constant to controlLink utilization
Congestion signalin pkt k
![Page 11: Compiled from work by: Lachlan Andrew (2), Steven Low (1),](https://reader035.fdocuments.us/reader035/viewer/2022070412/56814bf1550346895db8d9f5/html5/thumbnails/11.jpg)
MaxNet: Steady State Properties
S2
S1
S0
L1
L2L3
D1
D0
D3S3
D2
2 Mbps
3 Mbps
2 Mbps
q0, q1, q2
0.66
1.33
q3
S3
S0,S1,S2
Mbps
Price
p1 p2 p3
q3 = p3 = max(p2, p3)
q0 = p1 = max(p1)
q1 = p1 = max(p1,p2)
q2 = p1 = max(p1,p2,p3)
![Page 12: Compiled from work by: Lachlan Andrew (2), Steven Low (1),](https://reader035.fdocuments.us/reader035/viewer/2022070412/56814bf1550346895db8d9f5/html5/thumbnails/12.jpg)
Source 0 and 1
00.20.40.6
0.81
1.21.4
0 2000 4000 6000 8000 10000
Time Step
Rat
e (M
bps)
Source 2 and 3
0
0.5
1
1.5
0 2000 4000 6000 8000 10000
Time Step
Rate
(Mbp
s)
T1 T1 T2T2
MaxNet: Steady State Properties
Link 2 capacityLink 2 capacity
3 Mbps 3 Mbps
1 Mbps 1 Mbps
![Page 13: Compiled from work by: Lachlan Andrew (2), Steven Low (1),](https://reader035.fdocuments.us/reader035/viewer/2022070412/56814bf1550346895db8d9f5/html5/thumbnails/13.jpg)
XCP: Overview
![Page 14: Compiled from work by: Lachlan Andrew (2), Steven Low (1),](https://reader035.fdocuments.us/reader035/viewer/2022070412/56814bf1550346895db8d9f5/html5/thumbnails/14.jpg)
XCP Architecture
H_cwndH_rttH_feedback
XCP Packet Header
Sender Receiverrouter router
1. Initializes pkt k:H_throughput_kH_rtt_kH_feedback_k
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.
3. Send header back to senderin ACK.
![Page 15: Compiled from work by: Lachlan Andrew (2), Steven Low (1),](https://reader035.fdocuments.us/reader035/viewer/2022070412/56814bf1550346895db8d9f5/html5/thumbnails/15.jpg)
XCP Architecture
Source Algorithm:
Change in source window
Source transmission rate
Feedback from ACK
• Rate is governed by window• Source sends packet containing XCP header• Source receives feedback in ACK and adjusts window
![Page 16: Compiled from work by: Lachlan Andrew (2), Steven Low (1),](https://reader035.fdocuments.us/reader035/viewer/2022070412/56814bf1550346895db8d9f5/html5/thumbnails/16.jpg)
XCP Architecture
Router Algorithm: Feedback computed for each packet
Round trip time of source i in packet
Window of source i in packet
Packet sizeMean of all RTTs
Aggregate input rate Link capacity Queue
Sum over control interval
H_feedback_k = min (H_feedback_k,H_feedback_i)
Feedback in Pktk header
![Page 17: Compiled from work by: Lachlan Andrew (2), Steven Low (1),](https://reader035.fdocuments.us/reader035/viewer/2022070412/56814bf1550346895db8d9f5/html5/thumbnails/17.jpg)
MaxNet, XCP: Steady State Properties
![Page 18: Compiled from work by: Lachlan Andrew (2), Steven Low (1),](https://reader035.fdocuments.us/reader035/viewer/2022070412/56814bf1550346895db8d9f5/html5/thumbnails/18.jpg)
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 reducingthe smaller rates.
![Page 19: Compiled from work by: Lachlan Andrew (2), Steven Low (1),](https://reader035.fdocuments.us/reader035/viewer/2022070412/56814bf1550346895db8d9f5/html5/thumbnails/19.jpg)
For general demand functions, MaxNet is weighted min-max fair. (Min-Max price fair)
MaxNet: Steady State Properties
x1
x2
Link price
Transm
ission rate
Sources can prioritizetheir rate allocation bychanging their demandfunctions. Roughly speaking,their rate allocation will be in proportion to the magnitude of the demand function.
![Page 20: Compiled from work by: Lachlan Andrew (2), Steven Low (1),](https://reader035.fdocuments.us/reader035/viewer/2022070412/56814bf1550346895db8d9f5/html5/thumbnails/20.jpg)
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.
![Page 21: Compiled from work by: Lachlan Andrew (2), Steven Low (1),](https://reader035.fdocuments.us/reader035/viewer/2022070412/56814bf1550346895db8d9f5/html5/thumbnails/21.jpg)
XCP: Steady State Properties
Given a topology, our analysis can predict rate allocation.•Matches NS2 results very precisely•Predicts interesting pathological cases
![Page 22: Compiled from work by: Lachlan Andrew (2), Steven Low (1),](https://reader035.fdocuments.us/reader035/viewer/2022070412/56814bf1550346895db8d9f5/html5/thumbnails/22.jpg)
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 ll = fraction of traffic at link l not bottlenecked at link l = shuffling parameter , = XCP parameters (conv speed,buffer)With standard alpha and gamma parameters, utilization is at least 80%.
![Page 23: Compiled from work by: Lachlan Andrew (2), Steven Low (1),](https://reader035.fdocuments.us/reader035/viewer/2022070412/56814bf1550346895db8d9f5/html5/thumbnails/23.jpg)
XCP Scenario 1
C1=155 Mbps C2=200 Mbps Alpha = 0.4 Beta = 0.226 Gamma = 0.1
![Page 24: Compiled from work by: Lachlan Andrew (2), Steven Low (1),](https://reader035.fdocuments.us/reader035/viewer/2022070412/56814bf1550346895db8d9f5/html5/thumbnails/24.jpg)
XCP Utilisation
![Page 25: Compiled from work by: Lachlan Andrew (2), Steven Low (1),](https://reader035.fdocuments.us/reader035/viewer/2022070412/56814bf1550346895db8d9f5/html5/thumbnails/25.jpg)
XCP Scenario 1
Eg: C1=155 Mbps C2=C1(n-1)/ni=n^2-1 j=1 Alpha = 0.4 Beta = 0.226 Gamma = 0.1
Rate allocation can be arbitrarily smaller than max-minfair rates.
![Page 26: Compiled from work by: Lachlan Andrew (2), Steven Low (1),](https://reader035.fdocuments.us/reader035/viewer/2022070412/56814bf1550346895db8d9f5/html5/thumbnails/26.jpg)
XCP Max-Min Fairness
![Page 27: Compiled from work by: Lachlan Andrew (2), Steven Low (1),](https://reader035.fdocuments.us/reader035/viewer/2022070412/56814bf1550346895db8d9f5/html5/thumbnails/27.jpg)
XCP- Stability counter-example
Source10
Sink
Sources0..9
100Mbps50ms
200Mbps1x = 50ms
5x = 250ms10x = 500ms
![Page 28: Compiled from work by: Lachlan Andrew (2), Steven Low (1),](https://reader035.fdocuments.us/reader035/viewer/2022070412/56814bf1550346895db8d9f5/html5/thumbnails/28.jpg)
![Page 29: Compiled from work by: Lachlan Andrew (2), Steven Low (1),](https://reader035.fdocuments.us/reader035/viewer/2022070412/56814bf1550346895db8d9f5/html5/thumbnails/29.jpg)
MaxNet & XCP comparison
Criteria MaxNet XCPRate 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
![Page 30: Compiled from work by: Lachlan Andrew (2), Steven Low (1),](https://reader035.fdocuments.us/reader035/viewer/2022070412/56814bf1550346895db8d9f5/html5/thumbnails/30.jpg)
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 TCP-RENO.
Implementation progress
Custom Simulation, TCP-FAST can be adopted.
NS2 BSD
![Page 31: Compiled from work by: Lachlan Andrew (2), Steven Low (1),](https://reader035.fdocuments.us/reader035/viewer/2022070412/56814bf1550346895db8d9f5/html5/thumbnails/31.jpg)
MaxNet: Stability Properties
![Page 32: Compiled from work by: Lachlan Andrew (2), Steven Low (1),](https://reader035.fdocuments.us/reader035/viewer/2022070412/56814bf1550346895db8d9f5/html5/thumbnails/32.jpg)
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.
![Page 33: Compiled from work by: Lachlan Andrew (2), Steven Low (1),](https://reader035.fdocuments.us/reader035/viewer/2022070412/56814bf1550346895db8d9f5/html5/thumbnails/33.jpg)
Network Control Model
S2S1
S3
L1L2
L3D2D1
D3
S1S2S3
L2L3
L1
0
0 00
0 00
0
Physical Network
Control Model Network
Source Ratex
Aggregate priceq
Link priced
Aggregate Ratey
Model quantities are small signal variations about equilibrium.
![Page 34: Compiled from work by: Lachlan Andrew (2), Steven Low (1),](https://reader035.fdocuments.us/reader035/viewer/2022070412/56814bf1550346895db8d9f5/html5/thumbnails/34.jpg)
Network Control Model
CsRsRs
sH Tbf
1)(
Forward Routing Matrix
Backward Routing Matrix
Source Gain Link GainLink IntegratorAction
MaxNet open-loop transfer function.
S1
S2
S3
L2
L3
L1
0
0 0
0
0 0
0
0
![Page 35: Compiled from work by: Lachlan Andrew (2), Steven Low (1),](https://reader035.fdocuments.us/reader035/viewer/2022070412/56814bf1550346895db8d9f5/html5/thumbnails/35.jpg)
Source Gain
Link Gain
lC
1
i
ixK
0
MaxNet Stability Requirements
p - Pricex–
Transm
ission R
ate
Constrains slope Of source demand
function
Constrains speedof link control law
pl(t+1) = pl(t) + (y(t)-C)
![Page 36: Compiled from work by: Lachlan Andrew (2), Steven Low (1),](https://reader035.fdocuments.us/reader035/viewer/2022070412/56814bf1550346895db8d9f5/html5/thumbnails/36.jpg)
MaxNet: Convergence Properties
![Page 37: Compiled from work by: Lachlan Andrew (2), Steven Low (1),](https://reader035.fdocuments.us/reader035/viewer/2022070412/56814bf1550346895db8d9f5/html5/thumbnails/37.jpg)
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.)
![Page 38: Compiled from work by: Lachlan Andrew (2), Steven Low (1),](https://reader035.fdocuments.us/reader035/viewer/2022070412/56814bf1550346895db8d9f5/html5/thumbnails/38.jpg)
SumNet, MaxNet simulations
Power = Throughput/delay
0.00
2.00
4.00
6.00
8.00
10.00
12.00
0 0.005 0.01 0.015 0.02 0.025 0.03
Source Gain
Pow
er MaxNet
SumNet
Convergence Time
0
500
1000
1500
2000
2500
3000
3500
4000
0 0.005 0.01 0.015 0.02 0.025 0.03
Source Gain
Conv
erge
nce
Tim
e
MaxNet
SumNet
Delay
0
5000
10000
15000
20000
25000
0 0.005 0.01 0.015 0.02 0.025 0.03 0.035 0.04 0.045 0.05
Source Gain
Delay
MaxNet
SumNet
![Page 39: Compiled from work by: Lachlan Andrew (2), Steven Low (1),](https://reader035.fdocuments.us/reader035/viewer/2022070412/56814bf1550346895db8d9f5/html5/thumbnails/39.jpg)
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.