Email: {hschiu,kyeung,kslui}@eee.hku.hk. Abstract â With the enhancement in channel bandwidth and mobile devices, more broadcast applications will be ...
Maximizing Broadcast Load in Multi-Channel Multi-Interface Wireless Mesh Networks Hon Sun Chiu, Kwan L. Yeung and King-Shan Lui Department of Electrical and Electronic Engineering The University of Hong Kong, Hong Kong, PRC. Tel: (852) 2857-8493 Fax: (852) 2559-8738 Email: {hschiu,kyeung,kslui}@eee.hku.hk Abstract – With the enhancement in channel bandwidth and mobile devices, more broadcast applications will be deployed in the wireless mesh networks (WMNs). While traditional approaches focus on finding a single broadcast tree in the network, we aim at maximizing the number of broadcast trees/calls that can be carried. In this paper, we first formulate an Integer Linear Program (ILP) for solving the minimum-channel-utilization broadcast tree problem in multi-channel multi-interface WMNs. In our ILP, channel assignment, routing, and scheduling are jointly considered for finding a broadcast tree that can minimize the maximum channel utilization. Intuitively, this balances all the accepted traffic load in the network, which in turn maximizes the chance of accepting future calls. However, solving ILP usually takes time and is less suitable for a system with real-time call arrival. An efficient heuristic algorithm is then designed. Our simulation results show that the proposed heuristic gives real-time response and provides comparable good performance as the ILP approach. Keywords – multiple channels, multiple interfaces, wireless mesh network, broadcast tree.
I. INTRODUCTION In recent years, wireless mesh networks (WMNs) become more and more popular, due to its inexpensive and easy to deploy characteristics. In addition to the increase in the bandwidth of wireless channels and the computational power of mobile devices, broadcast applications (e.g. IPTV) will contribute a large portion of traffic in WMNs in the near future. The channel resources should be allocated judicially in order to accommodate parallel broadcast sessions as much as possible. Without loss of generality, we regard a WMN as a two-tier network: the top-tier consists of static mesh routers connecting with each other wirelessly, and the second-tier consists of mobile hosts communicating to and from their respective mesh routers. Throughout the paper, we only focus on broadcasting among the top-tier mesh routers, whereas second-tier mobile hosts are free to subscribe to any broadcast sessions. Unlike wired networks, the wireless medium is broadcast in nature, in which all neighbors can receive the same copy of data with the source node only transmitting once. This is known as wireless broadcast advantage (WBA) [1]. To further increase the performance, each mesh router in WMN can be equipped with multiple network interface cards (NICs), and have simultaneous transmissions over multiple orthogonal channels [2]. Two neighbors can communicate with each other as long as one of their NICs is tuned to the same channel. In the rich literature, the protocols proposed for solving the wireless broadcast problem focus on maximizing the network lifetime [3-4] of ad hoc networks, minimizing the broadcast latency using multiple transmission rates [5-7], maximizing the tree bandwidth [8, 9], and finding multiple trees for a single multiple description video multicast session [10, 11]. Indeed, they only consider establishing a single broadcast session in the
network. In this paper, we consider the problem of maximizing the number of on-going broadcast sessions in a multi-channel multi-interface WMN. Each session/call is assumed to arrive sequentially and with a specific root/source and bandwidth requirement. To the best of our knowledge, the only related work is that in [12]. While establishing a tree for a broadcast call request, the heuristic algorithm [12] exploits the link-rate diversity and tries to maximize the residual channel bandwidth in the network. Although exploiting link-rate diversity is an interesting topic, their work only applies to WMNs with a single shared channel, which severely limits the network capacity. In this paper, we first develop a mathematical model based on Integer Linear Programming (ILP) to find a broadcast tree that minimizes the maximum channel utilization (to be defined) in the network. The associated problem is called the minimumchannel-utilization broadcast tree problem. Intuitively, this is equivalent to balance the traffic load in the network, which in turn maximizes the chance of accepting future calls. In our ILP, we jointly consider channel assignment, routing and scheduling. Although ILP is frequently used in solving the joint channel assignment and routing problem of multi-channel WMNs [13-15], to the best of our knowledge, we present the first effort in solving the minimum-channel-utilization broadcast tree problem. For WMNs with real-time call arrival, solving ILP takes time. A heuristic algorithm is then designed to provide real-time response. The rest of the paper is organized as follows. We introduce the system model and define the problem of minimum-channelutilization broadcast tree in the next section. Then the ILP formulation for solving the minimum-channel-utilization broadcast tree problem is presented in Section III. In Section IV, we develop a heuristic algorithm for efficient handling of real-time calls. Its performance is compared with the ILP solution in Section V and we conclude the paper in Section VI. II. SYSTEM MODEL AND PROBLEM STATEMENT We consider a wireless mesh network (WMN) with each node equipped with multiple network interface cards (NICs), where the number of NICs a node has can be different. We assume a schedule-based MAC protocol, and conflict-free transmission is ensured by requiring interfered links be active at different time slots. NICs can use multiple orthogonal channels. The channel switching latency is assumed to be small and thus ignored. The transmission range and interference range are assumed to be fixed and known in advance. Although we do not consider multi-rate links [12], we treat it as an interesting future work. A. Network model
978-1-4244-2324-8/08/$25.00 © 2008 IEEE. This full text paper was peer reviewed at the direction of IEEE Communications Society subject matter experts for publication in the IEEE "GLOBECOM" 2008 proceedings.
We model the WMN by a connectivity graph G = (V, E), where V and E represent the set of static mesh routers/nodes and the set of unidirectional logical links, respectively. For any two nodes u, v ∈ V, there is a logical (directed) link (u, v) ∈ E if u and v are within the transmission range of each other. We assume symmetric connectivity, such that link (u, v) ∈ E if and only if (v, u) ∈ E. Each node u ∈ V is equipped with tu halfduplex NICs. The set of orthogonal channels available in the network is denoted by C. B. Interference model We adopt the receiver conflict avoidance interference model [16], which only requires the receiver to be clear for receiving. Let Iv be the set of nodes within the interference range of node v. A data transmission from node u to node v, i.e. data transmission on link (u, v), is interfered by the data transmission on link (a, b) if and only if a ∈ Iv. C. Problem statement Without loss of generality, we consider a WMN with some on-going calls in the network. The load on a link (u, v) using channel k is denoted by Yuvk , the total time fraction (of a time frame) that channel k on this link is active (for carrying on-going calls). Then, the load at node u on channel k is denoted by Buk , the total time fraction that node u transmits on channel k to some neighboring nodes. Note that in wireless networks, channel utilization differs depending on the concerned node’s location. Definition 1: The utilization of channel k as observed by node v is defined as the total time fractions assigned to all nodes within node v’s interference range for transmission using channel k. k Let n mv denote the interference (time fraction) caused by node m on channel k as observed by node v. The maximum channel utilization in the network is defined as
⎫ ⎪⎧ k ⎪ x = max ⎨ ∑ nmv ⎬. ∀v∈V , ∀k ∈C ⎪⎩ m∈Iv ⎪⎭ When a new broadcast call, rooted at node A and with bandwidth requirement FT, arrives, we aim at finding a minimum-channel-utilization broadcast tree for carrying the new call. Formally, the problem is to find a broadcast tree for carrying the new call such that all on-going calls are not disrupted and the maximum channel utilization x in the network (after admitting the new call) is minimized. Intuitively, minimizing the maximum channel utilization balances the traffic load in the network, and provides the maximum flexibility for future calls. The broadcast load in the network can thus be maximized. III. MATHEMATICAL FORMULATION OF MINIMUM-CHANNELUTILIZATION BROADCAST TREE PROBLEM In this section, we formulate the minimum-channelutilization broadcast tree problem by Integer Linear Programming (ILP), where a set of integer/linear constraints are used to define the region of feasible solutions to the problem. The variables used are summarized below. tv : number of NICs at node v ru : equals to 1 if node u is a root, 0 otherwise euv : equals to 1 if link (u, v) is on tree, 0 otherwise
su : voltage value assigned to node u (for loop prevention) f uvk : time fraction required on link (u, v) for carrying the new call on channel k k n mv : interference caused by node m as observed by node v on channel k Yuvk : existing total time fraction for link (u, v) to be active on channel k k : existing total time fraction for node u to transmit on Bu channel k FT : bandwidth required (in time fraction) by the new call A : denotes the root/source of the new broadcast tree α : a small constant (e.g. 0.0001) Then, the ILP for solving the minimum-channel-utilization broadcast tree is given by: minimize {x} (1) subject to: (2) ∑ ru = 1 u∈V
∑
( u , v )∈E
rA = 1,
A ∈V
(3)
euv = 1 − rv ,
∀v ∈ V
(4)
∀ ( u, v ) ∈ E
(5)
euv + evu ≤ 1, sv − su ≥ α euv − (1 − euv ) , f uvk ≤ euv ,
∑f
k uv
≥ euv ⋅ FT ,
k ∈C
∀ ( u, v ) ∈ E
(6)
∀ ( u, v ) ∈ E , ∀k ∈ C
(7)
∀ ( u, v ) ∈ E
(8)
f uvk − fuwk ≤ 2 − euv − euw , ∀ ( u , v ) , ( u, w ) ∈ E , ∀k ∈ C
∑ ∑ (f
k ∈C ( u , v )∈E
k uv
k uv
+Y
)+ ∑( f
k vw
k v
+B
k ∈C
) ≤ t , ∀v ∈V ,∀ ( v, w) ∈ E (10) v
nmk v ≥ f mnk + Bmk , ∀v ∈ V , ∀m ∈ I v , ∀k ∈ C , ( m, n ) ∈ E k uv
k u
f +B +
∑
k mv
n
m∈I v , m ≠ u
x≥
∑n
k mv
,
≤ 1,
(9)
(11)
∀ ( u , v ) ∈ E , ∀k ∈ C
(12)
∀v ∈ V , ∀k ∈ C
(13)
m∈I v
The objective (1) is to minimize x, the maximum channel utilization in the network as identified by constraint (13). Constraints (2)-(6) ensure that the resulting topology is a broadcast tree, where constraints (2) and (3) specify that the tree has only one root (at node A), constraint (4) assigns an ingress link to every non-root node, constraint (5) indicates that the tree links are unidirectional, and constraint (6) prevents the formation of loop in the network (by forcing the sending node has a smaller voltage value than the receiving node). To carry the new call, time fractions on different channels are assigned to tree links according to constraints (7)-(12). Constraints (7) and (8) ensure that time fractions are assigned to the tree links only, with the total amount not less than the requested time fraction FT. Constraint (9) describes the property of wireless broadcast advantage (WBA), such that all outgoing tree links of a node should be assigned with the same time fractions. Constraint (10) is the NIC constraint, such that the NICs at a node are not oversubscribed. Constraint (11) defines the interference generated by node m on channel k as observed by node v. Note that due to WBA, all outgoing links
978-1-4244-2324-8/08/$25.00 © 2008 IEEE. This full text paper was peer reviewed at the direction of IEEE Communications Society subject matter experts for publication in the IEEE "GLOBECOM" 2008 proceedings.
⎛ ⎞ k f uvk M + ⎜⎜ Buk + ∑ nmv ⎟⎟ M ≤ M , ∀ ( u, v ) ∈ E . (14) m∈Iv , m ≠ u ⎝ ⎠ The first term on the left hand side of (14) gives the time slots required for node u to transmit to node v using channel k, while the second term represents the original utilization of channel k. That is, the total number of time slots required by the new transmission and all interfering transmissions (as seen by node v) is at most M, i.e. the number of time slots available within a frame duration. Thus the time fractions are schedulable. ■ When a broadcast call arrives, the above ILP is solved. If a broadcast tree is found, the call is accepted. The running variables Yuvk and Buk are then updated to reflect that the call is accepted. Otherwise, the call is rejected. IV. HEURISTIC ALGORITHM Solving the ILP in Section III can be time consuming. It is thus not suitable for real-time call admission. To this end, we design a heuristic algorithm in this section for solving the minimum-channel-utilization broadcast tree problem. The algorithm runs as follows. When a broadcast call arrives at node A (then A is the root of the tree) with a bandwidth request FT, a simple screening test is performed to determine if any node (not link) in the network will be oversubscribed. If yes, the call is rejected right away. Otherwise, a broadcast tree rooted at A is to be built by adding one forwarding node to the tree at a time. Starting from root A, each forwarding node is selected such that its transmission satisfies the NIC constraint (10), the interference constraint (12), and is deemed as most efficient. The efficiency of a transmission is heuristically measured by (15), and is explained below. The efficiency of a transmission is determined by its potential in reducing the channel utilization in the network. From a local perspective, a transmission using the least resources in the affected area is preferred. On the other hand,
C Ri Ri
V
A Ri B
Ri = Interference range Fig. 1. Region affected by node v’s transmission
Added time fraction Utilization
are treated as a single transmission. Constraint (12) is the interference constraint, which states the sufficient condition for the assigned time fractions to be schedulable. Theorem 1: The required time fractions must be schedulable if the sufficient condition (12) is not violated. Proof: A frame duration M can always be found such that all f uvk M are integers, which also gives the number of time slots that link (u, v) required. From constraint (12), we have for any channel k,
Current utilization
…… Channels Fig. 2. Strategy of adding time fraction for minimum channel utilization
from a global perspective, due to WBA selecting a transmission that covers the most uncovered (not-yet-on-tree) nodes minimizes the total number of transmissions required to cover all nodes in the network, consequently minimizes the global channel utilization. From Definition 1, different nodes may observe different channel utilizations. As illustrated in Fig. 1, when assigning a time fraction for node v to transmit at channel k, the channel utilizations of k, as seen by nodes A, B and C, will be affected/ increased. To accept a call, we have to ensure that the channel utilization, as seen by any node within the interference range of v, to be less than the normalized channel capacity 1. Let the current maximum utilization of channel k be Uk (as seen by some node within node v’s Ri region), then the efficiency of node v’s transmission, or EFFv, is given by EFFv =
# to-be-covered nodes . ( FT + ∑ U k )
(15)
k ∈C
The denominator in (15) is the local channel utilization if node v is selected as a forwarding node. The smaller its value, the higher the efficiency. On the other hand, the efficiency of a transmission increases with the number of to-be-covered nodes in the numerator of (15). Let Z be the set of covered nodes. At the beginning, Z only contains the root A. In each round of iteration, a forwarding node with the highest efficiency is added to Z. If no such node can be found, the call is rejected. When a forwarding node is identified, it is assigned with time fraction for transmission in certain channel(s). The assignment strategy is illustrated in Fig. 2, where the time fraction allocated for this transmission is distributed among all available channels such that the resulting utilizations of all channels are equal. Hence, the time fraction assigned to channel k, or TFk, is given by FT + ∑ U k k ∈C (16) TFk = − Uk . C All newly covered nodes are then added to Z, and the channel and NIC utilization are updated according to the allocated TFk. The algorithm continues to find the next forwarding node, until all nodes are covered. The pseudo code of the algorithm is detailed in Fig. 3. IV. PERFORMANCE EVALUATIONS In this section, we evaluate the performance of our heuristic algorithm with different network settings. We use grid topology with 4x5 nodes, where the grid length is set to 200m. The transmission range and interference range are set to 250m and 500m, respectively. The number of orthogonal channels and the number of NICs per node vary as specified in the simulation. In
978-1-4244-2324-8/08/$25.00 © 2008 IEEE. This full text paper was peer reviewed at the direction of IEEE Communications Society subject matter experts for publication in the IEEE "GLOBECOM" 2008 proceedings.
for v ∈ V do /* Pre-check */ if (no available NICs to receive FT) then return T = φ ; /* call rejected */ end end while ( V \ Z ≠ φ ) do /* Construct Tree */ candidate ≠ φ ; for v ∈ Z do if (constraints (10) and (12) are satisfied) then calculate EFFv; candidate = candidate ∪ v; end end
Amax = max v∈ candidate EFFv ;
1
Acceptance rate
Broadcast Tree Heuristic Algorithm Input: G(V, E), channel C, on-going calls, new call={source s, load FT} Output: Broadcast tree T root at s for load FT. Z = {s}, T = φ ;
0.8 0.6 0.4
3 channels 6 channels
0.2
9 channels 12 channels
0 0
50
/* most efficient node */
1
Acceptance rate
0.8 0.6
1 NIC 2 NICs 3 NICs 4 NICs 5 NICs Random
0.4 0.2 0 0
Fig. 3. Broadcast tree heuristic algorithm
each simulation run, 200 broadcast requests arrive sequentially, each with a normalized bandwidth requirement of 0.01 (i.e. 60kbps over a 6Mbps network) and a randomly selected root/source. Note that the evaluation method in [12] assumes that all requests following a rejected request will also be rejected, which may underestimate the performance. We use acceptance rate as our performance measure, where each data point is obtained by averaging over 20 independent runs. We first compare the performance of our heuristic algorithm with the ILP approach, which is solved by CPLEX11 [17]. Since solving the ILP can be time consuming (e.g. it takes about 40 minutes to find one tree with 12 channels and 3 NICs per node in the 4x5 grid network), we only perform the comparison using 3 channels and 3 NICs per node. The results are shown in Fig. 4. We can see that although the heuristic algorithm accepts slightly less number of calls/trees than the ILP, it is more efficient and only takes a few seconds to handle all the 200 requests. The good performance of the heuristic is
Acceptance rate
1 0.8 0.6 0.4 Heuristic ILP
0 0
50
200
Fig. 5. Acceptance rate with 3 NICs per node and varying number of channels
if Amax = φ then return T = φ ; /* call rejected */ else for k ∈ C do allocate time fraction TFk end T = T ∪ (Amax, {all v ∉ Z covered by Amax}) Z = Z ∪ {all v ∉ Z covered by Amax}; update channel and NIC utilization; end end return T;
0.2
100 150 Number of requests arrived
100 150 Number of requests arrived
Fig. 4. Comparison of heuristic algorithm with ILP approach
200
50
100 150 Number of requests arrived
200
Fig. 6. Acceptance rate with 12 channels and varying number of NICs per node
mainly due to the judiciously designed transmission efficiency in (15), which takes both local and global views in minimizing channel utilization. We then focus on the performance of the heuristic algorithm. We keep 3 NICs per node and vary the number of orthogonal channels. From Fig. 5, we can see that more orthogonal channels provide higher network capacity. Next we fix the number of channels at 12, and vary the number of NICs at each node. The results are shown in Fig. 6, where “Random” stands for randomly equipping 1 to 5 NICs at each node. From Fig. 6, we can see that the acceptance rate increases with the number of NICs, but this trend stops when there are more than 3 NICs per node. This is the point where the bottleneck of the network capacity shifts from NICs to channels. When there are less than 3 NICs, although there is residual channel capacity, no new call can be accepted because all NICs at a node are fully subscribed. When there are more (> 3) NICs, although NICs are available, no new call can be accepted because the data frames on all channels are fully occupied. From Fig. 6, it is interesting to note that when each node is randomly equipped with 1 to 5 NICs, the performance is similar to equipping all nodes with 1 NIC. This is because we are trying to find a broadcast tree to reach every node in the network. If a single-NIC node is fully occupied, no further broadcast calls can be accepted despite that some nodes may still have idle NICs. We then perform the same set of simulations using random topologies, where 50 nodes are randomly placed within a 1000x 1000m2 area. The results with different number of channels and NICs are shown in Fig. 7 and Fig. 8, respectively.
978-1-4244-2324-8/08/$25.00 © 2008 IEEE. This full text paper was peer reviewed at the direction of IEEE Communications Society subject matter experts for publication in the IEEE "GLOBECOM" 2008 proceedings.
Acceptance rate
1 0.8 0.6 3 channels
0.4
6 channels 9 channels 12 channels
0.2 0 0
50
100 150 Number of requests arrived
200
interface wireless mesh network, with the objective of maximizing the number of broadcast trees/calls that can be carried/accepted by the network. In our formulation, routing, channel assignment and scheduling are jointly considered for finding a broadcast tree that minimizes the maximum channel utilization. Intuitively, it balances the accepted traffic load in the network, which in turn maximizes the chance of accepting future calls. Since solving ILP is time-consuming and is less suitable for a system with real-time call arrival, we have proposed a heuristic algorithm to give real-time response. Numerical results have shown that our heuristic algorithm provides as good performance as the optimized ILP approach, but with much shorter running time.
Fig. 7. Acceptance rate with random topology and 3 NICs per node [1]
Acceptance rate
1
[2]
0.8 0.6
1 NIC 2 NICs 3 NICs 4 NICs 5 NICs Ranndom
0.4 0.2
[3] [4]
0 0
50
100 150 Number of requests arrived
200
Fig. 8. Acceptance rate with random topology and 12 orthogonal channels
It can be observed that our heuristic algorithm provides similar performance in both grid and random networks, except that the turning point (of the performance curve) is smoother in the random topology. This is because most nodes have similar interference experience in the grid network, hence the chance of rejecting consecutive requests is high and leads to an abrupt drop in acceptance rate. This effect is diluted by the random topology, where a call is accepted or not largely depends on the root location. That means a call arrived after a previously rejected call tends to be accepted with higher probability. Another observation from Fig. 8 is that, when each node is randomly equipped with 1 to 5 NICs, unlike that in Fig. 6 for grid network, the acceptance rate is slightly higher/better than equipping 1 NIC per node. This is explained as follows. Note that a node can function either as a root, a receiver, or a forwarding node in a broadcast tree/call. If it functions as a forwarding node, its NICs can be used for both sending and receiving, thus its carried load can be roughly doubled as compared to the role of root or receiver. In a random network, the tree construction algorithm will very likely assign (lessefficient) 1-NIC nodes to function as receivers. But in a grid network, nodes are evenly spaced. The flexibility for a node to not function as a forwarding node is relatively low (as otherwise the number of transmissions and hence interference are increased). In this case, the 1-NIC nodes will soon be fully occupied and limit the overall network performance. VI. CONCLUSION In this paper, we have presented an ILP (integer linear programming) formulation for constructing a minimumchannel-utilization broadcast tree in a multi-channel multi-
[5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16] [17]
REFERENCES J. E. Wieselthier, G. D. Nguyen, and A. Ephremides, “Energy-Efficient Broadcast and Multicast Trees in Wireless Networks,” Mobile Networks and Applications, 7(6): 481-492, 2002. P. Bahl, A. Adya, J. Padhye, and A. Wolman, “Reconsidering Wireless Systems with Multiple Radios,” ACM Computer Communication Review, vol. 34, pp. 39-46, Oct 2004. Y.-Z. Huang, W. J. Liu, and K.-T. Feng, “Efficient implementation of an energy-conserving multicast routing protocol for wireless multihop networks,” Proc. of IEEE RWS, pp. 847-850, Jan 2008. J. Park and S. Sahni, “Maximum Lifetime Broadcasting in Wireless Networks,” IEEE Transactions on Computers, vol. 54, no. 9, pp. 10811090, Sept 2005. C. T. Chou, A. Misra, and J. Qadir, “Low-Latency Broadcast in Multirate Wireless Mesh Networks,” IEEE Journal on Selected Areas in Communications, vol. 24, no. 1, pp. 2081-2091, Nov 2006. T. Wang, X. Du, W. Cheng, Z. Yang, and W. Liu, “A Fast Broadcast Tree Construction in Multi-Rate Wireless Mesh Networks,” Proc. of IEEE ICC’07, pp. 1722-1727, June 2007. M. Song, J. Wang, and Q. Hao, “Broadcasting Protocols for Multi-Radio Multi-Channel and Multi-Rate Mesh Networks,” Proc. of IEEE ICC 2007, pp. 3604-3609, June 2007. H. S. Chiu, B. Wu, K. L. Yeung, and K.-S. Lui, “Widest Spanning Tree for Multi-Channel Multi-Interface Wireless Mesh Networks,” Proc. of IEEE WCNC, 2008. J. Yuan, Z. Li, W. Yu, and B. Li, “A Cross-Layer Optimization Framework for Multihop Multicast in Wireless Mesh Networks,” IEEE Journal of Selected Areas in Communications, vol.24, no.11, 2006. W. Wei and A. Zakhor, “Multiple Tree Video Multicast Over Wireless Ad Hoc Networks,” IEEE Transactions on Circuits and Systems for Video Technology, vol.17, no.1, pp. 2-15, Jan 2007. C. O. Chow, H. Nishikawa, and H. Ishii, “Multiple Tree Video Multicast Over Mobile Ad Hoc Networks,” Proc. of IEEE TENCON, pp. 1-4, 2007. C. T. Chou, B. H. Lui, and A. Misra, “Maximizing Broadcast and Multicast Trafic Load Through Link-Rate Diversity in Wireless Mesh Networks,” Proc. of IEEE WOWMOM, 2007. A. H. M. Rad and V. W. S. Wong, “Logical Topology Design and Interface Assignment for Multi-Channel Wireless Mesh Networks,” Proc. of IEEE Globecom’06, pp. 1-6, Nov 2006. X. Meng, K. Tan, and Q. Zhang, “Joint Routing and Channel Assignment in Multi-Radio Wireless Mesh Networks,” Proc. of IEEE ICC’06, pp. 3596-3601, 2006. A. H. M. Rad and V. W. S. Wong, “Joint Channel Allocation, Interface Assignment and MAC Design for Multi-Channel Wireless Mesh Networks,” Proc. of IEEE Infocom’07, pp. 1469-1477, 2007. M. Kodialam and T. Nandagopal, “The Effect of Interference on the Capacity of Multi-hop Wireless Networks,” IEEE Symposium on Information Theory, 2004. “ILOG CPLEX,” http://www.ilog.com/products/cplex/.
978-1-4244-2324-8/08/$25.00 © 2008 IEEE. This full text paper was peer reviewed at the direction of IEEE Communications Society subject matter experts for publication in the IEEE "GLOBECOM" 2008 proceedings.