Multi-Channel Protocols for Wireless Mesh Networks Yu-Chee Tseng CS/NCTU 1 Outline Introduction to MANET Review of 3 Multi-channel Protocols Summary 2 Wireless Mesh Network 3 Observation: Multi-channel MANET IEEE 802.11 provides several nonoverlapping channels which could be used simultaneously within a neighborhood. Ex: (Assume Channel Capacity = 100Mbps) Can simultaneously operate Interference A A 44 /50 Ch1 Expected Load C B 43/ 50 Ch1 Goodput = 87Mbps Single-Channel 81/100 B Ch1 Link Capacity =100/2 C 84/100 Ch2 Goodput = 165Mbps Multi-Channel 4 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. 5 A Multi-channel Example 6 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 7 Review 1: A Centralized Greedy Solution Ashish Raniwala, Kartik Gopalan, and Tzicker Chiueh, “Centralized Channel Assignment and Routing Algorithms for MultiChannel Wireless Mesh Networks,” Mobile Computing and Communications Review, vol. 8, no. 2, pp. 50–65, April 2004. 8 Problem Statement Input: expected load on each link Output: assignment of channels to network interfaces Goal: to reduce interference between neighboring interfaces 9 An Example Number of channels: 4 (1,2,3,4) Number of interface per node: 2 Per Channel Capacity: 100 units Internet B 30 A Definition: degree of interference C 40 G 50 15 D The sum of expected load that a link may experience on a particular channel in its interference region. 20 E 25 F expected load on this link 10 Example of Degree of Interference Degree of Interference for link E-F on different channels Internet Ch1 50+25=75 Ch2 25+20+15=60 B Ch3 25 Ch4 25 30 Ch3 C 15 A 40 Ch1 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 F G Ch2 D E 50 Ch1 20 Ch2 25 F Ch1 coverage of node E 11 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. 12 A Running Example Number of channels: 4 (1,2,3,4) Number of interface per node: 2 Per Channel Capacity: 100 units Internet B 30 A C 40 First: sort links according to their link loads (in a decreasing order) G 50 15 D 20 E 25 D-G A-C B-C E-F D-E C-D 50 40 30 25 20 15 F 13 Connect (D,G) Channel List D-G A-C B-C E-F D-E C-D 50 40 30 25 20 15 Degree of Interference A Ch1 050 B Ch2 0 C Ch3 0 D 1 Internet B A G Ch4 0 C E D 50 Ch1 F G 1 E F 14 Connect (A,C) Channel List A 2 B D-G A-C B-C E-F D-E C-D 50 40 30 25 20 15 Degree of Interference Internet Ch1 50 B Ch2 040 C 2 Ch3 0 D 1 Ch4 0 E A G 40 C Ch2 D 50 Ch1 F G 1 E F 15 Connect (B,C) Channel List D-G A-C B-C E-F D-E C-D 50 40 30 25 20 15 Degree of Interference Internet A 2 Ch1 50 B 3 Ch2 40 B C 2,3 Ch3 030 D 1 Ch4 0 30 Ch3 C E A 40 Ch2 G D 50 Ch1 F G 1 E F 16 Connect (E,F) Channel List D-G A-C B-C E-F D-E C-D 50 40 30 25 20 15 Degree of Interference Internet A 2 Ch1 50 B 3 Ch2 0 B C 2,3 Ch3 025 D 1 Ch4 0 30 Ch3 C E 3 F 3 A 40 Ch2 G 1 G D 50 Ch1 E 25 F Ch3 17 Connect (D,E) Channel List D-G A-C B-C E-F D-E C-D 50 40 30 25 20 15 Degree of Interference Internet A 2 Ch1 50 B 3 Ch2 40 B C 2,3 Ch3 30+25 D 1,4 Ch4 020 30 Ch3 C E 3,4 F 3 A 40 Ch2 G 1 G D E 50 Ch1 20 Ch4 25 F Ch3 18 Connect (C,D) Channel List D-G A-C B-C E-F D-E C-D 50 40 30 25 20 15 Degree of Interference A 2 Ch1 50 B 3 Ch2 40 C 2,3 Ch3 55 B D 1,4 Ch4 20 E 3,4 F 3 30 Ch3 C 15 G 1 Internet A 40 Ch2 Switch from ch. to ch. E interference of new ch. 12 13 21 24 31 34 42 43 90 105 90 ?? 60 80 50 60 G D 50 Ch1 20 Ch4 25 F Ch3 75 Explanation next page19 Connect (C,D) Channel List D-G A-C B-C E-F D-E C-D 50 40 30 25 20 15 Degree of Interference Internet A 2 Ch1 50 B 4 Ch2 40 C 2,4 Ch3 5525 D 1,4 Ch4 2050 E 3,4 F 3 B A switch ch 3 to ch 4 (不含本身的15) G 1 E 12 13 21 24 31 34 42 43 90 105 90 30 G Ch3Ch4 50 40 C 15 Ch1 Ch2 ?? D 60 80 50 60 20 Ch4 25 F Ch3 75 20 Connect (C,D) Channel List D-G A-C B-C E-F D-E C-D 50 40 30 25 20 15 Degree of Interference Internet A 2 Ch1 50 B 4 Ch2 40 B C 2,4 Ch3 25 D 1,4 Ch4 5065 30 Ch4 C 15 E 3,4 F 3 A 40 Ch2 Ch4 D G 1 E 12 13 21 24 31 34 42 43 90 105 90 60 80 50 60 G 50 Ch1 20 Ch4 25 F Ch3 75 21 select the one with min. int. Final Result Channel List A 2 B 4 C 2,4 D 1,4 E 3,4 F 3 G 1 Internet B A 40 Ch2 30 Ch4 C 15 G Ch4 D E 50 Ch1 20 Ch4 25 F Ch3 22 A Short Summary Adv.: quite simple Disadv. need initial expected load on every link 2. centralized algorithm (must know network topology) 3. static network topology 4. static traffic load 1. 23 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. 24 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. 25 原理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. 26 Channel Schedule Example 1 0 2 (channel,seed) 1 (channel,seed) 2 (mod 3) (channel,seed) 1 (channel,seed) 2 (mod 3) 27 Mathematical Properties For two nodes with an identical seed if they have identical channel: if they have different channels: these two nodes are always synchronized. 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. 28 原理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 (channel-A,seed-A) (channel-B,seed-B) A (channel-B, seed-B) B 29 原理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 B A C 30 A Naive Synchronization 31 Solution (現有AB,加入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. B to sync. with C 4 (channel,seed) (x1,a1) (x2,a2) (x3,a3) (x4,a4) Case 2: all slots are receiving, partial sync. A B C B A C A B C A C 32 原理4: De-synchronization To reduce interference, if too many nodes use the same (channel, seed) is the same virtual channel, desynchronize some of them. simply choose a new (channel, seed) at a node’s own decision may choose to de-sync. Example: 3 pairs use the same (channel, seed) in the 2nd virtual channel (0,3) (0,1) (2,1) (1,2) (0,1) (0,2) (1,0) (0,1) (1,3) (2,2) (0,1) (1,1) (1,4) (0,1) (3,1) (0,2) (0,1) (2,3) 33 Short Summary Adv. 1. 2. an interesting partial synchronization technique an interesting de-synchronization technique Disadv. 1. 2. need global time synchronization only designed for one interface 34 Review 3: (MCR) A multi-interface channel assignment protocol Pradeep Kyasanur and Nitin H. Vaidya, "Routing and Interface Assignment in Multi-Channel MultiInterface Wireless Networks", WCNC 2005. 35 Main Idea Each node has multiple interfaces. Fixed Interface: assigned to some fixed channel for long intervals of time Switchable Interface: dynamically assigned to channels over short time scales Transmission Rules: receiver-based a sender adapts to a receiver by changing its switchable interface to the receiver’s fixed interface 36 Example 2 interfaces per node 1 fixed, 1 switchable 3 channels are available. Routing Path: ABC Fixed = 1 Fixed = 2 Fixed = 3 A B C Initially: switchable = 3 Step 1: switchable = 2 Step 2: switchable = 1 switchable = 3 switchable = 2 37 Fixed Interface assignment Goal: to ensure that fixed interfaces of nodes in a neighborhood 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 38 Distributed Algorithm 1. Initially, each node chooses a random channel as its fixed interface. Example: All nodes are neighbors (3 channels) CUL 1 B 3 1 A 1 B Fixed=1 2 CUL CUL A Fixed=1 D Fixed=1 C Fixed=1 CUL 2 1 3 2 3 C D 2 3 E Fixed=1 CUL 1 E 2 3 39 Distributed Algorithm 2. Periodically, each node broadcasts on every channel its current fixed channel. Example: “Hello” CUL 1 B 1 B Fixed=1 2 3 “Hello” CUL 1 A CUL A Fixed=1 D Fixed=1 2 3 C “Hello” E Fixed=1 Fixed=1 CUL 2 1 3 2 3 C D CUL 1 E 2 3 40 Distributed Algorithm 3. On receiving a hello packet, a node updates its NeighborTable and ChannelUsageList. Example: CUL 1 ABCDE 3 1 ABCDE 1 B Fixed=1 2 CUL CUL A Fixed=1 D Fixed=1 C Fixed=1 CUL 2 1 3 2 3 ABCDE ABCDE 2 3 E Fixed=1 CUL 1 ABCDE 2 3 41 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: CUL 1 ABCDE 3 1 ABCDE 1 B Fixed=1 2 CUL CUL A Fixed=1 D Fixed=1 C Fixed=1 CUL 2 1 3 2 3 ABCDE ABCDE 2 3 E Fixed=1 CUL 1 ABCDE 2 3 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: C decides to change to channel 2 CUL 1 ABCDE 3 1 ABCDE 1 B Fixed=1 2 CUL CUL A Fixed=1 D Fixed=1 ABCDE 2 3 C Change E Fixed=1 Fixed=1 CUL 2 1 3 2 3 ABCDE CUL 1 ABCDE 2 3 43 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: C broadcasts to neighbor CUL 1 CUL ABCDE 1 B “Hello” D Fixed=1 Fixed=1 2 3 “Hello” CUL 1 ABCDE A Fixed=1 ABCDE 2 3 C “Hello” E Fixed=2 Fixed=1 CUL CUL 1 2 1 ABDE 2 3 2 C 3 3 ABCDE 44 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: after broadcast CUL 1 ABDE 2 C 3 CUL 1 ABDE 2 C 3 A Fixed=1 CUL B Fixed=1 D Fixed=1 C Fixed=2 CUL 1 ABDE 2 C 3 E Fixed=1 CUL 1 ABDE C 1 ABDE 2 2 C 3 3 45 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: E checks its CUL, but does not change CUL 1 ABDE 2 C 3 CUL 1 ABDE 2 C 3 A Fixed=1 CUL B Fixed=1 D Fixed=1 C Fixed=2 CUL 1 ABDE 2 C 3 1 ABDE 2 C 3 E Fixed=1 Nothing CUL 1 ABDE 2 C 3 46 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: D changes to channel 1 CUL 1 ABDE 2 C 3 CUL 1 ABDE 2 C 3 A Fixed=1 Change B Fixed=1 D Fixed=1 C Fixed=2 CUL CUL 1 ABDE 2 C 3 E Fixed=1 CUL 1 ABDE C 1 ABDE 2 2 C 3 3 47 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: D broadcasts CUL 1 ABDE 2 C 3 CUL 1 ABDE 2 C 3 A Fixed=1 CUL “Hello” B Fixed=1 D Fixed=3 1 ABE 2 C 3 D C “Hello” E Fixed=2 Fixed=1 CUL CUL 1 ABDE C 1 ABDE 2 2 C 3 3 48 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: after D’s broadcast CUL 1 ABE 2 C 3 D CUL A Fixed=1 CUL B Fixed=1 D Fixed=3 C Fixed=2 CUL 1 ABE 2 C 3 D E Fixed=1 CUL 1 ABE ABE 2 C 2 C 3 D 3 D 1 ABE 2 C 1 3 D 49 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: B changes to channel 2 CUL 1 ABE 2 C 3 D CUL A Fixed=1 CUL Change B Fixed=1 D Fixed=3 C Fixed=2 CUL 1 ABE 2 C 3 D E Fixed=1 CUL 1 ABE ABE 2 C 2 C 3 D 3 D 1 ABE 2 C 1 3 D 50 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: B’s broadcast CUL 1 AE 2 CB 3 D CUL “Hello” B Fixed=2 “Hello” CUL A Fixed=1 D Fixed=3 C Fixed=2 CUL 1 ABE 2 C 3 D E Fixed=1 CUL 1 ABE ABE 2 C 2 C 3 D 3 D 1 ABE 2 C 1 3 D 51 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: after B’s broadcast CUL CUL 1 AE 2 CB 3 D A Fixed=1 CUL B Fixed=2 D Fixed=3 C Fixed=2 CUL 1 AE 2 CB 3 D E Fixed=1 CUL 1 AE AE 2 CB 2 CB 3 D 3 D 1 AE 2 CB 1 3 D 52 Distributed Algorithm Threshold to determinate whenever a channel is too crowded: neighbors channels No more change! CUL CUL 1 AE 2 CB 3 D A Fixed=1 CUL B Fixed=2 D Fixed=3 C Fixed=2 CUL 1 AE 2 CB 3 D E Fixed=1 CUL 1 AE AE 2 CB 2 CB 3 D 3 D 1 AE 2 CB 1 3 D 53 Scheduling Rules for Interfaces Each node maintains a separate queue for each channel. When a packet arrives, Fixed 2 Switchable 3 N Fixed=1 The use of each switchable channel is bounded by two parameters BurstLengh and MaxSwitchTime. 1 … if the sender has the same fixed channel as the receiver, enqueue to the fixed channel. otherwise, enqueue to the switchable channel. Queue For broadcast, add a packet to each queue. D1 Fixed=3 D2 S D3 Fixed=N 54 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. 55 Review 4: A multi-interface routing protocol Richard Draves, Jitendra Padhye, and Brian Zill, “Routing in MultiRadio, Multi-Hop Wireless Mesh Networks,” in ACM Mobicom, 2004. 56 Route Selection Metric Which is the best routing path? 10ms A B 10ms S 40ms 30ms less delay, but using one channel? 10ms D C 10ms 10ms 10ms E Ch2 longer delay, but shortest? F using multiple channel? 57 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). 58 Original WCETT Sum of expected time to successfully transmit a packet on the route n WCETTorg ETTi i 1 Note:值愈小愈好 Example: 20ms 15ms 5ms 10ms 5ms WCETT=10+15+5+5+20=55 59 WCETT by Channel Diversity Xj: sum of transmission times of hops on channel j Xj =Hop i Σ ETT i is on channel j WCETTch diversity max1 j k X j Example: 20ms Ch2 15ms Ch2 10ms Ch1 5ms Ch3 5ms Ch1 10ms Ch2 1≦j≦k X1 = 10+5 = 15 X2 = 15+20+10 = 45 X3 = 5 WCETT = max(X1,X2,X3) = max(15,45,5) =45 60 Proposed: Combined WCETT WCETT (1 ) WCETTorg WCETTch diversity Example: 1: 2: 3: 4: S S S S ETT=10 ETT=5 ETT=12 ETT=10 ETT=5 ETT=12 ETT=6 ETT=9 ETT=7 ETT=11 ETT=7 ETT=2 ETT=2 ETT=2 ETT=2 Ch1 D Ch2 D D D 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 61 Conclusions Layer 2: Channel Assignment a centralized greedy Algorithm a distributed single-interface protocol a distributed multi-interface protocol hopping + seed receiver-based channel switch fixed and switchable interfaces using switchable to adapt to fixed channel Layer 3: Multi-Channel Routing a new metric WCETT with channel diversity 62 References 1. 2. 3. 4. 5. 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. Paramvir Bahl, Ranveer Chandra, and John Dunagan, “SSCH: Slotted Seeded Channel Hopping for Capacity Improvement in IEEE 802.11 AdHoc Wireless Networks,” in ACM Mobicom, 2004. 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) Richard Draves, Jitendra Padhye, and Brian Zill, “Routing in Multi- Radio, Multi-Hop Wireless Mesh Networks,” in ACM Mobicom, 2004. 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. 63
© Copyright 2026 Paperzz