On Flow-Aware CSMA in Multi-Channel Wireless Networks Mathieu - - PowerPoint PPT Presentation

on flow aware csma
SMART_READER_LITE
LIVE PREVIEW

On Flow-Aware CSMA in Multi-Channel Wireless Networks Mathieu - - PowerPoint PPT Presentation

On Flow-Aware CSMA in Multi-Channel Wireless Networks Mathieu Feuillet Joint work with Thomas Bonald CISS 2011 Outline Model Background Standard CSMA Flow-aware CSMA Conclusion Outline Model Background Standard CSMA Flow-aware CSMA


slide-1
SLIDE 1

On Flow-Aware CSMA

in Multi-Channel Wireless Networks

Mathieu Feuillet Joint work with Thomas Bonald CISS 2011

slide-2
SLIDE 2

Outline

Model Background Standard CSMA Flow-aware CSMA Conclusion

slide-3
SLIDE 3

Outline

Model Background Standard CSMA Flow-aware CSMA Conclusion

slide-4
SLIDE 4

Conflict graphs

The network is represented by a set of conflict graphs, one per channel. 1 2 3 1 2 3 Channel 1 Channel 2

slide-5
SLIDE 5

Conflict graphs

The network is represented by a set of conflict graphs, one per channel. 1 2 3 1 2 3 Channel 1 Channel 2 Conflict graphs on different channels can be different.

slide-6
SLIDE 6

Conflict graphs

1 2 3 1 2 3 Channel 1 Channel 2 Schedules:

◮ ∅, {(1, 1)}, {(2, 1)}, {(3, 1)},{(1, 1), (3, 1)}.

slide-7
SLIDE 7

Conflict graphs

1 2 3 1 2 3 Channel 1 Channel 2 Schedules:

◮ ∅, {(1, 1)}, {(2, 1)}, {(3, 1)},{(1, 1), (3, 1)}.

slide-8
SLIDE 8

Conflict graphs

1 2 3 1 2 3 Channel 1 Channel 2 1 Schedules:

◮ ∅, {(1, 1)}, {(2, 1)}, {(3, 1)},{(1, 1), (3, 1)}.

slide-9
SLIDE 9

Conflict graphs

1 2 3 1 2 3 Channel 1 Channel 2 2 Schedules:

◮ ∅, {(1, 1)}, {(2, 1)}, {(3, 1)},{(1, 1), (3, 1)}.

slide-10
SLIDE 10

Conflict graphs

1 2 3 1 2 3 Channel 1 Channel 2 3 Schedules:

◮ ∅, {(1, 1)}, {(2, 1)}, {(3, 1)},{(1, 1), (3, 1)}.

slide-11
SLIDE 11

Conflict graphs

1 2 3 1 2 3 Channel 1 Channel 2 1 3 Schedules:

◮ ∅, {(1, 1)}, {(2, 1)}, {(3, 1)},{(1, 1), (3, 1)}.

slide-12
SLIDE 12

Conflict graphs

1 2 3 1 2 3 Channel 1 Channel 2 Schedules:

◮ ∅, {(1, 1)}, {(2, 1)}, {(3, 1)},{(1, 1), (3, 1)}. ◮ {(1, 2)}, {(2, 2)}, {(3, 2)},{(1, 2), (3, 2)}.

slide-13
SLIDE 13

Conflict graphs

1 2 3 1 2 3 Channel 1 Channel 2 Schedules:

◮ ∅, {(1, 1)}, {(2, 1)}, {(3, 1)},{(1, 1), (3, 1)}. ◮ {(1, 2)}, {(2, 2)}, {(3, 2)},{(1, 2), (3, 2)}. ◮ {(1, 1), (2, 2)}, {(1, 2), (2, 1), (3, 1)},. . .

slide-14
SLIDE 14

Conflict graphs

1 2 3 1 2 3 Channel 1 Channel 2 1 2 Schedules:

◮ ∅, {(1, 1)}, {(2, 1)}, {(3, 1)},{(1, 1), (3, 1)}. ◮ {(1, 2)}, {(2, 2)}, {(3, 2)},{(1, 2), (3, 2)}. ◮ {(1, 1), (2, 2)}, {(1, 2), (2, 1), (3, 1)},. . .

slide-15
SLIDE 15

Conflict graphs

1 2 3 1 2 3 Channel 1 Channel 2 2 1 3 Schedules:

◮ ∅, {(1, 1)}, {(2, 1)}, {(3, 1)},{(1, 1), (3, 1)}. ◮ {(1, 2)}, {(2, 2)}, {(3, 2)},{(1, 2), (3, 2)}. ◮ {(1, 1), (2, 2)}, {(1, 2), (2, 1), (3, 1)},. . .

slide-16
SLIDE 16

Time-scale separation

We assume time-scale separation between flow-level and packet-level dynamics.

◮ At the packet level, the number of flows is fixed. ◮ At the flow level, the packet-level dynamics are at

equilibrium: the throughput of each node is the fraction

  • f time it is active.
slide-17
SLIDE 17

Time-scale separation

We assume time-scale separation between flow-level and packet-level dynamics.

◮ At the packet level, the number of flows is fixed. ◮ At the flow level, the packet-level dynamics are at

equilibrium: the throughput of each node is the fraction

  • f time it is active.

Example: 1 2 3 ϕ1 = p{1} + p{1,3}, ϕ2 = p{2}, ϕ3 = p{3} + p{1,3}.

slide-18
SLIDE 18

Capacity Region

Defined as the set of all feasible link throughputs ϕk =

  • i:k∈Si pi

Schedule i Probability of schedule i Throughput of node k

slide-19
SLIDE 19

Capacity Region

Defined as the set of all feasible link throughputs ϕk =

  • i:k∈Si pi

Schedule i Probability of schedule i Throughput of node k

Example: 1 2 3 Schedules: ∅, {1}, {2}, {3}, {1, 3}. Capacity region: {ϕ1 + ϕ2 ≤ 1, ϕ2 + ϕ3 ≤ 1}.

slide-20
SLIDE 20

Stability region

Defined as the set of traffic intensities such that the network is stable. ρk = λk × σk Example: 1 2 3 ρ1 ρ2 ρ3 The stability region depends on the algorithm.

slide-21
SLIDE 21

Stability region

Defined as the set of traffic intensities such that the network is stable. ρk = λk × σk

Flows arrival rate

slide-22
SLIDE 22

Stability region

Defined as the set of traffic intensities such that the network is stable. ρk = λk × σk

Flows arrival rate Mean flow size

slide-23
SLIDE 23

Stability region

Defined as the set of traffic intensities such that the network is stable. ρk = λk × σk

Traffic intensity Flows arrival rate Mean flow size

slide-24
SLIDE 24

Optimal stability region

The stability region of any algorithm is included in the capacity region. The interior of the capacity region is called the optimal stability region.

slide-25
SLIDE 25

Optimal stability region

The stability region of any algorithm is included in the capacity region. The interior of the capacity region is called the optimal stability region. Example: 1 2 3 Optimal stability region: {ρ1 + ρ2 < 1, ρ2 + ρ3 < 1}.

slide-26
SLIDE 26

Outline

Model Background Standard CSMA Flow-aware CSMA Conclusion

slide-27
SLIDE 27

Maximal Weight scheduling

T assiulas & Ephremides 92 maxwi(x) =

  • k∈Si

xk

slide-28
SLIDE 28

Maximal Weight scheduling

T assiulas & Ephremides 92 maxwi(x) =

  • k∈Si

xk Example: 1 2 3 x1 + x3 > x2 ⇒ schedule {1, 3} x1 + x3 < x2 ⇒ schedule {2}

slide-29
SLIDE 29

Suboptimal algorithms

Maximal queue scheduling

Mc Keown 95 maxxk Dimakis & Walrand 06 Efficiency 8

9 ≈ 0.89

slide-30
SLIDE 30

Suboptimal algorithms

Maximal queue scheduling

Mc Keown 95 maxxk Dimakis & Walrand 06 Efficiency 8

9 ≈ 0.89

Maximal size scheduling

Charporkar, Kar & Sarkar 95 max |Si| Bonald & Massoulié 01 Efficiency ≈ 0.76

slide-31
SLIDE 31

Optimal Algorithms

Adaptative rate-based CSMA Jiang & Walrand 08

◮ Measure the packet input and output rates and adapt the

back-off accordingly.

◮ Learning algorithm.

slide-32
SLIDE 32

Optimal Algorithms

Adaptative rate-based CSMA Jiang & Walrand 08

◮ Measure the packet input and output rates and adapt the

back-off accordingly.

◮ Learning algorithm.

Adaptative queue based CSMA Rajagopolan, Shah & Shin 09

◮ Adapt the back-off according to the loglog of the queue

length.

◮ Some technical assumptions.

slide-33
SLIDE 33

Outline

Model Background Standard CSMA Flow-aware CSMA Conclusion

slide-34
SLIDE 34

Standard CSMA

Probe a channel at random, after some random backoff time. 1 1 1 α/2 α/2 1 1 ∼ exp(α) Back-off ∼ exp(1) Transmission ∼ exp(α) Back-off ϕ1(x) = α 1 + α

slide-35
SLIDE 35

Standard CSMA

Probe a channel at random, after some random backoff time. 1 1 1 α/2 α/2 1 1 ∼ exp(α) Back-off ∼ exp(1) Transmission ∼ exp(α) Back-off ϕ1(x) = α 1 + α Stability region:

  • ρ1 <

α 1+α

α→∞ − − − → {ρ1 < 1}

slide-36
SLIDE 36

Standard CSMA

wi(x) =

  • (k,j)∈Si αk,j✶{xk>0}

Weight of schedule i Ratio of transmission time to virtual backoff time at link k

  • n channel j

Example: Assume αk,j = α for k = 1, 2, 3 and j = 1, 2. 1 2 3 1 2 3 1 2 3 α α α 1 1 1 α α α 1 1 1

slide-37
SLIDE 37

Standard CSMA

wi(x) =

  • (k,j)∈Si αk,j✶{xk>0}

Weight of schedule i Ratio of transmission time to virtual backoff time at link k

  • n channel j

Example: Assume αk,j = α for k = 1, 2, 3 and j = 1, 2. 1 2 3 1 2 3 1 2 3 α α α 1 1 1 α α α 1 1 1 ∅ : wi(x) = 1

slide-38
SLIDE 38

Standard CSMA

wi(x) =

  • (k,j)∈Si αk,j✶{xk>0}

Weight of schedule i Ratio of transmission time to virtual backoff time at link k

  • n channel j

Example: Assume αk,j = α for k = 1, 2, 3 and j = 1, 2. 1 2 3 1 2 3 1 2 3 α α α 1 1 1 α α α 1 1 1 1 {(1, 1)} : wi(x) = α

slide-39
SLIDE 39

Standard CSMA

wi(x) =

  • (k,j)∈Si αk,j✶{xk>0}

Weight of schedule i Ratio of transmission time to virtual backoff time at link k

  • n channel j

Example: Assume αk,j = α for k = 1, 2, 3 and j = 1, 2. 1 2 3 1 2 3 1 2 3 α α α 1 1 1 α α α 1 1 1 1 2 {(1, 1), (2, 2)} : wi(x) = α2

slide-40
SLIDE 40

Standard CSMA

wi(x) =

  • (k,j)∈Si αk,j✶{xk>0}

Weight of schedule i Ratio of transmission time to virtual backoff time at link k

  • n channel j

Example: Assume αk,j = α for k = 1, 2, 3 and j = 1, 2. 1 2 3 1 2 3 1 2 3 α α α 1 1 1 α α α 1 1 1 1 2 3 {(1, 1), (2, 2), (3, 1)} : wi(x) = α3

slide-41
SLIDE 41

Standard CSMA

wi(x) =

  • (k,j)∈Si αk,j✶{xk>0}

Weight of schedule i Ratio of transmission time to virtual backoff time at link k

  • n channel j

Example: Assume αk,j = α for k = 1, 2, 3 and j = 1, 2. 1 2 3 1 2 3 1 2 3 α α α 1 1 1 α α α 1 1 1 wi(x) = αn for n active links

slide-42
SLIDE 42

Standard CSMA

ϕk(x) =

  • i:k∈Si pi(x)

Throughput of link k Probability of schedule i

Example: Assume αk,j = α for k = 1, 2, 3 and j = 1, 2. 1 2 3 1 2 3 1 2 3 α α α 1 1 1 α α α 1 1 1 ϕ1(x) = ϕ3(x) = 2α + 6α2 + 2α3 1 + 6α + 8α2 + 2α3 , ϕ2(x) = 2α + 4α2 + 2α3 1 + 6α + 8α2 + 2α3

slide-43
SLIDE 43

Suboptimality of standard CSMA

1 channel

α ≫ 1

0.2 0.4 0.6 0.8 1 0.2 0.4 0.6 0.8 1

ρ1 = ρ3 ρ2

Optimal Actual

1 2 3 Homogeneous case ρ1 = ρ2 = ρ3 Efficiency ≈ 0.84.

slide-44
SLIDE 44

Suboptimality of standard CSMA

2 channels

α ≫ 1

0.2 0.4 0.6 0.8 1 0.2 0.4 0.6 0.8 1

ρ1 = . . . = ρ4 ρ5

Optimal Actual

1 5 2 3 4 Homogeneous case ρ1 = . . . = ρ5 Efficiency ≈ 0.85

slide-45
SLIDE 45

Outline

Model Background Standard CSMA Flow-aware CSMA Conclusion

slide-46
SLIDE 46

Flow-aware CSMA

Proposed modification of CSMA: Exponential backoff time for each flow 1 1 1 αx1/2 αx1/2 1 1 ∼ exp(αx1) Back-off ∼ exp(1) Transmission ∼ exp(αx1) Back-off ϕ1(x) = αx1 1 + αx1

slide-47
SLIDE 47

Flow-aware CSMA

Proposed modification of CSMA: Exponential backoff time for each flow 1 1 1 αx1/2 αx1/2 1 1 ∼ exp(αx1) Back-off ∼ exp(1) Transmission ∼ exp(αx1) Back-off ϕ1(x) = αx1 1 + αx1 Stability region: {ρ1 < 1}

slide-48
SLIDE 48

Flow-aware CSMA

wi(x) =

  • k∈Si αk,jxk

Weight of schedule i Ratio of transmission time to virtual back-

  • ff time at link k on

channel j

Example: Assume αk,j = α for k = 1, 2, 3 and j = 1, 2. 1 2 3 1 2 3 1 2 3 αx1 αx2 αx3 1 1 1 αx1 αx2 αx3 1 1 1

slide-49
SLIDE 49

Flow-aware CSMA

wi(x) =

  • k∈Si αk,jxk

Weight of schedule i Ratio of transmission time to virtual back-

  • ff time at link k on

channel j

Example: Assume αk,j = α for k = 1, 2, 3 and j = 1, 2. 1 2 3 1 2 3 1 2 3 αx1 αx2 αx3 1 1 1 αx1 αx2 αx3 1 1 1 ∅ : wi(x) = 1

slide-50
SLIDE 50

Flow-aware CSMA

wi(x) =

  • k∈Si αk,jxk

Weight of schedule i Ratio of transmission time to virtual back-

  • ff time at link k on

channel j

Example: Assume αk,j = α for k = 1, 2, 3 and j = 1, 2. 1 2 3 1 2 3 1 2 3 αx1 αx2 αx3 1 1 1 αx1 αx2 αx3 1 1 1 1 {(1, 1)} : wi(x) = αx1

slide-51
SLIDE 51

Flow-aware CSMA

wi(x) =

  • k∈Si αk,jxk

Weight of schedule i Ratio of transmission time to virtual back-

  • ff time at link k on

channel j

Example: Assume αk,j = α for k = 1, 2, 3 and j = 1, 2. 1 2 3 1 2 3 1 2 3 αx1 αx2 αx3 1 1 1 αx1 αx2 αx3 1 1 1 1 2 {(1, 1), (2, 2)} : wi(x) = α2x1x2

slide-52
SLIDE 52

Flow-aware CSMA

wi(x) =

  • k∈Si αk,jxk

Weight of schedule i Ratio of transmission time to virtual back-

  • ff time at link k on

channel j

Example: Assume αk,j = α for k = 1, 2, 3 and j = 1, 2. 1 2 3 1 2 3 1 2 3 αx1 αx2 αx3 1 1 1 αx1 αx2 αx3 1 1 1 1 2 3 {(1, 1), (2, 2), (3, 1)} : wi(x) = α3x1x2x3

slide-53
SLIDE 53

Flow-aware CSMA

ϕk(x) =

  • i:k∈Si pi(x)

Throughput of link k Probability of schedule i

Example: Assume αk,j = α for k = 1, 2, 3 and j = 1, 2. 1 2 3 1 2 3 1 2 3 αx1 αx2 αx3 1 1 1 αx1 αx2 αx3 1 1 1 ϕ2(x) ∝ 2α3x1x2x3 + 2α2x2(x1 + x3) + 2αx2

slide-54
SLIDE 54

Optimality of flow-aware CSMA

Theorem

The flow-aware CSMA algorithm is optimal: for any number

  • f channels and any sets of conflicts graphs, it stabilizes the

network for all traffic intensities inside the capacity region. Sketch of proof:

◮ When the number of flows is high, the algorithm behaves

as max-weight: the algorithm selects schedules of high weight with high probability.

◮ Proof based on Foster’s criterion.

slide-55
SLIDE 55

Throughput performance

. . . . . . Homogeneous load α = 1

0.2 0.4 0.6 0.8 1 0.2 0.4

Load Flow throughput Standard CSMA

1 channel 2 channels 3 channels 0.2 0.4 0.6 0.8 1 0.2 0.4

Load Flow throughput Flow-aware CSMA

1 channel 2 channels 3 channels

slide-56
SLIDE 56

Time-scale separation

1 5 2 3 4 α = 1 1 packet per flow

0.2 0.4 0.6 0.2 0.4

Load Flow throughput Center link

With Without 0.2 0.4 0.6 0.2 0.4

Load Flow throughput Edge link

With Without

slide-57
SLIDE 57

Outline

Model Background Standard CSMA Flow-aware CSMA Conclusion

slide-58
SLIDE 58

Conclusion

A simple, distributed, asynchronous access scheme that is provably optimal. A theoretical issue:

◮ Time-scale separation

Extensions of the model:

◮ Collisions ◮ Throughput performance