Bandwidth Allocation in Large Stochastic Networks
Mathieu Feuillet
Soutenance de thèse
12/07/2012
Bandwidth Allocation in Large Stochastic Networks Mathieu Feuillet - - PowerPoint PPT Presentation
Bandwidth Allocation in Large Stochastic Networks Mathieu Feuillet Soutenance de thse 12/07/2012 Introduction Modeling Traffic Performance Network Objectives: - Modeling - Design - Dimensioning 3 What Are We T alking About? - In a
Mathieu Feuillet
Soutenance de thèse
12/07/2012
Network Traffic Performance Objectives:
3
what is the life expectancy of a file?
and don’t use congestion control?
efficient use of bandwidth?
4
Mathematical tools Modeling Scaling methods Stochastic averaging Examples Unreliable File System The Law of the Jungle Flow-Aware CSMA
5
Network Traffic Performance Objectives:
T
7
State: (X(t)) a Markov jump process in Nd:
8
State: (X(t)) a Markov jump process in Nd:
Markov assumptions:
8
State: (X(t)) a Markov jump process in Nd:
d ≥ 2).
9
Principle: N a scaling parameter Analyze the evolution of the sample path of
Time scale t → ΨN(t) is used as a tool to focus on some specific part of sample paths.
11
Principle: N a scaling parameter Analyze the evolution of the sample path of
Time scale t → ΨN(t) is used as a tool to focus on some specific part of sample paths. There may be more than one time scale of interest!
11
Give a First order description of (XN(t)):
where, (x(t)) is a simpler stochastic process or even a deterministic dynamical system:
12
Scaling parameter: initial state Time scale: t → Nt
13
Scaling parameter: initial state Time scale: t → Nt
13
¯ X(t)
X(Nt) N
with N = X(0). 1 ·102 0.5 1 ·101 X(0) = 10 t X(t)
14
¯ X(t)
X(Nt) N
with N = X(0). 1 ·103 0.5 1 ·102 X(0) = 102 λ = 0.8 μ = 1 t X(t)
14
¯ X(t)
X(Nt) N
with N = X(0). 1 ·104 0.5 1 ·103 X(0) = 103 λ = 0.8 μ = 1 t X(t)
14
¯ X(t)
X(Nt) N
with N = X(0). 1 ·105 0.5 1 ·104 X(0) = 104 λ = 0.8 μ = 1 t X(t)
14
¯ X(t)
X(Nt) N
with N = X(0). 1 ·106 0.5 1 ·105 X(0) = 105 λ = 0.8 μ = 1 t X(t)
14
Fluid limits for queueing systems: [Malyshev 93] [Rybko-Stolyar 92] [Dai 95] Scaling methods: [Khasminskii 56] [Freidlin-Wentzell 79] [Ethier-Kurtz 86] [Robert 03]
15
Proof of the tightness of the scaled process XN (ΨN(t)) ΦN
16
Proof of the tightness of the scaled process XN (ΨN(t)) ΦN
Difficulties:
echniques
16
Proof of the tightness of the scaled process XN (ΨN(t)) ΦN
Difficulties:
echniques
16
Proof of the tightness of the scaled process XN (ΨN(t)) ΦN
Difficulties:
echniques
16
Deterministic sequences (xN(t)) and (yN(t)) with: ˙ xN(t) = NF(xN(t)), ˙ yN(t) = G(xN(t), yN(t))
18
Deterministic sequences (xN(t)) and (yN(t)) with: ˙ xN(t) = NF(xN(t)), Fast time-scale ˙ yN(t) = G(xN(t), yN(t)) Slow time-scale
18
Deterministic sequences (xN(t)) and (yN(t)) with: ˙ xN(t) = NF(xN(t)), Fast time-scale ˙ yN(t) = G(xN(t), yN(t)) Slow time-scale Fast time-scale: ˙ xN(t/N) = F(xN(t/N)).
18
Deterministic sequences (xN(t)) and (yN(t)) with: ˙ xN(t) = NF(xN(t)), Fast time-scale ˙ yN(t) = G(xN(t), yN(t)) Slow time-scale Fast time-scale: ˙ xN(t/N) = F(xN(t/N)). Slow time-scale: If x(t) tends to a fixed point x⋆: (yN(t)) converges to (y(t)) with ˙ y(t) = G(x⋆, y(t))
18
Deterministic sequences (xN(t)) and (yN(t)) with: ˙ xN(t) = NF(xN(t), yN(t)), Fast time-scale ˙ yN(t) = G(xN(t), yN(t)) Slow time-scale
19
Deterministic sequences (xN(t)) and (yN(t)) with: ˙ xN(t) = NF(xN(t), yN(t)), Fast time-scale ˙ yN(t) = G(xN(t), yN(t)) Slow time-scale Fast time-scale: When N → ∞, yN(t/N) ≈ z ˙ xN(t/N) ≈ F(x(t/N), z)
19
Deterministic sequences (xN(t)) and (yN(t)) with: ˙ xN(t) = NF(xN(t), yN(t)), Fast time-scale ˙ yN(t) = G(xN(t), yN(t)) Slow time-scale Fast time-scale: When N → ∞, yN(t/N) ≈ z ˙ xN(t/N) ≈ F(x(t/N), z) Slow time-scale: If (xN(t)) tends to a fixed point x⋆
z:
(yN(t)) converges to (y(t)) with ˙ y(t) = G
y(t), y(t)
Deterministic Stochastic Fast process ODE Markov process (x(t)) (X(t)) ˙ x = F(x(t), y) Ω(y) Slow process ODE Markov process (y(t)) (Y(t)) Equilibrium Fixed point Stationary x⋆
y
distribution πy Convergence Regularity of Regularity of y → x⋆
y
y → πy
20
Deterministic Stochastic Fast process ODE Markov process (x(t)) (X(t)) ˙ x = F(x(t), y) Ω(y) Slow process ODE Markov process (y(t)) (Y(t)) Equilibrium Fixed point Stationary x⋆
y
distribution πy Convergence Regularity of Regularity of y → x⋆
y
y → πy
20
Statistical mechanics: [Bogolyubov 62] Stochastic calculus: [Khasminskii 68], [Papanicolaou et al. 77], [Freidlin-Wenzell 79]. Loss networks: [Kurtz 92], [Hunt-Kurtz 94]
21
The Law of the Jungle:
Flow-Aware CSMA:
An unreliable file system:
Transient properties of Engset and Ehrenfest:
22
The Law of the Jungle:
Flow-Aware CSMA:
An unreliable file system:
Transient properties of Engset and Ehrenfest:
22
1 1 2 2 3 3 Back-up: λN βN files 2 copies/file
24
1 2 2 3 3 Back-up: λN βN files 2 copies/file μ 1
24
1 2 2 3 3 Back-up: λN βN files 2 copies/file
24
1 2 2 3 3 Back-up: λN βN files 2 copies/file
24
1 1 2 2 3 3 Back-up: λN βN files 2 copies/file
24
1 1 2 2 3 3 Back-up: λN βN files 2 copies/file
24
1 1 2 2 3 3 Back-up: λN βN files 2 copies/file 2
24
1 1 2 3 3 Back-up: λN βN files 2 copies/file 2
24
1 1 3 3 Back-up: λN βN files 2 copies/file
24
1 1 3 3 Back-up: λN βN files 2 copies/file 1
24
1 3 3 Back-up: λN βN files 2 copies/file 3
24
1 3 Back-up: λN βN files 2 copies/file 3
24
1 Back-up: λN βN files 2 copies/file 1
24
Back-up: λN βN files 2 copies/file
24
Xi(t) : number of files with i copies at time t. (X0(t), X1(t), X2(t)): a transient Markov Process. X0(t) + X1(t) + X2(t) = βN. A unique absorbing state (βN, 0, 0). (X0(t)) (X1(t)) (X2(t)) μx1 λN1{x1>0} 2μx2
25
Xi(t) : number of files with i copies at time t. (X0(t), X1(t), X2(t)): a transient Markov Process. X0(t) + X1(t) + X2(t) = βN. A unique absorbing state (βN, 0, 0). (X0(t)) (X1(t)) (X2(t)) μx1 λN1{x1>0} 2μ(βN − x0 − x1)
25
Three time scales: t → t/N t → t t → Nt Three regimes: Overload: 2β > ρ = λ/μ, Critical load: 2β = ρ, Underload: 2β < ρ.
26
(X0(t/N)) (X1(t/N)) (X2(t/N)) μ x1 N λ1{x1>0} 2μ N (βN − x1 − x0)
27
(L1(t)): an M/M/1 queue
transient if 2β > ρ. (L1(t)) ∼ Nβ λ1{x1>0} 2μβ
28
(L1(t)): an M/M/1 queue
transient if 2β > ρ. (L1(t)) ∼ Nβ λ1{x1>0} 2μβ
28
If 2β > ρ, (X0(t)/N, X1(t)/N, X2(t)/N) converges to a deterministic process (x0(t), x1(t), x2(t)).
λ 2μ
β t
x2(t) : 2 copies x1(t) : 1 copy x0(t) : 0 copies
29
If 2β > ρ, (X0(t)/N, X1(t)/N, X2(t)/N) converges to a deterministic process (x0(t), x1(t), x2(t)).
λ 2μ
β t
x2(t) : 2 copies x1(t) : 1 copy x0(t) : 0 copies
29
If 2β < ρ, (X0(t)/N, X1(t)/N, X2(t)/N) converges to x0(t) = 0, x1(t) = 0, x2(t) = β.
λ 2μ
β t
x2(t) : 2 copies
30
If 2β < ρ, (X0(t)/N, X1(t)/N, X2(t)/N) converges to x0(t) = 0, x1(t) = 0, x2(t) = β.
λ 2μ
β t
x2(t) : 2 copies
30
lim
N→+∞
X0(Nt) N
where Ψ(t) is the unique solution of Ψ(t) = μ t 2μ(β − Ψ(s)) λ − 2μ(β − Ψ(s)) ds.
31
lim
N→+∞
X0(Nt) N
where Ψ(t) unique solution in (0, β) of (1 − Ψ(t)/β)ρ/2 eΨ(t)+t = 1. β t
0 copies
t → Nt is the “correct” time scale to describe decay.
31
∼ NΨ(t) X1,t(∞) ∼ N(β − Ψ(t)) Fast time scale: At “time” Nt, (X1(Nt+u/N), u ≥ 0): an M/M/1 with transition rates: +1 at rate 2μ(β − Ψ(t)) −1 at rate λ.
32
∼ NΨ(t) X1,t(∞) ∼ N(β − Ψ(t)) Slow time scale: (X0(Nt)/N) “sees” only X1 at equi- librium: Ψ(t)” = ”μ t E(X1,s(∞))ds = t 2μ(β − Ψ(s)) λ − 2μ(β − Ψ(s)) ds.
32
Step 1 Radon measures: tightness of (μN) with 〈μN, g〉 = 1 N Nt g
1(s), s
33
Step 1 Radon measures: tightness of (μN) with 〈μN, g〉 = 1 N Nt g
1(s), s
Step 2 Control of limits of (μN): lim
N→∞
1 N Nt XN
1(s)ds = Ψ(t) =
t 〈πs, I〉 ds t πs(N)ds = t
33
Step 1 Radon measures: tightness of (μN) with 〈μN, g〉 = 1 N Nt g
1(s), s
Step 2 Control of limits of (μN): lim
N→∞
1 N Nt XN
1(s)ds = Ψ(t) =
t 〈πs, I〉 ds t πs(N)ds = t Here: Proof by stochastic domination
33
Step 1 Radon measures: tightness of (μN) with 〈μN, g〉 = 1 N Nt g
1(s), s
Step 2 Control of limits of (μN): lim
N→∞
1 N Nt XN
1(s)ds = Ψ(t) =
t 〈πs, I〉 ds t πs(N)ds = t Here: Proof by stochastic domination Step 3 Identification of πs with martingale techniques and balance equations.
33
TN(δ) = inf
0(t) ≥ δβN
lim
N→∞
TN(δ) N = − ρ 2 log(1 − δ) − δβ. δ TN(δ)/N
34
Extensions:
Open problem:
35
Congestion control:
37
Congestion control:
No congestion control:
37
Congestion control:
No congestion control:
37
[Massoulié Roberts 00]
1 2
policy
38
[Massoulié Roberts 00]
λ1 λ0 λ2 μ1ϕ1 μ0ϕ0 μ2ϕ2
policy
38
Usually, α-fair policies are considered [MW00]. Here:
ail dropping: At each link, output rates are proportional to input rates
39
Usually, α-fair policies are considered [MW00]. Here:
ail dropping: At each link, output rates are proportional to input rates x1 x0 x2
39
Usually, α-fair policies are considered [MW00]. Here:
ail dropping: At each link, output rates are proportional to input rates x1 x0 x2 ϕ1 =
x1 x0+x1
α =
x0 x0+x1
39
Usually, α-fair policies are considered [MW00]. Here:
ail dropping: At each link, output rates are proportional to input rates x1 x0 x2 ϕ1 =
x1 x0+x1
α =
x0 x0+x1
ϕ0 = min
α x2a+α
x2a α+x2a
1 2 Optimal ergodicity condition: ρ0 + ρ1 < 1, ρ0 + ρ2 < 1 where ρi = λi/μi. We know α-fair policies are optimal [BM02].
40
1 2 Optimal ergodicity condition: ρ0 + ρ1 < 1, ρ0 + ρ2 < 1 where ρi = λi/μi. We know α-fair policies are optimal [BM02].
40
x2 ϕ0 = min
α x2a+α
x2a α+x2a
x1 x0+x1
α =
x0 x0+x1
x1 x0 If x2 ≫ 0, class 2 uses virtually all the second link. If (z0(t), z1(t), z2(t)) is a fluid limit with z2(0) > 0, ˙ z0(t) = λ0, ˙ z1(t) = λ1 − μ1
z1(t) z0(t)+z1(t),
˙ z2(t) = λ2 − μ2.
41
x2 ϕ0 = min
α x2a+α
x2a α+x2a
x1 x0+x1
α =
x0 x0+x1
x1 x0 If x2 ≫ 0, class 2 uses virtually all the second link. If (z0(t), z1(t), z2(t)) is a fluid limit with z2(0) > 0, ˙ z0(t) = λ0, ˙ z1(t) = λ1 − μ1
z1(t) z0(t)+z1(t),
˙ z2(t) = λ2 − μ2. If ρ2 < 1, (z2(t)) reaches 0 in finite time.
41
x2 ϕ0 = min
α x2a+α
x2a α+x2a
x0 ϕ1 =
x1 x0+x1
α Classes 0 and 1 are frozen: πα
2 is the stationary distribution of class 2
¯ Φ0(α) = Eπα
2
α x2a + α
42
When z2(t) = 0: ˙ z0(t) = λ0 − μ0 ¯ ϕ0
z0(t) + z1(t)
˙ z1(t) = λ1 − μ1 z1(t) z0(t) + z1(t) , ˙ z2(t) = 0. with ¯ Φ0(α) = Eπα
2
α x2a + α
43
When z2(t) = 0: ˙ z0(t) = λ0 − μ0 ¯ ϕ0
z0(t) + z1(t)
˙ z1(t) = λ1 − μ1 z1(t) z0(t) + z1(t) , ˙ z2(t) = 0. with ¯ Φ0(α) = Eπα
2
α x2a + α
43
Ergodicity conditions: ρ1 < 1, ρ2 < 1, ρ0 < ¯ ϕ0(1 − ρ1) Optimal conditions: ρ1 < 1, ρ2 < 1, ρ0 < min(1 − ρ1, 1 − ρ2)
44
Ergodicity conditions: ρ1 < 1, ρ2 < 1, ρ0 < ¯ ϕ0(1 − ρ1) Optimal conditions: ρ1 < 1, ρ2 < 1, ρ0 < min(1 − ρ1, 1 − ρ2) But: ¯ ϕ0(1 − ρ1) < min(1 − ρ2, 1 − ρ1)
44
Ergodicity conditions: ρ1 < 1, ρ2 < 1, ρ0 < ¯ ϕ0(1 − ρ1) Optimal conditions: ρ1 < 1, ρ2 < 1, ρ0 < min(1 − ρ1, 1 − ρ2) But: ¯ ϕ0(1 − ρ1) < min(1 − ρ2, 1 − ρ1)
44
Class 1: ρ1 Class 0: ρ0
Optimal a = 1 a = 0.1 a = 0.01
45
Class 1: ρ1 Class 0: ρ0
Optimal a = 1 a = 0.1 a = 0.01
45
We freeze α and consider the process (XS
2(t)) with
Q-matrix: q(x2, x2 + 1) = λ2, q(x2, x2 − 1) = μ2 min
x2a α + x2a
We freeze α and consider the process (XS
2(t)) with
Q-matrix: q(x2, x2 + 1) = λ2, q(x2, x2 − 1) = μ2 min
a S , x2a/S α + x2a/S
46
We freeze α and consider the process (XS
2(t)) with
Q-matrix: q(x2, x2 + 1) = λ2, q(x2, x2 − 1) = μ2 min
a S , x2a/S α + x2a/S
(XS
2(St)/S) ⇒ (x2(t)) with
˙ x2(t) = λ2 − μ2 min
x2(t)a α + x2(t)a
We freeze α and consider the process (XS
2(t)) with
Q-matrix: q(x2, x2 + 1) = λ2, q(x2, x2 − 1) = μ2 min
a S , x2a/S α + x2a/S
(XS
2(St)/S) ⇒ (x2(t)) with
˙ x2(t) = λ2 − μ2 min
x2(t)a α + x2(t)a
x2 = ρ2 a max
α 1 − ρ2
2(St)/S) t→∞
2(∞)/S S→∞
t→∞
47
2(St)/S) t→∞
2(∞)/S S→∞
t→∞
Convergence of processes ⇓ Convergence of stationary distribution
47
2(St)/S) t→∞
2(∞)/S S→∞
t→∞
Convergence of processes ⇓ Convergence of stationary distribution
a→0
47
distributions
Extensions:
Open problem:
48
The network is represented by a conflict graph 1 2 3 For each node i:
50
The network is represented by a conflict graph 1 2 3
wireless link
For each node i:
50
The network is represented by a conflict graph 1 2 3
wireless link potential interference
For each node i:
50
1 2 3 λ1 λ2 λ3 Schedules: ∅, {1}, {2}, {3}, {1, 3}.
51
1 2 3 λ1 λ2 λ3 Schedules: ∅, {1}, {2}, {3}, {1, 3}.
51
1 2 3 λ1 λ2 λ3 μ1 1 Schedules: ∅, {1}, {2}, {3}, {1, 3}.
51
1 2 3 λ1 λ2 λ3 μ2 2 Schedules: ∅, {1}, {2}, {3}, {1, 3}.
51
1 2 3 λ1 λ2 λ3 μ3 3 Schedules: ∅, {1}, {2}, {3}, {1, 3}.
51
1 2 3 λ1 λ2 λ3 μ1 μ3 1 3 Schedules: ∅, {1}, {2}, {3}, {1, 3}.
51
1 2 3 λ1 λ2 λ3 Schedules: ∅, {1}, {2}, {3}, {1, 3}. Optimal stability region: convex hull of schedules
51
1 2 3 λ1 λ2 λ3 Schedules: ∅, {1}, {2}, {3}, {1, 3}. Optimal stability region: convex hull of schedules In this example: {ρ1 + ρ2 ≤ 1, ρ2 + ρ3 ≤ 1} with ρi = λi/μi
51
1 2 3 λ1 λ2 λ3 Schedules: ∅, {1}, {2}, {3}, {1, 3}. Optimal stability region: convex hull of schedules In this example: {ρ1 + ρ2 ≤ 1, ρ2 + ρ3 ≤ 1} with ρi = λi/μi
51
∼ exp(α) Back-off ∼ exp(1) Transmission ∼ exp(α) Back-off
52
∼ exp(α) Back-off ∼ exp(1) Transmission ∼ exp(α) Back-off
52
∼ exp(α) Back-off ∼ exp(1) Transmission ∼ exp(α) Back-off
1 2 3 ρ1 ρ2 ρ3
0.5 1 0.5 1
ρ1 = ρ3 ρ2
Optimal Actual
52
Proposed modification of CSMA: Exponential backoff time for each flow ∼ exp(αx1) Back-off ∼ exp(1) Transmission ∼ exp(αx1) Back-off
53
Proposed modification of CSMA: Exponential backoff time for each flow ∼ exp(αx1) Back-off ∼ exp(1) Transmission ∼ exp(αx1) Back-off The process (X(t), Y(t)) is difficult to analyze:
53
Proposed modification of CSMA: Exponential backoff time for each flow ∼ exp(αNx1) Back-off ∼ exp(N) Transmission ∼ exp(αNx1) Back-off The process (XN(t), YN(t)) is difficult to analyze: Idea: Separate network dynamics and flow dynamics. When N → ∞, (YN(t)): classical loss network.
53
Proposed modification of CSMA: Exponential backoff time for each flow ∼ exp(αNx1) Back-off ∼ exp(N) Transmission ∼ exp(αNx1) Back-off The process (XN(t), YN(t)) is difficult to analyze: Idea: Separate network dynamics and flow dynamics. When N → ∞, (YN(t)): classical loss network.
53
Theorem: Flow-aware CSMA algorithm is optimal for any network. Sketch of proof:
Foster’s criterion.
54
access mechanism
Extension:
Open problem:
55
Three examples:
56
Three examples:
Mathematical tools:
56
Three examples:
Mathematical tools:
phenomenon
56
Three examples:
Mathematical tools:
phenomenon
56