Multi-Channel Protocols for Wireless Mesh Networks

Post on 15-Jan-2016

47 views 0 download

Tags:

description

Multi-Channel Protocols for Wireless Mesh Networks. Yu-Chee Tseng CS/NCTU. Outline. Introduction to MANET Review of 3 Multi-channel Protocols Summary. Wireless Mesh Network. Can simultaneously operate. A. C. 81/100 Ch1. B. 84/100 Ch2. Goodput = 165Mbps Multi-Channel. - PowerPoint PPT Presentation

transcript

1

Multi-Channel Protocols for Wireless Mesh Networks

Yu-Chee Tseng

CS/NCTU

2

Outline

Introduction to MANET Review of 3 Multi-channel Protocols Summary

3

Wireless Mesh Network

4

Goodput = 87MbpsSingle-Channel

A

BC

44 /50Ch1

Interference

43/ 50Ch1 Link Capacity

=100/2

Ex: (Assume Channel Capacity = 100Mbps)

Expected Load

Observation: Multi-channel MANET

IEEE 802.11 provides several non-overlapping channels which could be used simultaneously within a neighborhood.

A

BC

Goodput = 165MbpsMulti-Channel

84/100Ch2

81/100Ch1

Can simultaneously operate

5

Motivation

The idea of exploiting multiple channels is appealing in wireless mesh networks because of their high capacity requirements to support backbone traffic.

However, the channel assignment problem is NP-hard.

6

A Multi-channel Example

7

Problem Spectrum number of interfaces per node

single interface fixed at a particular channel (traditional solution) may switch among different channels

multiple interfaces each fixed at a particular channel may switch among different channels

channel assignment algorithm Centralized

assignment is done in longer period Distributed

assignment can be done is shorter period more flexible and dynamic, depending on current loads

8

Review 1:A Centralized Greedy Solution

Ashish Raniwala, Kartik Gopalan, and Tzi-cker Chiueh, “Centralized Channel Assignment and Routing Algorithms for Multi-Channel Wireless Mesh Networks,” Mobile Computing and Communications Review, vol. 8, no. 2, pp. 50–65, April 2004.

9

Problem Statement

Input: expected load on each link

Output: assignment of channels to network interfaces

Goal: to reduce interference between neighboring interfaces

10

An Example

Number of channels: 4 (1,2,3,4)

Number of interface per node: 2

Per Channel Capacity: 100 units

Definition: degree of interference The sum of expected load that

a link may experience on a particular channel in its interference region.

Internet

C

D

B

G

E

A

F

30

40 15

25

20

50

expected load on this link

11

Example of Degree of Interference

Internet

C

D

B

G

E

A

F

30Ch3

40Ch1

25Ch1

50Ch1

Ch1 50+25=75

Ch2 25+20+15=60

Ch3 25

Ch4 25

Degree of Interference for link E-Fon different channels

20Ch2

15Ch2

link E-F will only experience interferences from links D-E, C-D, and D-G,but not from links B-C, A-C coverage

of node Ecoverageof node F

12

Outline of the Algorithm

Links are sorted, and then visited in the decreasing order of their link loads.

A greedy approach:When a link is visited, it is assigned to a

channel with the lowest degree of interference. Special cases:

If the interfaces of the incident nodes are all used out, we may need to change one interface to a used channel.

If the interfaces of the incident nodes are all used out but they have a common channel, then assign the link to the common

channel.

13

A Running Example

Internet

C

D

B

G

E

A

F

30

40 15

25

20

50

152025304050

C-DD-EE-FB-CA-CD-G

Number of channels: 4 (1,2,3,4)

Number of interface per node: 2

Per Channel Capacity: 100 units

First:

sort links according to their link loads (in a decreasing order)

14

Connect (D,G)

A

B

C

D 1

E

F

G 1

Internet

C

D

B

G

E

A

F

50Ch1

Channel List

Ch1 050

Ch2 0

Ch3 0

Ch4 0

Degree of Interference

152025304050

C-DD-EE-FB-CA-CD-G

15

Connect (A,C)

A 2

B

C 2

D 1

E

F

G 1

Internet

C

D

B

G

E

A

F

40Ch2

50Ch1

Channel List

Ch1 50

Ch2 040

Ch3 0

Ch4 0

Degree of Interference

152025304050

C-DD-EE-FB-CA-CD-G

16

Connect (B,C)

A 2

B 3

C 2,3

D 1

E

F

G 1

Internet

C

D

B

G

E

A

F

30Ch3

40Ch2

50Ch1

Channel List

Ch1 50

Ch2 40

Ch3 030

Ch4 0

Degree of Interference

152025304050

C-DD-EE-FB-CA-CD-G

17

Connect (E,F)

A 2

B 3

C 2,3

D 1

E 3

F 3

G 1

Internet

C

D

B

G

E

A

F

30Ch3

40Ch2

25Ch3

50Ch1

Channel List

Ch1 50

Ch2 0

Ch3 025

Ch4 0

Degree of Interference

152025304050

C-DD-EE-FB-CA-CD-G

18

Connect (D,E)

A 2

B 3

C 2,3

D 1,4

E 3,4

F 3

G 1

Internet

C

D

B

G

E

A

F

30Ch3

40Ch2

25Ch3

20Ch4

50Ch1

Channel List

Ch1 50

Ch2 40

Ch3 30+25

Ch4 020

Degree of Interference

152025304050

C-DD-EE-FB-CA-CD-G

19

Switch from ch. to ch.

interference of new ch.

Connect (C,D)

A 2

B 3

C 2,3

D 1,4

E 3,4

F 3

G 1

Internet

C

D

B

G

E

A

F

30Ch3

40Ch2

15??

25Ch3

20Ch4

50Ch1

Channel List

Ch1 50

Ch2 40

Ch3 55

Ch4 20

Degree of Interference

12 13 21 24 31 34 42 43

90 105 90 60 80 50 60 75

152025304050

C-DD-EE-FB-CA-CD-G

Explanation next page

20

Connect (C,D)

A 2

B 4

C 2,4

D 1,4

E 3,4

F 3

G 1

Internet

C

D

B

G

E

A

F

30Ch3Ch4

40Ch2

15??

25Ch3

20Ch4

50Ch1

Channel List

Ch1 50

Ch2 40

Ch3 5525

Ch4 2050

Degree of Interference

12 13 21 24 31 34 42 43

90 105 90 60 80 50 60 75

152025304050

C-DD-EE-FB-CA-CD-G

switch ch 3 to ch 4 ( 不含本身的 15)

21

Connect (C,D)

A 2

B 4

C 2,4

D 1,4

E 3,4

F 3

G 1

Internet

C

D

B

G

E

A

F

30Ch4

40Ch2

15Ch4

25Ch3

20Ch4

50Ch1

Channel List

Ch1 50

Ch2 40

Ch3 25

Ch4 5065

Degree of Interference

152025304050

C-DD-EE-FB-CA-CD-G

12 13 21 24 31 34 42 43

90 105 90 60 80 50 60 75

select the one with min. int.

22

Final Result

A 2

B 4

C 2,4

D 1,4

E 3,4

F 3

G 1

Internet

C

D

B

G

E

A

F

30Ch4

40Ch2

15Ch4

25Ch3

20Ch4

50Ch1

Channel List

23

A Short Summary

Adv.: quite simple Disadv.

1. need initial expected load on every link

2. centralized algorithm (must know network topology)

3. static network topology

4. static traffic load

24

Review 2: (SSCH)A distributed, single-interface solution

Paramvir Bahl, Ranveer Chandra, and John Dunagan, “SSCH: Slotted Seeded Channel Hopping for Capacity Improvement in IEEE 802.11 Ad-Hoc Wireless Networks,” in ACM Mobicom, 2004.

25

Protocol Outline: SSCH

Single interface hopping on multiple channels. time is slotted

SSCH (Slotted Seeded Channel Hopping)1. Each node has its own channel hopping schedule.2. Each node transmits its schedule to neighboring

nodes in the beginning of each slot.3. To transmit data, a node has to change its hopping

schedule to adapt to receiver’s hopping patterns. The seeded hopping ensures through number theory

that every pair of nodes have a common channel to exchange their schedulers.

26

原理 1: Channel Hopping Scheduling

Time is slotted. Continuous slots are framed together. The i-th slots of all frame form the i-th virtual channel.

Each virtual channel is represented by a (channel, seed) pair, denoted by (xi , ai ). xi = current channel; ai=hopping distance hopping rule: xi ← (xi + ai) mod 3

Also, there is a special slot called “parity slot”. a common channel must be used.

27

Channel Schedule Example

(channel,seed) 1(channel,seed) 2

(mod 3)

1 0 2

(channel,seed) 1(channel,seed) 2

(mod 3)

28

Mathematical Properties

For two nodes with an identical seed if they have identical channel:

these two nodes are always synchronized.

if they have different channels: they only overlap in the parity slots

For two nodes with different seeds they overlap exactly once every 3 slots

prime number theory

These overlapping slots ensure that stations can exchange schedulers.

29

原理 2: Optimistic Synchronization

If node A has packets to be sent to node B, A will select a virtual channel and match it with B’s corresponding virtual channel.receiver-based rule

A B

(channel-A,seed-A) (channel-B,seed-

B)

(channel-B, seed-B)

30

原理 3: Partial Synchronization

For a multi-hop path, partial synchronization is used.Node B follows node C’s hopping schedule in

some virtual channels, and leave some virtual channels to be synchronized by node A.

goal: better spatial reuse

A

B

C

31

A Naive Synchronization

32

Solution ( 現有 AB, 加入 BC)

A

BC A

BC

Case 2:all slots arereceiving,partial sync.

A

BC A

BC

Receiving ch.: If a slot always receives data, it is marked as receiving slot.Case 1:

B preserves its receiving ch.and uses its idle virtual ch.to sync. with C4 (channel,seed)

(x1,a1)(x2,a2)(x3,a3)(x4,a4)

33

原理 4: De-synchronization

To reduce interference, if too many nodes use the same (channel, seed) is the same virtual channel, de-synchronize some of them. simply choose a new (channel, seed) at a node’s own decision

Example:3 pairs use the same(channel, seed) in the 2nd virtual channel

(1,2)(0,1)(0,2)

(1,0)(0,1)(1,3)

(0,3)(0,1)(2,1)

(2,2)(0,1)(1,1)

(0,2)(0,1)(2,3)

(1,4)(0,1)(3,1)

may choose to de-sync.

34

Short Summary

Adv.1. an interesting partial synchronization technique2. an interesting de-synchronization technique

Disadv.1. need global time synchronization2. only designed for one interface

35

Review 3: (MCR)A multi-interface channel assignment protocol

Pradeep Kyasanur and Nitin H. Vaidya,  "Routing and Interface Assignment in Multi-Channel Multi-Interface Wireless Networks", WCNC 2005.

36

Main Idea

Each node has multiple interfaces. Fixed Interface: assigned to some fixed channel for l

ong intervals of time Switchable Interface: dynamically assigned to chann

els over short time scales

Transmission Rules: receiver-based a sender adapts to a receiver by changing its switcha

ble interface to the receiver’s fixed interface

37

Example

A B C

Fixed = 1 Fixed = 2 Fixed = 3

Initially: switchable = 3 switchable = 1 switchable = 2

Step 1: switchable = 2

Step 2: switchable = 3

2 interfaces per node1 fixed, 1 switchable

3 channels are available.

Routing Path: ABC

38

Fixed Interface assignment

Goal: to ensure that fixed interfaces of nodes in a neighbo

rhood have better spatial reuse.

A localized protocol, where each node maintains two tables:

NeighborTable: containing the fixed channels being used by its neighbors

ChannelUsageList (CUL): keeping the number of nodes using each channel by their fixed channels

39

Distributed Algorithm

1. Initially, each node chooses a random channel as its fixed interface.

Example: All nodes are neighbors (3 channels)

AFixed=1

3

2

C1

CUL

BFixed=13

2

B1

CUL

3

2

D1

CUL

3

2

A1

CUL

3

2

E1

CUL

CFixed=1

DFixed=1

EFixed=1

40

Distributed Algorithm2. Periodically, each node broadcasts on every

channel its current fixed channel.

Example:

AFixed=1

3

2

C1

CUL

BFixed=13

2

B1

CUL

3

2

D1

CUL

3

2

A1

CUL

3

2

E1

CUL

CFixed=1

DFixed=1

EFixed=1

“Hello”

“Hello” “Hello”

41

Distributed Algorithm

3. On receiving a hello packet, a node updates its NeighborTable and ChannelUsageList.

Example:

AFixed=1

3

2

ABCDE1

CUL

BFixed=13

2

ABCDE1

CUL

3

2

ABCDE1

CUL

3

2

ABCDE1

CUL

3

2

ABCDE1

CUL

CFixed=1

DFixed=1

EFixed=1

42

Distributed Algorithm

4. Each node periodically consults its CUL (relatively long period). If its fixed channel is detected to be too crowded, it has a probability p to change its fixed channel to a less crowded channel.

Example:

AFixed=1

3

2

ABCDE1

CUL

BFixed=13

2

ABCDE1

CUL

3

2

ABCDE1

CUL

3

2

ABCDE1

CUL

3

2

ABCDE1

CUL

CFixed=1

DFixed=1

EFixed=1

43

Distributed Algorithm

Example: C decides to change to channel 2

AFixed=1

3

2

ABCDE1

CUL

BFixed=13

2

ABCDE1

CUL

3

2

ABCDE1

CUL

3

2

ABCDE1

CUL

3

2

ABCDE1

CUL

CFixed=1

DFixed=1

EFixed=1

Change

4. Each node periodically consults its CUL (relatively long period). If its fixed channel is detected to be too crowded, it has a probability p to change its fixed channel to a less crowded channel.

44

Distributed Algorithm

Example: C broadcasts to neighbor

AFixed=1

3

C2

ABDE1

CUL

BFixed=13

2

ABCDE1

CUL

3

2

ABCDE1

CUL

3

2

ABCDE1

CUL

3

2

ABCDE1

CUL

CFixed=2

DFixed=1

EFixed=1

“Hello”

“Hello” “Hello”

4. Each node periodically consults its CUL (relatively long period). If its fixed channel is detected to be too crowded, it has a probability p to change its fixed channel to a less crowded channel.

45

Distributed Algorithm

Example: after broadcast

AFixed=1

3

C2

ABDE1

CUL

BFixed=13

C2

ABDE1

CUL

3

C2

ABDE1

CUL

3

C2

ABDE1

CUL

3

C2

ABDE1

CUL

CFixed=2

DFixed=1

EFixed=1

4. Each node periodically consults its CUL (relatively long period). If its fixed channel is detected to be too crowded, it has a probability p to change its fixed channel to a less crowded channel.

46

Distributed Algorithm

Example: E checks its CUL, but does not change

AFixed=1

3

C2

ABDE1

CUL

BFixed=13

C2

ABDE1

CUL

3

C2

ABDE1

CUL

3

C2

ABDE1

CUL

3

C2

ABDE1

CUL

CFixed=2

DFixed=1

EFixed=1

4. Each node periodically consults its CUL (relatively long period). If its fixed channel is detected to be too crowded, it has a probability p to change its fixed channel to a less crowded channel.

Nothing

47

Distributed Algorithm

Example: D changes to channel 1

AFixed=1

3

C2

ABDE1

CUL

BFixed=13

C2

ABDE1

CUL

3

C2

ABDE1

CUL

3

C2

ABDE1

CUL

3

C2

ABDE1

CUL

CFixed=2

DFixed=1

EFixed=1

Change

4. Each node periodically consults its CUL (relatively long period). If its fixed channel is detected to be too crowded, it has a probability p to change its fixed channel to a less crowded channel.

48

Distributed Algorithm

Example: D broadcasts

AFixed=1

3

C2

ABDE1

CUL

BFixed=13

C2

ABDE1

CUL

D3

C2

ABE1

CUL

3

C2

ABDE1

CUL

3

C2

ABDE1

CUL

CFixed=2

DFixed=3

EFixed=1

“Hello”

“Hello”

4. Each node periodically consults its CUL (relatively long period). If its fixed channel is detected to be too crowded, it has a probability p to change its fixed channel to a less crowded channel.

49

Distributed Algorithm

Example: after D’s broadcast

AFixed=1

D3

C2

ABE1

CUL

BFixed=1D3

C2

ABE1

CUL

D3

C2

ABE1

CUL

D3

C2

ABE1

CUL

D3

C2

ABE1

CUL

CFixed=2

DFixed=3

EFixed=1

4. Each node periodically consults its CUL (relatively long period). If its fixed channel is detected to be too crowded, it has a probability p to change its fixed channel to a less crowded channel.

50

Distributed Algorithm

Example: B changes to channel 2

AFixed=1

D3

C2

ABE1

CUL

BFixed=1D3

C2

ABE1

CUL

D3

C2

ABE1

CUL

D3

C2

ABE1

CUL

D3

C2

ABE1

CUL

CFixed=2

DFixed=3

EFixed=1

Change

4. Each node periodically consults its CUL (relatively long period). If its fixed channel is detected to be too crowded, it has a probability p to change its fixed channel to a less crowded channel.

51

Distributed Algorithm

Example: B’s broadcast

AFixed=1

D3

C2

ABE1

CUL

BFixed=2D3

CB2

AE1

CUL

D3

C2

ABE1

CUL

D3

C2

ABE1

CUL

D3

C2

ABE1

CUL

CFixed=2

DFixed=3

EFixed=1

“Hello”

“Hello”

4. Each node periodically consults its CUL (relatively long period). If its fixed channel is detected to be too crowded, it has a probability p to change its fixed channel to a less crowded channel.

52

Distributed Algorithm

Example: after B’s broadcast

AFixed=1

D3

CB2

AE1

CUL

BFixed=2D3

CB2

AE1

CUL

D3

CB2

AE1

CUL

D3

CB2

AE1

CUL

D3

CB2

AE1

CUL

CFixed=2

DFixed=3

EFixed=1

4. Each node periodically consults its CUL (relatively long period). If its fixed channel is detected to be too crowded, it has a probability p to change its fixed channel to a less crowded channel.

53

Distributed Algorithm

No more change!

AFixed=1

D3

CB2

AE1

CUL

BFixed=2D3

CB2

AE1

CUL

D3

CB2

AE1

CUL

D3

CB2

AE1

CUL

D3

CB2

AE1

CUL

CFixed=2

DFixed=3

EFixed=1

Threshold to determinate whenever a channel is too crowded:

neighbors

channels

54

Scheduling Rules for Interfaces

Each node maintains a separate queue for each channel.

When a packet arrives, if the sender has the same fixed c

hannel as the receiver, enqueue to the fixed channel.

otherwise, enqueue to the switchable channel.

The use of each switchable channel is bounded by two parameters BurstLengh and MaxSwitchTime.

For broadcast, add a packet to each queue.

Queue

1

2

3

N

Fixed

Switchable

S

D1

D2

D3

Fixed=1

Fixed=3

Fixed=N

55

Summary

Adv.: a simple rule to use multiple interfaces and

multiple channels Disadv.

If a node always receives but doesn’t send, the fixed interface may be overloaded while the switchable interface is always idle.

56

Review 4: A multi-interface routing protocol

Richard Draves, Jitendra Padhye, and Brian Zill, “Routing in Multi- Radio, Multi-Hop Wireless Mesh Networks,” in ACM Mobicom, 2004.

57

Route Selection Metric

S

A B

C

D

10ms

10ms

10ms

30ms 40ms

E F

10ms10ms

10ms

Ch2

Which is the best routing path?

longer delay, but shortest?

using multiple channel?

less delay, but using one channel?

58

How to Select a Good Path

A good routing protocol should take the loss rate, the bandwidth of a link, and channel diversity into account. For a multi-channel MANET, the path metric should

explicitly account for the interference among links that operate on the same channel.

Multi-Radio Link-Quality Source Routing a combination of the LQSR protocol with a new metric

that we call WCETT (Weighted Cumulative Expected Transmission Time).

59

Original WCETT

Sum of expected time to successfully transmit a packet on the route

1

n

org ii

WCETT ETT

10ms

15ms

5ms

5ms

20ms

WCETT=10+15+5+5+20=55Note:值愈小愈好

Example:

60

WCETT by Channel Diversity

Xj: sum of transmission times of hops on channel j

1maxch diversity j k jWCETT X

10msCh1 5ms

Ch1

5msCh3

20msCh2

X1 = 10+5 = 15X2 = 15+20+10 = 45X3 = 5WCETT = max(X1,X2,X3)

= max(15,45,5) =45

Example:15msCh2

10msCh2

Xj = Σ ETTi 1 j k≦ ≦Hop i is on channel j

61

Proposed: Combined WCETT

(1 ) org ch diversityWCETT WCETT WCETT

Example:S1:

2:3:4:

S

S

S

D

D

D

D

ETT=10

ETT=10

ETT=9

ETT=2

ETT=5

ETT=5

ETT=7

ETT=2

ETT=12

ETT=12

ETT=11

ETT=2

ETT=6

ETT=7

ETT=2

Ch1 Ch2

Path Sum Max WCETT (β=0.9) WCETT (β=0.1)

1 27 22 22.5 26.5

2 33 22 23.1 31.9

3 34 20 21.4 32.6

4 8 8 8 8

62

Conclusions

Layer 2: Channel Assignment a centralized greedy Algorithm a distributed single-interface protocol

hopping + seed receiver-based channel switch

a distributed multi-interface protocol fixed and switchable interfaces using switchable to adapt to fixed channel

Layer 3: Multi-Channel Routing a new metric WCETT with channel diversity

63

References

1. Ashish Raniwala, Kartik Gopalan, and Tzi-cker Chiueh, “Centralized Channel Assignment and Routing Algorithms for Multi-Channel Wireless Mesh Networks,” Mobile Computing and Communications Review, vol. 8, no. 2, pp. 50–65, April 2004.

2. Paramvir Bahl, Ranveer Chandra, and John Dunagan, “SSCH: Slotted Seeded Channel Hopping for Capacity Improvement in IEEE 802.11 Ad-Hoc Wireless Networks,” in ACM Mobicom, 2004.

3. Pradeep Kyasanur and Nitin H. Vaidya,  "Routing and Interface Assignment in Multi-Channel Multi-Interface Wireless Networks",  Technical Report, October 2004 (A version will appear in WCNC 2005)

4. Richard Draves, Jitendra Padhye, and Brian Zill, “Routing in Multi- Radio, Multi-Hop Wireless Mesh Networks,” in ACM Mobicom, 2004.

5. Shih-Lin Wu, Chih-Yu Lin, Yu-Chee Tseng, and Jang-Ping Sheu, “A New Multi-Channel MAC Protocol with On-Demand Channel Assignment for Multi-Hop Mobile Ad Hoc Networks,” in International Symposium on Parallel Architectures, Algorithms and Networks (ISPAN), 2000.