the conservation of information and the congestion control ...i discrete-time models[johari et al.,...

26
Introduction Network congestion modeling Examples Conclusion Current Works The conservation of information and the congestion control modeling problem Corentin Briat 28 August 2012 KTH, Stockholm, Sweden C. Briat [ETH-Zürich] 1/26

Upload: others

Post on 25-Sep-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: The conservation of information and the congestion control ...I Discrete-time models[Johari et al., 01],[Shorten et al., 06] I Continuous-time models[Paganini et al., 05],[Vinnicombe,

Introduction Network congestion modeling Examples Conclusion Current Works

The conservation of information and the congestioncontrol modeling problem

Corentin Briat

28 August 2012KTH, Stockholm, Sweden

C. Briat [ETH-Zürich] 1/26

Page 2: The conservation of information and the congestion control ...I Discrete-time models[Johari et al., 01],[Shorten et al., 06] I Continuous-time models[Paganini et al., 05],[Vinnicombe,

Introduction Network congestion modeling Examples Conclusion Current Works

Introduction

C. Briat [ETH-Zürich] 2/26

Page 3: The conservation of information and the congestion control ...I Discrete-time models[Johari et al., 01],[Shorten et al., 06] I Continuous-time models[Paganini et al., 05],[Vinnicombe,

Introduction Network congestion modeling Examples Conclusion Current Works

Fundamentals on communication

Network Elements

I Buffers/Servers/Routers (queuing delays, loss)I Transmission channels (delays, limited capacity)I Users (senders, receivers)

Transmission principle

I Information split into packetsI User A sends packets destined to User BI Packets routed through the networkI User B receives packets and acknowledges them (ACK packet)I User A receives ACK packets→ transmission successful

C. Briat [ETH-Zürich] 3/26

Page 4: The conservation of information and the congestion control ...I Discrete-time models[Johari et al., 01],[Shorten et al., 06] I Continuous-time models[Paganini et al., 05],[Vinnicombe,

Introduction Network congestion modeling Examples Conclusion Current Works

Motivations

Congestion problem

I The users (green) communicate all togetherI Packets accumulate at the servers (black)I Large delays, data lossI Congestion control

Why congestion modeling ?

I Understanding the process of congestionI Simulation purposeI Protocol validation/design

C. Briat [ETH-Zürich] 4/26

Page 5: The conservation of information and the congestion control ...I Discrete-time models[Johari et al., 01],[Shorten et al., 06] I Continuous-time models[Paganini et al., 05],[Vinnicombe,

Introduction Network congestion modeling Examples Conclusion Current Works

Congestion models

Time-domain

I Discrete-time models [Johari et al., 01], [Shorten et al., 06]I Continuous-time models [Paganini et al., 05], [Vinnicombe, 00]→ fluid-flow model.

F Hybrid models [Hespanha et al., 01]

Stochastic vs. Deterministic

I Stochastic [Misra et al., 00]

F Deterministic [Jacobsson et al., 08], [Tang et al., 10]

Modular vs. monolithic

I Monolithic [Misra et al., 00], [Hollot et al., 01]

F Modular [Paganini et al., 05], [Liu et al., 07]

C. Briat [ETH-Zürich] 5/26

Page 6: The conservation of information and the congestion control ...I Discrete-time models[Johari et al., 01],[Shorten et al., 06] I Continuous-time models[Paganini et al., 05],[Vinnicombe,

Introduction Network congestion modeling Examples Conclusion Current Works

What properties a network model should have ?

1. Few universal concepts (quantities) related by laws.

2. Local description of the elements (modularity, scalability)

3. New models corresponding to new devices may be freely added withoutcompromising existing ones (genericity).

4. Easy transcription of the network into a topologically identical diagram/model, andvice-versa.

5. Model predictions fit the reality.

6. Systematic way of analysis by hand calculations or simulators.

C. Briat [ETH-Zürich] 6/26

Page 7: The conservation of information and the congestion control ...I Discrete-time models[Johari et al., 01],[Shorten et al., 06] I Continuous-time models[Paganini et al., 05],[Vinnicombe,

Introduction Network congestion modeling Examples Conclusion Current Works

Modeling procedure

Core principle

I The conservation law of information

Block model derivation

I Transmission channelsI Buffers/QueuesI Users

Desired properties for the model

I Explicit, modular, scalable and accurateI Similarities with electrical networks models

C. Briat [ETH-Zürich] 7/26

Page 8: The conservation of information and the congestion control ...I Discrete-time models[Johari et al., 01],[Shorten et al., 06] I Continuous-time models[Paganini et al., 05],[Vinnicombe,

Introduction Network congestion modeling Examples Conclusion Current Works

Network congestion modeling

C. Briat [ETH-Zürich] 8/26

Page 9: The conservation of information and the congestion control ...I Discrete-time models[Johari et al., 01],[Shorten et al., 06] I Continuous-time models[Paganini et al., 05],[Vinnicombe,

Introduction Network congestion modeling Examples Conclusion Current Works

Fluid-flow models

Ingredients

I Flight-size: controlled variableI Congestion window: referenceI Congestion measure: measurementI Sending rate: control input

Rate/flow definition

I Quantity of information: N [bit] or [Pkt]I Rate: φ [bit/s] or [Pkt/s]I Quantity of information having passed through point x between t0 and t:

Nx(t0, t) :=

∫ t

t0

φ(x, s)ds

C. Briat [ETH-Zürich] 9/26

Page 10: The conservation of information and the congestion control ...I Discrete-time models[Johari et al., 01],[Shorten et al., 06] I Continuous-time models[Paganini et al., 05],[Vinnicombe,

Introduction Network congestion modeling Examples Conclusion Current Works

The conservation law of Information

Observations

I We can count the number of packets PE(t) in an element E (e.g. a queue) at timet simply by counting the entering packets over a certain horizon

The conservation law of informationThere exists t0(t) ≤ t such that the following equality holds:

PE(t) =

∫ t

t0(t)φ(s)ds.

where φ(t) is the input flow of the element E.

I Particular case of this equation (ACK-clocking model) proposed in [Jacobsson,08]

If you have to remember something from this talk, just remember the aboveequation !

C. Briat [ETH-Zürich] 10/26

Page 11: The conservation of information and the congestion control ...I Discrete-time models[Johari et al., 01],[Shorten et al., 06] I Continuous-time models[Paganini et al., 05],[Vinnicombe,

Introduction Network congestion modeling Examples Conclusion Current Works

Balance equation and output flow computation

Balance equation

I Variation of the number of packets in element E

P ′E(t) =

input flow︷︸︸︷φ(t) −

output flow︷ ︸︸ ︷φo(t)

= φ(t) − t0(t)′φ(t0(t))

Output flow modelThe output flow of element E, φo(t), is given by

φo(t) := t0(t)′φ(t0(t)).

I DelayI Amplitude distortion

C. Briat [ETH-Zürich] 11/26

Page 12: The conservation of information and the congestion control ...I Discrete-time models[Johari et al., 01],[Shorten et al., 06] I Continuous-time models[Paganini et al., 05],[Vinnicombe,

Introduction Network congestion modeling Examples Conclusion Current Works

Transmission Channel model

Assumptions

I LosslessI Constant propagation delay T > 0

Conservation law for transmission channels

t0(t) = t− T

PE(t) =

∫ t

t−Tφ(s)ds

Balance equation and output flow expression

P ′E(t) = φ(t)− φ(t− T )

φo(t) = φ(t− T )

C. Briat [ETH-Zürich] 12/26

Page 13: The conservation of information and the congestion control ...I Discrete-time models[Johari et al., 01],[Shorten et al., 06] I Continuous-time models[Paganini et al., 05],[Vinnicombe,

Introduction Network congestion modeling Examples Conclusion Current Works

Basic queue model

τ(t) =1

c

∑j

φj(t)− r(t)

r(t) =

c if τ(t) > 0 or

∑j

φj(t) ≥ c∑j

φj(t) otherwise

Buffer model

I Queuing delay τ(t)I Maximal output capacity c

Model disadvantages

I Aggregate output flow r(t) ! How to split it ?I Does this model really capture the behavior of a FIFO queue ?

C. Briat [ETH-Zürich] 13/26

Page 14: The conservation of information and the congestion control ...I Discrete-time models[Johari et al., 01],[Shorten et al., 06] I Continuous-time models[Paganini et al., 05],[Vinnicombe,

Introduction Network congestion modeling Examples Conclusion Current Works

Queue model

FIFO buffer model

τ(t) =1

c

∑j

[φj(t)− φoj (t)

]φoj (t) =

φj(t0(t))c∑k φk(t0(t))

if τ(t) > 0 or∑j

φj(t) ≥ c

φj(t) otherwiset0(t) = t− τ(t0(t))

I Model proposed in [Ohta et al., 98], [Liu et al., 04], without proofI We see here that it is an immediate consequence of the conservation law

C. Briat [ETH-Zürich] 14/26

Page 15: The conservation of information and the congestion control ...I Discrete-time models[Johari et al., 01],[Shorten et al., 06] I Continuous-time models[Paganini et al., 05],[Vinnicombe,

Introduction Network congestion modeling Examples Conclusion Current Works

Example - One queue/two flows

0 2 4 6 8 10 120

20

40

60

80

100

120

Time [sec]

Flo

w 1

[Mb/

sec]

0 2 4 6 8 10 120

20

40

60

80

100

120

Time [sec]

Flo

w 2

[Mb/

sec]

0 2 4 6 8 10 120

2

4

6

8x 10

4

Time [sec]

Packets

ModelNS−2

0 2 4 6 8 10 120

2

4

6

8x 10

4

Time [sec]

Packets

ModelNS−2

I Single queue, two on/off input flows in phase oppositionI Exact matching with NS2

C. Briat [ETH-Zürich] 15/26

Page 16: The conservation of information and the congestion control ...I Discrete-time models[Johari et al., 01],[Shorten et al., 06] I Continuous-time models[Paganini et al., 05],[Vinnicombe,

Introduction Network congestion modeling Examples Conclusion Current Works

Complete user model

Protocol EquationsCongestion measure µ(t) = f(τ(t))Protocol state z(t) = P(z(t), µ(t))Congestion window w(t) = W(z(t), µ(t))

Sending rate model

sending rate φo(t) =

{wi(t) + φ(t) if Ti(t)0 otherwise

flight-size control πi(t) =

{0 if Ti(t)wi(t) + φ(t) otherwise

Ti(t) = ([πi(t) = 0] ∧ [wi(t) + φ(t) ≥ 0])

C. Briat [ETH-Zürich] 16/26

Page 17: The conservation of information and the congestion control ...I Discrete-time models[Johari et al., 01],[Shorten et al., 06] I Continuous-time models[Paganini et al., 05],[Vinnicombe,

Introduction Network congestion modeling Examples Conclusion Current Works

Model benefits

Structure

I Coherence of the blocks: one interconnection variable, local description variables(delays, congestion windows, etc.)

I Explicit, modular and scalable representation

Theoretical implications

I Previous rate models are approximations of the conservation law (ACK-clockingmodel)

I Ratio model φo(t) ' w(t)/RTT{t} [Paganini et al., 02], [Vinnicombe, 00]

I Joint model φo(t) ' w(t)/RTT{t} + w(t) [Jacobsson et al., 08]

I Static model φo(t) ' w(t) [Wang et al., 05] can be shown to be exact for someparticular network topologies.

I Window-based ACK-clocking model w(t) ' PC(t) [Tang et al., 10] exact when thepacket counter is always at 0

C. Briat [ETH-Zürich] 17/26

Page 18: The conservation of information and the congestion control ...I Discrete-time models[Johari et al., 01],[Shorten et al., 06] I Continuous-time models[Paganini et al., 05],[Vinnicombe,

Introduction Network congestion modeling Examples Conclusion Current Works

Examples

C. Briat [ETH-Zürich] 18/26

Page 19: The conservation of information and the congestion control ...I Discrete-time models[Johari et al., 01],[Shorten et al., 06] I Continuous-time models[Paganini et al., 05],[Vinnicombe,

Introduction Network congestion modeling Examples Conclusion Current Works

Single buffer - Two Users

C. Briat [ETH-Zürich] 19/26

2.8 3 3.2 3.4 3.6 3.8 4 4.20.01

0.015

0.02

0.025

0.03

0.035

0.04

Time [sec]

Queuesize

[sec]

Proposed modelRatio link modelStatic link modelJoint link modelNS−2Scenario 1 [Tang et al., 10]

I c = 100Mb/s, ρ = 1590 bytesI Propagation delays: T1 = 3.2ms and T2 = 117msI Initial congestion window sizes: w0

1 = 50 and w02 = 550 packets

I At 3s, w1 is increased to 150 packets.

Page 20: The conservation of information and the congestion control ...I Discrete-time models[Johari et al., 01],[Shorten et al., 06] I Continuous-time models[Paganini et al., 05],[Vinnicombe,

Introduction Network congestion modeling Examples Conclusion Current Works

Two buffers - Three Users

C. Briat [ETH-Zürich] 20/26

9.5 10 10.5 11 11.5 12 12.5 13

0.07

0.08

0.09

Time [sec]

Queuesize

1[sec]

9.5 10 10.5 11 11.5 12 12.5 130.045

0.05

0.055

0.06

0.065

0.07

Time [sec]Queuesize

2[sec]

Proposed ModelNS−2Scenario 2 [Tang et al., 10]

I c1 = 72Mb/s, c2 = 180Mb/s, ρ = 1448 bytes, no cross-trafficI Propagation delays: T1 = 120ms, T2 = 80ms and T3 = 40msI Initial congestion window sizes: w0

1 = 1600, w02 = 1200 and w0

3 = 5 packetsI At 10s, w2 is increased to 1400 packets.

Page 21: The conservation of information and the congestion control ...I Discrete-time models[Johari et al., 01],[Shorten et al., 06] I Continuous-time models[Paganini et al., 05],[Vinnicombe,

Introduction Network congestion modeling Examples Conclusion Current Works

Conclusion

C. Briat [ETH-Zürich] 21/26

Page 22: The conservation of information and the congestion control ...I Discrete-time models[Johari et al., 01],[Shorten et al., 06] I Continuous-time models[Paganini et al., 05],[Vinnicombe,

Introduction Network congestion modeling Examples Conclusion Current Works

Conclusion

I Model built upon one fundamental principle: the conservation of informationI Model is modular, scalable, topologically identicalI Provides insights on validity domains of flow modelsI Describe quite well the reality for considered topologiesI Suitable for building (graphical) simulators

C. Briat [ETH-Zürich] 22/26

Page 23: The conservation of information and the congestion control ...I Discrete-time models[Johari et al., 01],[Shorten et al., 06] I Continuous-time models[Paganini et al., 05],[Vinnicombe,

Introduction Network congestion modeling Examples Conclusion Current Works

Current Works

C. Briat [ETH-Zürich] 23/26

Page 24: The conservation of information and the congestion control ...I Discrete-time models[Johari et al., 01],[Shorten et al., 06] I Continuous-time models[Paganini et al., 05],[Vinnicombe,

Introduction Network congestion modeling Examples Conclusion Current Works

Linear model

I Equilibrium point (w∗, φ∗, τ∗) computed by solving a convex optimization problem

Transmission channel model

φo(t) = φ(t− T )

Queue model

τ(t) =1

c

∑i

φi(t)

φo(t) =

(I −

1

cφ∗1ᵀ

)︸ ︷︷ ︸

Competitive matrix

φ(t− τ∗)

User model

z(t) = (Az)(t) +Bµ(t)w(t) = (Cz)(t)φo(t) = w(t)

C. Briat [ETH-Zürich] 24/26

Page 25: The conservation of information and the congestion control ...I Discrete-time models[Johari et al., 01],[Shorten et al., 06] I Continuous-time models[Paganini et al., 05],[Vinnicombe,

Introduction Network congestion modeling Examples Conclusion Current Works

A simple local stability result - single user/single queue

FAST-TCP protocol (CT approximation)

w(t) =log(1− γ)T + µ(t)

(−w(t) +

T

T + µ(t)w(t− µ(t)− T ) + α

)µ(t) = τ(g(t− Tb))T = Tb + Tf

(1)

Stability result

The network is locally exponentially stable for all c > 0, T > 0, γ > 0, α ≥ 1 and anyconstant cross-traffic δ∗ ∈ [0, c).

Extensions

I Single buffer/multiple users: in progressI Multiple buffers/multiple users: nice results possible for some given topologies,

e.g. triangular oneI Input/output approaches may be suitable: modular analysis tools for modular

models. . .

C. Briat [ETH-Zürich] 25/26

Page 26: The conservation of information and the congestion control ...I Discrete-time models[Johari et al., 01],[Shorten et al., 06] I Continuous-time models[Paganini et al., 05],[Vinnicombe,

Introduction Network congestion modeling Examples Conclusion Current Works

Thank you for your attention

C. Briat [ETH-Zürich] 26/26