A weight-aware channel assignment algorithm for mobile multicast in wireless mesh networks

A weight-aware channel assignment algorithm for mobile multicast in wireless mesh networks

G Model ARTICLE IN PRESS JSS-9308; No. of Pages 10 The Journal of Systems and Software xxx (2014) xxx–xxx Contents lists available at ScienceDirec...

1MB Sizes 0 Downloads 158 Views

G Model

ARTICLE IN PRESS

JSS-9308; No. of Pages 10

The Journal of Systems and Software xxx (2014) xxx–xxx

Contents lists available at ScienceDirect

The Journal of Systems and Software journal homepage: www.elsevier.com/locate/jss

A weight-aware channel assignment algorithm for mobile multicast in wireless mesh networks Jenn-Wei Lin ∗ , Shian-Min Lin Department of Computer Science and Information Engineering, Fu Jen Catholic University, Taiwan

a r t i c l e

i n f o

Article history: Received 2 September 2013 Received in revised form 11 March 2014 Accepted 12 March 2014 Available online xxx Keywords: Wireless mesh network Channel assignment Mobile multicast

a b s t r a c t Wireless mesh networks (WMNs) are one of key technologies for next generation wireless networks. In this paper, we propose a heuristic channel assignment algorithm with weight awareness to support mobile multicast in WMNs. To enhance network throughput, our algorithm is based on the path forwarding weight to perform channel assignment. In addition to non-overlapping channels, partiallyoverlapping channels are also used in channel assignment. To fully exploit all available channels in channel assignment, we devise a new channel selection metric to consider the channel separation and the distance between nodes. In mobile multicast, the multicast tree structure cannot be fixed due to receiver (multicast member) mobility. The change of the multicast tree structure will result in channel re-assignment. The proposed algorithm is based on a critical-event driven manner to reduce the times of channel re-assignment as much as possible. Finally, we perform simulation experiments to show the effectiveness of the proposed channel assignment algorithm. © 2014 Elsevier Inc. All rights reserved.

1. Introduction Wireless mesh networks (WMNs) have emerged as a main technology for wireless broadband internet access due to low cost and ease of deployment (Akyldiz and Wang, 2005; Bruno et al., 2005; Raniwala and Chiueh, 2005). In WMNs, the IEEE 802.11 standard (IEEE 802, 1999) is mostly adopted to perform wireless communication. There are two types of nodes in a WMN: wireless router and mobile station. The wireless routers are interconnected to form a wireless mesh backbone that can assist the multi-hop packet transmissions among mobile stations. To increase the network throughput of a WMN, each wireless router is usually equipped with multiple radio interfaces. It is very important to assign appropriate IEEE 802.11 channels in the radio interfaces of wireless routers in order to reduce the interference among the routers. The channel assignment problem has been proved to be NP-hard (Skali et al., 2007). Therefore, existing schemes employ heuristic algorithms to perform channel assignment. In most of these existing schemes (Subramanian et al., 2008; Ramachandran et al., 2008; Kyasanur and Vaidya, 2006, 2005), their channel assignment algorithms are mainly designed for unicast routing. However, in WMNs, many popular applications (IP television, video/audio conferencing,

∗ Corresponding author. Tel.: +886 229053855. E-mail address: [email protected] (J.-W. Lin).

distribution of software and financial information, etc.) require the support of mobile multicast communication. In this paper, we propose a new channel assignment algorithm for efficient performing mobile multicast in WMNs. The proposed algorithm considers multiple important factors of the WMN and mobile multicast, which is abbreviated as CAMF (channel assignment with multiple factor considerations). The CAMF algorithm has the following characteristics:

1) All available channels (non-overlapping and partially overlapping channels) of a WMN are used in channel assignment. In WMNs, most of existing channel assignment algorithms (Raniwala and Chiueh, 2005; Ramachandran et al., 2008; Kyasanur and Vaidya, 2006, 2005) use non-overlapping (orthogonal) channels only. In the IEEE 802.11b/g based WMN, there are only three non-overlapping channels. While performing channel assignment, it is easy to cause co-channel (same channel) interference among nodes (wireless routers). To avoid many nodes incurring co-channel interference, we exploit all available channels to perform the channel assignment of WMNs. In Rad and Wong (2006) and Naveed et al. (2007), the channel assignment algorithms also consider the partially overlapping channel assignment, but the algorithms are designed for performing the unicast routing of the WMN. 2) The channel assignment sequence follows the magnitude of path forwarding weight. The paths on a multicast tree have different

http://dx.doi.org/10.1016/j.jss.2014.03.040 0164-1212/© 2014 Elsevier Inc. All rights reserved.

Please cite this article in press as: Lin, J.-W., Lin, S.-M., A weight-aware channel assignment algorithm for mobile multicast in wireless mesh networks. J. Syst. Software (2014), http://dx.doi.org/10.1016/j.jss.2014.03.040

G Model JSS-9308; No. of Pages 10

ARTICLE IN PRESS J.-W. Lin, S.-M. Lin / The Journal of Systems and Software xxx (2014) xxx–xxx

2

forwarding weights. For a path, its forwarding weight indicates the number of multicast members dependent on the transmission of this path. Intuitively, the node on a path with a larger forwarding weight (the larger-weight path) should have a higher channel assignment priority than the node on the path with a smaller forwarding weight (the smaller-weight path). By doing that, the nodes on the larger-weight path can select their respectively preferable channels to reduce possible interference as much as possible. With incurring less total interference on the larger-weight path, more multicast members can successfully receive more multicast packet within a certain time interval. The proposed CAMF algorithm can enhance the network throughput. 3) The channel separation is combined with the distance to quantify the interference effect. In WMNs, many multicast trees may exist concurrently. In addition to the intra-tree interference, the inter-tree interference is also required to be considered in the channel assignment. The intra-tree and inter-tree interference has been considered in the channel assignment literature of the WMN. Unlike the literature, we design a channel selection metric which combines the channel separation with the distance to correctly quantity the effect of the intra-tree and inter-tree interference. With the channel selection metric, each node can select one or more channels with less interference. 4) The receiver (multicast member) mobility is taken into account in the channel assignment. The multicast tree structure may be varied as receivers arrive, leave, or move. In such a situation, it is required to re-perform channel assignment for the new multicast tree. In our proposed algorithm, we adopt a critical-event driven manner to reduce the times of channel reassignment. Whenever receiver mobility occurs, the affected node first adjusts its contention window size to reflect the receiver mobility. The channel re-assignment is not performed until packet loss occurs in an affected node. Compared to existing channel assignment approaches of the WMN, the CAMF algorithm additionally considers the path forwarding weight and the receiver mobility in the channel assignment. Due to holding the above two unique characteristic, the CAMF algorithm can make the WMN with both the small interference cost and the large network throughput while performing multicast communication. Finally, we perform simulation experiments to examine the effectiveness of the CAMF algorithm in various performance metrics. The rest of the paper is organized as follows. In Section 2, we introduce the preliminaries of this paper. Our channel assignment algorithm is presented in Section 3. Section 4 evaluates the performance of our proposed algorithm. Finally, Section 5 concludes this paper. 2. Preliminaries In this section, we give the WMN and interference models used in this paper. Then, we introduce the available channels of IEEE 802.11. Last, we review related work.

Fig. 1. The system model.

can randomly move. The packet transmission of a mobile station is through multiple wireless routers in the mesh backbone, and then via a gateway to the Internet. For the packet transmission from Internet to a mobile station, the packet transmission is via the above route in the opposite direction. This paper investigates the channel assignment problem for performing the mobile multicast in WMNs. Unlike unicast communication, the multicast communication can concurrently send a packet from a source node to a set of destination nodes (receivers). This communication manner is achieved by establishing a multicast tree. In a WMN, the source node of a multicast tree indicates a gateway. The intermediate nodes of the multicast tree denote the wireless routers located in the backbone of the WMN. The multicast tree is terminated at the wireless routers acting the access point role. As for the receivers of the multicast tree, they are mobile stations. The construction of a multicast tree is a Steiner tree problem that is NP-complete (Hwang et al., 1992). In Piechowiak and Zwierzykowski (2012), Bilh and Chou (2012) and Oe et al. (2013), the issue of the multicast routing for WMNs has been also extensively investigated. The simple way to establish a multicast tree is by finding the shortest path from the source node to each of the wireless router with one or more receivers (mobile stations). 2.2. Interference model The two-hop interference model is usually used in WMNs (Subramanian et al., 2008; Ramachandran et al., 2008). From the node point of view, if node i is within two-hop range of node j, node i is a possibly interfering node of node j. This means that the packet transmission of node j may be affected by node i, and vice versa. Basically, the two-hop interference model is only based on the distance between nodes to estimate the interference relationship. It is a pessimistic model.

2.1. Network model 2.3. Channels of IEEE 802.11 The WMN consists of gateways, wireless routers, and mobile stations (Akyldiz and Wang, 2005). As shown in Fig. 1, the gateways connect the wireless mesh backbone with the Internet backbone. For the wireless mesh backbone, it consists of a number of wireless routers. Some of wireless routers serve as access points for mobile stations within their respective coverage areas. Other wireless routers purely act as relay nodes to transmit packets between wireless routers. The mobile stations are the clients of a WMN that

In WMNs, IEEE 802.11 is a widely used standard for performing wireless communication between wireless routers. In IEEE 802.11, 802.11a provides more channels than 802.11b/g. However, IEEE 802.11a has worse penetration depth and a shorter transmission range since it works on a higher frequency spectrum (5 GHz) than IEEE 802.11b/g (2.4G Hz). In addition, IEEE 802.11a has a higher cost in wireless equipment (e.g. access point and interface card). As

Please cite this article in press as: Lin, J.-W., Lin, S.-M., A weight-aware channel assignment algorithm for mobile multicast in wireless mesh networks. J. Syst. Software (2014), http://dx.doi.org/10.1016/j.jss.2014.03.040

G Model

ARTICLE IN PRESS

JSS-9308; No. of Pages 10

J.-W. Lin, S.-M. Lin / The Journal of Systems and Software xxx (2014) xxx–xxx Table 1 Interference range versus channel separation in IEEE 802.11b/g with 11 Mbps. Channel separation

Interference range

0 1 2 3 4 5

2.0R 1.2R 0.7R 0.5R 0.2R 0R

Note that R is the communication range of a node.

a result, the IEEE 802.11b/g based WMN model is extensively used in most of WMN literature (Zeng et al., 2010; Ding et al., 2012). The IEEE 802.11b/g operates in the 2.4 GHz spectral band, which is divided into 11 channels for use in the US. Only three channels (1, 6, and 11) are non-overlapping. The remaining channels are partially overlapping. For each non-overlapping channel, its frequency band is not overlapped with others. Conversely, the frequency band of each partially overlapping channel is overlapped with some others. In this paper, we exploit all 11 channels of IEEE 802.11b/g to perform channel assignment. 2.4. Related work For the channel assignment of WMNs, most existing algorithms use non-overlapping channels to perform channel assignment. In Zeng et al. (2010), Ding et al. (2012), Nguyen and Nguyen (2008), Mishra et al. (2006) and Bukkapatanam et al. (2009), the experiment results demonstrated that the network throughput of the WMN can be enhanced when all available (partially overlapping and non-overlapping) channels are appropriately used in channel assignment. In Subramanian et al. (2008) and Ramachandran et al. (2008), the authors have shown that the interference ranges are different with varying the channel separation, as shown in Table 1. If nodes n1 and n2 use channels 2 and 5, the channel separation between them is 3 (|2–5|). Based on Table 1, the corresponding interference range is 0.5R (hop). If the distance between nodes n1 and n2 is larger than 0.5R, nodes n1 and n2 can use channels 2 and 5 without interfering with each other. In Table 1, we also see that if the channel separation between two nodes is larger than or equal to 5, the interference range will be 0. In such case, even if the location of node n1 is close to that of node n2, the interference does not exist between them even if they use the same channel. This is also the reason why the previous WMN literature adopts nonoverlapping channels to simplify channel assignment. Note that the channel separation between any two non-overlapping channels is 5. However, in the IEEE 802.11b/g based WMN, there are only three non-overlapping (1, 6, and 11) channels. If there are many nodes on a multicast tree, it is easy to cause the co-channel (same channel) interference. In the multicast aspect of WMNs, existing literature primarily focuses on the multicast routing and channel assignment issues. The authors of one study (Liu and Liao, 2010) assumed that the channel assignment is given and static. For multicast routing, they proposed a centralized and polynomial-time approximation algorithm to establish a multicast tree with near minimum transmission cost in a WMN. The algorithm also considers interference between multicast trees in the construction of the multicast tree. Another recent study (Rong et al., 2008) investigates the issue of QoS multicast routing in WMNs. Like Liu and Liao (2010), this study does not discuss the channel assignment problem. The QoS support in Rong et al. (2008) only concerns the bandwidth metric. That study developed a novel network graph processing approach. When a multicast session request is issued, the original network topology of the WMN is preprocessed to generate a new network topology with qualified links only. Each of these qualified links can satisfy the

3

bandwidth requirement of a multicast session request. Based on the new network topology, prioritized admission control is performed to accept or reject the multicast session request. After acceptance, existing QoS multicast routing algorithms in wired networks can be directly applied to establish a QoS guaranteed multicast tree suitable for the WMN. Unlike the above studies, the research work of Zeng et al. (2010) utilizes all available channels of IEEE 802.11b/g to propose a channel assignment algorithm called multichannel multicast (MCM) algorithm. In this algorithm, it devises a channel selection function IR(). If channel c is to be assigned for node p, all the neighbors (all the nodes within the transmission range) of node p are first found. Then, the channel separation between node p and each neighbor is a key parameter to calculate the corresponding function IR(). Next, all the IR() values are accumulated. After calculating the total IR() value for each available channel, the channel with the minimum total IR() value will be assigned for node p. From the above description, we can know that the main idea of the MCM algorithm is to reduce the interference effect between a node and its neighboring nodes. In Nguyen and Nguyen (2008), the proposed channel assignment algorithm is called the minimum interference multi-radio multicast (M4) algorithm. In the M4 algorithm, two-hop interference range is considered in the channel selection to avoid the hidden terminal problem (So and Vaidya, 2004). For the MCM algorithm in Zeng et al. (2010), the interference range is only considered within one hop. Unlike the MCM algorithm, the devised channel selection metric in Nguyen and Nguyen (2008) is to balance the channel separations of the nodes within two hops. This can avoid some node pairs incurring severe interference due to using small channel separations. However, the interference cost is not minimized in the channel selection metric. We have also proposed a channel assignment algorithm for WMNs in Lin and Zhuang (2013). In Lin and Zhuang (2013), the delay constraint and priority are taken into account in the channel assignment. The work focuses on investigating how to reduce the interference between different multicast sessions. In the work, the channel assignment algorithm divides the path delay constraint of a multicast tree into a number of node-based delay constraints. In addition, the algorithm also takes the priority of a multicast tree into channel assignment, which can prevent high-priority multicast sessions from incurring more interference than low-priority multicast sessions. However, the network throughput and receiver mobility are not concerned in the work of Lin and Zhuang (2013). The network throughput is an important metric for measuring the performance of the multicast communication, which evaluates measure the average number of multicast packets received by a receiver during a time unit. The network throughput is also concerned in the channel assignment algorithms of Zeng et al. (2010) and Nguyen and Nguyen (2008). In contrast to Lin and Zhuang (2013), the new channel assignment algorithm focuses on how to make packets to be delivered to receivers as many as possible. Moreover, while receiver mobility occurs, the channel assignment cannot be re-performed to avoid frequently interrupting an ongoing multicast session.

3. Proposed approach In this section, we will present a weight-aware channel assignment approach. As stated in Section 1, the optimal channel assignment in WMNs is a NP hard problem. Like previous approaches, the proposed channel assignment algorithm is also a heuristic algorithm. We first describe the basic idea of the proposed approach. Then, we elaborate the techniques used in the proposed approach.

Please cite this article in press as: Lin, J.-W., Lin, S.-M., A weight-aware channel assignment algorithm for mobile multicast in wireless mesh networks. J. Syst. Software (2014), http://dx.doi.org/10.1016/j.jss.2014.03.040

G Model JSS-9308; No. of Pages 10

ARTICLE IN PRESS J.-W. Lin, S.-M. Lin / The Journal of Systems and Software xxx (2014) xxx–xxx

4

can know that if the distance between nodes i and j is larger than 0.9R, the interference does not exist. In the proposed approach, the channel separation and distance are integrated together to quantify the interference effect. Definition 2. In the WMN, the placement (location) point of a node (wireless router) is fixed, which can be known in advance. We can set a virtual origin point in a WMN. Based on the origin point, the relative location of a node can estimated. The distance between two nodes i and j is |Loc(i)–Loc(j)|, where Loc(i) is the relative location of node i based on a virtual origin point.

Fig. 2. An example of the forwarding weight calculation.

3.1. Basic idea Compared to the previous channel assignment approaches of Zeng et al. (2010) and Nguyen and Nguyen (2008), the proposed channel assignment approach additionally considers the following four factors. • • • •

Path forwarding weight Distance Contention window size Receiver mobility

Before performing multicast communication, a multicast tree is first established. Not all nodes of a WMN are included in the multicast tree. The multicast tree only contains the nodes needing to forward multicast packets. In a multicast tree, there are multiple multicast paths that have different path forwarding weights. Definition 1. The path forwarding weight of a multicast path is that if a node on a path is assigned with an interference channel, the interference will affect what number of receivers cannot receive correct packets. As shown in Fig. 2, the established multicast tree has three paths which path forwarding weights are 3, 2, and 1, respectively. The node n1 is located on three paths, which corresponding path forwarding path is 3 + 2 + 1 = 6. Nodes n2 and n5 are on the same multicast path, and they have the same path forwarding weight 3. Due to considering the path forwarding weight, the multicast paths have different importance. For a large-weight path (the path with a large forwarding weight), more receivers are dependent on its packet transmission by comparing with a small-weight path (the path with a small forwarding weight). To make nodes on the large-weight paths incur less interference, the channel assignment sequence follows the magnitude of path forwarding weights. With preferable large-weight paths in the channel assignment, more receivers can receive more multicast packets within a given time period. Therefore, the consideration of the path forwarding weight can enhance the network throughput. In Zeng et al. (2010) and Nguyen and Nguyen (2008), their channel selection metrics only consider the channel separation. However, the channel separation cannot fully represent the interference effect between two nodes. An example is given as follows. Assume that nodes i and j use channels 1 and 4. The channel separation between these two channels is |1–4| = 3. From Table 1, we

In WMNs, none of channel assignment algorithms can guarantee that there is no interference among nodes after channel assignment. Each on-tree node may still have one or more interfering nodes. In such a situation, if an on-tree node and one of its interfering nodes simultaneously transmit packets, the interference will occur. Here, the interference generation is due to collision occurrence. To reduce the times of collision occurrences, the times of interference generation can be correspondingly decreased. Although the tuning of the contention window size is a well-known technique used to reduce collision occurrence. In the proposed approach, we dynamically adjust the contention window size to mitigate the interference effects after channel assignment. The receiver mobility is a natural situation in the multicast communication of WMNs. New receivers may arrive at any nodes. In addition, old receivers may also leave from any node or move between nodes. The receiver mobility will cause that nodes are dynamically added on or pruned from a multicast tree. In addition to changing the structure of a multicast tree, the receiver mobility may change the path forwarding weights of some multicast paths. This will further result in channel re-assignment. In the previous channel assignment approaches, they do not discuss the problem of the channel re-assignment due to receiver mobility. In Nguyen and Nguyen (2008), the authors only mentioned that the channel assignment should be periodically re-executed, e.g. every one minute. However, the periodical channel re-assignment cannot immediately reflect receiver mobility. In our channel assignment approach, we adopt a critical-event driven manner to initiate channel re-assignment. The channel re-assignment is not performed until packet loss occurs due to receiver mobility. 3.2. Implementation Before elaborating the implementation of the proposed approach, we first describe how to transmit control message between nodes while performing channel assignment. A simple method is based on a dedicated control channel that is widely adopted by existing approaches (Raniwala and Chiueh, 2005; Skali et al., 2007; Ramachandran et al., 2008; Zeng et al., 2010; Nguyen and Nguyen, 2008; Liu and Liao, 2006). Each node designates a radio interface associated with a fixed channel to transmit control messages. To perform channel assignment, each node first needs to obtain the following two types of information: the corresponding path forwarding weight and the possibly interfering nodes. 1) Based on the definition of the path forwarding weight, if a node is not on the multicast tree, its corresponding path forwarding weight is 0 since no receiver is under its forwarding range. For the nodes on the multicast tree, their corresponding path forwarding weights can be calculated by the post-order tree traversal, as shown in Fig. 3(a). The post-order traversal is a wellknown tree algorithm which is based on the bottom-up manner to visit each node on a tree (on-tree node) (Cormen et al., 2001). Upon visiting an on-tree node, if a node has one or more child nodes, the corresponding path forwarding weight of each child

Please cite this article in press as: Lin, J.-W., Lin, S.-M., A weight-aware channel assignment algorithm for mobile multicast in wireless mesh networks. J. Syst. Software (2014), http://dx.doi.org/10.1016/j.jss.2014.03.040

G Model JSS-9308; No. of Pages 10

ARTICLE IN PRESS J.-W. Lin, S.-M. Lin / The Journal of Systems and Software xxx (2014) xxx–xxx

Procedure Path_Forwarding_Weight (node p) 1: fw_value 0 /* The forwarding weight is initialized to 0 */ 2: For each child node ci of node p fw_value fw_value + Forwarding_Weight(node ci) 3: 4: End For 5: num_receivers The number of own receivers within node p 6: fw_value fw_value + num_receivers 7: return fw_value End Procedure (a) Procedure Interfering_Node_Set (Node P) The part of node P: 1: max_inter_set //*The maximum interfering set is initialized to an empty set*/ 2: Broadcasting an interference-announcing message within the maximum interference range. 3: When receiving the positive acknowledgement of an interfere announcing message. 4: Extracting the 2-tuple , information 5: Adding the 2-tuple information into max_inter_set 6: End When The part of other nodes in the maximum interference range: 7: When receiving the interference-announcing message 8: Attaching the ID and the forwarding weight of the receiving node on the acknowledgement message. 9: Sending the positive acknowledgement message 10: End When End Procedure (b) Fig. 3. The detailed operations of obtaining two types of information for channel assignment. (a) Path forwarding weight. (b) Interfering node set.

node is first calculated (see lines 2–4). Then, the corresponding path forwarding weight of the node is calculated by adding up the path forwarding weights of all the child nodes. Next, if there are receivers under the transmission range of the node, the number of these receivers is also added into the corresponding path forwarding weight of the node (see lines 5–6). 2) Each node makes the following pessimistic assumption to estimate its possibly interfering node set. For node p, any node within its maximum interference range will cause interference in its packet transmissions. As for the nodes outside the maximum 3) interference range, they are impossible to generate interference for node p. As mentioned in Section 2.2, the maximum interference range of a node is defined as the two-hop range. Based on the two-hop interference range, each node establishes its interfering node set, as shown in Fig. 3(b). Initially, each node broadcasts an “interference-announcing” message within two-hop range (see line 2). Upon receiving the interferenceannouncing message, the receiving node responds with an acknowledgment message attached with the two-tuple information (nid , nfw ), where nid is the identity of the receiving node, and nfw is its corresponding path forwarding weight (see lines 8–9). When receiving all the acknowledgment messages, the sending node can complete the creation of its interfering node set. 3.2.1. Channel assignment After obtaining the above two types of information, each on-tree node can individually perform channel assignment, as follows. To enhance network throughput as much as possible, the channel assignment sequence among on-tree nodes is arranged based on the descending order of their corresponding path forwarding weights, as shown in Fig. 4. When node p would like to select a channel, it first checks its interfering node set to determine the preceding nodes that path forwarding weights are larger than or equal to that of node p. Then, node p verifies whether all the preceding nodes have been assigned channels. If not, the channel assignment of node p cannot be done until all preceding nodes have completed

5

Procedure Channel Assignment (node p) 1: IF(node p is the source node of a multicast tree) then 2: sele_channel 0; 3: Else 4: fw_value_1 The forwarding weight of node p 5: preceding_node_set //* The preceding node set is initialized to an empty set */ 6: For each node in the maximum interference node set 7: The forwarding weight of node fw_value_2 8: IF (fw_value_1 < fw_value_2) then 9: IF (The channel of node has not been assigned) then 10: Wait for completing the channel assignment of node 11: End IF 12: into the preceding_node_set Adding (id, channel) of node 13: End IF 14: End For 15: min_tot_if 16: in the IEEE 802.11b/g For each available channel 17: tot_if ( ) Calculating the total interference degree of the preceding_node_set using equations (1) and (2) 18: IF (min_tot_if > tot_if ( ) then 19: sele_channel 20: tot_if ( ) min_tot_if 21: End IF End For 22: 23: End IF 24: Broadcasting the information (the identity of node p, sele_channel) End Procedure Fig. 4. The detailed operations of channel assignment.

their channel assignment (see lines 6–14). For the nodes in the interfering node set with smaller path forwarding weights than node p, their channels are assigned after node p. These nodes are not considered while performing the channel assignment of node p. Therefore, the channel selection of node p only needs to concern which channels have been used by its preceding nodes. The channel selection of node p is related to the following interference metric.



IE(k, p) × wk

(1)

k ∈ Prep

where Prep is the set of preceding nodes of node p, wk is the path forwarding weight of preceding node k, and IE() is the function to estimate the interference effect between node p and one of its preceding nodes, which is defined as follows.



IE(k, p) =

1,

if IR(|ck − cp )≥D(k, p)

0,

otherwise

(2)

where ci is the channel used by node i, IR(ck –cp ) is the interference range of the channel separation |ck –cp | (see Table 1), and D(k,p) is the distance between nodes k and p. If the interference range (distance) is larger than or equal to the distance, there is interference between nodes k and p. Based on the given metric of (1), the channel selection of node p is done as follows. First, each of 11 available channels in IEEE 802.11b/g is assumed to be the channel candidate of node p. Then, each of the channel candidates is alternatively applied into (1) to calculate the total interference on the preceding nodes of node p. To minimize the total interference, node p should select the channel candidate with the least total interference cost (see lines 15–22). Next, node p broadcasts the information about its selected channel to its interfering nodes. Each of the interfering nodes stores the used channel of node p in its interfering node set (see line 24). The above channel assignment operations mainly determine the used channel of each on-tree node in its sending interference. As for the receiving interference of each on-tree node, the used channel is corresponding to the channel used in the sending interference of its parent node. 3.2.2. Adjusting the contention window size After performing channel assignment, the interference among on-tree nodes still exists. To further reduce interference, each ontree node is set with an appropriate contention window size. In Cali

Please cite this article in press as: Lin, J.-W., Lin, S.-M., A weight-aware channel assignment algorithm for mobile multicast in wireless mesh networks. J. Syst. Software (2014), http://dx.doi.org/10.1016/j.jss.2014.03.040

G Model JSS-9308; No. of Pages 10

ARTICLE IN PRESS J.-W. Lin, S.-M. Lin / The Journal of Systems and Software xxx (2014) xxx–xxx

6

Procedure Window_Size_Adjustment (node p) 1: For each node in the maximum interference node set of node p 2: IF IE( , ) = 0 then //* The interference distance is less than their distance */ 3: Excluding from the maximum interference node set of node p 4: End IF 5: End For 6: the forwarding weight of node p 7: For each remaining node in the maximum interference node set of node p 8: the forwarding weight of 9: +( ) 10: End For 11: +1 12: cw_size Calculating the window size based on the Equations (3) and (4) 13: Using cw_size to set the contention windows size of node p End Procedure Fig. 5. The detailed operations of contention window size setting.

et al. (2000) and Bononi et al. (2003), authors have investigated how to tune an optimal contention window size to enhance the network throughput of WLANs. The network model in Cali et al. (2000) and Bononi et al. (2003) is the WLAN, not the WMN. In addition, the factor of forwarding weight is not considered. In practice, the node with a large path forwarding weight should be set with a small contention window size since it is more important in the packet forwarding than the node with a small path forwarding weight. We devise a new procedure to dynamically adjust the contention window size, as shown in Fig. 5. The details of the procedure are stated as follows. 1) When node p completes its channel assignment, it first uses the assigned channel and the above IE() function (see Eq. (2)) to verify its interfering node set to exclude non-interfering nodes (see lines 1–5). The remaining nodes in the interfering node set are the actually interfering nodes of node p. The packet transmissions of node p are possibly collided by such nodes. 2) To take the path forwarding weight into the adjustment of the contention window size, node p normalizes the path forwarding weight of each actually interfering node using itself path forwarding weight as the basic weight. The path forwarding weight of each actually interfering node is divided by the path forwarding weight of node p. The total units of node p are accumulated as tp (see lines 6–11 of Fig. 5(b)). Substituting tp into the following formulas, the optimal contention window size of node p can be derived (see lines 6–12). Note that the derivations of the below two formulas can be found in Cali et al. (2000) and Bononi et al. (2003).

Pmin = CWS =

−1 +



1 + 2 × lc /lc tp

2 −1 Pmin

(3)

(4)

where Pmin is the key parameter used to estimate the optimal contention window size CWs , and lc is the collision length. 3.2.3. Receiver mobility Due to receiver mobility, the structure of a multicast tree may be changed. In addition, the channels of on-tree nodes are required to be re-assigned. The procedures for handling the above two problems are given in Fig. 6, which operations are elaborated as follows. 1) The variation of the multicast tree structure: To reflect the new locations of receivers after receiver movements, the following two routines are used to maintain the up-to-date multicast tree structure.

Procedure Multicast_Tree_Maintenance (node p) The part of the receiver arrival event 1: IF the multicast path corresponding to node p does not exist then 2: Establishing the corresponding multicast path 3: on the multicast path For each newly added node 4: Calling the procedure Channel_Assignment(node ) 5: End For 6: End IF The part of the receiver leaving event 7: IF the multicast path corresponding to node p is no longer used then 8: Pruning this corresponding multicast path 9: For each removed node on the multicast path Sending the “interference-immune” message within the maximum interference 10: range of node 11: End For 12: End IF End Procedure (a) Procedure Channel_Re-assignment (node p) The first stage: The part of node p: 1: IF the variation of the forwarding weight in node p > a predefined threshold value then fw_value the current forwarding weight of node p 2: 3: Broadcasting CW_Reset message within the maximum interference rang of node p 4: Calling the Procedure Window_Size_Setting(node p) 5: End IF The part of other nodes within the maximum interference range of node p 6: When receiving the CW_Reset message 7: Calling the procedure Window_Size_Setting( node ) 8: End When The second stage: The part of node p 9: IF the number of the packets in the queue > a predefined threshold value then 10: Issuing the channel re-assignment on the whole multicast tree by sending out the CR message. 11: End IF The part of all nodes in the multicast tree: 12: When receiving the CR message 13: fw_value1 the forwarding weight of this node 14: fw_value2 the forwarding weight of node p 15: IF fw_value1 fw_value2 then 16: preceding_node_set /* Initialize to an empty set */ 17: in the maximum interfering node set of node For each node 18: The forwarding weight of node fw_value 19: IF (fw_value1 < fw_value < fw_value2) then 20: Waiting for the completing of the channel re-assignment of node 21: End IF Procedure Channel_Re-assignment (node p)

22: 23:

IF (fw_value > fw_value1) then Adding , into the preceding_node_set //* , is the identity and channel of node 24: End IF 25: End For 26: sele_channel Performing the channel re-assignment based on preceding_node_set 27: Broadcasting the information (the identity of node , sele_channel) within the maximum interference range.of node 28: End IF 29: End When End Procedure (b) Fig. 6. The detailed operations for handling the two issued problems due to receiver mobility. (a) Multicast tree maintenance. (b) Channel re-assignment.

a) Path establishment: When a receiver arrives at a node, a “receiver arrival” event is issued. In this event, if the node also finds that the multicast path corresponding to this receiver does not exist, the node initiates the execution of the multicast path establishment. Some non-tree nodes will become new on-tree nodes. Then, each of new on-tree nodes is assigned with a channel, as shown in lines 1–6 of Fig. 6(a). b) Path pruning: When a receiver leaves or moves between nodes, a “receiver leaving” event is issued. In this event, if the node also finds that the multicast path corresponding to the receiver will be no longer used by other receivers, the multicast path will be pruned. Some on-tree nodes are removed from the multicast tree to become non-tree nodes. Each of removed nodes broadcasts an “interference-immune” message within its maximum interference range. The removed node does not introduce any interference to other nodes again (see lines 7–12 of Fig. 6(a)). Upon receiving the message, the receiving node will set an interference invalidation mark in its interfering node set to represent

Please cite this article in press as: Lin, J.-W., Lin, S.-M., A weight-aware channel assignment algorithm for mobile multicast in wireless mesh networks. J. Syst. Software (2014), http://dx.doi.org/10.1016/j.jss.2014.03.040

G Model JSS-9308; No. of Pages 10

ARTICLE IN PRESS J.-W. Lin, S.-M. Lin / The Journal of Systems and Software xxx (2014) xxx–xxx

Network Size: 40 Wireless Router Nodes 12000 10000 ICMT

8000 6000 4000 2000 0

10 CAMF 109 m_MCM 219 M4 271

20 30 40 50 60 70 80 90 100 418 879 1398 1893 2568 3121 3871 4495 5062 867 1562 2497 3312 4638 5825 6741 8015 8921 910 1822 2972 4044 5614 6929 8521 10145 11399 Number of receivers (a) Network Size : 80 Wireless Router Nodes

ICMT

that it does not incur the interference from the removed node again. 2) The variation of the path forwarding weights of nodes: As mentioned in Section 3.1, the forwarding weight variation introduces channel re-assignment. To reduce the frequency of the channel re-assignment, a critical-event driven solution is proposed, as shown in Fig. 6(b). The details are described as follows. a) In the first stage, if node p detects that the variation of its path forwarding weight is larger than a threshold value, it does not immediately perform channel re-assignment. Instead, it only adjusts its contention window size to reflect the new path forwarding weight (see lines 1–5). As for the interfering nodes of node p, they are also required to be re-set their respective contention window sizes (see lines 6–8). Different from the channel re-assignment (switching), the cost of adjusting the contention window size is very trivial, which takes less than one micro second. b) In the second stage, node p actually performs channel reassignment when the number of packets in the queue is larger than a pre-defined threshold value. Here, the channel reassignment is done for avoiding packet loss, which is initiated by node p to send a channel re-assignment (CR) message to the source node of the multicast tree (see lines 9–11). Then, the CR message is forwarded along the whole multicast tree to find those nodes that have smaller path forwarding weights than node p. In our proposed approach, the path forwarding weight is the key factor in arranging the channel assignment sequence among nodes. Therefore, if node p is re-assigned a new channel, the nodes with smaller path forwarding weights than node p need to perform channel re-assignment (see lines 12–29).

7

20000 18000 16000 14000 12000 10000 8000 6000 4000 2000 0

10 20 30 40 50 60 70 80 90 100 CAMF 122 501 1128 1830 2778 3723 4740 6172 7244 8005 m_MCM 233 914 1914 3155 4730 6457 8254 10883 12863 13756 M4 302 1006 2343 3805 6153 8164 10721 14005 16687 18544 Number of receivers

4. Performance evaluation

(b)

In this section, we evaluate the performance of our channel assignment approach. As discussed in Section 2.4, the approaches of Zeng et al. (2010) and Nguyen and Nguyen (2008) discuss the similar issue with our approach. We also make the comparisons between these two approaches and our approach. The following metrics are used to measure the performance of the three approaches. • Average interference cost on the whole multicast tree (ICMT): In channel assignment of WMNs, the interference among nodes is inevitable. The ICMT metric is to represent the feasibility of a channel assignment algorithm for a multicast tree in WMNs. It accumulates the weight-aware interference effects on all on-tree nodes, as follows.



IE(i, j) × wi

(5)

i ∈ T j ∈ ISi

• where T is a well-constructed multicast tree and ISi is the interfering node set of node i. The factor wi and the function IE() have been defined in Eq. (1) and Eq. (2), respectively. • Average throughput: This metric is the average number of multicast packets received by a receiver during a time interval. • Average delay: This metric is the average transmission time of a multicast packet from the source node to a certain receiver during a time interval. • Average virtual transmission time: After channel assignment, each on-tree node may be still interfered by one or more other nodes. In such case, each on-tree node may experience one or more collisions before successfully transmitting a multicast packet. Here, the time taken for successfully transmitting a packet is defined as the virtual transmission time.

Fig. 7. The average interference cost comparison. (a) 40 nodes. (b) 80 nodes.

4.1. Simulation environment The Hyacinth project (Raniwala and Chiueh, 2005, 2004) has added the support of multi-interface and multi-channel for the WMN module in the network simulator NS2.29 (The network simulator – ns2, 2013; Mhatre, 2007). Based on the Hyacinth, we measure the above four metrics in our channel assignment approach and the approaches of Zeng et al. (2010) and Nguyen and Nguyen (2008) with the assistance of MatLab (MathWorks, 2013). We refer to Zeng et al. (2010) and Nguyen and Nguyen (2008) to set up the simulation environment. In the simulation experiments, two different node densities are made by distributing 40 and 80 wireless router nodes over a 1000 m × 1000 m field, respectively. Each node is equipped with five radio interfaces, one for control interface and four for data interfaces. The physical and MAC layers follow the specifications of IEEE 802.11b protocol. The channel capacity is 11Mbps. The transmission range and carrier sending range are 250 m and 550 m, respectively. The total number of channels used in the channel assignment is 11. In the traffic load aspect, the constant bit rate (CBR) transmission is used to send 10 packets per second from the source node. In a simulation run, the source node needs to send out 1000 packets along the constructed multicast tree. The size of each packet is fixed as 1024 bytes. The number of receivers varies from 10 to 100 in a step of 10. To simulate the movement of a receiver, the random waypoint model (Broch et al., 1998) is used to make receivers with moving speeds between 1 and 50 m/s and stay time between 0 and 20 s. The approaches of Zeng et al. (2010) and Nguyen and Nguyen (2008) do not support receiver mobility. Whenever receiver mobility occurs, the multicast tree is re-constructed in these two approaches, and its channel

Please cite this article in press as: Lin, J.-W., Lin, S.-M., A weight-aware channel assignment algorithm for mobile multicast in wireless mesh networks. J. Syst. Software (2014), http://dx.doi.org/10.1016/j.jss.2014.03.040

G Model

ARTICLE IN PRESS

JSS-9308; No. of Pages 10

J.-W. Lin, S.-M. Lin / The Journal of Systems and Software xxx (2014) xxx–xxx

8

Network Size : 40 Wireless Router Nodes

10 CAMF 931 m_MCM 173 M4 176

140 Avegrage Delay (ms)

Average Throughput (Number of packets)

Network Size : 40 Wireless Router Nodes 1000 900 800 700 600 500 400 300 200 100 0

20 910 112 114

30 905 86 89

40 897 76 77

50 881 70 71

60 863 64 66

70 860 61 64

80 851 59 61

90 821 58 59

120 100 80 60 40 20 0

100 805 56 59

CAMF m_MCM M4

10 6 34 38

20 7 55 58

30 8 71 77

Number of receivers (a)

40 8 82 91

50 10 89 100

60 10 97 109

70 11 102 115

80 12 103 124

90 14 106 129

100 14 108 129

90 17 166 203

100 17 175 206

Number of receivers (a)

1000 900 800 700 600 500 400 300 200 100 0

10 CAMF 911 m_MCM 158 M4 155

Network Size : 80 Wireless Router Nodes 210 Average Delay (ms)

Average Throughput (Number of packets)

Network Size : 80 Wireless Router Nodes

20 891 95 89

30 884 70 62

40 50 60 877 874 850 58 51 48 52 43 43 Number of receivers

70 849 44 40

80 809 41 37

90 798 40 35

100 780 38 33

(b) Fig. 8. The average throughput comparison. (a) 40 nodes. (b) 80 nodes.

180 150 120 90 60 30 0 CAMF m_MCM M4

10 7 41 44

20 8 66 72

30 9 90 103

40 9 106 123

50 8 115 141

60 12 130 156

70 12 145 175

80 13 157 191

Number of receivers (b)

assignment is also re-performed. For considering multiple multicast trees in a WMN, a lot of multicast trees have existed before constructing a new multicast tree. The number of existing multicast trees is randomly set between 2 and 8 in each simulation run. The duration of a simulation run is the time to send out 100 packets from the source node. The following simulation results show the mean of 50 simulation runs with 95% confidence interval. 4.2. Simulation results Fig. 7 shows the comparison of the ICMT metric among the CAMF, m-MCM, and M4 algorithms by varying the number of receivers from 10 to 100. The CAMF, m-MCM, and M4 represent the channel assignment algorithms developed by our approach and the approaches of Zeng et al. (2010) and Nguyen and Nguyen (2008), respectively. Note that m-MCM algorithm is the modified version of the MCM algorithm in Zeng et al. (2010), which considers the two-hop interference range in channel assignment. In the original MCM algorithm (Zeng et al., 2010), the interference is only considered within one-hop transmission range. With this modification, m-MCM algorithm does not incur the hidden terminal problem, which can enhance the performance of the original MCM algorithm. As shown in Fig. 7, CAMF algorithm has the smallest ICMT value. In CAMF algorithm, whenever selecting a channel for a node, the channel with the minimum interference cost will be selected. Correspondingly, the small ICMT value of the whole multicast tree can be obtained. Although m-MCM algorithm also assigns the channel with the minimum interference cost for each on-tree node, the

Fig. 9. The average delay comparison. (a) 40 nodes. (b) 80 nodes.

distance and path forwarding weight are not considered in the calculation of the interference cost. Unlike the above two algorithms, the channel selection metric of M4 algorithm does not minimize the interference cost. Instead, it focuses on the balance of the channel separations among nodes. Due to not minimizing the interference cost, M4 algorithm has the largest ICMT value. The CAMF algorithm can improve the ICMT value of m-MCM algorithm at least 42% and 41% in the 40 and 80 nodes, respectively. Compared to M4 algorithm, the improvement ratio of the ICMT value is at least 51% and 50% in the 40 and 80 nodes, respectively. The average throughput comparison is shown in Fig. 8. In Fig. 8, we would like to measure the average number of packets received by a receiver in a simulation run. From Fig. 8, we also see that the CAMF algorithm outperforms the other two algorithms in this throughput metric. In the CAMF algorithm, the channel assignment sequence follows the magnitude of the path forwarding weight. In addition, the distance and channel separation are taken into account in the channel selection. Compared to the m-MCM algorithm, the throughput can be enhanced at least 5.38 times and 5.75 times in 40 and 80 nodes, respectively. As for the comparison with the M4 algorithm, the throughput enhancement has no obvious differences with that in the m-MCM algorithms. The average delay comparison is shown in Fig. 9. As mentioned in the CAMF algorithm, the node with a large path forwarding weight is assigned the channel with less interference.

Please cite this article in press as: Lin, J.-W., Lin, S.-M., A weight-aware channel assignment algorithm for mobile multicast in wireless mesh networks. J. Syst. Software (2014), http://dx.doi.org/10.1016/j.jss.2014.03.040

G Model

ARTICLE IN PRESS

JSS-9308; No. of Pages 10

J.-W. Lin, S.-M. Lin / The Journal of Systems and Software xxx (2014) xxx–xxx

separation into account. In addition, the proposed channel assignment approach particularly considers the channel re-assignment problem due to receiver mobility. To avoid performing channel reassignment frequently, the contention window adjustment is first done to reflect receiver mobility. The channel re-assignment is not performed until packet losses will occur in a node. Finally, simulation results showed that our approach outperforms the approaches of Zeng et al. (2010) and Nguyen and Nguyen (2008) in the total interference cost, throughput, delay, and virtual transmission time.

Network Size: 40 Wireless Router Nodes 70

Virtual Transmission Time (ms)

9

60 50 40 30 20 10 0

10

20

30

40

50

60

70

80

90

100

m_MCM

3 13

3 21

3 28

5 33

5 35

6 40

6 43

6 44

7 46

8 47

M4

14

25

34

42

47

53

58

63

64

65

CAMF

Number of receivers

Acknowledgement This research was supported by the National Science Council, Taiwan, under Grant NSC 102-2221-E-030 -010 -MY3.

References

(a)

Virtual Transmission Time (ms)

Network Size : 80 Wireless Router Nodes 110 100 90 80 70 60 50 40 30 20 10 0

10

20

30

40

50

60

70

80

90

100

CAMF

4

4

5

7

8

8

9

9

10

11

m_MCM

19 20

28 33

37 47

43 56

51 70

58 76

63 84

70 96

75 100

75 106

M4

Number of receivers (b) Fig. 10. The average virtual transmission time comparison. (a) 40 nodes. (b) 80 nodes.

This preference can make more receivers quickly receive packets since the large-weight node is also with more receivers within its path forwarding range. In Fig. 9, the CAMF algorithm has the shortest average delay, which also significantly improves the average delay of m-MCM and M4 algorithms. The comparison of the average virtual transmission time is depicted in Fig. 10. The CAMF algorithm makes the large-weight node with a smaller contention window size and the small-weight node with a larger contention window size. Due to differentiating the setting of the contention window size for each on-tree node, more receivers can take less time to correctly receive packets without incurring collisions. In contrast, m-MCM and M4 algorithms follow the IEEE 802.11 standard to set the contention window size of each on-tree node. The virtual transmission time of m-MCM and M4 algorithms is much larger than that of the CAMF algorithm. 5. Conclusions This paper has presented a new distributed channel assignment approach. To enhance network throughput, our approach is based on descending order of the path forwarding weights of nodes to arrange the channel assignment sequence among nodes. To fully exploit all non-overlapping and partially-overlapping channels, the channel selection metric takes two factors of distance and channel

Akyldiz, I.F., Wang, X., 2005. A survey on wireless mesh network. IEEE Commun. Mag. 43 (September (9)), S23–S30. Bilh, A., Chou, C.T., 2012. An opportunistic multicast routing protocol for wireless mesh networks. In: 2012 IEEE 37th Conference on Local Computer Networks (LCN), pp. 288–291. Bononi, L., Conti, M., Gregori, E., 2003 Dec. Runtime optimization of IEEE 802.11 wireless LANs performance. IEEE Trans. Parallel Distrib. Syst. 14 (12), 1–15. Broch, J., Maltz, D.A., Johnson, D.B., Hu, Y.C., Jetcheva, J., 1998. A performance comparison of multi-hop wireless ad hoc network routing protocols. In: Proceedings of the Fourth Annual ACM/IEEE International Conference on Mobile Computing and Networking, October, pp. 85–97. Bruno, R., Conti, M., Gregori, E., 2005. Mesh networks: commodity multihop ad hoc networks. IEEE Commun. Mag. 43 (March (3)), 123–131. Bukkapatanam, V., Franklin, A.A., Murthy, C.S.R., 2009. Using partially overlapped channels for end-to-end flow allocation and channel assignment in wireless mesh networks. In: Proc. IEEE Communications, pp. 1–6. Cali, F., Conti, M., Gregori, E., 2000. Dynamic tuning of the IEEE 802.11 protocol to achieve a theoretical throughput limit. IEEE Trans. Netw. 8 (December (6)), 785–799. Cormen, T.H., Leiserson, C.E., Rivest, R.L., Stein, C., 2001. Introduction to Algorithms, second ed. The MIT Press, McGraw-Hill Higher Education. Ding, Y., Huang, Y., Zeng, G., Xiao, L., 2012. Using partially overlapping channels to improve throughput in wireless mesh networks. IEEE Trans. Mobile Comput. 11 (November (11)), 1720–1733. Hwang, F.K., Richards, D.S., Winter, P., 1992. The Steiner tree problem. In: Annals of Discrete Mathematics. Elsevier, North Holland. IEEE 802, 1999. IEEE 802.11 WG, Part 11: Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY) Specifications,” Standard. IEEE, August. Kyasanur, P., Vaidya, N.H., 2005. Routing and interface assignment in multi-channel multi-interface wireless networks. In: Proc. IEEE Wireless Communications and Networking, vol. 4, March, pp. 2051–2056. Kyasanur, P., Vaidya, N.H., 2006. Routing and link-layer protocols for multi-channel multi-interface ad hoc wireless networks. ACM Mobile Comput. Commun. Rev. 10 (January (1)), 31–43. Lin, J.W., Zhuang, J.Y., 2013. A delay-constrained and priority-aware channel assignment algorithm for efficient multicast in wireless mesh networks. J. Syst. Softw. 86 (March (3)), 798–800. Liu, T., Liao, W., 2006. Capacity-aware routing in multi-channel multi-rate WMNs. In: Proc. IEEE ICC, vol. 5, pp. 1971–1976. Liu, T., Liao, W., 2010. Multicast routing in multi-radio multi-channel wireless mesh networks. IEEE Trans. Wireless Commun. 9 (October (10)), 3031–3039. MathWorks, 2013. MathWorks – MATLAB and Simulink for Technical Computing, http://www.mathworks.com Mhatre, V., 2007. Enhanced wireless mesh networking for ns-2 simulator. In: ACM SIGCOMM Computer Communication Review, pp. 69–72. Mishra, A., Shrivastava, V., Banerjee, S., 2006. Partially overlapped channels not considered harmful. Proc. ACM SIGMETRICS/Performance Evaluation Review 34 (June (1)), 63–74. Naveed, A., Kanhere, S.S., Jha, S.K., 2007. Topology control and channel assignment in multi-radio multi-channel wireless mesh networks. In: Proc. IEEE MASS, October, pp. 1–9. Nguyen, H.L., Nguyen, U.T., 2008. Chanel assignment for multicast in multi-channel multi-radio wireless mesh networks. Wiley InterScience, Wireless Commun. Mobile Comput. 1 (April (4)), 557–571. Oe, K., Koyama, A., Barolli, L., 2013. Performance evaluation of a multicast routing protocol for wireless mesh networks considering network load. In: 2013 IEEE 27th International Conference on Advanced Information Networking and Applications (AINA), pp. 591–597. Piechowiak, M., Zwierzykowski, P., 2012. The evaluation of multicast routing algorithms with delay constraints in mesh networks. In: 2012 8th International Symposium on Communication Systems, Networks & Digital Signal Processing (CSNDSP), pp. 1–5.

Please cite this article in press as: Lin, J.-W., Lin, S.-M., A weight-aware channel assignment algorithm for mobile multicast in wireless mesh networks. J. Syst. Software (2014), http://dx.doi.org/10.1016/j.jss.2014.03.040

G Model JSS-9308; No. of Pages 10 10

ARTICLE IN PRESS J.-W. Lin, S.-M. Lin / The Journal of Systems and Software xxx (2014) xxx–xxx

Rad, A.H.M., Wong, V.W.S., 2006. Joint optimal channel assignment and congestion control for multi-channel wireless mesh networks. In: Proc. IEEE ICC, vol. 5, June, pp. 1984–1989. Ramachandran, K.N., Belding, E.M., Almeroth, K., Buddhiko, M., 2008. Interferenceaware channel assignment in multi-radio wireless mesh networks. Proc. IEEE INFOCOM 7, 667–676. Raniwala, A., Chiueh, T.C., 2004. Evaluation of a wireless enterprise backbone network architecture. In: Proc. IEEE 12th High Performance Interconnects, August, pp. 98–104. Raniwala, A., Chiueh, T., 2005. Architecture and algorithms for an IEEE 802.11-based multi-channel wireless mesh network. In: Proc. IEEE INFOCOM 2005, vol. 3, pp. 2223–2234 (March 2005). Rong, B., Qian, Y., Lu, K., Hu, R.Q., 2008. Enhanced QoS multicast routing in wireless mesh networks. IEEE Trans. Wireless Commun. 7 (June (6)), 2119. Skali, H., Ghosh, S., Das, S.K., Lenzini, L., Conti, M., 2007. Channel assignment strategies for multi-radio wireless mesh networks: issues and solutions. IEEE Commun. Mag. 45 (November (11)), 86–95. So, J., Vaidya, N., 2004. Multi-channel MAC for ad hoc networks: handling multichannel hidden terminals using a single transceiver. In: Proc. ACM MobiHoc, May, pp. 222–233.

Subramanian, A.P., Gupta, H., Das, S.R., Jing, C., 2008. Minimum interference channel assignment in multi-radio wireless mesh networks. IEEE Trans. Mobile Comput. 7 (December (12)), 1459–1473. The network simulator – ns2, 2013. The network simulator – ns2, http://www.isi. edu/nsnam/ns/ Zeng, G., Wang, B., Ding, Y., Xiao, L., Mutka, M.W., 2010. Efficient multicast algorithms for multichannel wireless mesh network. IEEE Trans. Parallel Distrib. Syst. 21 (January (1)), 86–99. Jenn-Wei Lin is currently a professor in the Department of Computer Science and Information Engineering, Fu Jen Catholic University, Taiwan. He received the M.S. degree in Computer and Information Science from National Chiao Tung University, Hsinchu, Taiwan, in 1993, and the Ph.D. degree in Electrical Engineering from National Taiwan University, Taipei, Taiwan, in 1999. He was a researcher at Chunghwa Telecom Co., Ltd., Taoyuan, Taiwan from 1993 to 2001. His current research interests are cloud computing, mobile computing and networks, distributed systems, and fault-tolerant computing. Shian-Min Lin received the M.S. degree in Computer Science and Information Engineering from Fu Jen Catholic University, Taiwan, in 2010. His research interests include mobile networks, cloud computing, and fault-tolerant computing.

Please cite this article in press as: Lin, J.-W., Lin, S.-M., A weight-aware channel assignment algorithm for mobile multicast in wireless mesh networks. J. Syst. Software (2014), http://dx.doi.org/10.1016/j.jss.2014.03.040