# Channel Assignment and Access Protocols for Spectrum-Agile Networks with Single-Transceiver Radios

Haythem Bany Salameh, Marwan Krunz

► To cite this version:

Haythem Bany Salameh, Marwan Krunz. Channel Assignment and Access Protocols for Spectrum-Agile Networks with Single-Transceiver Radios. 10th IFIP Networking Conference (NETWORKING), May 2011, Valencia, Spain. pp.178-197, 10.1007/978-3-642-20798-3_14. hal-01597985

HAL Id: hal-01597985

https://inria.hal.science/hal-01597985

Submitted on 29 Sep 2017

HAL is a multi-disciplinary open access
archive for the deposit and dissemination of sci-
entific research documents, whether they are pub-
lished or not. The documents may come from
teaching and research institutions in France or
abroad, or from public or private research centers.

L'archive ouverte pluridisciplinaire HAL, est
destinée au dépôt et à la diffusion de documents
scientifiques de niveau recherche, publiés ou non,
émanant des établissements d'enseignement et de
recherche français ou étrangers, des laboratoires
publics ou privés.

<figure><img src="image_1.png" /></figure>

Distributed under a Creative Commons Attribution 4.0 International License
# Channel Assignment and Access Protocols for Spectrum-agile Networks with Single-Transceiver Radios*

Haythem Bany Salameh

Department of Telecommunication Engineering
Yarmouk University, Irbid 21163, Jordan

Email: haythem@yu.edu.jo

Marwan Krunz

Department of Electrical and Computer Engineering
University of Arizona, Tucson, AZ 85721, USA

Email: krunz@ece.arizona.edu

**Abstract.** Many spectrum access/sharing algorithms for cognitive radio networks (CRNs) have been designed assuming multiple transceivers per CR user. However, in practice, such an assumption may not hold due to hardware cost. In this paper, we address the problem of assigning channels to CR transmissions, assuming one transceiver per CR. The primary goal of our design is to maximize the number of feasible concurrent CR transmissions with respect to both spectrum assignment and transmission power. Energy conservation is also treated, but as a secondary objective. The problem is posed as a utility maximization problem subject to target rate demand and interference constraints. For multi-transceiver CRNs, this optimization problem is known to be NP-hard. However, under the practical setting of a single transceiver per CR user, we show that this problem can be optimally solved in polynomial time. Specifically, we present a centralized algorithm for the channel assignment problem based on bipartite matching. We then integrate this algorithm into distributed MAC protocols. First, we consider a single-hop CRN, for which we introduce a CSMA-like MAC protocol that uses an access window (AW) for exchanging control information prior to data transmissions. This approach allows us to realize a centralized algorithm in a distributed manner. We then develop a distributed MAC protocol (WFC-MAC) for a multi-hop CRN. WFC-MAC improves the CRN throughput through a novel distributed channel assignment that relies only on information provided by the two communicating users. We compare the performance of our schemes with CSMA/CA variants. The results show that our schemes significantly decrease the blocking rate of CR transmissions, and hence improves the network throughput.

**Key words:** Opportunistic Access; Cognitive Radio; Single-transceiver

## 1 Introduction

The widespread acceptance of the unlicensed wireless communication services and applications has significantly increased the demand for more transmission capacity. The unlicensed portions of the frequency spectrum (e.g., the ISM bands) have become increasingly crowded. At the same time, recent radio measurements conducted by the FCC and other agencies revealed vast temporal and geographical variations in the utilization of the licensed spectrum, ranging from 15% to 85% [1]. To overcome spectrum scarcity, cognitive radios have been proposed to allow opportunistic on-demand access to the spectrum [1, 2]. CR technology offers such opportunistic capability without affecting licensed primary radio (PR) users. Specifically, CR users access the available spectrum opportunistically by continuously monitoring the operating channels so as to avoid degrading the performance of PR users [2]. They should frequently sense their operating channels for active PR signals, and should vacate these channels if a PR signal is detected. In such an opportunistic environment, the crucial challenge is how to allow CR users to efficiently share (utilize) the available spectrum opportunities while improving the overall achieved throughput.

Several MAC protocols have been proposed for CRNs (e.g., [3–7]). We refer the interested reader to our technical report [8] for an extensive overview of related works. Most of these protocols assume that each CR is equipped with multiple transceivers, which may not often be the case. In addition, these protocols are often based on a greedy channel assignment strategy, which selects the “best” available channel (or channels) for a given transmission [3, 9]. The best channel is often defined as the one that supports the highest rate. Hereafter, we refer to this strategy as the best multi-channel (BMC) approach. As shown later, when the BMC approach is employed in a CRN, the blocking probability for CR transmissions increases, leading to a reduction in network throughput. In contrast, in our work, we consider a single half-duplex transceiver per CR user. Our goal is to maximize the number of concurrent feasible CR transmissions, and conserve energy as a secondary objective, with respect to both spectrum assignment and transmission power. For multi-transceiver CRNs, this joint channel assignment and power allocation problem is known to be NP-hard [7, 10]. However, for the single-transceiver case, we show that this problem can be optimally solved in polynomial time. Our optimization

<footnote>* This research was supported in part by NSF (under grants CNS-1016943, CNS-0721935, CNS-0904681, IIP-0832238), Raytheon, and the Connection One center. Any opinions, findings, conclusions, or recommendations expressed in this paper are those of the author(s) and do not necessarily reflect the views of the National Science Foundation.</footnote>
follows a “fall back” approach, whereby the secondary objective is optimized over the set of feasible channel assignments that are found to be optimal with respect to the primary objective.

**Contributions:** The contributions of this paper are as follows. We first formulate the optimal channel assignment and power allocation problem. Then, we present an *optimal* centralized algorithm for this problem based on bipartite matching. For a single-hop CRN, we develop a CSMA-based MAC protocol, called AW-MAC, which realizes the centralized algorithm in a distributed manner. The centralized algorithm requires global information, which is hard to obtain in a multi-hop environment. Accordingly, for a multi-hop CRN, we present an efficient distributed channel assignment that relies only on information provided by the two communicating users. Our distributed scheme improves CRN throughput performance through cooperative assignment among neighboring CR users. Specifically, a CR user that intends to transmit has to account for *potential* future transmissions in its neighborhood. Based on this distributed scheme, we then develop a novel CSMA-based MAC protocol (WFC-MAC). Our protocols do not require interaction with PR networks (PRNs), and can be adapted to existing multi-channel systems with little extra processing overhead.

To evaluate the performance of our protocols, we conduct simulations for a single-hop and a multi-hop CRN with mobile users. Simulation results show that our protocols significantly improve the network throughput over two previously proposed schemes (i.e., BMC-MAC [9, 3] and DDMAC [7]). The results also indicate that our protocols preserve (even slightly improve) throughput fairness. For single-hop scenarios, we show that AW-MAC achieves the best throughput (up to 50% improvement over BMC-MAC scheme) at no additional cost in energy consumption. In multi-hop scenarios, WFC-MAC achieves the best throughput at the cost of energy consumption.

The rest of the paper is organized as follows. In Section 2, we introduce our system model, state our assumptions, and formulate the optimal channel assignment/power control problem. Section 3 introduces the centralized channel assignment algorithm. Section 3.2 describes the proposed AW-MAC protocol. In Section 4, we introduce the distributed channel assignment algorithm and the proposed WFC-MAC protocol. In Section 5, we analysis the throughput of our proposed protocols. Section 6 presents our simulation results. Our concluding remarks are presented in Section 7.

# 2 Problem Formulation and Design Constraints

## 2.1 Network Model

We consider a decentralized opportunistic CRN that geographically coexists with $M$ different PRNs. The PRNs are licensed to operate on non-overlapping frequency bands, each of Fourier bandwidth $W$. For $k = 1, ..., M$, the carrier frequency associated with the $k$th PRN is $f_k$ (in Hz). Let $\mathcal{M}$ denote the set of all non-overlapping channels in all PRNs (i.e., $M = |\mathcal{M}|$).

CR users continuously identify potential spectrum holes and exploit them for their transmissions. They employ power control to avoid harmful interference with PR receptions. Specifically, CR users adopt the following transmission power strategy: for band $i$, $i = 1, ..., M$, the *maximum* CR transmission power is 0 if any PR user operates on band $i$, or limited to $P_{max}^{(i)}$ if no PR signal is detected (i.e., the transmission power $\le P_{max}^{(i)}$). $P_{max}^{(i)}$ is the smaller of the FCC regulatory maximum transmission power over band $i$ and the maximum power supported by the CR's battery ($P_{CR}$). Note that identifying the list of idle channels that is potentially available for CR transmissions at a given time and in a given geographical location is a challenging problem. To deal with this challenge, the FCC recently adopted three principal methods that can be used to determine the list of idle channels that is potentially available for CR transmissions at a given time and in a given geographical location [11]. The first method requires determining the location of a CR user and then accessing a database of licensed services (internal or external database) to identify busy/idle PR channels. The second method is to integrate spectrum sensing capabilities in the CR device. The third method is to periodically (or on-demand) transmit control information from a professionally installed fixed broadcast CR station. This control information contains the list of idle channels. Under this method, a CR transmitter can only transmit when it receives a control information that positively identifies idle PR channels. According to the FCC, this control information can also be transmitted by external entities, such as PR base stations (e.g., broadcast TV and radio stations). For our purposes, we assume that the control signal method is in place for determining the list of idle channels.

## 2.2 Feasibility Constraints

For a CR transmission $j$, transmitter and receiver need to cooperatively select an appropriate channel and transmission power while meeting the following constraints:

1. *Exclusive channel occupancy policy:* The selected channel cannot be assigned to more than one CR transmission in the same neighborhood (inline with the CSMA/CA mechanism).

2. *One transceiver per CR user:* Each CR user can transmit or receive on one channel only. The operation is half-duplex, i.e., a CR user cannot transmit and receive at the same time.
3. Maximum transmission power: For a CR transmission $j$ and idle channel $i$, the transmission power $P_j^{(i)}$ is limited to $P_{max}^{(i)}$. If channel $i$ is occupied by a PR user, $P_j^{(i)} = 0$.

4. Rate demand: Each CR transmission $j$ requires a given data rate $R_j$. If none of the idle channels can support $R_j$, the CR transmission $j$ will be blocked.

## 2.3 Problem Formulation

At a given time $t$, let $\mathcal{N}(t)$ and $\mathcal{M}_{Idle}(t) \subseteq \mathcal{M}$ respectively denote the set of all CR transmission requests and the set of all $|\mathcal{M}_{Idle}(t)| = \mathcal{M}_{Idle}(t)$ idle channels in a given neighborhood. Let $N(t) = |\mathcal{N}(t)|$. It has been shown that neighboring CR users in a given locality typically share a similar view of spectrum opportunities (i.e., the set of common idle channels) [12, 2].

Given the rate demands ($R_j, \forall j \in \mathcal{N}(t)$) and the set of idle channels $\mathcal{M}_{Idle}(t)$, our goal is to compute a feasible channel assignment that assigns channels and transmission powers to CR requests such that the number of feasible concurrent CR transmissions is maximized subject to the previously mentioned constraints. If multiple solutions exist for this optimization problem, we seek the one that requires the least amount of energy. Because we focus on computing a feasible channel assignment at a given time $t$, in what follows, we drop the time subscript ($t$) for notational convenience. Let $\alpha_j^{(i)}$ be a binary variable that is defined as follows:

$$ \alpha_j^{(i)} = \begin{cases} 1, & \text{if channel } i \text{ is assigned to transmission } j \\ 0, & \text{otherwise.} \end{cases} \tag{1} $$

The resource assignment problem is stated as follows:

$$
\begin{array}{ll}
\underset{\alpha_j^{(i)}, P_j^{(i)}}{\text{maximize}} & \displaystyle \sum_{i \in \mathcal{M}_{Idle}} \sum_{j \in \mathcal{N}} \alpha_j^{(i)} [1[r_j^{(i)} \ge R_j]] - \frac{1}{P_{tot}} \sum_{i \in \mathcal{M}_{Idle}} \sum_{j \in \mathcal{N}} \alpha_j^{(i)} P_j^{(i)} \\
& \text{Subject to} \\
& \displaystyle \sum_{j \in \mathcal{N}} \alpha_j^{(i)} \le 1, \quad \forall i \in \mathcal{M}_{Idle} \\
& \displaystyle \sum_{i \in \mathcal{M}_{Idle}} \alpha_j^{(i)} \le 1, \quad \forall j \in \mathcal{N} \\
& 0 \le P_j^{(i)} \le P_{max}^{(i)}, \quad \forall i \in \mathcal{M}_{Idle} \text{ and } \forall j \in \mathcal{N} \tag{2}
\end{array}
$$

where $1[\cdot]$ is the indicator function, $r_j^{(i)} = f(P_j^{(i)})$ is the data rate for link $j$ on channel $i$, $f(\cdot)$ is monotonically non-decreasing rate-power function (It can be Shannons capacity or any other power-rate function), and $P_{tot} = \sum_{i \in \mathcal{M}} P_{max}^{(i)}$. The second term in the objective function ensures that if multiple solutions exist for the optimization problem, the one with the least amount of total transmission power will be selected. Note that the first two constraints in (2) ensure that at most one channel can be assigned per transmission and a channel cannot be assigned to more than one transmission. The third constraint ensures that $\frac{P_j^{(i)}}{P_{max}^{(i)}} \le 1$. Given the above three constraints and noting that $\mathcal{M}_{Idle} \subseteq \mathcal{M}$, the second term of the objective function is always $< 1$ (i.e., $\frac{1}{P_{tot}} \sum_{i \in \mathcal{M}_{Idle}} \sum_{j \in \mathcal{N}} \alpha_j^{(i)} P_j^{(i)} < 1$). So, for any two feasible assignment $\Omega_1$ with $N_1$ of admitted CR transmissions and $\Omega_2$ with $N_2 < N_1$ of admitted CR transmissions, the above formulation will also selects $\Omega_1$ over $\Omega_2$, irrespective of the total transmission power.

The optimization problem in (2) is a mixed integer non-linear program (MINLP). Due to integrality constraints, one expects such a problem to be NP-hard. However, we show that this MINLP is not NP-hard and may be solved optimally in polynomial time. Specifically, we show that this problem is the same as assigning channels to independent (distinct) links such that the number of feasible CR transmissions is maximized while using the minimum total transmission power. In Section 3, we propose an algorithm that transforms this optimization problem into the well-known maximum weighted perfect bipartite matching problem, which has a polynomial-time solution [13].

**Remark:** For multi-transceiver case, the joint channel/power assignment problem is known to be NP-hard [7, 10].

## 3 Optimal Channel Assignment

In this section, we first present a centralized algorithm for the channel assignment problem based on bipartite matching. The objective of this algorithm is to maximize the total number of feasible concurrent CR transmissions by means of power management. Note that centralized algorithms are easy to implement in single-hop networks where all users are within radio range of each other. Based on this centralized algorithm, we develop a CSMA-based MAC protocol that can be executed in a distributed manner.
## 3.1 Proposed Algorithm

In our context, a centralized algorithm implies that the instantaneous SINR values, location information, and rate demand are known to the decision-making entity that assigns channels and transmission powers. For a finite number of available channels and given rate demands, a CR user can compute the minimum required power over each channel. Using this fact and noting that the graph connecting the set of CR transmission requests and the set of available channels is a bipartite graph<fnref n="1" />, our optimization problem can be transformed into a bipartite perfect matching problem. The maximum matching of this bipartite graph problem is the set containing the maximum number of feasible CR transmissions that can proceed concurrently. If there are multiple feasible channel assignments with maximum matching, the one requiring the smallest total transmission power will be selected. In the following, we develop an algorithm that transforms our optimization problem into a bipartite perfect matching problem. Formally, the algorithm proceeds in 3 steps:

**Step 1. Compute the minimum required powers:** For every CR transmission request $j \in \mathcal{N}$ and every idle channel $i \in \mathcal{M}_{Idle}$, the algorithm computes the minimum required transmission power $P_{j,req}^{(i)}$ that can support the rate demand $R_j$, i.e., $P_{j,req}^{(i)} = f^{-1}(R_j)$. Then, the algorithm identifies prohibited (infeasible) channel/transmission combination $(i, j)$ whose $P_{j,req}^{(i)}$ does not satisfy the maximum transmission power constraint (i.e., $P_{j,req}^{(i)} > P_{max}^{(i)}$).

**Step 2. Formulate the perfect bipartite matching problem:** The algorithm creates $M_{Idle}$ nodes, each corresponding to one of the idle channels. Let these nodes constitute the channel set $\mathcal{C}$. The algorithm also creates $N$ nodes to represent the CR transmission requests. Let these nodes constitute the request set $\mathcal{R}$. If $N > M_{Idle}$, the algorithm creates $N - M_{Idle}$ additional nodes $\mathcal{C}_D = \{M_{Idle} + 1, \dots, M_{Idle} + N\}$ to represent dummy channels and updates $\mathcal{C}$ as $\mathcal{C} = \mathcal{C} \cup \mathcal{C}_D$. On the other hand, if $N < M_{Idle}$, the algorithm creates $M_{Idle} - N$ additional nodes $\mathcal{R}_D = \{N + 1, \dots, M_{Idle} + N\}$ to represent dummy requests and updates $\mathcal{R}$ as $\mathcal{R} = \mathcal{R} \cup \mathcal{R}_D$. Then, the algorithm connects the nodes in $\mathcal{C}$ to the nodes in $\mathcal{R}$. Any $(i, j)$ assignment that contains a dummy node is also a prohibited assignment. Let $w_j^{(i)}$ denote the arc weight of link $(i, j)$ on the bipartite graph. For all prohibited assignments, the algorithm sets $w_j^{(i)}$ to a very large number $\Gamma \gg P_{CR}$. Formally,

$$ \left\{ \begin{array}{ll} w_j^{(i)} = P_{j,req}^{(i)}, & \text{if } P_{j,req}^{(i)} \le P_{max}^{(i)}, j \in \mathcal{R} \text{ and } i \in \mathcal{C} \\ w_j^{(i)} = \Gamma, & \text{if } P_{j,req}^{(i)} > P_{max}^{(i)}, j \in \mathcal{R} \text{ and } i \in \mathcal{C}. \end{array} \right. \qquad (3) $$

The above bipartite graph construction transforms the assignment problem into a perfect bipartite matching (because the number of CR transmissions is equal to the number of channels, and every node in the request set is connected to every node in the channel set). Now, the algorithm seeks a one-to-one assignment for the $\max\{M_{Idle}, N\} \times \max\{M_{Idle}, N\}$ bipartite graph constructed in Step 2, with the weights defined in (3), so as the channel utilization is maximized while selecting the minimum transmission powers. Particularly, the mathematical formulation of the assignment problem corresponds to a weighted perfect bipartite matching problem. Hence, the global optimal channel assignment solution (i.e., $\alpha_j^{(i)}$) can be found using the Hungarian algorithm, which has a polynomial-time complexity (i.e., $O(\sqrt{KK})$, where $K = \max\{N, M_{Idle}\}$ [13]) and codes are readily available for its implementation [14].

**Step 3. Find the optimal resource allocation:** The algorithm removes all prohibited assignments in the optimal channel solution by setting them to 0, and modifies $\alpha_j^{(i)}$ as follows:

$$ \left\{ \begin{array}{ll} \alpha_j^{*(i)} = 1, & \text{if } \alpha_j^{(i)} = 1 \text{ and } w_j^{(i)} < \Gamma, j \in \mathcal{R} \text{ and } i \in \mathcal{C} \\ \alpha_j^{*(i)} = 0, & \text{if } \alpha_j^{(i)} = 1 \text{ and } w_j^{(i)} = \Gamma, j \in \mathcal{R} \text{ and } i \in \mathcal{C}. \end{array} \right. \qquad (4) $$

Using the revised optimal assignment $\{\alpha_j^{*(i)}\}$, the algorithm computes $Z = \sum_{i \in \mathcal{C}} \sum_{j \in \mathcal{R}} \alpha_j^{*(i)}$. Depending on $Z$, there are two possibilities:

- If $Z = 0$, there is no feasible channel assignment.

- If $Z > 0$, there is a feasible channel assignment. In this case, $Z$ represents the maximum number of possible concurrent transmissions.

## 3.2 Channel Access Protocol for Single-hop CRNs

Based on the channel assignment algorithm presented in Section 3.1, we now propose a distributed multi-channel MAC protocol for single-hop ad hoc CRNs with a single half-duplex radio per node. Before describing our protocol in detail, we first state our main assumptions.

<footnote n="1">¹ A bipartite graph is a graph whose vertex set can be decomposed into two disjoint sets such that no two vertices in the same set are connected.</footnote>
**Assumptions:** For each frequency channel, we assume that its gain is stationary for the duration of a few control packets and one data packet. This assumption holds for typical mobility patterns and transmission rates [15]. We also assume symmetric gains between two users, which is a common assumption in RTS/CTS-based protocols, including the IEEE 802.11 scheme. Our protocols assume the availability of a prespecified common control channel. Such a channel is not necessarily dedicated to the CRN. It may, for example, be one of the unlicensed ISM bands. Note that the existence of a common control channel is a characteristic of many MAC protocols proposed for CRNs (e.g., [7, 6, 3]).

**Operational Details:** To execute the centralized algorithm presented in the previous section in a distributed manner, we require the instantaneous SINR information and rate demands of all contending CR users in a given locality to be known to all CR users in that locality before assigning channels and transmission powers. In a single-hop network, this issue can be handled during the “admission phase” by introducing a contention period known as the *access window* (AW). The AW consists of $M_{idle}$ fixed-duration access slots (AS). A series of control packet exchanges take place during these slots, after which several data transmissions can commence concurrently. We note here that the use of an AW for contention was originally proposed in the MACA-P protocol [16] and was later integrated in the design of POWMAC [15]. However, in both protocols the objective was not to address spectrum sharing (channel assignment), but rather to prevent collisions between control and data packets (in MACA-P) and to address single-channel transmission power control (in POWMAC). During the AW, communicating CR users announce their instantaneous SINR information. A CR user that has packets to transmit and that is not aware of any already established AW in its neighborhood can asynchronously initiate an AW. Each AS consists of the sum of an RTS duration, a CTS duration, and a maximum backoff interval (explained below), and two fixed short interframe spacing (SIFS) periods$^2$. Control packets are sent at the maximum (known) power $P_{ctrl}$. This $P_{ctrl}$ is constrained by the maximum permissible transmission power imposed on the control channel. Upon receiving an RTS packet from a CR user, say $A$, that is initiating an AW, other CR users in the network synchronize their time reference with $A$'s AW.

<figure><img src="image_2.png" /><figcaption>Fig. 1. Basic operation of AW-MAC.</figcaption></figure>

Suppose that a CR user $C$ overhears $A$'s RTS, and has a data packet to send. $C$ contends for the control channel in the next access slot of $A$'s AW as follows. It first backs off for a random duration of time ($T$) that is uniformly distributed in the interval $[0, T_{max}]$; $T_{max}$ is a system-wide backoff counter. After this waiting time and if no carrier is sensed, user $C$ sends its RTS packet in the current AS. Note that $T_{max}$ is in the order of a few microseconds whereas a time slot is in milliseconds, so the backoff mainly serves to prevent synchronized RTS attempts. For illustration purposes, Figure 1 shows a time diagram of the channel access process, assuming fixed data-packet sizes and equal rate demands. $T_{ctrl}$ and $T_{data}$ in the figure denote the durations (in seconds) of one RTS/CTS packet exchange and one data plus ACK packets transmissions, respectively.

After all the control packets have been exchanged, the channel assignment and power management algorithm of Section 3 is executed at every communicating node.

## 3.3 Remarks and Design Variants

**Granularity of Channel Assignment:** Depending on channel availability due to PR dynamics, the proposed channel assignment can be performed at the granularity of a packet or a link. In the latter case, the assignment applies to all packets of the current connection between the two end points of a link.

<footnote n="2">² As defined in the IEEE 802.11b standard [2], a SIFS period consists of the processing delay for a received packet plus the turnaround time.</footnote>
**Fairness Properties of AW-MAC:** According to AW-MAC, CR users contend over the control channel using a variant of the CSMA/CA mechanism. This gives all CR users the same probability of accessing channels, irrespective of their rate demands. Thus, our AW-MAC protocol preserves fairness among CR users. In our simulations (Section 6), we compare the fairness properties of AW-MAC to that of typical multi-channel CRN CSMA-based protocols. The results show that AW-MAC preserves (slightly improves) the network fairness.

**Channel Assignment with a Multi-level Frequency-dependent Power Constraint:** The problem of identifying spectrum holes and selecting appropriate channels/powers is overcomplicated by the presumably non-cooperative nature of PRNs, which usually do not provide feedback (e.g., interference margins) to CR users. To address this problem, a multi-level time-varying frequency-dependent power mask ($\mathbf{P}_{mask} = \{P_{mask}^{(1)}, P_{mask}^{(2)}, \dots, P_{mask}^{(M)}\}$) on the CR transmissions is often adopted (e.g., [7]). Enforcing such a power mask allows for spectrum sharing between neighboring CR and PR users. According to this approach, CR users can exploit both idle as well as partially-utilized bands, potentially leading to better spectrum utilization. However, the determination of an appropriate multi-level power mask is still an open issue, which has been recently investigated under certain simplifying assumptions (e.g., [3, 2]). Although our proposed algorithm assumes a binary-level power constraint on CR transmissions, the algorithm is still valid for the case of a multi-level frequency-dependent power mask by setting the maximum CR transmission power over channel $i$ to $P_{max}^{(i)} = \min\{P_{mask}^{(i)}, P_{CR}\}, \forall i \in \mathcal{M}$.

**AW-MAC with Two Transceivers:** Another design possibility that can achieve improvement in the CRN throughput is to use two half-duplex transceivers per CR user. One transceiver would be tuned to the control channel, while the other could be tuned to any data channel in $M_{Idle}$. Because there is no interference between data and control transmissions (the two are separated in frequency), the reservations of the subsequence AW can be conducted while current data transmissions are taking place (i.e., mimicing a full-duplex operation). This reduces the control overhead and improves the overall throughput at the cost of an additional transceiver. We refer to the channel access mechanism that uses AW assignment with one transceiver as AW-MAC, and the one that uses AW assignment with two transceivers as 2-radio AW-MAC. Figure 2 shows the basic operation of 2-radio AW-MAC. In Section 5, we study the potential throughput improvement of 2-radio AW-MAC over AW-MAC.

<figure><img src="image_3.png" /><figcaption>**Fig. 2.** Basic operation of 2-radio AW-MAC (Note that $M_{Idle}(t_o) = M_o$ and $M_{Idle}(t_1) = M_1$).</figcaption></figure>

**RTS/CTS handshake in AW-MAC:** It should be noted that the RTS/CTS handshake is essential in multi-channel systems (e.g., CRNs). Besides mitigating the hidden-terminal problems, there are two other main objectives for the use of RTS/CTS: (1) conducting and announcing the channel assignment, and (2) prompting both the transmitter and the receiver to tune to the agreed on channels before transmission commences. Simulation studies have shown that using RTS/CTS packets for data packets larger than 250 bytes is beneficial [17]<fnref n="3" />. It is also worth mentioning that our AW-MAC protocol is based on passive learning. This is because in AW-MAC, CR users are within the transmission range of each other and always listen to the control channel in order to overhear control-packet exchanges, including those not destined to them. CR users use the control information to perform the channel assignment. Thus, AW-MAC does not introduce any additional control message overhead beyond the needed two-way handshake for every transmitted data packet.

<footnote n="3">³ The RTS threshold depends on the number of users in the network [17, 18]. It should be reduced for a large number of users.</footnote>
# 4 Distributed Channel Assignment for Multi-hop CRNs

In this section, we present a distributed channel assignment scheme for a multi-hop CRN. It attempts to improve spectrum utilization in a purely distributed manner while relying only on information provided by the two communicating nodes. We first identify the key challenges involved in realizing the centralized algorithm in a distributed manner. Then, we describe our distributed scheme in detail.

## 4.1 Challenges

To execute our centralized algorithm in a multi-hop environment, the algorithm must run in a distributed manner at each CR device in a given locality (i.e., contention region). This implies that each CR user that belongs to a contention region must exchange instantaneous SINR information with other neighboring CR users in that region before selecting channels and powers. This incurs high control overhead and delay. Moreover, in a multi-hop environment, CR users may belong to multiple contention regions that differ in their views of the spectrum opportunity. To overcome such challenges, we develop a heuristic channel assignment scheme that provides a suboptimal solution with low complexity and that achieves good spectrum utilization.

## 4.2 Channel Assignment

The main consideration in our distributed scheme is to enable cooperation among neighboring CR users. A CR user that intends to transmit has to account for potential future transmissions in its neighborhood. It does that by assigning to its transmission the worst feasible channel, i.e., the least-capacity available channel that can support the required rate demand. We refer to this approach as the worst feasible channel (WFC) scheme. Note that a user determines the worst feasible channel for its transmission using only local information. WFC scheme preserves better channels for potential future CR transmissions. Even though WFC requires a pair of CR users to communicate on a channel that may not be optimal from one user's perspective, it allows more CR transmissions to take place concurrently, especially under moderate to high traffic loads. Compared to previously proposed channel assignment schemes (evaluated in Section 6), our approach avoids unnecessary blocking of CR transmissions, and has a great potential to improve network throughput by means of cooperative channel assignment.

## 4.3 Channel Access Protocol

**Protocol Overview:** Based on the WFC algorithm, we propose a distributed multi-channel MAC protocol for multi-hop ad hoc CRNs with a single half-duplex radio per node. The proposed protocol is an extension of the single channel RTS-CTS-DATA-ACK handshaking scheme used in the 802.11 standard. It differs from previous designs in that it exploits the “dual-receive single-transmit” capability of radios (i.e., each radio is capable of receiving over two channels simultaneously, but can transmit over one channel at a time). The operation is half-duplex, i.e., while transmitting, the radio cannot receive/listen, even over other channels. It can be implemented using one transceiver with slight upgrade in the receive chains of the circuitry. This capability is readily available in some recent radios. For example, QUALCOMM's RFR6500 radio [19] supports “simultaneous hybrid dual-receive operation, which allows for 1X paging signal monitoring during a 1xEV-DO connection, while monitoring other frequency bands for hand-off”. Another example is Kenwood's TH-D7A Dual-Band Handheld Transceiver [20], which supports simultaneous reception over both data and voice channels using a single antenna. Though a simple enhancement of the transceiver circuitry, the dual-receive capability makes the MAC design much easier. In particular, if we assume a common (or coordinated) control channel, a CR user that is not transmitting any data can tune one of its two receive branches to the control channel while receiving data over the other receive branch. This way, the multi-channel hidden-terminal problem can be alleviated.

**Operational Details:** To facilitate multi-channel contention and reduce the likelihood of CR collisions, each CR user, say $A$, maintains a free-channel list (FCL) and a busy-node list (BNL). The $FCL(A)$ represents idle PR channels that are not occupied by other CR users within the $A$'s one-hop communication range. $BNL(A)$ consists of the IDs of CR users that are currently busy transmitting/receiving data packets in $A$'s neighborhood. The $FCL(A)$ and $BNL(A)$ are continuously updated according to the channel access dynamics and overheard control packets. The proposed protocol follows similar interframe spacings and collision avoidance strategies of the 802.11 scheme (implemented here over the control channel) by using physical carrier sensing and backoff before initiating control-packet exchanges. Upon accessing the control channel, communicating CR users perform a three-way handshake, during which they exchange control information, conduct the channel assignment, and announce the outcome of this channel assignment to their neighbors.

The details of the channel access mechanism are now described. Suppose that CR user $A$ has data to transmit to CR user $B$ at a rate demand $R_A$. If $A$ does not sense a carrier over the control channel for a randomly selected backoff period, it proceeds as follows:
- If FCL(A) is empty or B is busy (based on BNL(A)), A backs off and attempts to access the control channel later. Otherwise, A sends an RTS message at power $P_{ctrl}$. The RTS packet includes FCL(A) and $R_A$.

- A's neighbors other than B, that can correctly decode the RTS will stay silent until either they receive another control packet from A, denoted by FCTS (explained below), or until the expected time for the FCTS packet expires.

- Upon receiving the RTS packet, B determines the common channel list that is available for A → B transmission, denoted by CCL(A, B). Then, B proceeds with the channel assignment process, whose purpose is to determine whether or not there exists a feasible channel assignment that can support $R_A$.

- Depending on the outcome of the channel assignment process, B decides whether or not A can transmit. If not (i.e., non of the channels in CCL(A, B) can support $R_A$), then B does not respond to A, prompting A to back off, with an increased backoff range that is similar to 802.11, and retransmit later. Otherwise, B sends a CTS message to A that contains the assigned channel, the transmit power, and the duration ($T_{pkt}(A)$) needed to reserve the assigned channel. The CTS implicitly instructs B's CR neighbors to refrain from transmitting over the assigned channel for the duration $T_{pkt}(A)$.

- Once A receives the CTS, it replies back with a “Feasible-Channel-to-Send” (FCTS) message, informing its neighbors of the assigned channel and $T_{pkt}(A)$. Such a three-way handshake is typically needed in multi-channel CSMA/CA protocols designed for multi-hop networks (e.g., [9, 7, 3]). For single-hop networks, where all users can hear each other, there is no need for the FCTS packet. Likewise, in single-channel multi-hop networks, the FCTS packet is also not needed.

- After completing the RTS/CTS/FCTS exchange, the transmission A → B proceeds. Once completed, B sends back an ACK packet to A over the assigned data channel.

When used with the WFC assignment, the above protocol is referred to as WFC-MAC. Note that, while receiving a data packet over a given data channel, a CR user still listens to other control packet exchanges taking place over the control channel, and can update its FCL and BNL accordingly. However, a CR user that is transmitting a data packet will not be able to listen to the control channel, so its FCL and BNL may become outdated. We refer to this problem as transmitter deafness, which is primarily caused by the half-duplex nature of the radios. To remedy this problem, when the receiver sends its ACK, it includes in this ACK any changes in the FCL and BNL that may have occurred during the transmission of the data packet. The transmitter uses this information to update its own tables.

Because there is no interference between data and control packets, a CR user that hears the RTS (CTS) packet defers its transmission only until the end of the control packet handshaking. This allows for more parallel transmissions to take place in the same vicinity.

## 5 Throughput Analysis

In this section, we use simplified analysis to evaluate the maximum achievable throughput of various channel access schemes in single-hop topologies. We assume that a CR user transmits data in the form of fixed-size packets at a fixed transmission rate. Recall that $T_{ctrl}$ denotes the transmission duration of one RTS plus one CTS packets, and $T_{data}$ denotes the duration for data plus ACK transmissions. Assume that $T_{ctrl}$ can be expressed in terms of $T_{data}$ as $T_{ctrl} = \delta T_{data}$. It is worth mentioning that according to the IEEE 802.11 specifications, $T_{data}$ is at least an order of magnitude larger than $T_{ctrl}$ (i.e., $0 < \delta \ll 1$). As an example, consider data- and control- packet sizes of 4-KB and 120 bits, respectively [21]. Also consider a transmission rate of 5Mbps. Then, $\delta \approx 0.0073$. We now provide expressions for the maximum achievable throughput under the various schemes assuming the availability of $M_{Idle}$ channels and a per-packet channel assignment. The maximum achievable throughput is defined as the maximum number of concurrent feasible CR transmissions that can be supported in a $T_{data} + M_{Idle}T_{ctrl} = (1 + M_{Idle}\delta)T_{data}$ duration.

For the single-transceiver AW-MAC, according to Figure 1, the maximum number of data packets that can be potentially transmitted in a $T_{data} + M_{Idle}T_{ctrl}$ duration is $M_{Idle}$. Under 2-radio AW-MAC, at steady state, the maximum number of data packets that can be potentially transmitted in the same duration is $M_{Idle} + \sum_{i=1}^{M_{Idle}} M_{Idle} \frac{T_{ctrl}}{T_{data}} = M_{Idle} + M_{Idle}^2 \delta = M_{Idle}(1 + M_{Idle}\delta)$ (see Figure 2). Under both WFC-MAC and BMC-MAC (similar to WFC-MAC but uses the BMC channel assignment), for a given channel $i$, Figure 3 shows that an RTS/CTS exchange can immediately follow the transmission of the previous data packet over that channel. Thus, the maximum achievable throughput in the $T_{data} + M_{Idle}T_{ctrl}$ duration is $M_{Idle} + \sum_{i=1}^{M_{Idle}-1} (M_{Idle} - i - 1) \frac{T_{ctrl}}{T_{data}}$. With some manipulations, this quantity can be written as $M_{Idle} + \delta(\frac{M_{Idle}^2}{2} - \frac{3}{2}M_{Idle} + 1)$.

Computing the maximum achievable throughput in this way is rather optimistic since we are assuming that for 2-radio AW-MAC/AW-MAC, all AW slots result in successful RTS/CTS exchanges, and that for the BMC-MAC/WFC-MAC and a given data channel, an RTS/CTS exchange follows immediately the transmission of the previous data packet over that channel.

Figure 4 shows the maximum achievable throughput as a function of $M_{Idle}$ for two data-packet sizes and various channel access schemes. For practical data- and control- packet sizes [21], where $\delta \ll 1$, the figures reveal that various channel
<figure><img src="image_4.png" /><figcaption>**Fig. 3.** Basic operation of the distributed spectrum access scheme.</figcaption></figure>

access schemes achieve comparable throughput performance. More importantly, the use of two half-duplex transceivers per CR user provides a minor improvement in the system throughput over a single-transceiver design. The figures also demonstrate that the throughput gain due to two transceivers is larger at smaller data-packet sizes (i.e., larger $\delta$) and larger $M_{Idle}$. This is because a larger $\delta$ (or $M_{Idle}$) means larger a AW duration, which results in more overhead for the single-transceiver solution.

<figure><img src="image_5.png" /><figcaption>**Fig. 4.** Maximum achievable throughput (in packet/ ($T_{data} + M_{Idle}T_{ctrl}$)) vs. total number of idle channels (control-packet size = 120 bits).</figcaption></figure>

# 6 Performance Evaluation

We now evaluate the performance of the proposed protocols via simulations. Our proposed protocols (AW-MAC and WFC-MAC) are compared with two CRN MAC protocols: BMC-MAC [3] and DDMAC [7]. As mentioned before, BMC-MAC selects the best available channel for data transmission. DDMAC is a CSMA-based spectrum-sharing protocol for CRNs. It attempts to maximize the CRN throughput through a probabilistic channel assignment algorithm that exploits the dependence between the signal's attenuation model and the transmission distance while considering current traffic and interference conditions. For a fair comparison, in BMC-MAC, WFC-MAC, and DDMAC, CR users employ the same channel access mechanism described in Section 4.3. They differ in the channel assignment approach. The maximum achievable throughput under DDMAC channel access is the same as the one obtained in Section 5 for WFC-MAC/BMC-MAC and is comparable to the one for AW-MAC (see Figure 4). Note that, in all protocols, if there is no feasible channel assignment that can support the rate demand, no channel will be assigned, prompting the transmitter to back off. It is worth mentioning that DDMAC involves more processing overhead, as it requires distance and traffic estimation. In our evaluation, we first study the network performance in a single-hop CRN, where all users can hear each other. Then, we study it in a multi-hop mobile CRN. Our results are based on simulation experiments conducted using CSIM, a C-based, process-oriented, discrete-event simulation package [22].
<figure><img src="image_6.png" /><figcaption>(a) Blocking ratio vs. λ</figcaption></figure>

<figure><img src="image_7.png" /><figcaption>(b) Throughput vs. λ</figcaption></figure>

<figure><img src="image_8.png" /><figcaption>(c) $E_p$ vs. λ</figcaption></figure>

<figure><img src="image_9.png" /><figcaption>(d) Fairness index (2-radio AW-MAC depicted similar behavior as AW-MAC)</figcaption></figure>

<figure><img src="image_10.png" /><figcaption>(e) CR channel usage (2-radio AW-MAC depicted similar behavior as AW-MAC)</figcaption></figure>

<caption>Fig. 5. CRN performance in single-hop scenarios.</caption>

## 6.1 Simulation Setup

We consider four PRNs and one CRN that coexist in a 100 meter × 100 meter field. Users in each PRN are uniformly distributed. The PRNs operate in the 600 MHz, 900 MHz, 2.4 GHz, and 5.7 GHz bands, respectively. Each PRN consists of three 2.5-MHz-wide channels, resulting in a maximum of 12 channels for opportunistic transmissions. We divide the time into slots, each of length 6.6 ms. A time slot corresponds to the transmission of one data packet of size 4-KB at a transmission rate of 5 Mbps. Each user in the $k$th PRN acts as an ON/OFF source, where it is ON while transmitting and OFF otherwise. The source is further characterized by the distribution of its ON and OFF periods, which are both taken to be exponential. We set the average ON and OFF periods for the four PRNs to be the duration of 10 and 190 time slots, respectively. The number of PR links in each PRN is 20. Each active link in the $k$th PRN transmits over one of the 3 channels in its own band. Thus, the available spectrum opportunity in each PR band is 66.7%. For the CRN, we consider 200 mobile users. The random waypoint model is used for mobility, with the speed of a CR user uniformly distributed between 0 and 2 meters/sec. For each generated packet, the destination node is selected randomly. Each CR user generates fixed-size (2-KB) data packets according to a Poisson process of rate $\lambda$ (in packet/time slot). Each user requires a transmission rate of 5 Mbps. We set the CRN SINR threshold to 5 dB and the thermal noise power density to $P_{\text{th}}^{(i)} = 10^{-21}$ Watt/Hz for all channels. We set the maximum transmission power to $P_{\text{max}}^{(1)} = P_{\text{max}}^{(2)} = \dots = P_{\text{max}}^{(12)} = 50$ mW and the control-packet size to 120 bits. The data rate of a CR transmission over a given channel is calculated according to Shannon's formula$^4$. The reported results are averaged over 100 runs. Our performance metrics include: (1) the network throughput, (2) the CR blocking rate, (3) the average energy consumption for successfully transmitting one data packet ($E_p$), and (4) the fairness index. The CR blocking rate is defined as the percentage of CR requests that are blocked due to the unavailability of a feasible channel. We use Jain's fairness index [23] to quantify the fairness of a scheme according to the throughput of all the CR users in the network.

## 6.2 Single-hop Network

We first study the throughput performance. Figures 5(a) and (b) show that 2-radio AW-MAC provides only minor improvement in the network throughput over the single transceiver AW-MAC (this result is inline with the analysis

<footnote>$^4$Other rate-vs-power relationships, such as a staircase function, can be used for calculating the achievable data rates.</footnote>
in Section 5). Because both 2-radio AW-MAC and AW-MAC use the same channel assignment algorithm and provide comparable throughput performance, in the following, we focus on the performance of AW-MAC and compare it with the performance of the other protocols. Specifically, Figures 5(a) and (b) show that under moderate and high traffic loads, AW-MAC significantly outperforms the other protocols. At steady state, AW-MAC reduces the CR blocking rate and improves the overall one-hop throughput by up to 50% compared to BMC-MAC, 18% compared to DDMAC, and 12% compared to WFC-MAC. This improvement is mostly attributed to the increase in the number of simultaneous CR transmissions. WFC-MAC outperforms both BMC-MAC and DDMAC. This is because WFC-MAC attempts to serve a given CR transmission first using the worst feasible channel and preserves better channels for potential future transmissions. Under light loads, all protocols achieve comparable throughput performance. In Figure 5(c), we study the impact of the channel assignment strategy on $E_p$. It is clear that WFC-MAC and DDMAC perform the worst in terms of energy consumption. At the same time, the figure reveals that 2-radio AW-MAC, AW-MAC, and BMC-MAC have comparable performance with respect to $E_p$. Thus, the throughput advantage of AW-MAC does not come at the expense of additional energy consumption.

Figure 5(d) shows that all schemes achieve comparable fairness. This can be attributed to the fact that in all of these schemes CR users contend over the control channel using a variant of the CSMA/CA mechanism. Finally, Figure 5(e) depicts the channel usage, defined as the fraction of time in which a specific channel is used for CR transmissions. For WFC-MAC and DDMAC, channel usage is roughly evenly distributed among all channels, irrespective of the traffic load. For AW-MAC and BMC-MAC, under low and moderate traffic loads, channels with lower carrier frequencies are favored for CR transmissions (lower attenuation). On the other hand, under high traffic load, there are no significant differences in channel usage among all channels.

## 6.3 Multi-hop Network

<figure><img src="image_11.png" /><figcaption>Fig. 6. CRN performance in multi-hop scenarios.</figcaption></figure>

In order to study the performance in a multi-hop environment, we use the same simulation setup described in Section 6.1, but with the following changes:

- A 500 meter × 500 meter field is considered for the 200 mobile CR users.

- The maximum transmission power is set to $P_{max}^{(1)} = P_{max}^{(2)} = \dots = P_{max}^{(12)} = 100$ mW.

- Each CR user generates 2-KB data packets according to a Poisson process of rate $\lambda$. For each generated packet, the destination node is randomly selected to be any node in the network. We use a min-hop routing policy, but we ignore the routing overhead. For all schemes (BMC-MAC, WFC-MAC, and DDMAC), the next-hop candidates are nodes that are within the transmission range of the transmitter.

The purpose behind these changes in the setup is to give rise to hidden terminals. Our simulations take into account the effect of the hidden-terminal problem due to imperfect control and inaccurate ACL at both the receiver and transmitter by considering the interference from active neighboring CR transmissions that use common channels (if any).

As shown in Figures 6(a) and (b), WFC-MAC achieves lower CR blocking rate and higher end-to-end network throughput than the other two protocols under moderate and high traffic loads. On the other hand, under low traffic load, all protocols achieve comparable throughput performance. Figure 6(c) shows that BMC-MAC outperforms WFC-MAC and DDMAC in terms of $E_p$ under different traffic loads. Similar fairness and channel usage properties to the single-hop scenarios are also observed here.

Note that no single strategy is always best in all traffic regimes. Under light traffic, BMC-MAC provides the same throughput performance as WFC-MAC and DDMAC, but outperforms them in terms of $E_p$. However, under moderate and high traffic loads, WFC-MAC performs better in terms of throughput at the cost of $E_p$.
# 7 Conclusion

In this paper, we investigated the design of cooperative dynamic channel assignment for single-transceiver CR devices that employ adaptive power management. Our solutions attempt to maximize the network throughput as a primary objective, followed by minimizing energy consumption as a secondary objective. We first presented centralized and distributed channel assignment algorithms. For single-hop CRNs, we developed a CSMA-based MAC protocol with access window (AW) for exchanging control messages. Our AW-MAC realizes the optimal centralized channel assignment in a distributed manner. Based on our heuristic distributed assignment, we also developed a distributed, asynchronous MAC protocol (WFC-MAC) for multi-hop CRNs. We studied the performance of our protocols and contrasted them with two previously proposed MAC protocols (i.e., BMC-MAC and DDMAC). We showed that for single-hop CRNs, AW-MAC performs the best in terms of throughput and energy consumption under various traffic conditions. Under moderate-to-high traffic loads, AW-MAC achieves about 50% increase in throughput over BMC-MAC at no additional cost in energy. It achieves about 18% throughput improvement over DDMAC, with even less energy consumption and processing overhead. For multi-hop scenarios, our results show that WFC-MAC is the best strategy in terms of throughput at the cost of energy consumption under different traffic loads.

# References

1. FCC, Spectrum Policy Task Force Report, ET Docket No. 02-155: (2002)

2. Bany Salameh, H., Krunz, M.: Channel Access Protocols for Multihop Opportunistic Networks: Challenges and Recent Developments. IEEE Network-Special Issue on Networking over Multi-hop Cognitive Networks (2009)

3. Bany Salameh, H., Krunz, M., Younis, O.: MAC protocol for opportunistic cognitive radio networks with soft guarantees. IEEE Transactions on Mobile Computing 8 (2009) 1339-1352

4. Sabharwal, A., Khoshnevis, A., Knightly, E.: Opportunistic spectral usage: Bounds and a multi-band CSMA/CA protocol. IEEE/ACM Transactions on Networking 15 (2007) 533-545

5. Bany Salameh, H.: Rate-maximization channel assignment scheme for cognitive radio networks. In: Proceedings of the IEEE GLOBECOM Conference. (2010)

6. Yuan, Y., Bahl, P., Chandra, R., Chou, P., Ferrell, J., Moscibroda, T., Narlanka, S., Wu, Y.: Knows: Kognitive networking over white spaces. In: Proceedings of the IEEE DySPAN Conf. (2007) 416-427

7. Bany Salameh, H., Krunz, M., Younis, O.: Cooperative adaptive spectrum sharing in cognitive radio networks. IEEE/ACM Transactions on Networking (2010)

8. Bany Salameh, H., Krunz, M.: Spectrum sharing with adaptive power management for throughput enhancement in dynamic access networks. Technical Report TR-UA-ECE-2009-1, University of Arizona (2009) http://www.ece.arizona.edu/~krunz/Publications.htm/.

9. Jain, N., Das, S., Nasipuri, A.: A multichannel CSMA MAC protocol with receiver-based channel selection for multihop wireless networks. In: Proceedings of the 9th Int. Conf. on Computer Communications and Networks (IC3N). (2001) 432-439

10. Behzad, A., Rubin, I.: Multiple access protocol for power-controlled wireless access nets. IEEE Transactions on Mobile Computing 3 (2004) 307-316

11. Second Report and Order and Memorandum Opinion and Order, ET Docket No. 04-186;FCC 08-260: (2008)

12. Zhao, J., Zheng, H., Yang, G.H.: Distributed coordination in dynamic spectrum allocation networks. In: Proceedings of the IEEE DySPAN Conf. (2005) 259-268

13. Sedgewick, R.: Algorithms in C, Part 5: Graph Algorithms. Addison-Welsy (2002) 3rd edition.

14. Dendeit, V., Emmons, H.: Max-Min matching problems with multiple assignments. Journal of Optimization Theory and Application 91 (1996) 491-511

15. Muqattash, A., Krunz, M.: POWMAC: A single-channel power control protocol for throughput enhancement in wireless ad hoc networks. IEEE Journal on Selected Areas in Communications 23 (2005) 1067-1084

16. Acharya, A., Misra, A., Bansal, S.: MACA-P: a MAC for concurrent transmissions in multi-hop wireless networks. In: Proceedings of the First IEEE PerCom 2003 Conference. (2003) 505-508

17. Crow, B., Widjaja, I., Kim, J., Sakai, P.: IEEE 802.11 wireless local area networks. IEEE Communications Magazine 42 (1997) 116-126

18. Bianchi, G.: Performance analysis of the IEEE 802.11 distributed coordination function. IEEE Journal on Selected Areas in Communications 18 (2000) 535-547

19. Qualcomm Announces Sampling of the Industry's First Single-Chip Receive Diversity Device for Increased CDMA2000 Network Capacity (http://www.qualcomm.com/press/releases/2005/050504-rfr6500.html).

20. Kenwood TH-D7A Dual-Band Handheld Transceiver (http://www.kenwoodusa.com/Communications/Amateur-Radio/Portables/TH-D7A(G)).

21. The Cisco Aironet 350 Series of wireless LAN (http://www.cisco.com/warp/public/cc/pd/witc/ao350ap).

22. Mesquite Software Incorporation (www.mesquite.com).

23. Jain, R.: The Art of Computer System Performance Analysis. New York: John Wiley & Sons (1991)