Skip to main content

A concurrent access MAC protocol for cognitive radio ad hoc networks without common control channel


Cognitive radio ad hoc networks (CRAHNs) consist of autonomous nodes that operate in ad hoc mode and aim at efficient utilization of spectrum resources. Usually, the cognitive nodes in a CRAHN exploit a number of available channels, but these channels are not necessarily common to all nodes. Such a network environment poses the problem of establishing a common control channel (CCC) as there might be no channel common to all the network members at all. In designing protocols, therefore, it is highly desirable to consider the network environment with no CCC. In this article, we propose a MAC protocol called concurrent access MAC (CA-MAC) that operates in the network environment with no CCC. The two devices in a communication pair can communicate with each other even if they have only one common channel available. Therefore, the problems with CCC (such as channel saturation and denial of service attacks) can also be resolved. In CA-MAC, channel accesses are distributed over communication pairs, resulting in increased network connectivity. In addition, CA-MAC allows different communication pairs to access multiple channels concurrently. According to our performance study, CA-MAC provides higher network connectivity with shorter channel access delay compared to SYN-MAC, which is the conventional key MAC protocol for the network environment with no CCC, resulting in better network throughput.

1. Introduction

Cognitive radio networks have been devised to opportunistically access the available spectrum being underutilized by users who are licensed to use that spectrum. These users are commonly called primary users (PUs). Federal Communications Commission [1] pointed out that the licensed spectrums are underutilized by PUs in vast amount. Therefore, a need was felt to utilize the valuable resource effectively. Mitola and Maguire Jr [2] introduced the concept of cognitive radio (CR), which could intelligently find out the spare spectral areas and use them for benefit. The opportunistic users are called as secondary users (SUs).

SUs are equipped with CR capability that can be classified into cognitive capability and re-configurability. Cognitive capability refers to the ability to sense opportunities in spectrum where and when channels are not utilized by PUs. These opportunities are called spectrum holes. Re-configurability means the capability to reconfigure communication parameters and utilize the spectrum hole. However, SUs should access channels such that there is no interference with PUs. Therefore, whenever the PU tries to re-access the channel, the SU should immediately refrain from its transmission. This is because we assume that the SUs can access a channel only if PU is idle.

An SU can sense a number of available channels before accessing them. Each of participating SUs in a network senses for opportunities. But, as they are sparsely located in a certain area and PUs’ activities vary with location, it is likely that a channel available to an SU at one location might not be available to an SU at another location [3, 4]. In addition, a node should avoid transmitting in some channels for preventing potential interference to/from other SUs and PUs in range [5]. Therefore, channel availability is not common throughout the network. This is the practical scenario for cognitive radio ad hoc networks (CRAHNs) and therefore should be taken into consideration. In this article, the channel availability is defined as a probability that a channel is accessible to an SU after sensing.

With the “uncommon” channel availability, opportunistic spectrum access cannot be done with legacy wireless MAC protocols. Although some of the MAC protocols as in [6]–[8] are designed by taking “uncommon” channels into account, most of the existing MAC protocols for CRAHNs assume that a common channel exists throughout the network to be used as a control channel. Brandon [9] has provided a thorough discussion on several CCC design issues and techniques. Furthermore, the existing MAC protocols for CRAHNs with uncommon channel availability lag either by adding up high overhead to the network or fail to solve the issues. A more comprehensive overview of MAC protocols for CRAHNs is presented in Section 2.

In this article, we propose a MAC protocol called concurrent access MAC (CA-MAC) for CRAHNs capable of concurrent transmissions on multiple channels by different pairs of devices. The proposed CA-MAC does not require any CCC for transferring control information, alleviates fairness in channel access between SUs, and increases network connectivity. The performance evaluation results show that CA-MAC provides shorter end-to-end delay with higher network connectivity compared to a conventional key MAC protocol for the network environment with no CCC [6]. With a number of nodes in a network, average network throughput is also shown to be increased. The major contributions of this study are summarized below:

  • Nodes can communicate with each other even if they have only one channel in common.

  • •Multiple pairs can transmit concurrently.

  • Waiting time to channel access is remarkably decreased and

  • Channel utilization and network connectivity are increased.

The remainder of the article is organized as follows: In the following section, related existing works are reviewed. The proposed CA-MAC is presented in detail in Section 3. The performance of CA-MAC is evaluated and compared in Section 4. Finally, the article is concluded in Section 5.

2. Related works

Many researchers have proposed various MAC protocols for CRAHNs in the literature. Due to the complexity in ad hoc networks, there are various issues to be addressed while designing a MAC protocol. Major issues are the spectrum sensing technique, dynamic spectrum allocation, spectrum sharing, and establishing a common control channel (CCC). On the basis of a CCC, CRAHN MAC protocols can be classified into three categories: dedicated CCC (D-CCC), non-dedicated CCC (ND-CCC), and non-CCC (N-CCC) as shown in Figure 1.

Figure 1
figure 1

Classification of MAC protocols for CRAHNs.

2.1. D-CCC

The D-CCC-based protocols assume that a CCC is available in a network. The CCC is a licensed channel or exists in some unlicensed band such as the Industrial, Scientific, and Medical band. SUs exchange their control information by using the D-CCC. Therefore, network startup, node joining, and information exchange are quite easy in this type of protocols. In Figure 1, four MAC protocols belong to D-CCC. DOSS MAC [10] operates by using three channels: CCC, a data channel and a busy tone band. HC MAC proposed by Jia et al. [11] considers the hardware constraints in a node. In the cross-layer opportunistic MAC [12], the spectrum sensing policy at the physical layer and the packet scheduling at the MAC layer are integrated. OS MAC [13] is based on a group of nodes (SU group) using the same data channel.

2.2. ND-CCC

Although the D-CCC-based MAC protocols are easy to realize, assigning a fixed CCC might not be practical in some scenarios. Besides, the fixed CCC might cause CCC saturation problems and jamming effects [6]. ND-CCC protocols do not have any CCC assigned at the network startup. Also, in case of a large number of SUs, the CCC can get saturated.

In general, an ND-CCC is established by selecting one of available channels in a network or by dividing SUs into different groups or clusters that have different ND-CCCs. In C-MAC [14] and EDA MAC [15], a rendezvous channel is established and channels are divided into a number of superframes. The superframes consist of a beacon period and a data transmission period. In AMAC [16], communication pairs exchange the prioritized channel list and select a different ND-CCC in the list. So, different SU pairs have different ND-CCCs. A network can be divided into groups and an ND-CCC is selected within a group in CogMesh MAC [17] and HD MAC [18] protocols. This is because it is less likely to find a common channel throughout the whole network. However, it has to be noted that ND-CCCs can still be affected by problems in the D-CCC. Unlike D-CCCs, however, ND-CCCs are not fixed. In addition, there can be many ND-CCCs in a network. So, the extent of adverse effects is smaller.

2.3. N-CCC

Usually, the channel availability is uncommon in CRAHNs. Therefore, the probability of a channel being common to nodes is comparatively small. N-CCC-based MAC protocols do not require any CCC for exchanging the control signals. They are effectively run by implementing synchronization between nodes. Using channel-hopping for control and data transmission has been also proposed. Zhao et al. [19] proposed the DC-MAC protocol in which the spectrum access is done by combining spectrum sensing at the physical layer with historical statistics. But, it assumes that PU slots and transmission probability are known in advance. The SRAC protocol [7] is based on the cross-channel communication in single-radio multi-hop ad hoc networks. Each of the nodes selects a stable receive channel among available channels for receiving data. However, it requires extra control signal transmission and multiple broadcasts of packets. In DH-MAC [8], nodes hop among available channels in a cyclic pattern. There is a need for synchronization for dissimilar parameters and extra overhead of fast switching between channels. In the SYN MAC protocol [6], a group of time slots is established and repeated over time, where the number of slots in a group is equal to the number of channels. But, only one pair can start a transmission in a particular slot.

As a result, there are relatively few MAC protocols that consider the uncommon channel availability. However, they have some operational shortcomings including the extra requirement of control signal exchanges and the overhead of channel switching. Also, nodes are affected by long transmission delay and waiting time. Furthermore, it is not preferable to use CCC for preventing CCC saturation and denial of service attacks.

3. Proposed CA-MAC protocol

Although majority of contributions in the literature assume the common channel distribution where most of the channels are available to network nodes, this might not be the case in a practical scenario of CRAHNs. In practice, channel availability varies node-by-node.

The idea behind the proposed protocol is to have little network access delay and waiting time. That is, as many communication pairs as possible should be able to start transmission at the same time and as early as possible. For transmitting early, nodes should get a chance to reserve a channel as early as possible. Also, it is required that nodes gather information on the channel reservations of other nodes. For this, the channel used for data channel contention should be the one that it is most common to all member nodes. On the other hand, a communication pair should reserve a data channel which is least common to all member nodes, so that there is a good chance of winning the contention for that channel.

To facilitate these principles, we make use of two different channel lists, namely (i) the sorted channel list (SCL), which is a global list of all the channels in the network, sorted such that the first channel is most common and the last channel is least common to all member nodes, and (ii) the common channel list (CCL), which is a local list of all the channels common to a given communication pair, sorted in the reverse order. To illustrate these principles, we start with a simple example:

Let the channel list of nodes N 1, N 2, N 3, N 4, N 5, N 6, N 7, N 8, N 9, and N 10 be

N 1 : C 3 C 4 N 2 : C 2 C 3 C 4 N 3 : C 2 C 3 C 4 N 4 : C 2 C 5 N 5 : C 2 C 3 C 4 C 5 N 6 : C 1 C 3 C 4 N 7 : C 1 C 4 C 5 N 8 : C 1 C 2 C 3 C 4 N 9 : C 1 C 2 C 4 N 10 : C 2 C 5

Now, SCL would be {C 4, C 2, C 3, C 5, C 1}. And, time slots for channel reservation are given as T 1C 4, T 2C 2, T 3C 3, T 4C 5, and T 5C 1. If N 1N 2, N 3N 4, N 5N 6, N 7N 8, and N 9N 10 are pairs, CCLs are as follows:

N 1 - N 2 : C 3 , C 4 N 3 - N 4 : C 2 N 5 - N 6 : C 3 , C 4 N 7 - N 8 : C 1 , C 4 N 9 - N 10 : C 5 , C 2

Now, at slot T 1 on channel C 4, pairs N 1N 2, N 5N 6, and N 7N 8 reserve channels C 3, C 4, and C 1 for transmission, respectively, and all three pairs start transmission at T 2 slot. And, at slot T 2, on channel C 2, pairs N 3N 4 and N 9N 10 reserve channels C 2 and C 5 respectively, and start transmission at T 3 slot. This process is explained in more detail in the following sections.

3.1. Assumptions

Our protocol does not require any CCC. It is assumed that different nodes have a different set of channels available to access. Therefore, a communication pair has very few common channels for communicating with each other. The channel availability of each node is shared within a network and, thus, every node knows the channel availability of all the nodes in the network. Each node is assumed to possess two radio front-ends. One of them is for listening to control signals (listening radio) and another is for data transmission (data radio). So, data transmission and control signal overhearing are possible at the same time. In this way, nodes can receive signaling information on the first radio front-end while transmitting or receiving data on the other one. Therefore, the re-appearance of PU on a channel can effectively be detected while data are transmitted or received. Furthermore, two radio front-ends are also helpful on overhearing other pairs’ communication and the hidden terminal problem can be avoided as well. It is assumed that both radio front-ends operate in frequency ranges that are well separated, so as to avoid self-interference effects. Unlike other MAC protocols for CRAHNs, the proposed CA-MAC protocol requires only one common channel for a communication pair. In other words, all nodes are assumed to have at least one channel in common with the desired communication partner (otherwise, communication is not possible).

3.2. Network architecture and synchronization

Channel distribution is considered to be “uncommon”. This means that, given N channels in total, only n (n ≤ N) channels may be available to a particular node. At the beginning of network formation, each node gains knowledge about the channel availability of other member nodes.

At the beginning, a group of time slots is established and repeated over time, where the number of slots in a group is equal to the number of channels. In each time slot, a beacon is broadcasted using one of available channels in one-by-one manner. By listening to beacons, subsequent nodes synchronize and exchange the available channel sets. Every node examines the channel sets in order to prepare a Node Channel Matrix (NCM) which will be described later.

3.3. Channel architecture

The channel structure of CA-MAC is based on the split phase multichannel MAC protocols described in [20, 21], where time is divided into a number of phases for control and data transmission. Unlike them, CA-MAC does not use a CCC and has two radio interfaces. Therefore, CA-MAC is able to overlap control and data transmission on different channels at the same time slot.

There may be N available channels. These channels are ranked according to defined priority and then reordered according to their rank. The mechanism of ranking and ordering is described in detail in Section 3.6. Time slots are synchronized and occupied by the channels. The number of time slot in a cycle (or period) is equal to the number of channels. The cycle is repeated in time. According to the channel assignment, rank 1 channel refers to time slot 1, rank 2 channel refers to time slot 2, and so on.

Figure 2 shows the channel structure in CA-MAC. The representative slot (the slot with slot number being equal to the channel rank number) of a channel starts with a signaling period. For example, for the channel ranked as 1, the first slot starts with a signaling period (channel C 4 in Figure 2); similarly, for the channel ranked as 3, signaling period is at the third slot (channel C 3 in Figure 2). The rest of the period in a channel is the data transmission period. The signaling period consists of signaling slots for negotiation. These signaling slots are used by intending communication pairs to contend for reserving a channel. These slots can also be used for transmitting other control information such as PU arrival notification.

Figure 2
figure 2

Channel structure. (a) Signaling periods (participating pairs are indicated). (b) Data transmission between indicated communicating pairs.

3.4. NCM

Before explaining the NCM, it is necessary to define some new terms. The channel indicator or channel access indicator, λ i j, is the bivalent which represents whether node i can access channel j (1) or not (0). Hence, for node i, for m channels, we can form a list of channels as {{C 1, λ i 1}, {C 2, λ i 2}, {C 3, λ i 3}, …, {C m , λ i m}}, where for each j from 1 to m, λ i j is equal to 1 if node i can access channel C j and 0 otherwise. Again, for n nodes in a network, these lists can be combined to form an n × m matrix called NCM as shown in Figure 3.

Figure 3
figure 3


Now, the channel availability or channel access probability, p i j, is the probability that λ i j = 1. The channel availability is the probability that a channel is available to a node. In other words, it is the probability that a PU is inactive in a channel from the viewpoint of a node. Each of the entries in the NCM takes value either 0 or 1 according to the channel availability. For simplicity, we assume that this probability is the same for all the node-channel combinations and can be represented by p. For smaller values of p, few or none of the channels are common between nodes. On the other hand, if the value of p is larger, most of the channels are available to almost all nodes. Finally, if p is an intermediate value, only few channels are common between nodes but at the same time, there is the possibility that none of the channels is common for all the network nodes.

To find the total number of nodes which have a particular channel available, we can sum all the 0’s and 1’s along the column in the NCM corresponding to that channel. If this value is large, then it means that the corresponding channel is available to a large number of nodes. Therefore, the probability of accessing that channel by a larger number of nodes would be relatively high. On the other hand, if that value is a small number, then only few nodes have that particular channel available to access. So, chances of contention for that channel would be low.

3.5. Communication initialization

It will be easier to discuss this mechanism with an example of an NCM in Figure 4. Let us assume that each the member nodes N 1 to N 10 want to establish 5 point-to-point links, i.e., communicate in pairs. Let us say the communication pairs are corresponding to odd and even numbered nodes such as N 1N 2, N 3N 4, …, N 9N 10.

Figure 4
figure 4

An example of NCM ( p= 60%).

Now each pair forms a CCL as shown in Figure 5. The ordering of the list depends on the CCL priority scheme as shown in Figure 6. The reason that we have designed this as a modular scheme is that different networks have different objectives. The objectives can be high throughput, short delay, seamless connection, etc. So, the objectives can be modeled as a certain utility function u(x). In multichannel networks, different channels have different characteristics in different scenarios. Hence, the utility functions differ from network-to-network. And, different priorities can be given to channels based on the utility function. This can result in a prioritized list with the ‘best’ channel as the first entry, and so on. We call CCL as a prioritized list of the ‘best’ channels common to transmitter and receiver. Therefore, a CCL of pair k can be represented as follows:

CC L k = C h 1 k , u 1 , C h 2 k , u 2 , C h 3 k , u 3 , .... , C h l k , u l ,

where u 1 to u l are the utilities of channels Chk 1 to Chk l such that u c  ≥ u c+1c(1 < c < l) and l can take value from 0 to m (the number of channels).

Figure 5
figure 5

An example of CCL.

Figure 6
figure 6

Initialization procedure of nodes.

Statistically, the probability that channel c is common to both the transmitter t and receiver r is given as follows:

P c = p t c × p r c .

Within the scope of this article, our policy concerning channel prioritization for data transmission is to give higher priority to the channel that is least common such that there is lesser chance of contention between nodes for the same channel. This can be found out from the last row in the NCM. Correspondingly, entries in the CCL are in ascending order of the values in the last row in the NCM and, thus, it is common to both nodes in a communication pair. The numerals in the last row can be taken as the representation of the “commonness” of the channel in a network as explained in Section 3.4.

By continuing our numerical example from Figure 4, let us consider a communication pair N 1N 2. Looking at the last row, the least value is 4 corresponding to channel C 1. But, this channel is available to neither N 1 nor N 2. The next value is 5 for channel C 5, which is also not common to both of the nodes. Finally, channels C 3 and C 4 have values 6 and 8, respectively, and they are common to both nodes N 1 and N 2. Going on this manner, CCL of the N 1N 2 pair would include channels C 3 and C 4 in the same order, because, as mentioned, we give higher priority to those channels that are ‘less common’ throughout the network, so as to increase the probability of winning contentions. The CCL of all communication pairs for the considered example is shown in Figure 5. Note that some communication pairs might not have common channels.

As we have considered a network in which the available channel set is not common between nodes, entries in the CCL vary for each communication pair. For channel access, each node will attempt to access channels on the order they appear in the CCL. If the first channel can be accessed, it will be selected for transmission. In case the channel is inaccessible, the next accessible channel in the CCL is selected. Figure 6 shows the initialization phase of both sender and receiver.

3.6. Channel access

In CA-MAC, channels are accessed in a time-slotted manner. Hence, all channels and node timers are synchronized. As shown in Figure 6, the SCL is prepared according to a channel sorting scheme. This scheme can be designed in various ways according to the objective of the network. Within the scope of this article, our policy concerning channel prioritization for control signal exchange is such that the maximum control signals are exchanged as early as possible and channels are reserved in advance. This is advantageous as there is shorter channel access delay throughout the network.

First of all, channels are ranked. A channel ranks highest if it is common to the maximum number of nodes in the network. In our scheme, the SCL is prepared with the help of the NCM (similar to the CCL). In Figure 3, we can see that the last row of the NCM is the sum of all the values (1’s and 0’s) along the column. As the columns represent channels, the values give the ‘commonness’ of the channel in the network. If this value is large, the channel is available to more nodes. Hence, by selecting the channel common to the most nodes as the first channel used for data channel contention, most of the nodes can reserve the channel for data transmission in advance and reduce the channel access delay. The SCL is the sorted list of channels and time slots such that each channel is used for control information transmission at the corresponding slot. It can be shown as

SCL = t 1 , C h 1 , t 2 , C h 2 , t 3 , C h 3 , , t m , C h m ,

where, t 1 to t m are the time slots and Ch1 to Ch m are the channels such that for every k (1 to m),

i = 1 n λ i k i = 1 n λ i k + 1 .

Note here that the number of time slots is equal to the number of channels, m. Also, the similar channel notations Ch1, Ch2, etc., in the CCL and SCL should not be confused with C 1, C 2, etc. The CCL and SCL are the sorted list of C 1, C 2, etc. sorted according to priority and channel sorting scheme as shown in Figure 6. Therefore, for example, C 3 is not necessarily equal to Ch3 in the CCL or SCL.

For the NCM in Figure 4, the SCL would be {C 4, C 2, C 3, C 5, C 1}. As there are five channels, there are five slots. Each of the five slots is associated with a channel according to channel rank. In our example, time slot 1 is for channel C 4 (ranked 1), time slot 2 is for channel C 2, time slot 4 is for C 5, and so on. Each of the time slots associated with channels differs from other slots in that channel.

All of the nodes tune their listening radio to the channel associated with the current time slot. Hence, on every time slot, a listening radio hops to a channel according to its rank on respective time slot. If a node intends to transmit on a certain channel and has the channel represented by the slot in its CCL (intended for signaling) (that means both sender and receiver have this channel in common), it would contend for the intended channel during the signaling period. Nodes listen to the channel reservation of other nodes during signaling periods. So, the sender would select the first channel in the CCL for reservation which is not already reserved by other members.

On receiving a channel reservation request from the sender during the signaling period, the receiver sends an acknowledgement to the sender if the channel is not reserved. Otherwise, it will offer the next entry in CCL as the candidate channel. As the other nodes are overhearing this reservation, they update their information (that the channel is reserved) and would not attempt to access the channel in a similar way as the network allocation vector is used in the 802.11 MAC protocol. The medium access procedure of sender and receiver is shown in Figure 7.

Figure 7
figure 7

Medium access procedure at sender and receiver.

After reserving a channel for transmission during the signaling period, communication pairs tune their data radio to the reserved channel and start data transmission at the next slot. It should be noted that during a signaling period, multiple pairs can reserve disjoint channels and thus multiple transmissions can start at the same time (i.e., concurrent transmission on multiple channels). For instance, for a communication pair to transmit after the first slot, following criteria is to be met:

  • Channel is common to both sender and receiver.

  • Channel is the first entry in SCL.

The first criterion has been derived in the previous section. Since all the channels have equal chance to be the first entry in SCL (for simplicity), the probability of a communication pair to transmit after the first slot is

1 m × P c = 1 m × p t c × p r c .

As per our example, the first time slot is for channel C 4 (see Figure 2). All the nodes tune their listening radio to this channel. As channel C 4 is in CCL of nodes N 1, N 2, N 5 to N 8 (see Figure 5), pairs N 1N 2, N 5N 6, and N 7N 8 reserve channels C 3, C 4, and C 1 for transmission, respectively. The other nodes (N 3 and N 9) overhear the current reservation. During time slot 2, the signaling period is on channel C 2 which is in CCL of N 3N 4 and N 9N 10, where they reserve channels C 2 and C 5. Note that during signaling period in the first time slot, N 5 would have requested N 6 to reserve channel C 3 (the first entry in their CCL). But, during the same time slot, it has already overheard that C 3 is reserved by N 1N 2, it requests N 6 to access channel C 4 (the second entry in CCL). During slot 2, pairs N 1N 2, N 5N 6, and N 7N 8 start their transmissions (see Figure 2). During slot 3, nodes N 3, N 4, N 9, and N 10 start their transmissions. In this way, a number of concurrent transmissions in different channels have been made possible.

3.7. Stochastic analysis

Now we analyze the channel access delay of CA-MAC by building a Markovian model. The channels are opportunistic in CR environment. Due to this nature, the i th channel is available to a node following a Bernoulli process with time invariant probability p i . And the indicator function can be defined as

λ i j = 1 if channel i is available to node j 0 otherwise .

Hence, p i can simply be stated as the probability that λ i j takes value 1

During each time slot, one of the channels is used for the control phase by the nodes which hold the channel and contend for data channel reservation. The channels for the control phase are assigned in a round robin fashion, and each device tunes its control radio to the channel used for the control phase and its data radio to its data channel.

Let the number of channels be M and the number of nodes be N. We form a Markov chain with states {X t } as shown in Figure 8. Here, X t denotes the number of communication pairs during time t. Note that it is the same as the number of busy channels and if X t = k (the number of communication pairs), the number of busy devices is 2k and there are N - 2k idle devices. The maximum number of communication devices is bounded by min (M, N/2). Now the state space of X t can be given as follows:

S : = 0 , 1 , , min M , N / 2 .
Figure 8
figure 8

The Markovian model with M states.

At any state, the probability p i that i (0 ≤ i ≤ min(M, N/ 2)) agreements are made is given by

p i = p SR p idle ,

where p SR is the probability that a pair of sender (say S) and receiver (say R) have the current control channel and thus p SR  = p S p R , and p idle is the probability that i exclusive channels are idle and thus p idle is given by the product of the probability that M – i channels are busy (i.e., (k C (Mi) × Mk C i )/k C M since k channels are busy) and the probability that i channels out of k available channels are exclusive (i.e., k C i /k+i–1 C i ), resulting in p idle = ((k C (Mi) × Mk C i )/k C M ) × (k C i /k+i–1 C i ). Here, terms as n C m represents n-combinations of m. For instance, k C M gives the combinations of k channels out of M channels in total.

Whenever a new agreement is made or the current transmission ends, a state transition would occur. If S k i is the probability that i new agreements are made at the current state X t (or k) in the next slot and T k j is the probability that j transmissions terminate at the current state X t (or k) in the next slot, the transition probability from state k to state l, p kl , can be expressed as follows:

p kl = m = 0 k S k m + l - k T k m for l k m = k - l k S k m + l - k T k m for l < k = m = k - l + k S k m + l - k T k m .

We can simplify the above equations by using set theory notation to make the equations more understandable. In every time slot t, a representative channel is used for control signal exchange by the nodes which tune their listening radio to this particular channel. Hence, if the current channel is C t , then communication pairs (S, R) would contend for reserving a channel if C t CCL(S, R). Note that CCL(S, R) is obtained by set intersection of the sender’s and receiver’s channel sets. Now, let us say that R t is the set of the channels reserved by the contenders until time slot t, then the total number of channels utilized in the next slot would be equal to cardinality of set R t given as |R t |. This is also the channel utilization of the network. Hence, throughput Th(t) in time slot t can be obtained by

Th t = | R t | * total packets / slot duration .

Moreover, the overall system throughput Th s is obtained by

T h s = t Th t .

At time slot t, |R t | pairs out of N nodes would be busy accessing the channels. As a result, N/ 2 – |R t | pairs would be idle. Therefore, the average network access delay in time slots of the system, D avg, is given by

D avg = 1 N t t N / 2 - | R t | .

Here, N t is the total number of time slots.

We have used MATLAB to implement the above-obtained expressions and get the expected performance of the system. The channel availability is varied from 0.1 (10%) to 1 (100%) and the average channel access delay is obtained by varying the number of nodes (with ten channels) as shown in Figure 9 and by varying the number of channels (with ten nodes) as shown in Figure 10. In Figure 9, we can see that the network suffers from long delay when the channel availability is small. The channel access delay decreases with increased availability and then saturates when the availability is around 50–60% for smaller number of nodes. This is the case when all the nodes have gained access to channels. When the number of nodes is more than twice the number of channels, the access delay reaches lower levels, but saturates only for an availability close to 100%. This is because all the channels are occupied and there are always one or more nodes idle at a given time. Figure 10 shows the same relation by varying the number of available channels. These analysis results will be validated by the ns-2 simulation results which will be discussed in Section 4.

Figure 9
figure 9

Average channel access delay versus channel availability with the varying number of nodes.

Figure 10
figure 10

Average channel access delay versus channel availability with the varying number of channels.

4. Performance evaluation

4.1. Simulation environment

The performance study of MAC protocols for CRAHNs is challenging due to the unavailability of a reliable evaluation tool even though special features are added above legacy wireless MAC protocols. In our performance study, the network simulator ns-2 is used. The cognitive radio cognitive network (CRCN) simulator patch [22] is combined in ns-2. It provides additional functionality to ns-2 with cognitive capabilities of multichannel environment, channel selection at MAC or routing layer and multi-radio interface. We have used the ns-2.31 version with the CRCN patch for simulation. Although some sample MAC protocols have been provided for tests, we have modified the existing 802.11 MAC protocol to suite the CA-MAC characteristics. The simulation parameters are summarized in Table 1.

Table 1 Simulation parameters

The CA-MAC protocol requires node-channel information obtained through the sensing phase, or exchanged between nodes. This phase is assumed to be passed. The channel availability (as described in Section 3.4) is varied from 10 to 100% with step of 5% to represent harsh “uncommon” and “common” channel environments as explained earlier. So, there are 19 examined values of channel availability (i.e., 10, 15, …, 100%) in total. For each value of channel availability, 50 NCMs are generated to create 950 NCMs in total. The CA-MAC protocol has been implemented in ns-2 by modifying the 802.11 MAC. Around 40 nodes are deployed randomly in a 1000 × 1000 m2 area. Out of them, ten nodes are randomly selected as sender and receiver. The number of channels is set to 10. For making multiple users able to contend in a single slot, slot length is set to 10 ms. Simulations are repeated 20 times for the same setting in order to mitigate the effect due to randomness. The other parameters are the same as those in the 802.11 MAC protocol.

4.2. Simulation results and discussion

Based on the simulation results, the proposed CA-MAC protocol is compared with the SYN-MAC protocol. The SYN-MAC protocol differs from CA-MAC protocol in the sense that the channel hopping order is according to the channel index and only one new transmission can be started in a time slot [6]. It offers the good connectivity between network nodes and outperforms the existing CCC-based protocols. Hence, it can be considered as a key MAC protocol for an uncommonly distributed channel architecture in CRAHNs. Although it solves the several problems related to a CCC, it has a shortcoming as only one transmission can be started in a slot. Our target in the CA-MAC protocol is to overcome this by allowing multiple concurrent transmissions to start at a time and thus decreasing the overall channel access delay in the network. For fair comparison, SYN-MAC was simulated using the same procedure under the same network environments with the same inputs as CA-MAC.

Figure 11 shows the observed end-to-end delay in terms of slots in SYN-MAC and CA-MAC under the same network scenarios (i.e., with the same NCMs). We can observe that CA-MAC has shorter delay in channel access compared to SYN-MAC. In the SYN-MAC protocol, only one new transmission is allowed per slot and, thus, for n transmissions, at least n × (n – 1)/2 slots are lost in total. Hence, the average delay for n channels is at least (n – 1)/2 slots. In the CA-MAC protocol, however, multiple transmissions can start concurrently in the same slot and, thus, the minimum delay would be one slot per transmission. Hence, average delay would be around one slot for an ideal case where all the transmissions start at the beginning. Also, comparing Figure 11 to the theoretical results in Figure 9 (obtained by MATLAB), we can see that both results coincide.

Figure 11
figure 11

End-to-end delay at different channel availability.

Figure 12 compares SYN-MAC and CA-MAC in terms of session connectivity. In this article, session connectivity in a network is defined as the ratio of the number of communication pairs over the total number of enabled sessions. We can see that session connectivity is higher in CA-MAC compared to SYN-MAC. It is mainly because, in SYN-MAC, a node selects a channel randomly out of available common channels and, if it loses the contention, it has to wait for the next available common channel. However, in CA-MAC, the sender can contend for any channel in any slot and the receiver could even notify the sender of the next available channel during the same slot. For instance, let {C 1, C 3, C 5} be the CCL and let the current slot be third slot. In SYN-MAC, nodes would contend to access channel 3. If they lose, they need to wait until the fifth slot for the next contention (where there is no guarantee of winning). On the other hand, if C 5 is not available, they cannot contend for C 1 after losing C 3 because the first slot representing channel C 1 has already passed. In CA-MAC, however, nodes can contend for C 3 in the current slot on the current channel and, if it loses, it can claim C 1 to be accessed in the next slot.

Figure 12
figure 12

Session connectivity at different channel availability.

Figure 13 highlights that, with shorter access delay and higher connectivity, CA-MAC offers better throughput compared to SYN-MAC. In Figure 13, the normalized throughput represents the normalized ratio of the maximum throughput obtained in all the examined values of channel availability over the throughput obtained at a given channel availability. We can see from the graph that the normalized throughput is equal to one when channel availability is around 100% for both protocols, which corresponds to the maximum throughput obtained. There are some rises and falls in the plot of throughput because the channel selection is a random process and the channel availability itself is random.

Figure 13
figure 13

Network throughput at different channel availability.

5. Conclusion

In this article, we presented a concurrent access MAC protocol for CRAHNs where the channel is uncommon among nodes. This is the practical case in CRAHNs where available channels might not be the same to all the nodes in a network. The proposed CA-MAC protocol does not require any CCC. Hence, the network members can communicate with each other even if they do not have even a single channel common in the whole network. In addition, the problems of CCC can be avoided. We have simulated the CA-MAC protocol using the ns-2 simulator with CRCN patch for CRAHNs and compared the CA-MAC and SYN-MAC protocols. The performance study shows that CA-MAC outperforms SYN-MAC by improving overall network access delay and network connectivity. The significant improvement is achieved by allowing multiple communication pairs to transmit data concurrently at the same time on different channels.

As future works, we are planning to add additional optimization techniques such as minimizing the NCM size. Also, since the choice of channels to be selected depends on the network type (especially on the underlying utility function), the study and identification of appropriate utility functions for various kinds of networks would be included in our future works.


  1. FCC: Spectrum Policy Task Force Report, No. 02–155. 2009.

    Google Scholar 

  2. Mitola J III, Maguire GQ Jr: Cognitive radio: making software radios more personal. IEEE Pers Comm 1999, 6(4):13-18. 10.1109/98.788210

    Article  Google Scholar 

  3. Zheng H, Peng C: Collaboration and fairness in opportunistic spectrum access. In Proceedings of IEEE International Conference on Communications (ICC 2005), vol. 5. Seoul, Korea; 2005:3132-3136. 10.1109/ICC.2005.1494982

    Google Scholar 

  4. Wang W, Liu X: List-coloring based channel allocation for open-spectrum wireless networks. In Proceedings of the IEEE 62nd Vehicular Technology Conference (VTC-2005-Fall), vol. 62. Dallas, Texas, USA; 2005:690-694. 10.1109/VETECF.2005.1558001

    Google Scholar 

  5. Zhao Q, Sadler BM: A survey of dynamic spectrum access. IEEE Signal Process. Mag. 2007. 10.1109/MSP.2007.361604

    Google Scholar 

  6. Kondareddy YR, Agrawal P: Synchronized MAC protocol for multi-hop cognitive radio networks. In IEEE International Conference on Communications, 2008 (ICC'08). Beijing, China; 2008:3198-3202. 10.1109/ICC.2008.602

    Chapter  Google Scholar 

  7. Ma L, Shen C-F, Ryu B: Single-radio adaptive channel algorithm for spectrum agile wireless ad hoc networks. In Proceedings of 2nd IEEE International Symposium on New Frontiers in Dynamic Spectrum Access Networks (DySPAN 2007). Dublin, Ireland; 2007:547-558. 10.1109/DYSPAN.2007.78

    Chapter  Google Scholar 

  8. Shih C-F, Wu TY, Liao W: DH-MAC: a dynamic channel hopping MAC protocol for cognitive radio networks. In Proceedings of the IEEE International Conference on Communications (ICC’10). Cape Town, South Africa; 2010:1-5. 10.1109/ICC.2010.5502694

    Chapter  Google Scholar 

  9. Brandon FL: A survey of common control channel design in cognitive radio networks. Phys Comm 2011, 4: 26-39. 10.1016/j.phycom.2010.12.004

    Article  Google Scholar 

  10. Ma L, Han X, Shen C-C: Dynamic open spectrum sharing MAC protocol for wireless ad hoc networks. In Proceedings of 1st IEEE International Symposium on New Frontiers in Dynamic Spectrum Access Network (DySPAN 2005). Baltimore, Maryland, USA; 2005:203-213. 10.1109/DYSPAN.2005.1542636

    Google Scholar 

  11. Jia J, Zhang Q, Shen X: HC-MAC: a hardware-constrained cognitive MAC for efficient spectrum management. IEEE J Sel Area Comm 2008, 26(1):106-117. 10.1109/JSAC.2008.080110

    Article  Google Scholar 

  12. Su H, Zhang X: Cross-layer based opportunistic MAC protocols for QoS provisionings over cognitive radio wireless networks. IEEE J Sel Area Comm 2008, 26(1):118-129. 10.1109/JSAC.2008.080111

    Article  Google Scholar 

  13. Hamdaoui B, Shin KG: OS-MAC: an efficient MAC protocol for spectrum-agile wireless networks. IEEE Trans. Mob. Comput. 2008, 7(8):915-930. 10.1109/TMC.2007.70758

    Article  Google Scholar 

  14. Cordeiro C, Challapali K: C-MAC: a cognitive MAC protocol for multi-channel wireless networks. In Proceedings of the 2nd International Symposium on New Frontiers in Dynamic Spectrum Access Networks (DySPAN 2007). Dublin, Ireland; 2007:147-157. 10.1109/DYSPAN.2007.27

    Chapter  Google Scholar 

  15. Hsu C-S, Chen Y-S, He C-E: An efficient dynamic adjusting MAC protocol for multichannel cognitive wireless networks. In Proceedings of IEEE International Conference on Wireless Communications, Networking and Information Security (WCNIS 2010). Beijing, China; 2010:556-560. 10.1109/WCINS.2010.5544148

    Google Scholar 

  16. Joshi GP, Kim SW, Kim B-S: An efficient MAC protocol for improving the network throughput for cognitive radio networks. In Proceedings of Third International Conference on Next Generation Mobile Applications, Services and Technologies (NGMAST ’09). Cardiff, Wales, UK; 2009. 10.1109/NGMAST.2009.38

    Google Scholar 

  17. Chen T, Zhang H, Maggio GM, Chlamtac I: CogMesh: a cluster-based cognitive radio network. In Proceedings of 2nd IEEE International Symposium on New Frontiers in Dynamic Spectrum Access Networks (DySPAN 2007). Dublin, Ireland; 2007:168-178. 10.1109/DYSPAN.2007.29

    Chapter  Google Scholar 

  18. Zhao J, Zheng H, Yang G-H: Distributed coordination in dynamic spectrum allocation networks. In Proceedings of the 1st IEEE International Symposium on New Frontiers in Dynamic Spectrum Access Networks (DySPAN 2005). Baltimore, Maryland, USA; 2005:259-268. 10.1109/DYSPAN.2005.1542642

    Google Scholar 

  19. Zhao Q, Tong L, Swami A, Chen Y: Decentralized cognitive MAC for opportunistic spectrum access in ad hoc networks: A POMDP framework. IEEE J Sel Area Comm 2007, 25(3):589-600. 10.1109/JSAC.2007.070409

    Article  Google Scholar 

  20. Mo J, So H-SW, Walrand J: Comparison of multichannel MAC protocols. IEEE Trans. Mob. Comput. 2008, 7(1):50-65. 10.1109/TMC.2007.1075

    Article  Google Scholar 

  21. Yau AK-L, Komisarczuk P, Teal PD: On multi-channel MAC protocols in cognitive radio networks. In Australasian Telecommunication Networks and Applications Conference (ATNAC’08). Adelaide, Australia; 2008:300-305.

    Chapter  Google Scholar 

  22. Zhong J, Li J: Cognitive radio cognitive network simulator. 2011. . Accessed 9 September 2011

    Google Scholar 

Download references


The authors would like to thank the editor and anonymous reviewers for their valuable comments for improving the quality of this article.

Author information

Authors and Affiliations


Corresponding author

Correspondence to Sangman Moh.

Additional information

Competing interests

The authors declare that they have no competing interests.

Authors’ original submitted files for images

Rights and permissions

Open Access This article is distributed under the terms of the Creative Commons Attribution 2.0 International License ( ), which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.

Reprints and permissions

About this article

Cite this article

Timalsina, S.K., Moh, S., Chung, I. et al. A concurrent access MAC protocol for cognitive radio ad hoc networks without common control channel. EURASIP J. Adv. Signal Process. 2013, 69 (2013).

Download citation

  • Received:

  • Accepted:

  • Published:

  • DOI: