sucha's presentation at ecti-con 09
DESCRIPTION
The presentation was displayed at ECTI international conference 2009. The title is "Joint Flow Control, Routing, and Medium Access Control in Random Access Multi-Hop Wireless Networks with Time Varying Link Capacities." http://tinyurl.com/q54bmcTRANSCRIPT
Joint Flow Control, Routing and MACin Random Access Multi-Hop Wireless Networks
with Time Varying Link Capacities
Sucha SupittayapornpongPoompat Saengudomlert
International Conference on Electrical Engineering/Electronics,Computer, Telecommunications, and Information Technology
(ECTI-CON)
May 7, 2009
Telecommunications Field of Study
Asian Institute of Technology, Thailand
Introduction
Traditional design and control multi-hop wireless networks:
The decision is based on experiment and practice.Current research works toward cross-layer protocol design.
There exists theoritcal research on cross-layer protocol design.
Joint flow control and MAC in multi-hop wireless networks[Wang, 06]Joint flow control, routing and MAC in multi-hop wireless networks[Supittayapornpong, 08]
Motivation:
Theoretical approach to the protocol design for multi-hop wirelessnetworksDistributive algorithmAchieve optimal performance (according to the model)More realistic with link capacity variationA step closer from theory to practice
2/15
Outline
Methods
System modelNetwork formulationDecomposition technique
Distributive algorithm
Simulation results
Conclusion and contribution
3/15
Methods
1. Create a considered network model as an optimization problem.
Rigorous system and objective goal are defined.The best performance is known. (optimal solution and cost fromcentralized solver)
2. Decompose the optimization problem.
The problem is devided by functionality to sub problems.Each sub problem is distributively solved.
3. Derive a distributive algorithm- To obtain mechnisms for control the network
4/15
Model: Link Rate
Network is a graph with sets, N and L, of active nodes and links.
Varying link capacity (ideal) Cl(ωl, t) ∈ {11, 5.5, 2, 1} Mbps.
All link capacities are independent.
Slotted ALOHA Random acces MAC [Bertsekas, 95; Fang, 04]
pl is transmission probability of link l.P (n) is transmission probability of node n.Successful transmission probability of link l is
φl(p) = pl
Qk∈I(l)
“1− P (k)
”where p = (pl : l ∈ L)
where I(l) is a set of nodes interfering to link l.
Link rate is Φl(Cl(ωl, t),p) = Cl(ωl, t)φl(p).
5/15
Model: Networks
A network has a set of source-destination (S-D) pairs S.
Each S-D pair s ∈ S has predefined paths, F(s).
Each path f ∈ F(s) has flow rate yf .
S-D pair’s utility is its harmonic rate. [Supittayapornpong, 08]
χ(ys) =|F(s)|2∑f∈F(s) y
−1f
, ys = (yf : f ∈ F(s))
Fairness on S-D pair’s utility is proportional fairness. [Kelly, 98]
Us = log [χ(ys)]
Network utility (objective function) is∑s∈S
Us
6/15
Optimization Formulation
Direct formulation is non-convex.- Transformed to a convex problem. [Supittayapornpong, 08]
System is considered in long term (LT) [O’Neill, 08]
- LT average link rate islimT→∞
1T
∑Tt=1 Φl(Cl(ωl, t),p) (System can’t wait.)
Under stationary and ergodic assumptions- LT average link rate is Φl(E [Cl(ωl)] ,p)- System does not have to wait but must know ensemble average.
The resulting (convex) formulation:
F : Maximize∑
s∈S − log(∑
f∈F(s) e−zf
)Subject to log
(∑f∈R(l) e
zf
)≤ log Φl (E [Cl(ωl)] ,p) ∀l ∈ L
p ∈ P, zf ∈ R ∀f ∈ F
- where P is the feasible set of p and F is a set of all flows.
7/15
Vertical Decomposition
The centralized problem is solved distributively. [Chiang, 07]
Separable problem is considered.
Vertical decomposition devides the problem toflow distribution (FD) and MAC problems.
8/15
Horizontal Decomposition andStochastic Approximation
Each problem is solved distributively by horizontal decomposition.
MAC problem:
p[i+1]l =
hp[i]l + β[i] ∂Q[i](p[i])
∂pl
iPt(l)
, where ∂Q[i](p[i])∂pl
contains E [Cl(ωl)]
FD problem:
λ[j+1]l =
»λ
[j]l − γ
[j]
„Φl (E [Cl(ωl)],p)−
Pf∈R(l) e
z[j]f
«–+From stochastic approximation [Borkar, 00], E [Cl(ωl)] is obtained bysampling of channel in each iteration.
9/15
Iterative MechanismsMAC problem:
p[i+1]l =
[p[i]l + β[i] ∂Q[i](p[i])
∂pl
]Pt(l)
- Each update requires at most two-hop local information.
FD problem:
λ[j+1]l =
[λ
[j]l − γ[j]
(Φl
(C
[j]l (ωl),p
)−∑
f∈R(l) ez[j]f
)]+- Each update requires local flow information (source’s flows).
10/15
Iterative MechanismsMAC problem:
p[i+1]l =
[p[i]l + β[i] ∂Q[i](p[i])
∂pl
]Pt(l)
- Each update requires at most two-hop local information.
FD problem:
λ[j+1]l =
[λ
[j]l − γ[j]
(Φl
(C
[j]l (ωl),p
)−∑
f∈R(l) ez[j]f
)]+- Each update requires local flow information (source’s flows).
10/15
Iterative MechanismsMAC problem:
p[i+1]l =
[p[i]l + β[i] ∂Q[i](p[i])
∂pl
]Pt(l)
- Each update requires at most two-hop local information.
FD problem:
λ[j+1]l =
[λ
[j]l − γ[j]
(Φl
(C
[j]l (ωl),p
)−∑
f∈R(l) ez[j]f
)]+- Each update requires local flow information (source’s flows).
10/15
Iterative MechanismsMAC problem:
p[i+1]l =
[p[i]l + β[i] ∂Q[i](p[i])
∂pl
]Pt(l)
- Each update requires at most two-hop local information.
FD problem:
λ[j+1]l =
[λ
[j]l − γ[j]
(Φl
(C
[j]l (ωl),p
)−∑
f∈R(l) ez[j]f
)]+- Each update requires local flow information (source’s flows).
10/15
Iterative MechanismsMAC problem:
p[i+1]l =
[p[i]l + β[i] ∂Q[i](p[i])
∂pl
]Pt(l)
- Each update requires at most two-hop local information.
FD problem:
λ[j+1]l =
[λ
[j]l − γ[j]
(Φl
(C
[j]l (ωl),p
)−∑
f∈R(l) ez[j]f
)]+- Each update requires local flow information (source’s flows).
10/15
Iterative MechanismsMAC problem:
p[i+1]l =
[p[i]l + β[i] ∂Q[i](p[i])
∂pl
]Pt(l)
- Each update requires at most two-hop local information.
FD problem:
λ[j+1]l =
[λ
[j]l − γ[j]
(Φl
(C
[j]l (ωl),p
)−∑
f∈R(l) ez[j]f
)]+- Each update requires local flow information (source’s flows).
10/15
Iterative MechanismsMAC problem:
p[i+1]l =
[p[i]l + β[i] ∂Q[i](p[i])
∂pl
]Pt(l)
- Each update requires at most two-hop local information.
FD problem:
λ[j+1]l =
[λ
[j]l − γ[j]
(Φl
(C
[j]l (ωl),p
)−∑
f∈R(l) ez[j]f
)]+- Each update requires local flow information (source’s flows).
10/15
Iterative MechanismsMAC problem:
p[i+1]l =
[p[i]l + β[i] ∂Q[i](p[i])
∂pl
]Pt(l)
- Each update requires at most two-hop local information.
FD problem:
λ[j+1]l =
[λ
[j]l − γ[j]
(Φl
(C
[j]l (ωl),p
)−∑
f∈R(l) ez[j]f
)]+- Each update requires local flow information (source’s flows).
10/15
Iterative MechanismsMAC problem:
p[i+1]l =
[p[i]l + β[i] ∂Q[i](p[i])
∂pl
]Pt(l)
- Each update requires at most two-hop local information.
FD problem:
λ[j+1]l =
[λ
[j]l − γ[j]
(Φl
(C
[j]l (ωl),p
)−∑
f∈R(l) ez[j]f
)]+- Each update requires local flow information (source’s flows).
10/15
Iterative MechanismsMAC problem:
p[i+1]l =
[p[i]l + β[i] ∂Q[i](p[i])
∂pl
]Pt(l)
- Each update requires at most two-hop local information.
FD problem:
λ[j+1]l =
[λ
[j]l − γ[j]
(Φl
(C
[j]l (ωl),p
)−∑
f∈R(l) ez[j]f
)]+- Each update requires local flow information (source’s flows).
10/15
Distributive Algorithm
Joint Flow Control, Routing and MAC Algorithm1: Each link l ∈ L sets its initial values of pl and λl.2: MAC-loop (iteration index i)3: Flow distribution-loop (iteration index j)4: Each s ∈ S computes new z[j](s).
5: Each l ∈ L samples current link capacity C[j]l .
6: Each l ∈ L computes new price λ[j+1]l .
7: Repeat 3 to 6 until λ converges.
8: Each l ∈ L samples current link capacity C[i]l .
9: Each l ∈ L computes new p[i+1]l .
10: Repeat 2 to 9 until p converges.
11/15
Distributive Algorithm
Joint Flow Control, Routing and MAC Algorithm1: Each link l ∈ L sets its initial values of pl and λl.2: MAC-loop (iteration index i)3: Flow distribution-loop (iteration index j)4: Each s ∈ S computes new z[j](s).
5: Each l ∈ L samples current link capacity C[j]l .
6: Each l ∈ L computes new price λ[j+1]l .
7: Repeat 3 to 6 until λ converges.
8: Each l ∈ L samples current link capacity C[i]l .
9: Each l ∈ L computes new p[i+1]l .
10: Repeat 2 to 9 until p converges.
11/15
Distributive Algorithm
Joint Flow Control, Routing and MAC Algorithm1: Each link l ∈ L sets its initial values of pl and λl.2: MAC-loop (iteration index i)3: Flow distribution-loop (iteration index j)4: Each s ∈ S computes new z[j](s).
5: Each l ∈ L samples current link capacity C[j]l .
6: Each l ∈ L computes new price λ[j+1]l .
7: Repeat 3 to 6 until λ converges.
8: Each l ∈ L samples current link capacity C[i]l .
9: Each l ∈ L computes new p[i+1]l .
10: Repeat 2 to 9 until p converges.
11/15
Distributive Algorithm
Joint Flow Control, Routing and MAC Algorithm1: Each link l ∈ L sets its initial values of pl and λl.2: MAC-loop (iteration index i)3: Flow distribution-loop (iteration index j)4: Each s ∈ S computes new z[j](s).
5: Each l ∈ L samples current link capacity C[j]l .
6: Each l ∈ L computes new price λ[j+1]l .
7: Repeat 3 to 6 until λ converges.
8: Each l ∈ L samples current link capacity C[i]l .
9: Each l ∈ L computes new p[i+1]l .
10: Repeat 2 to 9 until p converges.
11/15
Distributive Algorithm
Joint Flow Control, Routing and MAC Algorithm1: Each link l ∈ L sets its initial values of pl and λl.2: MAC-loop (iteration index i)3: Flow distribution-loop (iteration index j)4: Each s ∈ S computes new z[j](s).
5: Each l ∈ L samples current link capacity C[j]l .
6: Each l ∈ L computes new price λ[j+1]l .
7: Repeat 3 to 6 until λ converges.
8: Each l ∈ L samples current link capacity C[i]l .
9: Each l ∈ L computes new p[i+1]l .
10: Repeat 2 to 9 until p converges.
11/15
Distributive Algorithm
Joint Flow Control, Routing and MAC Algorithm1: Each link l ∈ L sets its initial values of pl and λl.2: MAC-loop (iteration index i)3: Flow distribution-loop (iteration index j)4: Each s ∈ S computes new z[j](s).
5: Each l ∈ L samples current link capacity C[j]l .
6: Each l ∈ L computes new price λ[j+1]l .
7: Repeat 3 to 6 until λ converges.
8: Each l ∈ L samples current link capacity C[i]l .
9: Each l ∈ L computes new p[i+1]l .
10: Repeat 2 to 9 until p converges.
11/15
Distributive Algorithm
Joint Flow Control, Routing and MAC Algorithm1: Each link l ∈ L sets its initial values of pl and λl.2: MAC-loop (iteration index i)3: Flow distribution-loop (iteration index j)4: Each s ∈ S computes new z[j](s).
5: Each l ∈ L samples current link capacity C[j]l .
6: Each l ∈ L computes new price λ[j+1]l .
7: Repeat 3 to 6 until λ converges.
8: Each l ∈ L samples current link capacity C[i]l .
9: Each l ∈ L computes new p[i+1]l .
10: Repeat 2 to 9 until p converges.
11/15
Distributive Algorithm
Joint Flow Control, Routing and MAC Algorithm1: Each link l ∈ L sets its initial values of pl and λl.2: MAC-loop (iteration index i)3: Flow distribution-loop (iteration index j)4: Each s ∈ S computes new z[j](s).
5: Each l ∈ L samples current link capacity C[j]l .
6: Each l ∈ L computes new price λ[j+1]l .
7: Repeat 3 to 6 until λ converges.
8: Each l ∈ L samples current link capacity C[i]l .
9: Each l ∈ L computes new p[i+1]l .
10: Repeat 2 to 9 until p converges.
11/15
Distributive Algorithm
Joint Flow Control, Routing and MAC Algorithm1: Each link l ∈ L sets its initial values of pl and λl.2: MAC-loop (iteration index i)3: Flow distribution-loop (iteration index j)4: Each s ∈ S computes new z[j](s).
5: Each l ∈ L samples current link capacity C[j]l .
6: Each l ∈ L computes new price λ[j+1]l .
7: Repeat 3 to 6 until λ converges.
8: Each l ∈ L samples current link capacity C[i]l .
9: Each l ∈ L computes new p[i+1]l .
10: Repeat 2 to 9 until p converges.
11/15
Distributive Algorithm
Joint Flow Control, Routing and MAC Algorithm1: Each link l ∈ L sets its initial values of pl and λl.2: MAC-loop (iteration index i)3: Flow distribution-loop (iteration index j)4: Each s ∈ S computes new z[j](s).
5: Each l ∈ L samples current link capacity C[j]l .
6: Each l ∈ L computes new price λ[j+1]l .
7: Repeat 3 to 6 until λ converges.
8: Each l ∈ L samples current link capacity C[i]l .
9: Each l ∈ L computes new p[i+1]l .
10: Repeat 2 to 9 until p converges.
11/15
Simulation Setup
The convex problem, F, is solved by a centralized Octave solver.
The simulation is impremented by Python.
A four-state Markov chain is used to generate link capacity variation.
Cl ∈ {11, 5.5, 2, 1} for all l ∈ L
[T ] =
0.85 0.05 0.05 0.050.25 0.25 0.25 0.250.25 0.25 0.25 0.250.25 0.25 0.25 0.25
12/15
Simulation Results: [1]
S-D pair (N1 : N4)[N1, N2, N4]→ 0.74[N1, N3, N4]→ 0.67
S-D pair (N2 : N4)[N2, N3, N4]→ 0.53[N2, N4]→ 0.97
Static link capacity
0 500 1000 1500 2000MAC iteration index (i)
0.0
0.2
0.4
0.6
0.8
1.0
Rate
(M
bps)
Flow rates
[2, 3, 4][2, 4][1, 2, 4][1, 3, 4]
0 500 1000 1500 2000MAC iteration index (i)
0.00
0.05
0.10
0.15
0.20
0.25
0.30
Pro
babili
ty
Link transmission probabilities
(1, 2)(2, 3)(1, 3)(3, 4)(2, 4)
Dynamic link capacity
0 500 1000 1500 2000MAC iteration index (i)
0.00
0.05
0.10
0.15
0.20
0.25
0.30
Pro
babili
ty
Link transmission probabilities
(1, 2)(2, 3)(1, 3)(3, 4)(2, 4)
0 500 1000 1500 2000MAC iteration index (i)
0.0
0.2
0.4
0.6
0.8
1.0
Movin
g a
vera
ge r
ate
(M
bps)
Moving average flow rates
(2, 3, 4)(2, 4)(1, 2, 4)(1, 3, 4)
The network sustains an optimal solution regardless of the variation.
13/15
Simulation Results: [2]
S-D pair (N1 : N5)[N1, N2, N4, N5][N1, N3, N5]
S-D pair (N3 : N1)[N3, N1][N3, N2, N1]
S-D pair (N6 : N3)[N6, N4, N3][N6, N7, N5, N3]
Static link capacity
0 2000 4000 6000 8000 10000MAC iteration index (i)
0.0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
Rate
(M
bps)
Flow rates
[3, 2, 1][6, 7, 5, 3][3, 1][1, 3, 5][6, 4, 3][1, 2, 4, 5]
0 2000 4000 6000 8000 10000MAC iteration index (i)
0.00
0.05
0.10
0.15
0.20
Pro
babili
ty
Link transmission probabilities (1, 2)(6, 4)(3, 2)(1, 3)(6, 7)(4, 5)(3, 1)(2, 1)(7, 5)(4, 3)(5, 3)(2, 4)(3, 5)
Dynamic link capacity
0 2000 4000 6000 8000 10000MAC iteration index (i)
0.00
0.05
0.10
0.15
0.20
Pro
babili
ty
Link transmission probabilities (1, 2)(6, 4)(3, 2)(1, 3)(6, 7)(4, 5)(3, 1)(2, 1)(7, 5)(4, 3)(3, 5)(2, 4)(5, 3)
0 2000 4000 6000 8000 10000MAC iteration index (i)
0.0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
Movin
g a
vera
ge r
ate
(M
bps)
Moving average flow rates
(3, 2, 1)(6, 7, 5, 3)(3, 1)(1, 3, 5)(6, 4, 3)(1, 2, 4, 5)
The network sustains an optimal solution regardless of the variation.
14/15
Conclusions and Contribution
Conclusions
We have theoretically designed the protocol for cross-layer flowcontrol, routing and MAC networks- Link capacity variation- ALOHA random access MAC- Predefined routes- Flow control under harmonic rate function
We have purposed the distributive algorithm for the system.- The algorithm works under the stationary and ergodic assumptions.- The network’s operation sustain an optimal solution regardless ofthe variation.
Contribution
We, first time, cooperate link capacity variation into theoptimization decompostion framework.
15/15