39
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)

Comparison of MaxNet and XCP: Network Congestion Control using explicit signalling Speaker: Bartek Wydrowski Compiled from work by: Lachlan Andrew (2),

  • View
    219

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Comparison of MaxNet and XCP: Network Congestion Control using explicit signalling Speaker: Bartek Wydrowski Compiled from work by: Lachlan Andrew (2),

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: Comparison of MaxNet and XCP: Network Congestion Control using explicit signalling Speaker: Bartek Wydrowski Compiled from work by: Lachlan Andrew (2),

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: Comparison of MaxNet and XCP: Network Congestion Control using explicit signalling Speaker: Bartek Wydrowski Compiled from work by: Lachlan Andrew (2),

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: Comparison of MaxNet and XCP: Network Congestion Control using explicit signalling Speaker: Bartek Wydrowski Compiled from work by: Lachlan Andrew (2),

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: Comparison of MaxNet and XCP: Network Congestion Control using explicit signalling Speaker: Bartek Wydrowski Compiled from work by: Lachlan Andrew (2),

MaxNet: Overview

Page 6: Comparison of MaxNet and XCP: Network Congestion Control using explicit signalling Speaker: Bartek Wydrowski Compiled from work by: Lachlan Andrew (2),

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: Comparison of MaxNet and XCP: Network Congestion Control using explicit signalling Speaker: Bartek Wydrowski Compiled from work by: Lachlan Andrew (2),

Data

MaxNet: Packet Format

CongestionSignalN Bits

(price_k)

Packet

Page 8: Comparison of MaxNet and XCP: Network Congestion Control using explicit signalling Speaker: Bartek Wydrowski Compiled from work by: Lachlan Andrew (2),

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: Comparison of MaxNet and XCP: Network Congestion Control using explicit signalling Speaker: Bartek Wydrowski Compiled from work by: Lachlan Andrew (2),

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: Comparison of MaxNet and XCP: Network Congestion Control using explicit signalling Speaker: Bartek Wydrowski Compiled from work by: Lachlan Andrew (2),

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: Comparison of MaxNet and XCP: Network Congestion Control using explicit signalling Speaker: Bartek Wydrowski Compiled from work by: Lachlan Andrew (2),

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: Comparison of MaxNet and XCP: Network Congestion Control using explicit signalling Speaker: Bartek Wydrowski Compiled from work by: Lachlan Andrew (2),

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: Comparison of MaxNet and XCP: Network Congestion Control using explicit signalling Speaker: Bartek Wydrowski Compiled from work by: Lachlan Andrew (2),

XCP: Overview

Page 14: Comparison of MaxNet and XCP: Network Congestion Control using explicit signalling Speaker: Bartek Wydrowski Compiled from work by: Lachlan Andrew (2),

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: Comparison of MaxNet and XCP: Network Congestion Control using explicit signalling Speaker: Bartek Wydrowski Compiled from work by: Lachlan Andrew (2),

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: Comparison of MaxNet and XCP: Network Congestion Control using explicit signalling Speaker: Bartek Wydrowski Compiled from work by: Lachlan Andrew (2),

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: Comparison of MaxNet and XCP: Network Congestion Control using explicit signalling Speaker: Bartek Wydrowski Compiled from work by: Lachlan Andrew (2),

MaxNet, XCP: Steady State Properties

Page 18: Comparison of MaxNet and XCP: Network Congestion Control using explicit signalling Speaker: Bartek Wydrowski Compiled from work by: Lachlan Andrew (2),

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: Comparison of MaxNet and XCP: Network Congestion Control using explicit signalling Speaker: Bartek Wydrowski Compiled from work by: Lachlan Andrew (2),

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: Comparison of MaxNet and XCP: Network Congestion Control using explicit signalling Speaker: Bartek Wydrowski Compiled from work by: Lachlan Andrew (2),

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: Comparison of MaxNet and XCP: Network Congestion Control using explicit signalling Speaker: Bartek Wydrowski Compiled from work by: Lachlan Andrew (2),

XCP: Steady State Properties

Given a topology, our analysis can predict rate allocation.•Matches NS2 results very precisely•Predicts interesting pathological cases

Page 22: Comparison of MaxNet and XCP: Network Congestion Control using explicit signalling Speaker: Bartek Wydrowski Compiled from work by: Lachlan Andrew (2),

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: Comparison of MaxNet and XCP: Network Congestion Control using explicit signalling Speaker: Bartek Wydrowski Compiled from work by: Lachlan Andrew (2),

XCP Scenario 1

C1=155 Mbps C2=200 Mbps Alpha = 0.4 Beta = 0.226 Gamma = 0.1

Page 24: Comparison of MaxNet and XCP: Network Congestion Control using explicit signalling Speaker: Bartek Wydrowski Compiled from work by: Lachlan Andrew (2),

XCP Utilisation

Page 25: Comparison of MaxNet and XCP: Network Congestion Control using explicit signalling Speaker: Bartek Wydrowski Compiled from work by: Lachlan Andrew (2),

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: Comparison of MaxNet and XCP: Network Congestion Control using explicit signalling Speaker: Bartek Wydrowski Compiled from work by: Lachlan Andrew (2),

XCP Max-Min Fairness

Page 27: Comparison of MaxNet and XCP: Network Congestion Control using explicit signalling Speaker: Bartek Wydrowski Compiled from work by: Lachlan Andrew (2),

XCP- Stability counter-example

Source10

Sink

Sources0..9

100Mbps50ms

200Mbps1x = 50ms

5x = 250ms10x = 500ms

Page 28: Comparison of MaxNet and XCP: Network Congestion Control using explicit signalling Speaker: Bartek Wydrowski Compiled from work by: Lachlan Andrew (2),
Page 29: Comparison of MaxNet and XCP: Network Congestion Control using explicit signalling Speaker: Bartek Wydrowski Compiled from work by: Lachlan Andrew (2),

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: Comparison of MaxNet and XCP: Network Congestion Control using explicit signalling Speaker: Bartek Wydrowski Compiled from work by: Lachlan Andrew (2),

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: Comparison of MaxNet and XCP: Network Congestion Control using explicit signalling Speaker: Bartek Wydrowski Compiled from work by: Lachlan Andrew (2),

MaxNet: Stability Properties

Page 32: Comparison of MaxNet and XCP: Network Congestion Control using explicit signalling Speaker: Bartek Wydrowski Compiled from work by: Lachlan Andrew (2),

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: Comparison of MaxNet and XCP: Network Congestion Control using explicit signalling Speaker: Bartek Wydrowski Compiled from work by: Lachlan Andrew (2),

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: Comparison of MaxNet and XCP: Network Congestion Control using explicit signalling Speaker: Bartek Wydrowski Compiled from work by: Lachlan Andrew (2),

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: Comparison of MaxNet and XCP: Network Congestion Control using explicit signalling Speaker: Bartek Wydrowski Compiled from work by: Lachlan Andrew (2),

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: Comparison of MaxNet and XCP: Network Congestion Control using explicit signalling Speaker: Bartek Wydrowski Compiled from work by: Lachlan Andrew (2),

MaxNet: Convergence Properties

Page 37: Comparison of MaxNet and XCP: Network Congestion Control using explicit signalling Speaker: Bartek Wydrowski Compiled from work by: Lachlan Andrew (2),

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: Comparison of MaxNet and XCP: Network Congestion Control using explicit signalling Speaker: Bartek Wydrowski Compiled from work by: Lachlan Andrew (2),

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: Comparison of MaxNet and XCP: Network Congestion Control using explicit signalling Speaker: Bartek Wydrowski Compiled from work by: Lachlan Andrew (2),

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.