A Cooperative Channel Assignment protocol for multi-channel multi-rate wireless mesh networks

A Cooperative Channel Assignment protocol for multi-channel multi-rate wireless mesh networks

Ad Hoc Networks 9 (2011) 893–910 Contents lists available at ScienceDirect Ad Hoc Networks journal homepage: www.elsevier.com/locate/adhoc A Cooper...

1MB Sizes 7 Downloads 204 Views

Ad Hoc Networks 9 (2011) 893–910

Contents lists available at ScienceDirect

Ad Hoc Networks journal homepage: www.elsevier.com/locate/adhoc

A Cooperative Channel Assignment protocol for multi-channel multi-rate wireless mesh networks Sok-Hyong Kim ⇑, Dong-Wook Kim, Young-Joo Suh Department of Computer Science & Engineering, Pohang University of Science & Technology (POSTECH), Pohang, Republic of Korea

a r t i c l e

i n f o

Article history: Received 26 October 2009 Received in revised form 12 April 2010 Accepted 13 October 2010 Available online 20 October 2010 Keywords: Channel assignment Multi-channel Multi-rate Wireless mesh networks

a b s t r a c t Wireless mesh networks (WMNs) are considered as one of the outstanding technologies that provide cost-effective broadband Internet accesses to users. The off-the-shelf IEEE 802.11 PHY and MAC specifications support both multi-channel and multi-rate capabilities. However, designing an efficient channel assignment protocol that exploits both available channels and data rates is a critical issue to overcome the network performance degradation. In multi-rate wireless networks, high-rate links may severely suffer from throughput degradation due to the presence of low-rate links. This problem is often referred to as performance anomaly. In this paper, we design a Cooperative Channel Assignment (CoCA) protocol to consider the performance anomaly problem in multi-channel multi-rate WMNs. Based on the proposed family architecture, CoCA exploits the Estimated Delivery Time (EDT) metric and an efficient balancing algorithm. Using the EDT metric, CoCA performs channel assignments to form Multi-channel Multi-hop Paths (MMPs) so that CoCA separates high-rate links from low-rate links over different channels and increases the channel diversity. In addition, CoCA considers the performance anomaly problem and throughput fairness during channel assignments by utilizing the balancing algorithm. We evaluated the performance of CoCA through extensive simulations and found that CoCA outperforms existing well-known channel assignment protocols for WMNs. Ó 2010 Elsevier B.V. All rights reserved.

1. Introduction Recently, wireless mesh networks (WMNs) have received much attention as a promising technology to provide ubiquitous broadband Internet accesses in enterprises, campuses, and metropolitan areas. WMNs offer several desirable advantages in deploying cost-effective, highly flexible, robust, and reconfigurable backhaul wireless links over large areas. A typical WMN comprises of a set of stationary wireless mesh routers that construct the multi-hop backbone with wireless links and usually do not have strict constraints on power consumption [1]. Each mesh router offers Internet accesses for wireless mesh clients whose traffic is forwarded in a multi-hop fashion to or ⇑ Corresponding author. Tel.: +82 54 279 5671; fax: +82 54 279 5699. E-mail addresses: [email protected] (S.-H. Kim), [email protected] (D.-W. Kim), [email protected] (Y.-J. Suh). 1570-8705/$ - see front matter Ó 2010 Elsevier B.V. All rights reserved. doi:10.1016/j.adhoc.2010.10.007

from the Internet. One or several routers act as gateways connected to the Internet via high-speed wires (see Fig. 1). One of the most important issues for WMNs is network capacity. Exploiting multiple non-overlapping channels has shown to be an effective solution to improve the network capacity of WMNs. This improvement is mainly caused by parallel transfers over multiple channels. In multi-channel WMNs, each router can be equipped with multiple network interface cards (NICs) operating on distinct frequency bands within IEEE 802.11 [2]. When two neighboring interfaces operate on a common channel, they can make a logical link. Hence, there may be a large number of logical links in WMNs. Even though IEEE 802.11b/g and 802.11a support up to 3 and 12 non-overlapping channels respectively, the number of channels is limited. This implies that some logical links may share a common channel. When two neighboring links use the same channel at the same time, they surely interfere with each other. Thus,

894

S.-H. Kim et al. / Ad Hoc Networks 9 (2011) 893–910

Internet Wired links A

D

Mesh Routers

B

E

Gateways

C

F

G

Wireless links H

I

J

Mesh Clients Fig. 1. Wireless Mesh Network (WMN).

those interfering links cannot be activated simultaneously, which severely aggravates the overall network capacity in multi-hop wireless networks such as WMNs [3]. In order to overcome the problem, various channel assignment protocols have been explored [6–21]. Today’s IEEE 802.11 technology also provides multi-rate capability. For example, IEEE 802.11b supports four data rates (i.e., 1, 2, 5.5, and 11 Mbps) and IEEE 802.11a supports eight data rates (i.e., from 6 to 54 Mbps) depending on the channel conditions. In stationary systems, such as WMNs with fixed mesh routers, there is a dependency between the data rate of wireless links and the distance between the two routers [30]. Thus, as the distance between the two routers increases, a lower data rate is typically chosen. To select one proper data rate out of multiple available rates, several link adaptation protocols have been explored [22–25]. In general, logical links in WMNs may use different data rates. This implies that several interfering links may use distinct data rates on the same channel. According to [4], the capacity of high-rate links is seriously influenced by low-rate links when those different rate links share a common wireless channel. The fundamental reason is that IEEE 802.11 MAC gives an equal opportunity for contending links trying to acquire a wireless medium. Since a low-rate link usually occupies the wireless medium longer than a high-rate link, the overall network performance may degrade. This problem is often referred to as performance anomaly. To solve the performance anomaly problem, various protocols have been proposed [25–32]. Our main objective, in this paper, is to design a novel distributed channel assignment protocol, called Cooperative Channel Assignment (CoCA), for multi-channel multi-rate (MCMR) WMNs. Basically, CoCA constructs the family architecture. To assign channels on the family architecture, CoCA utilizes a new metric, namely, Estimated Delivery Time (EDT), and an efficient balancing algorithm that increases the RateBalancing Function (RBF). By exploiting the EDT metric, CoCA makes Multi-channel Multi-hop Paths (MMPs) to isolate the high-rate links from the low-rate links and to increase the channel diversity on the family architecture. With the balancing algorithm, CoCA performs channel assignment to address the performance anomaly and the throughput fairness of multi-hop flows that traverse different paths.

Our contributions are as follows: (i) Our approach considers the performance anomaly problem during channel assignments in MCMR WMNs where each router operates in a multi-hop fashion. Other multi-channel protocols that address the performance anomaly assumed single-hop wireless networks. (ii) Our multi-channel approach to address the performance anomaly problem does not require a central coordinator since each router performs channel assignments in a distributed manner, while existing multi-channel protocols take a centralized approach. (iii) Our protocol is suitable for commodity 802.11-based WMNs since no modifications are required to legacy 802.11 interfaces. (iv) Our extensive simulation results show that CoCA outperforms the existing well-known multi-channel protocols in WMNs. The remainder of this paper is organized as follows. We present related work in Section 2. System model and performance anomaly problem are given in Section 3. Then, we describe the CoCA protocol in Section 4. Section 5 discusses our extensive simulation results. Finally, we conclude this paper in Section 6.

2. Related work To exploit multiple channels in multi-hop wireless networks, various channel assignment protocols have been proposed extensively. In general, these protocols can be grouped into two categories: (i) distributed or centralized approaches [6–16]; (ii) static or dynamic approaches [17–21]. In the distributed approaches [6–9], each node makes its own channel assignment decision for its interfaces using local information. For example, Raniwala and Chiueh [6] assumed a spanning tree architecture for WMNs, so-called Hyacinth, where the gateways are the roots. Each router on the tree is equipped with two parts of NICs: up-NICs to connect itself to its parent router and down-NICs to provide Internet connectivity for its child routers. In [8], a simple greedy algorithm assumed a binary interference model for channel assignments in multi-radio WMNs. In [9], the channel assignment algorithm exploits the channel grouping concept to mitigate the channel dependency problem. On the contrary, centralized approaches [10–16] require a central coordinator that periodically collects the global topology and traffic information and then performs a predefined optimization algorithm for channel assignments. For example, TiMesh [10] has been proposed for WMNs, which jointly formulates routing, interface and channel assignment, and topology formation into a linear optimization problem. In [11], the authors took a measurement-based channel assignment approach to interfaces (instead of links). In [12], the Flow-based Channel and Rate Assignment (FCRA) took the centralized approach in designing a greedy heuristic algorithm for the channel and rate assignment in WMNs. But, in general, centralized approaches introduce high computation overheads at a certain router, and it is impractical for gathering the global network information. In static approaches [6,17,18], the channel assignments are done permanently or last for a much long time scale than those by per-packet basis. For example, the static

895

S.-H. Kim et al. / Ad Hoc Networks 9 (2011) 893–910

algorithm in [17] assumed the Identical Channel Assignment (ICA) which requires multiple interfaces for each channel. In ICA, the nodes allocate a channel to each interface permanently once they are operational. In Hyacinth [6], the allocated channels lasts for several minutes or hours. On the contrary, the dynamic approaches allow each node to change its channel on a per-packet basis to utilize better channels opportunistically. Unlike static approaches, dynamic approaches [19–21] require an extra coordination mechanism to ensure that the transmitting and receiving interfaces are on a common channel simultaneously. For instance, in MMAC [20], each node periodically meets at a rendezvous channel to negotiate the channels for data transfers in the next phase. In SSCH [21], a pair of nodes performs channel hopping based on a pseudo-random sequence to communicate on a common channel. However, these dynamic approaches are difficult to apply since the commodity 802.11 interfaces incur a channel switching delay in the order of milliseconds [14]. None of the above protocols addresses the performance anomaly problem that typically occurs under realistic router distributions in MCMR WMNs. To combat the performance anomaly, various approaches have been proposed that: (i) control the number of frames transmitted via low-rate links [28], (ii) adjust the access parameters such as contention window size [29], initial backoff window and frame size [30], (iii) transmit multiple back-to-back data frames over high-rate links [25], and (iv) relay traffic from nodes using low-rate links [31,32]. However, some of the protocols require extensions to the off-the-shelf IEEE 802.11 devices. Our main interest in this paper is designing a ‘‘multichannel approach’’ to distribute different rate links over multiple non-overlapping channels without any modifications to the IEEE 802.11 specifications. This approach not only addresses the performance anomaly problem, but also enables concurrent transfers. Related works that tried to consider the performance anomaly via channel assignments without extensions to IEEE 802.11, which have a very similar motivations to ours are [33–37]. For example, DR-CA [33] assumes single-hop networks, and each node is equipped with an interface per channel. Then, a central coordinator assigns multiple channels to links that use different data rates, so that the data rate sum of links tuned to a certain channel is equal or comparable to that of other channels. In MRMC [34], a central node (e.g., access point (AP)) has an interface per data rate and statically assigns different channels to interfaces. Then, a node is associated with a proper interface of AP, based on its channel condition measurement. In RB-CA [35,36], IEEE 802.11b is assumed and the nodes form a tree-based WMN architecture, where the gateways are the root nodes. RB-CA uses the rate-hop metric to consider the performance anomaly. In particular, a Multi-channel Opportunistic Auto Rate (MOAR) [26,27] has been suggested, which is extended from OAR [25], to combat the performance anomaly problem in multi-channel environments. In MOAR, a node has a single interface and opportunistically skips available channels in search of better quality channels. One data transfer starts from a common channel, so-called home channel, and repeats the RTS/CTS handshakes. Because one data transfer occupies the home channel until it finishes, parallel

transfers cannot be activated over different channels. This implies that the main objective of MOAR is to exploit ‘‘frequency diversity’’ rather than ‘‘rate separation’’, which enables parallel transfers via multiple channels. In addition, MOAR extends the legacy IEEE 802.11 devices and assumes the single-interface operation. 3. System model and performance anomaly in multihop networks In this section, we present our system model, and then we describe the performance anomaly problem in multihop networks. For the rest of this paper, we use the terms node and router interchangeably. 3.1. System model We consider MCMR WMNs based on IEEE 802.11b or 802.11a, which are the dominant technologies in commodity WMNs [5]. IEEE 802.11b supports four data rates (namely, 1, 2, 5.5, and 11 Mbps) and three non-overlapping channels, while IEEE 802.11a supports eight data rates from 6 to 54 Mbps and 12 non-interfering channels. Although either 802.11b or 802.11a can be used for the proposed protocol, we consider IEEE 802.11a-based WMNs for the rest of this paper, since IEEE 802.11a provides higher data rates and more channels. For simplicity, we make some assumptions as follows. First, for practical deployments, each node is equipped with multiple (at least two) 802.11a interfaces. Second, the data rate of links is determined based on the distance between two nodes [30]. For more accurate data rate measurements, many techniques can be used (e.g., [24,25]). 3.2. Performance anomaly in multi-hop networks Typically, the performance anomaly problem has been discussed in single-hop single channel networks (e.g., WLANs). However, we will observe the performance anomaly problem in multi-hop networks such as WMNs, where there are hidden nodes. Fig. 2 shows a sample multi-hop topology, where there are six nodes A–F. For simple illustration, we assume that each node in this figure has two interfaces. Node A is a hidden node of node D and vice versa, while the other nodes are within the interference range of each other. Here, the two hidden nodes A and D interfere with each other. For instance, node B that receives the transmission from node A is interfered with by a transmission from node D which is located in the interference range of node B. In Fig. 2, each link operates on a common 54Mbps link

A

24Mbps link

F

C

B

E

D

Hidden nodes A and D

Fig. 2. A sample topology of multi-hop networks.

896

S.-H. Kim et al. / Ad Hoc Networks 9 (2011) 893–910

Throughput (Mbps)

12

Table 1 Design goals and the corresponding methods of CoCA.

Total A-B-C D-E-F

10 8 6 4 2

Design goals

Methods

1. Considering the performance anomaly 2. Increasing channel diversity

EDT metric, balancing algorithm Family architecture, EDT metric Family architecture EDT metric, balancing algorithm All methods in CoCA protocol

3. Increasing route utilization 4. Increasing throughput fairness

0 0

5

10

15

20

25

30

Time (seconds)

5. No modifications to IEEE 802.11

Fig. 3. The network throughput of topology shown in Fig. 2.

channel and has different thickness depending on its data rate (or distance). That is, the data rate of links A–B and B–C is 54 Mbps, and the data rate of links D–E and E–F is 24 Mbps. Two flows of A–B–C and D–E–F are generated. For example, node A generates a flow to node C via node B over two 54 Mbps links. We observed the network throughput of Fig. 2 via ns-2 simulations. Nodes A and D start a saturated UDP flow at t = 10 and 20 s, respectively. Fig. 3 shows the overall network throughput of Fig. 2. From Fig. 3, we can observe that the total throughput becomes worse when there are flows over low-rate links. For example, the total throughput decreases from 9.3 Mbps to 6.5 Mbps after flow D–E–F starts at 20 s over the two 24 Mbps links. In addition, the throughput of each flow shows a comparable performance due to the performance anomaly after 20 s. Therefore, we can conclude that any well-designed channel assignment protocols without considering the performance anomaly may suffer from severe performance degradations. 4. Cooperative Channel Assignment protocol In this section, we explain the proposed Cooperative Channel Assignment (CoCA) protocol. Basically, CoCA constructs an architecture for WMNs, called family architecture. To form a family on the architecture, nodes equipped with multiple interfaces uses the Estimated Delivery Time (EDT) metric and the balancing algorithm. For the channel assignment of the family architecture, each node uses the EDT metric and the balancing algorithm. The balancing algorithm increases the Rate-Balancing Function (RBF) value derived from the throughput model in [30] to leverage the capacity of each family on the architecture. For the routing, each node computes the cost of the paths on the family architecture by using the EDT metric. For more details of the whole procedure of CoCA, please refer to Section 4.3 (Fig. 5). In the following, we explain the design goals of CoCA, and then describe the family architecture and its operation for CoCA. Next, we propose the EDT metric and the RBF based balancing algorithm. 4.1. Design goals Our design goals of CoCA and the proposed methods to achieve each of the goals are as follows (see Table 1). First, the channel assignment must address the performance

anomaly to leverage the network capacity of MCMR WMNs. The basic idea is to separate high-rate links from low-rate links by using multiple channels in a distributed fashion. For this purpose, CoCA exploits the EDT metric and the balancing algorithm. Second, a channel assignment protocol has to utilize all the available channels to increase the channel diversity. To achieve this goal, CoCA is based on the family architecture and exploits the EDT metric. Third, increasing network connectivity ensures an improved network capacity. For this goal, CoCA builds a family-based WMN architecture, similar to a tree-based WMN (e.g., [6]). A tree-based WMN has several desiring features: (i) it can break a single collision domain into multiple collision domains efficiently via multiple channels in a distributed fashion. (ii) it is a suitable architecture for traffic aggregation when most of the traffic in WMNs are for Internet accesses. But, tree-based WMNs greatly restrict the possible paths that available in single channel networks since they mainly focus on the Internet access traffic. Considering non-Internet access traffic, CoCA attempts to improve the network connectivity of the tree topology by utilizing the ‘‘secondary links’’ between the child nodes that belong to the same parent node. Fourth, providing throughput fairness among different multi-hop flows is also important, since nodes positioned far away from the gateway may experience low performance during Internet accesses. For this goal, CoCA utilizes the EDT metric and the balancing algorithm. Finally, no modifications to the IEEE 802.11 specifications are required. Modifying the legacy IEEE 802.11 devices may incur significant deployment costs. Any proposed metrics, algorithms, and methods proposed in CoCA just utilize the information that can be obtained from 802.11 devices without extensions to the IEEE 802.11 standard.

4.2. Overview of family architecture Fig. 4 illustrates an example family architecture in CoCA, where all nodes are connected to the gateway (node G) for the Internet access. Solid lines indicate routing paths, while dotted lines show the physical links between two nodes. All the links on the architecture have four different channel numbers. Basically, CoCA nodes form a group, called a family, consisting of a single parent node and its multiple child nodes. In Fig. 4, there are four

897

S.-H. Kim et al. / Ad Hoc Networks 9 (2011) 893–910

Wired Network 3 2

D 2

F2

G

F1 3 3

A 2

B 4

E F

3 3

F3

C

1

1

F4

1

I

J 1

H

UF-NIC Primary link Secondary link LF-NIC Primary link after H joined F3 Secondary link after H joined F3 Fig. 4. An illustration of family architecture in CoCA.

families from F1 to F4. Any two nodes in a family can build a direct link between them, if feasible. For a child node, the other child nodes in the same family are brothers. For example, Node G and its child nodes A, B, and C form a family (F1). Nodes A and B are brothers of node C. To construct a family, each node uses two types of interfaces: a single upper family interface (UF-NIC) and one or multiple lower family interfaces (LF-NICs). UF-NIC connects a node to its upper family along the path toward the gateway. LF-NICs provide the Internet access for the lower families. In CoCA, we define two link types: primary link and secondary link. A primary link is a link between a parent node and a child node, while a secondary link is a link between two child nodes. For example, link G–A in Fig. 4 is a primary link and link A–B is a secondary link. CoCA gives higher priorities to primary links than secondary links during the channel assignment phase since the Internet access is the dominant traffic pattern in WMNs, while peer-topeer (P2P) traffic is relatively lighter than Internet access traffic [1,6,7]. Note that the family architecture in CoCA is similar to the existing tree-based WMN architecture proposed in Hyacinth [6]. However, there are two key differences between CoCA and Hyacinth. First, CoCA exploits the secondary links among child nodes under the same parent node, while Hyacinth does not utilize such secondary links. Second, CoCA uses the EDT metric to construct the family architecture by considering the performance anomaly problem, while Hyacinth just uses the hop count metric to form the tree WMN architecture, which introduces the performance anomaly problem. In the following, we explain the operation of the family construction.

4.3. Family construction 4.3.1. Family advertisement To inform the node existence, each node in CoCA periodically broadcasts Family Advertisement (FA) messages every Tr interval to their physical 1-hop neighbors through

LF-NICs. Upon receiving FAs from neighbors, each node updates the corresponding entry of the Neighbor Table (NT) to maintain the data rate to the neighbor, the operating channel number used by the neighbor, and the neighbor address. Table 2 shows the format of FAs, which includes the source address of the FA, internet accessibility, channel number of LF-NICs along with LF-NIC IDs, the list of child addresses associated with each LF-NIC, time-tolive (TTL) of 1, sequence number for freshness, and the information to calculate the value of the EDT metric (which will be discussed in Section 4.4) utilized for the channel assignment of primary links. These fields can be obtained offline from the routing layer and network interface drivers without extensions to the IEEE 802.11 devices [44,45]. Equipping multiple LF-NICs implies that each node can support multiple lower families. These multiple lower families are identified by LF-NIC ID and maintained by the Family Table (FT), which contains a list of child addresses per family. For the channel of each family, CoCA allocates the ‘‘least loaded channels’’ to reflect the current traffic load condition in the vicinity. Here, we define the least loaded channel as the channel with the least amount of traffic loads among channels. This can be achieved by periodically exchanging Family Channel Load (FCL) messages with physically H-hop neighbors, where H is the ratio between interference and transmission ranges. FCL includes the transmitted or received traffic counts (in bytes) of channels via LF-NICs during a Tr interval, and the TTL value of H. Since the H value is limited (typically 2 or 3), CoCA does not flood the FCL messages in network-wide. When a parent node decides to change its LF-NIC’s channel, it informs its child nodes of the new channel via Family Channel Switch (FCS) messages. Initially, all the fields of FA except the source address and TTL are set to invalid values, and FA messages are broadcast on every channel. However, after a node joins a family through its UF-NIC, the node will broadcast FA messages with valid field values. At the beginning, the gateway only knows the Internet path. In addition, nodes can switch one of the LF-NICs to the channel of neighbors to broadcast the FA and FCL messages, because they know the current channel of neighbors from the NT.

4.3.2. Primary link formation Since a primary link has a higher priority than a secondary link, CoCA first performs channel assignments for primary links, and then channel assignments for secondary

Table 2 Fields in Family Advertisement (FA) messages. Fields

Meanings

srcAddr internetAccess chanNum[] nicID[] childAddrList[] ttl seqNo edt

The source address Internet accessibility Channel numbers of LF-NICs ID numbers of available LF-NICs The list of child addresses for each LF-NIC Time-to-live The sequence number of FA messages Information to calculate the EDT metric

898

S.-H. Kim et al. / Ad Hoc Networks 9 (2011) 893–910

Node

New family (F3)

H

B

F

Old family (F4 )

C

I

(1) FA Calculating EDT & parent selection (2) FREQ (ADD) Balancing Algorithm (3) FREP (4) FREQ (DEL) (5) BREQ (DEL) (6) BREP (DEL) Switch to new family (F3) & brother selection (7) BREQ (ADD) (8) BREP (ADD) Normal communications

Fig. 5. The whole procedure of family formation in CoCA.

links are followed. Fig. 5 illustrates the whole procedure of CoCA by using the architecture shown in Fig. 4. In Figs. 4 and 5, we assume that nodes B and C have already joined family F1 and they have both primary links toward the gateway and secondary links to their brothers. In addition, nodes B and C have child nodes F and I, respectively. Then, nodes B and C periodically broadcast FA messages. Upon receiving a FA from node B, node H determines whether to join the family (F3) supported by node B or not. If node H has no primary link or finds that the primary link to node B is better than its current primary link based on the EDT metric (see Section 4.4), then it sends a Family Request (FREQ) message to node B for joining F3. FREQ includes the address of node H, the status of ‘‘ADD’’, and the requesting LF-NIC ID of node B. If node H has child nodes, FREQ also includes the address of the child nodes. After receiving FREQ, node B performs the balancing algorithm (see Section 4.5) to distribute the primary links of child nodes over its LF-NICs. This balancing algorithm determines the final family ID of node H, if multiple families are provided by node B. Then, node B inserts node H to the determined entry in the FT. Subsequently, node B creates a routing entry for the child node H and responds with a Family Reply (FREP) message. This FREP includes the child addresses of the determined family, the ‘‘minimum data rate’’ among the primary links, and the family channel number. Upon receiving the FREP, node H sends a FREQ with the status of ‘‘DEL’’ to the previous parent (e.g., node C in Fig. 4), if node H changes its primary links. Then, node H assigns the channel in FREQ from node B to its UF-NIC. Subsequently, node H sets up the primary link to node B. At the same time, node B forwards the received FREQ to its ancestors on the path to the gateway. Then, the ancestors insert the routing entry for the new child node H and node H’s child nodes. On the contrary, the ancestors of node C remove the routing entry for the old child node H and node H’s child nodes from their routing tables.

When there are multiple gateways, CoCA selects one gateway by using the EDT metric. For instance, suppose that there are two gateways (X and Y) near a mesh router (Z). Then, the mesh router Z can use one of the two links, X-Z and Y-Z. When the EDT metric of link X-Z is smaller than that of link Y-Z, the mesh router Z joins gateway X. In this way, CoCA works well in multiple gateway environments. 4.3.3. Secondary link formation To set up secondary links, node H sends Brother Request (BREQ) messages to the previous brothers in F4 in order to delete the old brothers from its routing table, if node H leaves the previous family. Note that this removal of old brothers is done before node H changes its operating channel of UF-NIC to the channel of F3 (see Fig. 5). This BREQ message includes node H’s address, the status of ‘‘DEL’’, and its child addresses, if node H has child nodes. Upon receiving the BREQ, the brother (node I in Fig. 5) removes the routing entries for child addresses in the BREQ from its routing table and responds to node H with a Brother Reponse (BREP) message. This BREP contains node I’s address, the status of ‘‘DEL’’, and the child addresses of node I. Accordingly, node H also deletes the routing entries for child addresses in the BREP. After joined a new family (F3), node H selects a set of brothers among the new members provided by the FREP sent by node B. A selected brother is a ‘‘neighbor’’ node that can support a secondary link between itself and node H with an equal or higher data rate than the minimum data rate in the FREP. Here, our objective in such brother selection is based on the priority of primary and secondary links. Consider a secondary link uses 6Mbps while three primary links use 54 Mbps in a family. Then, the secondary link significantly affects the capacity of the primary links due to the performance anomaly. Thus, CoCA does not utilizes such secondary links with lower data rates than the primary links. Subsequently, node H exchanges a pair of BREQ and BREP with the selected brothers (e.g., node F) after node H joins F3. Compared with the previous exchanges between nodes H and I, these BREQ and BREP contain the same fields except the status of ‘‘ADD’’. In the same way, a new parent B, an old parent C, and their ancestors perform this secondary link formation with their brothers, when they receive FREQs from its child nodes. The BREQ sent by the ancestors will contains the new (or old) child address of node B (or node C), that is node H’s address. Also, the BREQ includes the child addresses of node H, if node H has child nodes. If the status of the received FREQ is ‘‘ADD’’, the ancestors will exchange a pair of BREQ and BREP that include the status of ‘‘ADD’’ and the addresses of node H and node H’s child nodes, to insert the routing entries for the new node H and its child nodes into their routing tables. Otherwise, they will exchange a pair of BREQ and BREP with the status of ‘‘DEL’’ to delete the old child H and its child nodes from the routing tables. During BREQ/BREP exchanges, the following situations can be occurred. In Fig. 4, consider a new parent B and an old parent C. They will exchange BREQ/BREP after node H joins node B. When node C has received the BREQ (ADD) from node B before sending the BREQ (DEL) to node B, it

899

S.-H. Kim et al. / Ad Hoc Networks 9 (2011) 893–910

just updates the next hop field instead of removing the entry of node H from its routing table. Then, node C replies with a BREP (ADD). On the contrary, if node B has received a BREQ (DEL) from node C before sending a BREQ (ADD) to brother C, node B will respond with a BREP (ADD) to make node C update the next hop field for node H. In this manner, CoCA constructs family-based WMNs in a distributed fashion. 4.4. Estimated Delivery Time (EDT) metric In this subsection, we propose the Estimated Delivery Time (EDT) metric. CoCA uses the EDT metric to perform channel assignment and routing on the family architecture. Hence, the EDT metric is a channel assignment and routing metric rather than just a routing metric such as those in [17,19,38–40]. The EDT metric is based on the ‘‘channel throughput’’, an efficient model to estimate the throughput of multi-rate wireless networks. The channel throughput is derived from the analytical model proposed in [30] that uses Markov chains to derive the throughput of single channel single-hop 802.11 networks (e.g., WLANs) under the saturated condition as follows. 4.4.1. Throughput of multi-rate networks Assume that each node equipped with a single interface always has data frames to transmit once a transmitted frame is successful (i.e., saturated condition). First, the nodes are grouped depending on their data rates. That is, nodes in group i can transmit data with a data rate ri, where i = 1, 2, . . . , R and R is the number of data rates (i.e., r1 = 54 Mbps, r2 = 48 Mbps, . . . , r8 = 6 Mbps in IEEE 802.11a). Then, the aggregate throughput (S) of a single channel single-hop multi-rate network can be expressed as follows: R X S¼ ðSi  r i Þ;

ð1Þ

i¼1

where Si is the normalized saturation throughput of group i given by:

Si ¼

ps;i  T P;i ; TE þ TS þ TC

ð2Þ

T P;i ¼ LMSDU =r i ;

ð3Þ

T E ¼ ð1  pb Þ  T slot ;

ð4Þ

TS ¼

ps;i  T frame;i ;

ð5Þ

pcoll;i  T coll;i :

ð6Þ

i¼1

TC ¼

R X

R Y

ð1  pt;j Þnj ;

i¼1

In (2)–(6), all nodes are assumed to use the same payload size (i.e., MAC Service Data Unit (MSDU)) of a MAC frame in bits (LMSDU), Tslot is the time duration of a slot, Tframe,i is the time sensed busy by the nodes in group i due to a successful data transmission, and Tcoll,i is the time duration sensed busy by the nodes in group i due to collision. The probabilities ps,i, pb, and pcoll,i are given by:

ð7Þ

j¼1 j–i

pb ¼ 1 

R Y

(

ð1  pt;j Þnj ;

ð8Þ

j¼1

pcoll;i ¼

pncoll;1 ;

i ¼ R ¼ 1;

pgcoll;i þ pncoll;i ; 2 6 i 6 R;

ð9Þ

where ni is the number of nodes in group i, pt,i is the probability that a node in group i sends a frame during a slot time. In (7)–(9), ps,i is the probability that a node in group i has succeeded in transmitting a frame during a slot, pb is the probability that the wireless channel is sensed busy during a slot time, and pcoll,i is the collision probability caused by the nodes in group i. Here, pcoll,i in (9) consists of two terms: pgcoll,i which reflects the inter-group collision probability between any two groups, and pncoll,i which represents the intragroup collision probability between the nodes in group i. Therefore, in (3)–(6), TP,i is the time spent to send a MSDU by the nodes in group i, TE is the time duration sensed idle by all nodes, TS is the time duration sensed busy due to successful transmissions by all nodes, and TC is the time duration sensed busy due to collisions by all nodes. If the RTS/CTS mechanism is used, Tframe,i and Tcoll,i are given by:

T frame;i ¼ T RTS þ T CTS þ T H;i þ T P;i þ þ T ACK þ T DIFS þ 3  T SIFS þ 4  T prop ; T coll;i ¼ T RTS þ T DIFS þ T prop ;

ð10Þ ð11Þ

where TRTS, TCTS, and TACK are the transmission times for the corresponding frames, TDIFS and TSIFS are the corresponding inter-frame spaces, Tprop is the propagation delay, and TH,i is the time spent to send the PHY and MAC header by the nodes in group i. For more details, please refer to [30]. 4.4.2. Channel throughput From (1)–(11), we can summarize that S is the function (f) of the number of nodes (ni) in each group i on a channel, since all the other parameters are locally available and all the probabilities can be calculated in the default setting [30]. As a result, the throughput of a single-hop WMN on channel k (Sk) can be expressed as follows:

Sk ¼ f ðnk1 ; nk2 ; . . . ; nkR Þ;

where

R X

ps;i ¼ ni  pt;i  ð1  pt;i Þni 1 

ð12Þ

where nki is the number of nodes (or links) in group i using data rate ri on channel k. For the rest of this paper, we call Sk as the channel throughput for channel k. 4.4.3. Estimated Delivery Time (EDT) Now, we compute the channel throughput of a single link with a data rate ri to derive the EDT metric. When a single ri link operates on channel k, the number of links (nkj ) is given by:

nkj ¼



1; j ¼ i; 8j ¼ 1; 2; . . . R 0;

j–i:

ð13Þ

By substituting (13) into (12), the channel throughput of a single ri link on channel k (Ski ) can be obtained. Assuming that a data packet whose size is L (bits) is transmitted over a ri link, the EDT of the link is given by:

900

EDT ¼

S.-H. Kim et al. / Ad Hoc Networks 9 (2011) 893–910

L Ski

ð14Þ

:

Table 3 lists instance EDT values when a single link operates at each data rate and L is 1000 bytes. Then, the final EDT metric is defined as follows, similar to WCETT [17]:

EDT ¼ a 

X

EDTk ¼

EDTji ;

ð16Þ

i2P;j¼k

where EDTji is the EDT of link i on channel j. In CoCA, the nodes prefer the path with the smallest EDT metric, which indicates the lowest delay. Based on the EDT in (15), as a increases to 1, CoCA will select the path that provides less delay and smaller hops without considering channel diversity or bottleneck. In contrast, as a decreases to zero, CoCA will choose more channel diverse and less bottleneck paths regardless of the delay and the number of hops. The effect of the a value will be discussed more in Section 5.6. In CoCA, a node (say node X) on the architecture broadcasts the following fields through FA messages: the EDTi sum of links on a path from node X to the gateway, and the EDTk for each channel. By using these fields of the received FA sent by node X, a new child node (say node Y) can calculate the EDT metric value from node Y to the gateway in a distributed fashion. 4.4.4. Discussion From (15), we can derive several advantages of the EDT metric by using the example shown in Fig. 6. In this figure, there are four paths P1–P4 and any two nodes in a path can communicate with each other, since they are within the transmission range of each other. Every node has a UFNIC and a LF-NIC. In the figure, each link is labeled by a data rate and a channel number. For instance, link D-A uses 54 Mbps and channel 1. All the EDT values for each path are given based on (15), where a is 0.5. For simplicity, we define the Single-channel Single-hop Path (SSP) for a single-hop low-rate path such as P1, while the Multi-channel Multi-hop Path (MMP) for the multi-hop high-rate path such as P2. MMP is derived from the concept of multi-hop highrate path, well investigated by various works [17,19,38– 40]. In those works, however, the channel assignment issue is out of the scopes, because they only focused on finding

Table 3 The EDT values for each data rate (L = 1000 bytes). Data rates

EDT values

Data rates

EDT values

54 Mbps 48 Mbps 36 Mbps 24 Mbps

396 ls 415 ls 472 ls 587 ls

18 Mbps 12 Mbps 9 Mbps 6 Mbps

701 ls 929 ls 1158 ls 1615 ls

(P3) D-B-C-S: EDT = 1047 µsec (P4) D-A-E-S: EDT = 877.5 µsec 54M (ch1)

D 54M (ch1) 6M (ch1)

ð15Þ

16k6K

where K is the number of available channels, P is a path that includes a set of links, EDTi is the EDT of link i on path P, and a2 [0,1]. EDTk is the EDT sum of links on channel k along path P to reflect the channel diversity, which is given by:

X

D 54M (ch1) A

EDTi þ ð1  aÞ  max EDTk ;

i2P

(P1) D-S: EDT = 1615 µsec (P2) D-A-S: EDT = 670 µsec

B

S

C

(a)

S

(b)

B 36M (ch2)

48M (ch1)

54M (ch1)

D

A

36M (ch2)

A 36M (ch2)

36M (ch2)

54M (ch1)

36M (ch2)

E 48M (ch3)

C S

48M (ch1)

(c)

Fig. 6. Examples of EDT based paths.

the best paths by assuming that the channel assignment is performed well. After the channel of links has been assigned, selecting more channel-diverse paths or less-delay paths are feasible by measuring the link quality periodically, just as those in ETX [38] and WCETT [17]. On the contrary, when the channel assignment of links is not finished, such a link quality measurement is not possible. The fundamental reason is the strict dependency between channel assignment and routing [40]. From this fact, our EDT metric used for channel assignments cannot reflect the link quality such as ETX, which is considered in WCETT [17]. Instead, CoCA exploits the EDT metric to assign channels of links on the family architecture by considering both the channel assignments and routing at the same time. That is, the EDT metric is a channel assignment and routing metric for MCMR WMNs. This feature clearly distinguishes CoCA from existing works related to MMPs. First, consider two paths P1 and P2 in Fig. 6a. When node S allocates a channel of links toward the destination node D, it will choose P2 instead of P1 based on the EDT. This channel assignment allows low-rate links (e.g., link D–S) not to contend with high-rate links (e.g., link D–A) on the common channel. That is, the EDT based channel assignment can efficiently address the performance anomaly. One may argue the following aspects. (i) Low-rate nodes (which may use low-rate links) selecting a MMP can suffer from performance degradation because of the significant queuing delay at the intermediate nodes: However, through extensive simulations, we found that MMP provides an improved performance over SSP, even if we consider the queuing delay at the intermediate nodes on MMPs. This is because even low-rate nodes can concurrently forward their traffic through non-interfering channels to or from the Internet, or to their destinations. Therefore, CoCA can provide a better throughput fairness among the different multi-hop flows. (ii) Intermediate nodes on MMPs may be unavailable in WMNs: In general, as the distance between two nodes increases, the required number of nodes for intermediate nodes on MMPs increases. However, according to the simplified model of the node density requirement in [23], the multi-hop path formation requires a very small number of nodes. For example, when the distance between two nodes is 250 m, only one intermediate node is required in a 104 m2 area. This is not difficult to achieve in WMNs. Therefore, the MMP formation of CoCA is a feasible

901

S.-H. Kim et al. / Ad Hoc Networks 9 (2011) 893–910

mechanism. (iii) Exploiting the high-rate links on MMPs increases the level of power usage: However, mesh routers usually does not have constraints on power consumptions [1]. Second, the EDT metric is proportional to the number of hops. Thus, considering the two MMPs, P2 and P3 in Fig. 6b, CoCA selects P2 since it is shorter than P3 by using the EDT metric. Last, consider the two MMPs of P3 and P4 in Fig. 6c. The EDT metric distinguishes the more channel-diverse and less-bottleneck MMPs from the less channel-diverse or more-bottleneck MMPs since the EDT metric adopts the concept of bottleneck links on paths. This is reflected by the EDT values of the paths. Therefore, CoCA will choose P4 instead of P3. Since links on different channels can simultaneously transmit their ongoing traffic, it is an important feature to increase the network capacity. 4.5. Rate-Balancing Function based balancing algorithm In MCMR WMNs, assigning a distinct channel to links with different data rates can be considered as some variations of the graph coloring problem. However, the problem is shown to be NP-hard [14–16]. Hence, it is important to design an efficient algorithm that not only runs at a reasonable speed but also provides an improved network performance and fairness. Thus, we need (i) a simple and efficient way to estimate the throughput of multi-rate networks and (ii) an efficient algorithm to balance multiple ‘‘primary links’’ with different data rates among available channels in a family. Below, we discuss the throughput estimation model, total channel throughput, and the balancing algorithm. 4.5.1. Total channel throughput In (12), the channel throughput model assumes that there are no hidden nodes. But, in multi-hop networks such as MCMR WMNs, nodes within the interference range of a transmitter (say node X), and nodes within the interference range of a receiver can affect the data transmissions of node X. In addition, these interfering nodes may have multiple wireless links. Therefore, nki in (12) must account for possible interfering links, namely, restrain links. That is, node X has to be aware of the degree (or number) of interfering links at its H-hop away, where H is the ratio between the interference and transmission ranges. However, node X cannot directly determine the number of possible restrain links without the support of intermediate nodes, since they are located outside the transmission range of node X. To consider H-hop away restrain links in CoCA, nodes exchange Rate Vector (RV). For node X using channel k through one of its interfaces, RV (v kX ) is given by:

v kX ¼ ½ak1 ; ak2 ; . . . ; akR T ;

ð17Þ

where aki is the number of primary and secondary links using data rate ri on channel k. Initially, all entries in v kX are equal to zero. For the efficiency reason, the RVs for each channel are included in the FCL messages.

Upon receiving FCL messages from H-hop neighbors, a neighbor node (say node Y) updates its Neighbor Channel Table (NCT) maintained by each node. The NCT contains an entry of Neighbor Rate Vector (NRV) for each channel. For node Y using channel k via one of its interfaces, NRV (ukY ) is given by:

ukY ¼ ½nk1 ; nk2 ; . . . ; nkR T :

ð18Þ

Finally, we can estimate the total channel throughput (Stotal) by using the channel throughput in (12) and the NRVs in (18), which is given as follows:

Stotal ¼

K X

Sk :

ð19Þ

k¼1

Specifically, Stotal can consider the restrain links of a given transmitter and a receiver by using NRVs. However, we need to note that the restrain links within the interference range of a receiver can degrade Stotal severely. The fundamental reason is that nodes on the same channel usually do not share the common channel view due to the limited range within which a node can sense whether a channel is busy or not. That is, in general, the channel conditions of interfering (or adjacent) nodes on the same channel may be different. We leave this issue as our future work. However, we will observe in Section 5.5 that the use of multiple channels in CoCA can decrease the number of such restrain links effectively by dividing a single collision domain into multiple collision domains.

4.5.2. Rate-Balancing Function (RBF) The proposed balancing algorithm, exploits the RateBalancing Function (RBF). Thus, we define the RBF first. The major objective of the RBF is to increase both the total channel throughput and the fairness among channels so that each channel achieves an improved channel throughput and has a comparable or balanced throughput. The RBF is a product of both the total channel throughput Stotal in (19) and the fairness index FS, which is given by:

RBF ¼ Stotal  F S ;

ð20Þ

where FS is the Jain’s fairness indices [41] for the channel throughput (Sk), which is expressed as follows:

P K FS ¼

k¼1 S

K

PK

k

2

k¼1 ðS

k 2

Þ

:

ð21Þ

In (21), FS converges to 1/K when the channel throughputs are heavily skewed on a certain channel, while it approaches to 1 when each channel gets almost the same channel throughput. It is important to note that the total channel throughput in (19) takes into account the effect of the performance anomaly problem. This is because the total channel throughput is derived from the model in [30], which accurately accounts for the performance anomaly. Thus, increasing the RBF value leads to the improved throughput fairness and leveraged WMN capacity by considering the performance anomaly.

902

S.-H. Kim et al. / Ad Hoc Networks 9 (2011) 893–910

4.5.3. Balancing algorithm To increase the overall performance of CoCA, we took the following observation. The family architecture in CoCA is based on the tree WMN architecture that can be considered as a set of multiple subtrees (or families) rooted from each parent node. Actually, CoCA exploits multiple channels to break a single collision domain (or a family architecture) into multiple collision domains (or multiple families) such that the number of restrain links is decreased effectively (see Section 5.5). Thus, we can approximately regard the individual families as single-hop single-channel multi-rate networks. This implies that the overall performance of CoCA can be increased by leveraging the capacity of each family, which can be estimated by using the total channel throughput (Stotal). Algorithm 1. Balancing algorithm 0: / Executed whenever node X receives FREQs or FCLs/ 1: Balancing_Algorithm (void) { 2: curr_rbf = new_rbf = 0; max_nic = null; 3: Set channel throughput of LF-NICs to 54 Mbps; 4: Sort primary links in decreasing order based on data rates; 5: Assign all primary links to the default LF-NIC; 6: for each primary link i do { / Compute the current RBF value / 7: curr_rbf = get_RBF (NCT); / Find the LF-NIC ID with highest Sk / 8: max_nic = max_channel_throughput_nic (NCT); 9: Move the current primary link to max_nic temporarily; / Compute the new RBF value / 10: new_rbf = get_RBF (NCT); / Check the improvement of RBF value / 11: if (curr_rbf < new_rbf) then 12: Assign the current child to max_nic permanently; 13: else 14: break; 15:} / End of for / 16: Send FCSs to all nodes associated with the reassigned primary links; 17: Update the NRVs of NCT with the new channel assignment results; 18:} / End of balancing algorithm /

Therefore, for one family, the balancing algorithm increases the RBF value by distributing all the primary links that use different data rates among operating channels. This addresses the performance anomaly problem in a family, and results in the improved capacity of each family on the family architecture. In CoCA, the parent nodes perform the algorithm whenever they receive a FREQ from new child nodes trying to build primary links based on the EDT metric, or after updating NCT with received FCLs from H-hop neighbors. The pseudo-code of the balancing algorithm is given in Algorithm 1. Suppose that node X performs the algorithm.

At first, all the variables are initialized (line 2) and the channel throughputs of all LF-NICs are set to raw capacity (i.e., 54 Mbps in IEEE 802.11a). In line 4, node X sorts its primary links based on their data rates in a decreasing order. That is, a 54 Mbps primary link appears first in the sorting result. Then, every primary link is assigned to the default LF-NIC out of the available LF-NICs (line 5). By using lines 6–15, node X attempts to reassign the primary links on the default LF-NIC to the new LF-NIC. In line 7, the algorithm computes the current RBF value based on (20) by using the NRVs in the NCT. After node X finds the LFNIC ID with the maximum channel throughput, it temporarily reassigns the current primary link to the LF-NIC ID (i.e., channel assignment). Then, node X computes a new RBF value after the reassignment of the current primary link. If the new RBF is greater than the current RBF obtained from line 7 (i.e., RBF gain), then node X permanently assigns the current primary link to the new LF-NIC. This process continues until there is no remaining primary link or no RBF gain. After the channel reassignment, node X sends FCS messages containing the new channel to all the affected primary links (line 16). Accordingly, node X updates the corresponding entries of NCT with the balancing algorithm result. The computational complexity of the balancing algorithm is O(NP), where NP is the number of primary links associated with a parent node. Fig. 7 illustrates a description of a channel assignment by the balancing algorithm. In Fig. 7a, node A has two LFNICs that operate on channel 3 (LF-NIC1) and channel 4 (LF-NIC2). There are four primary links between node A and its child nodes, which use different data rates. Each primary link has a data rate and a channel number. Initially, the channel throughput of available LF-NICs is set to 54 Mbps and four primary links are sorted in a decreasing order. In this figure, the sorting result is: links A–B (54 Mbps), A–C (48 Mbps), A–E (18 Mbps), and A–D (12 Mbps). Then, all the primary links are assigned to the default LF-NIC (e.g., LF-NIC1). Based on (20), we can obtain that the current RBF is 5.14  106. But, after the primary link with the maximum data rate (i.e., link A–B with 54 Mbps) is moved to LF-NIC2, the new RBF becomes 27.79  106, which is much improved RBF than the previous one. This improvement mainly comes from separating the high-rate links from the low-rate links. Subsequently, the algorithm assigns the primary link A–C (48 Mbps) to LF-NIC2, since the new RBF is 28.09  106, which is larger than the previous RBF value. However, the algorithm fin-

LF-NIC1 (ch3) LF-NIC2 (ch4)

LF-NIC1 (ch3) LF-NIC2 (ch4)

A

A

18Mbps, 3

54Mbps, 3

E

B

12Mbps, 3

D

48Mbps, 3

C

(a) Initial channel assignment

18Mbps, 3

54Mbps, 4

E

B

12Mbps, 3

D

48Mbps, 4

C

(b) The channel assignment result

Fig. 7. A description of the balancing algorithm based on RBF in CoCA.

903

S.-H. Kim et al. / Ad Hoc Networks 9 (2011) 893–910

ishes at this point since further reassignment produces a lower RBF value (i.e., 21.48  106). Finally, node A requests its child nodes to change the channel of their UF-NIC according to the result of the balancing algorithm. The channel assignment result is shown in Fig. 7b. Depending on the channel assignment result of the balancing algorithm, some primary links may be reassigned to different LF-NICs. In this case, CoCA cannot utilize some secondary links. For example, consider two child nodes C and D in Fig. 7. Before the channel assignment, they can build a secondary link C–D on channel 3. However, the secondary link is unavailable after the channel assignment, since nodes C and D joined different families (i.e., channels) under the same parent node A. To address this problem, CoCA builds new secondary links with brothers of the new family whenever the associated family ID is changed. The new brother information can be obtained from FA messages sent by the parent node.

5. Performance evaluation In this section, we evaluate the performance of CoCA by using ns-2 simulations [43]. We compare CoCA with Hyacinth [6] and ICA with WCETT [17] since they are wellknown multi-channel protocols for WMNs. We extended ns-2 to support multi-channel, multi-interface, multi-rate functions, CoCA, Hyacinth, and ICA with WCETT. The default simulation model is as follows. The network size is 1000 m by 800 m, and 30 sample MCMR WMN scenarios are generated for every result. There are multiple gateways and nodes in each WMN scenario, and all the nodes are randomly deployed in the network field. Each node has three interfaces (i.e., one UF-NIC and two LF-NICs in CoCA). Based on IEEE 802.11a, 12 non-overlapping channels and eight data rates are available. The distance ranges for different data rates are chosen according to the Cisco Aironet 802.11a card data sheet [46]. We assumed that the transmission and interference ranges are 250 m and 550 m, respectively. Accordingly, parameter H that reflects the ratio between the interference and transmission ranges is set to two. The radio propagation is modeled by the two-ray ground propagation model. The simulation time is 300 s, and the Tr interval is 20 s. Through empirical simulations to find the best value that provides the best performance, the value of a in EDT is set to 0.5 (see Sec V–E). Tables 4 and 5 summarize the parameters used in our performance evaluation and the IEEE 802.11a specification, respectively. In our performance evaluation study, we consider both the UDP and TCP traffic. By default, we use the UDP traffic. For UDP flows, we assume that the packet size is 1000 bytes and the bandwidth of each CBR flow varies depending on the scenario. For TCP flows, we assume that the packet size is 1000 bytes and the transmission rate is determined by TCP Reno. We use the following three traffic models; (i) hybrid traffic: This is the default model if not mentioned explicitly. Depending on the scenario, several flows are generated with two types – external flow and internal flow. For each external flow, two nodes are randomly selected to be the source and destination nodes, and one of them is the gateway. For each internal flow, two non-gateway nodes

Table 4 Parameters for performance evaluation. Parameters

Values

Simulator Comparison Network size MAC specification Data rates Traffic Ranges No. of nodes No. of channels No. of interfaces No. of gateways Propagation model Tr

ns-2 CoCA, Hyacinth [6], and ICA with WCETT [17] 1000 m by 800 m IEEE 802.11a 6, 9, 12, 18, 24, 36, 48, and 54 Mbps UDP and TCP with packet size of 1000 bytes Transmission (250 m), interference (550 m) 5, 10, 15, 20, 25, and 30 (default) 6, 9, and 12 (default) 2, 3 (default), and 4 1 (default), 2, 3 The two-ray ground propagation model 20 s 0, 0.1, 0.3, 0.5 (default), 0.7, 0.9, and 1 2-hop 300 s

a H-hop Simulation time

Table 5 Parameters for IEEE 802.11a specification. Parameters

Value

Data frame PLCP overhead MAC header ACK frame RTS frame CTS frame SLOT DIFS SIFS CWmin

1000 bytes 328bits (PLCPPreamble (288bits), PLCPhdr (40bits)) 192 bits 112 bits + PLCP overhead 160 bits + PLCP overhead 112 bits + PLCP overhead 9 us 34 us 16 us 15

are randomly selected to be the source and destination nodes. Each flow occupies one-half number of total flows in this model, and the number of flows is the same as the number of nodes. For example, when the number of nodes is 20, this model includes 10 external flows and 10 internal flows. (ii) peer-to-peer (p2p) traffic: In this model, we only generate multiple internal flows. The number of generated flows is equal to the number of nodes in the scenario. (iii) gateway traffic: Only external flows are generated, where the number of flows is the same as the number of nodes in the scenario. This model is useful to evaluate the performance of Internet accesses. The performance evaluation criteria we studied includes: (i) aggregate throughput – the total sum of packets in bits per second received by all the destinations in each scenario, (ii) packet delivery ratio (PDR) – the total number of packets received by destinations divided by the total number of packets transmitted by senders, (iii) end-toend delay (E2E delay) – the time difference between the time of packet transmission by the sender and the time of packet reception by the destination, (iv) round trip time (RTT) - the time difference between the time the sender transmits a TCP segment and the time it receives the acknowledgment, and (v) PDR fairness index (FPDR) – the Jain’s fairness indices [41] for PDR to measure the fairness among different multi-hop flows, which is represented as follows:

F PDR ¼

S.-H. Kim et al. / Ad Hoc Networks 9 (2011) 893–910

P

PDRf Þ2 P NF  PDR2f ð

ð22Þ

where NF is the total number of flows and PDRf is the PDR of flow f. For UDP traffic, we studied aggregate throughput, PDR, E2E delay, and FPDR, while we studied aggregate throughput and RTT for TCP traffic. The PDR, E2E delay, and RTT are averaged over all flows in each scenario. 5.1. UDP and TCP performance We first investigate the performance of UDP traffic by varying the number of nodes. Fig. 8 illustrates PDR and E2E delay of CoCA, Hyacinth, and ICA. Each simulated scenario includes a single gateway and a different number of nodes. The traffic rate per flow is 800 Kbps. As the number of deployed nodes increases (i.e., the number of flows increases), PDR decreases whereas the E2E delay increases since more links interfere with each other on the common channel. When the number of nodes is small (e.g., less than 10 nodes), we can observe from Fig. 8 that CoCA, Hyacinth, and ICA show relatively similar performance. However, as the number of nodes increases, CoCA shows much improved performance over Hyacinth and ICA. For example, when the number of nodes is 30, Fig. 8a shows that PDR by CoCA is about 24.8% and 75.4% higher than Hyacinth and ICA, respectively. In addition, Fig. 8b shows that E2E delay by CoCA is about 46.1% and 83.2% lower than Hyacinth and ICA, respectively. Fig. 9 shows the aggregate throughput and the RTT as a function of the number of nodes when TCP traffic is generated in the network. In the generated scenario, there is one gateway while the number of nodes is varying from 5 to 30 (i.e., the number of TCP flows increases). As observed in Fig. 9, CoCA provides an improved performance over Hyacinth and ICA. For instance, when the number of nodes is 30, the aggregate throughput by CoCA is about 45.9% and 115% better than Hyacinth and ICA, respectively. Moreover, RTT by CoCA is 27.5% and 72.9% lower than Hyacinth and ICA, respectively. The improved performance of CoCA can be explained as follows. First, as the number of nodes increases, a larger number of nodes contends for the same channel. This may increase the number of low-rate links, which may cause the performance anomaly. In CoCA, the low-rate nodes exploit available intermediate nodes for MMPs by using the

(a) 100

5.2. Percentage of each data rate links Fig. 10 shows the percentage of links for each data rate (i.e., the number of each data rate links  100/the total number of links). For example, the number of 36 Mbps links occupies about 24.1% in CoCA. Each percentage value is averaged from 30 distinct scenarios. A scenario includes a single gateway and 30 nodes. From this figure, we can see that the numbers of higher rate links (i.e., 54, 48, 36, 24, and 18 Mbps) of CoCA are much larger than those of Hyacinth and ICA, while the numbers of lower rate links (i.e., 6, 9, and 12 Mbps) of CoCA are much smaller than those of Hyacinth and ICA. That is, CoCA utilizes more high-rate links than Hyacinth and ICA. By comparing ICA with Hyacinth, ICA utilizes more high-rate links than Hyacinth since ICA also exploits MMPs. Although both CoCA and ICA exploit MMPs, ICA utilizes more low-rate links than CoCA. The reason is that the WCETT metric in ICA accounts for the ETX metric, which reflects the link quality. Hence, depending on the ETX values, ICA may select low-rate links instead of high-rate links. 5.3. Impact of the traffic models We observe the performance with different traffic models. Each scenario includes a single gateway and 30 nodes.

(b)

90

PDR (%)

EDT metric (see Section 5.2). This leads to a reduced number of contending low-rate links on a channel and the better utilization of multiple channels. Moreover, the balancing algorithm allocates channels by considering the effect of the performance anomaly. However, Hyacinth does not utilize MMPs and the balancing algorithm, which degrades the network performance severely. In addition, ICA does not perform the balancing algorithm. Second, when the number of nodes increases, the number of available links for routing paths increases. In Hyacinth, the available links are restricted due to the tree-based architecture. Although ICA exploits all the available links, it provides a lower channel diversity since the number of utilized channels is constrained to the number of interfaces. However, CoCA utilizes both the primary links and the secondary links in a family, and increases the channel diversity using the family architecture and the EDT metric. Hence, CoCA shows better performance than Hyacinth and ICA.

80 70 60

CoCA Hyacinth ICA

50

0.8

E2E Delay (seconds)

904

CoCA Hyacinth ICA

0.7 0.6 0.5 0.4 0.3 0.2 0.1 0.0

40 5

10

15

20

Number of Routers

25

30

5

10

15

20

Number of Routers

Fig. 8. UDP performance comparison as a function of the number of nodes. (a) PDR. (b) E2E delay.

25

30

905

S.-H. Kim et al. / Ad Hoc Networks 9 (2011) 893–910

(b)

35

CoCA Hyacinth ICA

30

RTT (seconds)

Agg. Throughput (Mbps)

(a)

25 20 15

CoCA Hyacinth ICA

0.4 0.3 0.2 0.1

10 5

0.5

0.0 5

10

15

20

25

30

5

10

Number of Routers

15

20

25

30

Number of Routers

Fig. 9. TCP performance comparison as a function of the number of nodes. (a) Aggregate throughput. (b) RTT.

CoCA Hyacinth ICA

30 25 20 15 10 5 0

6

9

12

18

24

36

48

54

Link Data Rates (Mbps) Fig. 10. The percentage of links of each data rate.

Fig. 11 shows the aggregate throughputs of different traffic models, when the traffic rate per flow ranges from 200 Kbps to 1 Mbps. As observed from Fig. 11, CoCA shows better performance than Hyacinth and ICA for all traffic models. For example, when the traffic rate is 800 Kbps, Fig. 11a (i.e., the gateway traffic model) shows that the throughput gain of CoCA over Hyacinth and ICA is about 14.5% and 89.4%, respectively. When the hybrid traffic model is used, we can observe from Fig. 11b that the aggregate throughput by CoCA is about 24.7% and 66.1% better than Hyacinth and ICA, respectively. For the p2p traffic model, Fig. 11c shows that the throughput gain of CoCA over Hyacinth and ICA is about 49.9% and 90.5%, respectively. Based on these results, the following observations can be made. When the gateway traffic model is used, the tree-based WMN architecture (e.g., Hyacinth) has shown to be an efficient approach [1,6,7]. But, ICA focuses on

CoCA Hyacinth ICA

400 500 600 700

5.4. Channel diversity and network connectivity We evaluate the channel diversity and the network connectivity by defining two metrics: (i) channel used ratio – the number of used channels by each protocol divided by the total number of available channels. (ii) link used ratio

(b) Agg. Throughput (Mbps)

Agg. Throughput (Mbps)

(a) 22 20 18 16 14 12 10 8 6 4 200 300

the random traffic distribution such as the p2p traffic model. Hence, the performance gain of CoCA over Hyacinth is relatively small (14.5%), while the gain of CoCA over ICA is large (89.4%), compared with the case of the hybrid traffic model. However, the tree-based WMN highly limits the number of available links due to the feature of the architecture. In contrast, ICA utilizes all the available paths. In CoCA, nodes in the same family take advantage of the primary and secondary links for routing paths among them. Thus, when the hybrid traffic model is used, the performance gain of CoCA over Hyacinth, increased (from 14.5%) to 24.7%, while the gain of CoCA over ICA is decreased (from 89.4%) to 66.1%, compared with the gateway traffic model case. With the p2p traffic model, the route restriction severely degrades the performance. Hence, the performance difference between CoCA and Hyacinth is further increased (from 24.7%) to 49.9%. Even though ICA fully utilizes all the available links for data forwarding, the degree of channel diversity is limited to the number of available interfaces per node. This definitely leads to a bottleneck in ICA, which degrades the network capacity severely. Thus, the throughput gain of CoCA over ICA increases (from 66.1%) to 90.5% under the p2p traffic model.

800 900 1000

Traffic rate per flow (Kbps)

22 20 18 16 14 12 10 8 6 4 200 300

CoCA Hyacinth ICA

400 500 600 700 800 900 1000

Traffic rate per flow (Kbps)

(c) Agg. Throughput (Mbps)

Percentage of Links (%)

35

22 20 18 16 14 12 10 8 6 4 200 300

CoCA Hyacinth ICA

400 500 600 700 800 900 1000

Traffic rate per flow (Kbps)

Fig. 11. Aggregate throughput as a function of offered load with different traffic models. (a) Gateway traffic. (b) Hybrid traffic. (c) Peer-to-peer traffic.

906

S.-H. Kim et al. / Ad Hoc Networks 9 (2011) 893–910

– the number of used links for routing paths by each protocol divided by the total number of available links in each scenario. Fig. 12 illustrates the channel used ratio and the link used ratio of CoCA, Hyacinth, and ICA. Each simulation scenario includes a single gateway and 30 routers. As observed from Fig. 12a, CoCA and Hyacinth shows higher channel used ratio than ICA, because CoCA and Hyacinth can utilize every channel with a limited number of interfaces per node. In ICA, the channel used ratio is proportional to the number of interfaces. On the contrary, we can see from Fig. 12b that ICA shows higher link used ratio than CoCA and Hyacinth, because ICA does not restrict all the available links in WMNs. In Hyacinth, the tree-based WMN architecture disables a large number of links in WMNs. In CoCA, the family architecture does not utilize the links between nodes that belong to different families. However, CoCA utilizes both primary links and secondary links, which leads to a higher link used ratio than Hyacinth.

12. In Fig. 13b, there are 12 available channels, and each scenario includes a single gateway and the number of routers is varying from 5 to 30. Each router has three interfaces so that it can support two families via two LF-NICs. Hence, the number of families per scenario is twice the number of routers. From Fig. 13a, as the number of channels increases, we can see that the average number of restrain links decreases, because employing multiple channels can break a single collision domain into multiple collision domains. From Fig. 13b, when the number of routers increases, it is evident that the average number of restrain links per family increases. However, when the number of channels is 12 based on IEEE 802.11a and at the moderate router density [42] with 30 routers in a 1000 m by 800 m area (i.e., 37.5 routers per km2), the number of restrain links per family is small (i.e., less than one link) as shown in Fig. 13. This indicates that CoCA effectively reduces the number of restrain links by using multiple channels in MCMR WMNs.

5.5. The number of restrain links 5.6. Impact of a in EDT metric We investigate the number of restrain links per family, since the restrain links within the interference range of a receiver can significantly decrease the total channel throughput. Fig. 13 shows the average number of restrain links per family in CoCA, where the number of restrain links within a family is excluded because those links do not affect the total channel throughput model. In Fig. 13a, each scenario has a single gateway and 30 routers, and the number of available channels is varying from 2 to

(b) 100 90

90

Link Used Ratio (%)

Channel Used Ratio (%)

(a) 100

To evaluate the impact of a, we varied the value of a from 0 to 1. Depending on various system parameters, the optimal a value may vary. Hence, we only consider the scenario where there are a single gateway and 30 nodes. Fig. 14 shows the aggregate throughput of CoCA with three traffic models. The traffic rate per flow is 800 Kbps. From Fig. 14, we can easily observe that CoCA shows good performance when a is around 0.5. The

80

CoCA Hyacinth ICA

70 60 50 40

80

CoCA Hyacinth ICA

70 60 50 40 30

30

20

20 5

10

15

20

25

5

30

10

15

20

25

30

Number of Routers

Number of Routers

(a)

2.5

No. of Restrain Links

Fig. 12. Channel diversity and network connectivity as a function of the number of routers. (a) Channel used ratio. (b) Link used ratio.

2.0

(b) No. of Restrain Links

CoCA

1.5 1.0 0.5

0.6

CoCA 0.5 0.4 0.3 0.2 0.1 0.0

0.0 2

4

6

8

Number of Channels

10

12

5

10

15

20

25

Number of Routers

Fig. 13. The average number of restrain links per family with different number of: (a) Channels. (b) Routers.

30

907

S.-H. Kim et al. / Ad Hoc Networks 9 (2011) 893–910

The improved fairness performance can be explained as follows. First, CoCA performs the MMP formation, which allows low-rate nodes to forward their traffic simultaneously from or to their destination with the help of intermediate nodes and multiple channels. Since the high-rate links on MMP may operate on different channels, low-rate nodes take advantages of the improved performance rather than using direct low-rate links. Second, the balancing algorithm efficiently distributes multiple primary links over the available LF-NICs, which increases the throughput fairness. In addition, CoCA exploits secondary links, which results in the comparable performance of internal flows and external flows.

Agg. Throughput (Mbps)

18 17 16 15 14

Gateway traffic Hybrid traffic P2P traffic

13 12 0

0.1

0.3

0.5

0.7

0.9

1

The value of α Fig. 14. Aggregate throughput as a function of a value.

aggregate throughput degrades as a approaches to 0 or 1, since there is a trade-off in the EDT metric between channel diversity (or bottleneck degree) and hop count (or path delay). 5.7. Fairness In order to study the throughput fairness, we varied the traffic rate per flow. Each generated scenario includes a single gateway and 30 randomly positioned nodes. Fig. 15 shows the PDR fairness indices of CoCA, Hyacinth, and ICA. As observed in the figure, CoCA shows the best PDR fairness performance. For instance, Fig. 15 shows that FPDR by CoCA is about 13.1% and 73.2% better than Hyacinth and ICA, respectively, when the traffic rate is 800 Kbps.

Fairness Index (F PDR)

1.0 0.9

5.8. Control overhead and convergence time In CoCA, the periodic interval Tr value controls the convergence time and the control overheads. The convergence time is the time when the channel assignment and route calculation are finished, and the control overhead (CO) is given by:

CO ¼

Co  100 ð%Þ; C o þ Do

ð23Þ

where Co is the total generated control packets (in bits per second) and Do is the aggregate throughput of sample scenarios (in bits per second). Fig. 16 shows the results with different Tr interval values. In the simulation scenarios, there are a single gateway and 30 routers. As expected, there is a trade-off between the convergence time and control overhead. That is, as the Tr interval increases, the convergence time increases while the control overhead decreases. When the Tr interval is 20 s, CoCA goes into the steady state before 100 s, and it shows a low control overhead (i.e., less than 3%).

0.8

5.9. Impact of other system parameters

0.7 0.6

Finally, we compare the performance of CoCA, Hyacinth, and ICA with different numbers of channels, interfaces, and gateways. The traffic rate per flow is 800 Kbps. Table 6 shows the results. When the number of channels varies from 6 to 12, each generated scenario includes 30 nodes and one of them is selected for the gateway. Each node has three interfaces. From Table 6, we can easily observe

CoCA Hyacinth ICA

0.5 0.4 200

300

400

500

600

700

800

900 1000

Traffic rate per flow (Kbps)

400

(b)

CoCA

350

Control Overhead (%)

(a)

Convergence Time (seconds)

Fig. 15. Fairness index as a function of offered load.

300 250 200 150 100 50

5

CoCA 4 3 2 1 0

20

40

60

80

Periodic Interval (Tr, seconds)

100

20

40

60

80

Periodic Interval (Tr, seconds)

Fig. 16. Convergence time and control overhead as a function of Tr values.

100

908

S.-H. Kim et al. / Ad Hoc Networks 9 (2011) 893–910

Table 6 Aggregate throughput with the other system parameters. Protocol

Aggregate throughput (Mbps) No. of channels

CoCA Hyacinth ICA

No. of interfaces

No. of gateways

6

9

12

2

3

4

1

2

3

14.2 11.7 9.8

15.9 12.4 9.8

16.3 13.0 9.8

15.1 9.8 6.8

16.3 13.0 9.8

16.7 15.3 10.7

16.3 13.0 9.8

17.1 14.3 10.4

18.4 15.4 11.3

that more non-interfering channels are beneficial for CoCA and Hyacinth. The reason is that additional channels enable an increased number of parallel transfers. However, ICA cannot utilize additional channels since its channel diversity is proportional to the number of available interfaces. When the number of interfaces per node increases, the simulated scenario has one gateway node out of 30 nodes. The number of available channels is 12. Observe from Table 6 that all the protocols show increased performance, as the number of interfaces increases. In CoCA, additional interfaces help the balancing algorithm to distribute the primary links to each interface evenly. Hyacinth can balance the traffic loads among child nodes more efficiently by using multiple interfaces. ICA makes use of more channels with additional interfaces. However, CoCA shows an improved performance over Hyacinth and ICA. In addition, CoCA achieves much better performance than Hyacinth and ICA when the number of interfaces is small (i.e., only two). When the number of gateways increases, each scenario includes 30 nodes equipped with three interfaces and several gateways are chosen from the 30 nodes. The number of available channels is 12. Note that deploying more gateways in a network fundamentally improves the network capacity [6]. From Table 6, we can see that CoCA shows better performance than the other protocols regardless of the number of gateways. 6. Conclusion In this paper, we proposed a distributed protocol called CoCA based on the family architecture for MCMR WMNs. By utilizing the EDT metric and the balancing algorithm, CoCA performs channel assignments to address the performance anomaly problem in MCMR WMNs. With the EDT metric, CoCA forms MMPs to separate the high-rate links from the low-rate links and to take advantages of less delay and channel-diverse routes. The balancing algorithm distributes the primary links over multiple channels to improve the network capacity and throughput fairness. CoCA exploits both the primary links and the secondary links to increase the network connectivity. Furthermore, CoCA does not require any modifications to the state-ofthe-art IEEE 802.11 devices. Through our extensive ns-2 simulations, we evaluated the performance of CoCA and compared it with the existing well-known multi-channel protocols for WMNs under the hybrid, gateway, and peer-to-peer traffic models. Our simulation study results show that CoCA

provides an improved performance in terms of aggregate throughput, packet delivery ratio, end-to-end delay, round trip time, and throughput fairness for both UDP and TCP traffic. Our future work may include extending the CoCA protocol to improve the network capacity by increasing the network connectivity as many as possible. In addition, we plan to design a channel assignment protocol to build direct communication links between any two nodes in different families. Acknowledgments The authors would like to thank the editor and the anonymous reviewers for their helpful comments which improved the quality of the paper. A preliminary version of key ideas was presented in part at the IEEE WCNC 2010 conference. This research was supported by WCU program through the Korea Science and Engineering Foundation funded by the Ministry of Education, Science and Technology (R31-2008-000-10100-0), and the MKE, Korea, under the ITRC support program supervised by the NIPA (NIPA-2010-C1090-1031-0009), and the Basic Science Research Program through the National Research Foundation of Korea funded by the Ministry of Education, Science and Technology (2010-0024938). References [1] I.F. Akyildiz, X. Wang, W. Wang, Wireless mesh networks: a survey, Elsevier Computer Networks Journal 47 (4) (2005) 445–487. [2] IEEE 802.11-2007, IEEE Standard for Information TechnologyTelecommunications and Information Exchange between SystemsLocal and Metropolitan Area Networks-Specific Requirements – Part 11: Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY) Specifications, June 2007. [3] P. Gupta, P.R. Kumar, The capacity of wireless networks, IEEE Transaction on Information Theory 46 (2) (2000). [4] M. Heusse, F. Rousseu, G. Berger-Sabbatel, A. Duda, Performance anomaly of 802.11b, in: Proc. of IEEE Infocom, 2003. [5] J. Zhang, Y.P. Chen, I. Marsic, MAC scheduling using channel state diversity for high-throughput IEEE 802.11 mesh networks, IEEE Communications Magazine 45 (11) (2007) 94–99. [6] A. Raniwala, T. Chiueh, Architecture and algorithms for an IEEE 802.11-based multi-channel wireless mesh network, in: Proc. of IEEE Infocom, 2005. [7] J. So, N. Vaidya, Load-balancing routing in multi-channel hybrid wireless networks with single network interface, IEEE Transactions on Vehicular Technology 56 (1) (2007) 342–348. [8] B. Ko, V. Misra, J. Padhye, D. Rubenstein, Distributed channel assignment in multi-radio 802.11 mesh networks, in: Proc. of IEEE WCNC, 2007. [9] S.H. Kim, Y.J. Suh, Local Channel information assisted channel assignment for multi-channel wireless mesh networks, in: Proc. of IEEE VTC Spring, 2008. [10] A.H.M. Rad, V. Wong, Joint logical topology design, interface assignment, channel allocation, and routing for multi-channel

S.-H. Kim et al. / Ad Hoc Networks 9 (2011) 893–910

[11]

[12]

[13]

[14]

[15]

[16]

[17] [18]

[19]

[20]

[21]

[22] [23]

[24] [25]

[26]

[27]

[28]

[29]

[30]

[31]

[32]

[33]

[34]

[35]

wireless mesh networks, IEEE Transactions on Wireless Communications 6 (12) (2007) 4432–4440. R. Ramachandran, E. Belding, K. Almeroth, M. Buddhikot, Interference-aware channel assignment in multi-radio wireless mesh networks, in: Proc. of IEEE Infocom, 2006. S. Avallone, I.F. Akyildiz, G. Ventre, A channel and rate assignment algorithm and a layer-2.5 forwarding paradigm for multi-radio wireless mesh networks, IEEE/ACM Transactions on Networking 17 (1) (2009) 267–280. H. Skalli, S. Ghosh, S.K. Das, L. Lenzini, M. Conti, Channel assignment strategies for multiradio wireless mesh networks: issues and solutions, IEEE Communications Magazine 45 (11) (2007) 86–95. A.P. Subramanian, H. Gupta, S.R. Das, J. Cao, Minimum interference channel assignment in multiradio wireless mesh networks, IEEE Transactions on Mobile Computing 7 (12) (2008) 1459–1473. A. Raniwala, K. Gopalan, T. Chiueh, Centralized channel assignment and routing algorithms for multi-channel wireless mesh networks, ACM SIGMOBILE Mobile Computing and Communications Review 8 (2) (2004) 50–65. M. Marina, S. Das, A topology control approach for utilizing multiple channels in multi-radio wireless mesh networks, in: Proc. of Broadnets, 2005. R. Draves, J. Padhye, B. Zill, Routing in multi-radio, multi-hop wireless mesh networks, in: Proc. of ACM Mobicom, 2004. A.K. Das, R. Vijayakumar, S. Ray, Static channel assignment in multiradio multi-channel 802.11 wireless mesh networks, in: Proc. of IEEE Globecom, 2006. P. Kyasanur, N. Vaidya, Routing and link-layer protocols for multichannel multi-interface ad hoc wireless networks, ACM SIGMOBILE Mobile Computing and Communications Review 10 (1) (2006) 31– 43. J. So, N. Vaidya, Multi-channel MAC for ad hoc networks: handling multi-channel hidden terminals using a single transceiver, in: Proc. ACM MobiHoc, 2004. P. Bahl, R. Chandra, J. Dunagan, SSCH: slotted seeded channel hopping for capacity improvement in IEEE 802.11 ad-hoc wireless networks, in: Proc. ACM MobiCom, 2004. A. Kamerman, L. Monteban, WLAN-II: a high-performance wireless LAN for the unlicensed band, Bell Labs Technical Journal (1997). H. Zhu, G. Cao, rDCF: a relay-enabled medium access control protocol for wireless ad hoc networks, IEEE Transactions on Mobile Computing 5 (9) (2006) 1201–1214. G. Holland, N. Vaidya, P. Bahl, A rate-adaptive MAC protocol for multihop wireless networks, in: Proc. of ACM Mobicom, 2001. B. Sadeghi, V. Kanodia, A. Sabharwal, E. Knightly, Opportunistic media access for multirate ad hoc networks, in: Proc. of ACM Mobicom, 2002. V. Kanodia, A. Sabharwal, E. Knightly, MOAR: a multichannel opportunistic auto-rate media access protocol for ad hoc networks, in: Proc. of Broadnets, 2004. A. Sabharwal, A. Khoshnevis, E. Knightly, Opportunistic spectral usage: bounds and a multi-band CSMA/CA protocol, IEEE/ACM Transactions on Networking 15 (3) (2007) 533–545. M. Portoles, Z. Zhong, S. Choi, IEEE 802.11 downlink traffic shaping scheme for multi-user service enhancement, in: Proc. of PIMRC, 2003. T. Joshi, A. Mukherjee, Y.H. Yoo, D.P. Agrawal, Airtime fairness for IEEE 802.11 multirate networks, IEEE Transactions on Mobile Computing 7 (4) (2008) 513–527. D.Y. Yang, T.J. Lee, K.H. Jang, J.B. Chang, S.H. Choi, Performance enhancement of multirate IEEE 802.11 WLANs with geographically scattered stations, IEEE Transactions on Mobile Computing 5 (7) (2006) 906–919. P. Liu, Z. Tao, S. Narayanan, T. Korakis, S. Panwar, A cooperative MAC protocol for wireless LANs, IEEE Journal on Selected Areas in Communications 25 (2) (2007) 340–354. L. Guo, X. Ding, H. Wang, Q. Li, S. Chen, X. Zhang, Cooperative relay service in a wireless LAN, IEEE Journal on Selected Areas in Communications 25 (2) (2007) 355–368. N. Niranjan, S. Pandey, A. Ganz, Design and evaluation of multichannel multirate wireless networks, ACM/Kluwer Mobile Networking and Applications 11 (5) (2006) 697–709. T. Kuang, Q. Wu, C. Williamson, MRMC: a multi-rate multi-channel MAC protocol for multi-radio wireless LANs, in: Proc. of WiNCS, 2005. S.H. Kim, Y.J. Suh, Rate-based channel assignment algorithm for multi-channel multi-rate wireless mesh networks, in: Proc. of IEEE Globecom, 2008.

909

[36] S.H. Kim, Y.J. Suh, A distributed channel assignment protocol for rate separation in wireless mesh networks, Computer Communications 33 (11) (2010) 1281–1295. [37] S.H. Kim, D.W. Kim, Y.J. Suh, Distributing data rate using cooperative channel assignment for multi-rate wireless mesh networks, in: Proc. of IEEE WCNC, 2010. [38] D.S.J.D. Couto, D. Aguayo, J. Bicket, R. Morris, A high throughput path metric for multi-hop wireless routing, in: Proc. of ACM Mobicom, 2003. [39] B. Awerbuch, D. Holmer, H. Rubens, The medium time metric: high throughput route selection in multirate ad hoc wireless networks, ACM/Kluwer Mobile Networking and Applications 11 (2) (2006) 253–266. [40] T. Liu, W. Liao, On routing in multichannel wireless mesh networks: challenges and solutions, IEEE Network 22 (1) (2008) 13–18. [41] R. Jain, W. Hawe, D. Chiu, A quantitative measure of fairness and discrimination for resource allocation in shared computer systems, DEC Research Report DEC-TR-301, 1984. [42] J. Robinson, E. Knightly, A performance study of deployment factors in wireless mesh networks, in: Proc. of IEEE Infocom, 2007. [43] NS Official Website, http://www.isi.edu/nsnam/ns/. [44] MadWifi – a Linux Kernel Device Driver for Wireless LAN Chipsets from Atheros, . [45] Linux WPA/WPA2/IEEE 802.1X Supplicant, . [46] Cisco Aironet, .

Sok-Hyong Kim received the B.S. degree in Telecommunication and Information Engineering from Korea Aerospace University, Goyang, Korea, in 2005, and the M.S. degree in Computer and Communication Engineering from Pohang University of Science and Technology (POSTECH), Pohang, Korea, in 2007. He is currently a Ph.D. candidate student in the Department of Computer Science and Engineering at POSTECH. His research interests include wireless mesh networks, mobile networking, and vehicular ad hoc networks.

Dong-Wook Kim received the B.S degrees in Computer Engineering from Kyoungpook National University, Daegu, Korea, in 2005. He is currently a Ph.D. candidate student in the Department of Computer Science and Engineering at Pohang University of Science and Technology (POSTECH). His research interests include wireless LAN MAC protocol, wireless mesh networks, and mobile IP.

Young-Joo Suh received his B.S. and M.S. degrees in Electronics Engineering from Hanyang University, Seoul, Korea, in 1985 and 1987 respectively, and his Ph.D. degree in Electrical and Computer Engineering from Georgia Institute of Technology, Atlanta, Georgia, in 1996. He is currently a professor in the Department of Computer Science and Engineering at the Pohang University of Science and Technology (POSTECH), Pohang, Korea. From 1988 to 1990, he was a research engineer at the Central Research Center of LG Electronics Inc, Seoul, Korea. From 1990 to 1993, he was an assistant professor in the Department of Computer Science and Engineering at Chung-Cheong College, Korea. After receiving Ph.D. he worked as a postdoctoral researcher in the Computer Systems Research Laboratory in the School of Electrical and Computer Engineering at the Georgia Institute of

910

S.-H. Kim et al. / Ad Hoc Networks 9 (2011) 893–910

Technology from 1996 to 1997. From 1997 to 1998, he was a research fellow of the Real-Time Computing Laboratory in the Department of Electrical Engineering and Computer Science at the University of Michigan, Ann Arbor, Michigan. His current research interests include wireless

LAN MAC protocol, mobility management, ad hoc networks, 4G Wireless Mobile Networks, etc. Dr Suh is a member of the IEEE and the IEEE Communications Society.