1 Introduction

The fast growing radio technologies have surpassed the radio resources available. Therefore, fixed spectrum assignment policy seems unable to satisfy the demand for radio spectrum. To enable many radio technologies to be applied together without impeding each other, a method is needed to efficiently share the radio spectrum. Cognitive radio technology came as a promising candidate to solve spectrum utilization, as it provides the ability to opportunistically and dynamically use and share the available radio spectrum [1]. Cognitive radio can be applied in accordance with established wireless networks by providing prioritization to licensed users or primary users (PUs), i.e., users having a license to operate in a certain spectrum band. The users with cognitive radio device, called cognitive users or secondary users (SUs), utilize the vacant spectrum with careful attention to avoid interfering with the PUs’ transmission.

To enable the sharing of radio spectrum, studies on cognitive radio in various scenarios have been conducted. One of them is cognitive radio ad hoc networks (CRAHNs) [2]. CRAHNs do not require any fixed infrastructure, making them practically achievable in the near future. However, the adoption of cognitive radio techniques interoperating with existing networks introduces protocol compatibility issues, especially because the existing protocols were developed considering the fixed frequency band policy. Thus, the performance of existing protocols is highly likely to degrade when faced with dynamic spectrum environment. Moreover, the existing wireless protocols are not able to prioritize some specific users, thus will fail to preserve PU’s transmission. Considering the above statements, novel protocols or modifications of existing wireless protocols are needed to support routing in cognitive radio network.

Over the years, routing protocols for CRAHNs have been proposed, and some of them take transmission power into consideration. In [3], routing in multi-band with small transmit power is proposed. Low power transmission is favorable to avoid interference with PUs, but it also limits the transmission range as well as transmission reliability. Therefore, instead of maintaining low power transmission, some studies proposed transmission power control as in [46], while some studies merely include transmission power variation as one of the controlled parameters in the performance evaluation [7]. To control the transmission power, some metrics such as maximum capacity [4], distance to the PUs’ base station [5], and signal-to-interference-plus-noise ratio (SINR) constraint for each transmission [6] are varied in performance studies. To the best of our knowledge, no study on routing with transmission power control in CRAHNs considering the users’ application requirement (QoS) has been proposed in the literature.

In this paper, a routing protocol for transmission power control in CRAHNs is proposed, which is named Transmission Power Control aware AODV (TPC-AODV). It is based on Ad hoc On-Demand Distance Vector (AODV) routing, one of the representative routing protocols in wireless ad hoc network. The main feature of TPC-AODV is its ability to control the power level on data transmission depending on the application requirement, which simultaneously provides Quality of Service (QoS) support. In cognitive radio networks, the ability to dynamically change the transmission power is one of the primary cognitive radio functions [8]; however, a detailed study on the effect of transmission power control on routing has not yet been done. Also, TPC-AODV focuses on interruption avoidance of PUs’ transmission, which is the most important requirement of cognitive radio networks, and QoS support for SUs.

The proposed TPC-AODV shows network performance improvement in terms of throughput and delay, especially in the case of high PU activity. The contributions of this paper are as follows:

  • TPC-AODV includes transmission power control to support the user requirements as well as to avoid interference with PUs.

  • TPC-AODV improves spectrum availability since it may use the channels even though PUs are present, given some conditions not to disturb PUs’ communication (i.e., by using lower transmission power).

The rest of this paper is organized as follows. In the next section, the algorithm of TPC-AODV is presented, in which we discuss in detail how transmission power control is supported. In Sect. 3, the performance of TPC-AODV is evaluated and discussed. Finally, this paper is concluded in Sect. 4.

2 Transmission Power Control Aware AODV

Routing in CRAHNs has to satisfy the requirements of both cognitive radio networks and ad-hoc networks. Focusing on the main requirements, TPC-AODV is designed in order to develop a simple yet efficient routing protocol. Figure 1 depicts the main requirements of CRAHNs and the approaches adapted in TPC-AODV. TPC-AODV introduces one additional routing metric, which could be used for both PUs’ transmission avoidance and SUs’ QoS support. It is called ATP metric, stands for Application and Transmit Power metric. To consider node mobility, on the simulation, we set the wireless nodes to be mobile. Another ad hoc network feature is the control channel, defined as the channel where the participating nodes send their routing control messages, which those are usually route requests (RREQ), route replies (RREP), and route errors (RERR). Considering the cognitive radio network environment, the approach to have one or more dedicated control channels is unfavorable due to the requirement that every SU should stop its ongoing communication when it senses PUs’ transmission. This makes the implementation of dedicated control channels very challenging. Therefore, in TPC-AODV, there is no dedicated control channel and the SUs broadcast their routing control messages in all vacant channel. Lastly, in ad hoc networks, it is generally assumed that the wireless links between nodes are uni-directional. TPC-AODV further exploits this feature by enabling the SUs to vary their transmission power depend on the new metric value. Above all, as stated earlier, TPC-AODV is built on top of AODV, one of the proven routing protocols for ad hoc networks. Eventually TPC-AODV would result in transmission of the data packets on selected channel with selected transmission power, after taking the input from users’ application type and spectrum sensing. The operation steps of TPC-AODV are as follows:

  1. 1.

    Application type classification

  2. 2.

    AODV route discovery

  3. 3.

    Spectrum sensing

  4. 4.

    Channel selection

  5. 5.

    Transmission power selection

Fig. 1
figure 1

Main requirement of routing in CRAHNs (solid boxes) and the approaches adapted in TPC-AODV (dashed boxes)

2.1 Classification of Application Types

The first trigger of TPC-AODV routing is the user request of a certain application. The requested application is classified based on its characteristics, for example, packet payload, connection type, etc. This classification determines the ATP metric value. There are 3 possible values for application classification: 0 (zero), 2, and 3. High requirement application is assigned to the value 0, medium requirement application is assigned to the value 3, and low requirement application is assigned to the value 2 (see the top-left table in Fig. 3). In total, there are 4 possible values for the ATP metrics: 0 (zero) to 3, thus ATP metric takes 2 bits. The reason for skipping the metric value 1 (one) in application classification shall be explained later.

2.2 Route Discovery

After the ATP metric value is determined, the node may start route discovery, following the AODV mechanism. The ATP metric value is also propagated, taking 2 bits of the reserved field in the RREQ packets as well as RREP and RERR packets. This allows the destination node to estimate the application it will serve and to possibly perform resource allocation. Moreover, by filling in the reserved bits, the ATP metric value attachment would not add control packets length and routing overhead. When the source node receives the RREP packet, the route to the destination nodes is established (via forward path).

2.3 Spectrum Sensing

After route discovery finished, the source node does spectrum sensing. We assume that the SUs have a priori knowledge about PUs’ maximum transmission power. The routing table of TPC-AODV is expanded with 2 fields, the available channel and ATP metric. Both are filled with the result of spectrum sensing. Note that the ATP metric field in the routing table is not the same with the value obtained from previous application classification (the ATP metric value from application classification is encapsulated in the returning RREP packet). During spectrum sensing, the source node senses the PUs’ transmission power on the channels and classifies them via the ATP metric. No PUs’ transmission power detected is assigned the to the value 0, less than 60 % of the maximum PUs’ transmission power detected is assigned to the value 1, 60–80 % of the maximum PUs’ transmission power detected is assigned to the value 2, and 80 % to the maximum PUs’ transmission power detected is assigned to the value 3 (see top-right table in Fig. 3). This additional information on routing table is kept during active communication and released when the communication ends.

2.4 Channel Selection

The next step is to select the channel for sending data. The channel selection is done by ATP metric matching. That is to match the value of ATP metric in the routing table (obtained from spectrum sensing) and the value of ATP metric from the returning RREP (obtained from application classification). Thus, the ATP metric has dual functions (see Fig. 2).This matching procedure aims to fit the application requirement into channel condition. The first channel with matched ATP metric value is selected to be used for data communication. For example, if the ATP metric in the returning RREP is 2, then when the first ATP metric equal to 2 in the routing table is found, its pairing channel is chosen (see Fig. 3).

Fig. 2
figure 2

Dual functions of ATP metric in TPC-AODV

Fig. 3
figure 3

The ATP metric assignment from the application requirements and spectrum sensing, channel selection matching, and SU transmission power selection

If we recall the possible value of ATP metric representing application classification, then there are 3 values: \(\{0, 2, 3\}\), while the ATP metric representing channel condition has 4 values: \(\{0, 1, 2, 3\}\). Hence, the channel with ATP metric 1 (one) would never be selected for data communication. This setting is taken to protect the weak PUs transmission power (on channels with less than 60 % of maximum PUs transmission power sensed), while the channel with strong PUs transmission power still might be used by the SUs, depending on their application type. Moreover, in case that the ATP metric matching could not find a matching pair, the channel selection algorithm is expanded with dynamic metric matching, that is by providing a secondary preference of matching value. For example, if the ATP metric at the returning RREP is 0 (zero), but there is no 0 (zero) value presents on the ATP metric at the routing table, then the next preferred metrics are 3 and 2.

2.5 Transmission Power Selection

After the channel is selected, SU transmission power is determined based on the ATP metric value on the routing table. This procedure aims to provide communication reliability depending on the application type. Data communication begins on the selected channel with selected transmission power, following the forward path built from AODV route discovery. Figure 3 shows the ATP metric assignment from the application requirements, ATP metric assignment from spectrum sensing, channel selection matching, and SU transmission power selection. Figure 4 summarizes the result of channel and transmission power selection based on application request of TPC-AODV.

Fig. 4
figure 4

TPC-AODV channel and data packets transmission power selection

Following this design, TPC-AODV has some considerable advantages. TPC-AODV utilizes one new ATP metric to achieve 2 goals, that is to represent application requirement and to represent channel condition based on PUs’ transmission power sensed. Moreover, the ATP metric does not add routing overhead by filling in the reserved bit field of AODV control packet format. Furthermore, TPC-AODV does not require a common control channel, thus the PUs are not restrained to use any of their licensed channels and SUs do not need any method to manage a common control channel. It was explained that in the spectrum sensing step, TPC-AODV senses the PUs’ transmission power on the channels. However, in case the PUs’ networks do not provide any mechanism to acknowledge the owner of the detected transmission (that is the SUs could not recognize whether the sensed transmission power belongs to PUs or neighboring SUs), then the entire sensed transmission power would be regarded as PUs’ transmission. This assumption indirectly provides resource sharing between SUs. TPC-AODV also adopts prompt spectrum sensing, which is done after the source node receives RREP. In this way, the information gathered from the spectrum sensing is real-time and reliable. And above all, TPC-AODV is able to avoid PUs’ transmission as well as to provide simple QoS for the SUs.

3 Performance Evaluation

3.1 Simulation Environment

To evaluate TPC-AODV, we conducted a simulation using Network Simulator 2 (NS2) [9] with cognitive radio patch CRCN [10], which enables the nodes to have multiple radio interfaces and multiple channels per interface. The simulation parameters are summarized in Table 1. The proposed TPC-AODV is compared with AODV with the same modification except the transmission power control ability. In the simulation result graphs, they are named “AODV”. In AODV, no matter what the application requirement is, the channel selected for data transmission is always a vacant channel and the transmission power is the maximum. In TPC-AODV, there are 3 possible transmission power options: the maximum transmission power, 75 % and 50 % of the maximum transmission power. In the simulation, the transmission range of the SUs with the maximum transmission power is 250 m. The transmission ranges of SUs with 75 % and 50 % of the maximum transmission power are 232.65 and 210.22 m, respectively, in the two-ray ground propagation environment.

Table 1 Simulation parameters

Usually, works on routing for mobile ad hoc networks set higher number of nodes, where the wireless link connectivity is abundant. This setting might be adopted to assume a general-purpose ad hoc network, where the abundant link connectivity is provided and the purpose of the setting is to evaluate routing protocols in terms of route selection among multiple routes available. However, in the proposed work, we tried to exploit node mobility. As we defined ‘node mobility’ as one of the requirements of routing in CRAHNs, we would like to represent a scenario where node mobility affects link availability. Therefore, we chose 8 nodes as the default number of nodes. The selection is considered to represent a situation between scarce deployment and crowded deployment. We aware that AODV-based routing without modification on packet forwarding mechanism would result in packet drop/failure if there is no wireless link connectivity between nodes. We observe this as one of the negative impacts of the node mobility.

There are 4 PU activity models: very low, low, medium, and high. These activity models include both channel occupancy and PUs’ transmission power level on the occupied channels. With respect to channel occupancy, there are 16 channel condition considerations in this paper. The SUs have 2 RF interfaces where each could sense 8 channels. So, there are 16 channel conditions in total at a time. Usually, there are two possible statuses of a channel. The channel is either occupied by PUs (unavailable for SUs) or unoccupied by PUs (available for SUs). In our proposed scheme, however, the PU transmission power on the channels is considered. Therefore, there are four possible statuses of a channel: (1) There is no PU. (2) Less than 60 % of the maximum PU transmission power is sensed. (3) 60–80 % of the maximum PU transmission power is sensed. And (4) 80–100 % of the maximum PU transmission power is sensed (which is identical to the 4 rows in top-right table of Fig. 3 in the revised paper). Conclusively, there are16 channels with 4 possible conditions.

The PU activity models determine those channel conditions. When the PU activity model is set to ‘very low’, the channel conditions would be condition (1). Likewise, activity model ‘low’ represents condition (2), ‘medium’ represents condition (3), and ‘high’ represents condition (4). However, we did not use static configuration. In static configuration, when the PUs activity model is set to ‘very low’, then the whole 16 channels’ status will be: ‘there is no PUs’. We avoid this situation by using random number generator based on normal distribution. Each of the channel conditions is coded into decimal numbers zero to three; zero is ‘very low’, one is ‘low’, two is ‘medium’, and three is ‘high’. So, for instance, if the dominating PU activity model is ‘high’, then we generate 16 sequences of random numbers with normal distribution and set the mean to 3. We could tell that we would get the most value of 3, which means most of the channels are occupied and the PUs’ transmission power sensed is 80–100 %.

We are aware of the drawback on this assumption. That is, it does not represent real RF environment. For example, if a PU transmits with its maximum transmission power on channel \(c\), then the adjacent channels \(c\,\pm \, 1\) might still sense the transmission but with lower power, as well as \(c\, \pm \,2\), and so on. Furthermore, since there is no actual PUs’ transmission, we could not analyze the effect of SUs’ transmission on occupied channels in the PUs’ point of view. However, we took this assumption to support our research objective at the moment and we are open to improve and loosen the assumption as future work.

3.2 Simulation Results and Discussion

The network performance analysis is observed from SUs’ point of view, not PUs’ point of view. In other words, the network performance improvement in this paper depicts the improvement of the whole ad hoc network of SUs, without PUs. As presented in Fig. 5, TPC-AODV generally shows throughput improvement over AODV. The throughput improvement percentages ranged over a slight increase of 2 % to a satisfactory increase of 17 %, and an outstanding increase that reached 70 % in the high PU activity scenario. It is shown that transmission power control is a favorable feature to increase throughput. When the application load is low, TPC-AODV showed a slight improvement over AODV. This is because with low load application mode, TPC-AODV selected an occupied channel with 50 % of the maximum transmission power. Therefore, there is a possibility that the data transmission could not reach its assigned intermediate node (following the forward route), resulting in dropped packets and lower throughput. However, as the application load is changed to medium and high, the throughput improvement of TPC-AODV is increased. This might be due to the fact that in medium and high load application mode, the AODV transmitted the data packets with its maximum power, leading to higher collision possibility and lowering the throughput. TPC-AODV showed the best performance over AODV in the high PU activity scenario, with 70 % higher throughput. This is due to AODV only selected vacant channels while in the high PU activity scenario, there is high probability that there is no vacant channel available, hence AODV reacted with aborting the data transmission. In TPC-AODV, the channels occupied by PUs could still be utilized unless the PU’s transmission power sensed is weak.

Fig. 5
figure 5

Network throughput

For the average end-to-end delay, the simulation result graph (Fig. 6) shows that in some scenarios TPC-AODV resulted in a lower delay compared to AODV, while in some scenarios it had higher delay. From the application load point of view, TPC-AODV had a higher delay than AODV. For low and medium load application scenarios, a higher delay is due to TPC-AODV transmitted data packets without the maximum transmission power, thus the data packet transmission has a higher possibility of fail to reach the next hop node compared to AODV (there is still possibility of such failure due to moving nodes). For the high load application scenario, TPC-AODV and AODV transmitted the data packets with the maximum transmission power, thus the result should be more or less the same. However, the application mode settings follow a normal distribution, and in TPC-AODV it has a direct impact on transmission power selection and the over-all performance. Similar with the result on throughput evaluation, TPC-AODV showed the best performance over AODV in the high PU activity scenario, with 73 % lower average end-to-end delay. With the same reason, that is due to AODV only selects channel with vacant PUs while TPC-AODV utilizes the channels occupied by PUs, unless their transmission power sensed is weak. So TPC-AODV could achieve more data transmission, higher throughput, and lower average end-to-end delay.

Fig. 6
figure 6

Average end-to-end delay

4 Conclusion

In this paper, a transmission power control aware routing protocol has been proposed and evaluated for CRAHNs. In the proposed TPC-AODV routing protocol, transmission power control is supported and an additional ATP metric is used. The ATP metric has two functions; one is to depict the application requirement level, and the other is to present the PUs’ transmission power sensed during the spectrum sensing. Finally, TPC-AODV would result in data transmission with specific transmission power at the selected channel.

From the performance evaluation, the proposed TPC-AODV shows performance improvement over AODV. TPC-AODV achieves better network performance since the transmission power control ability increases the channel utilization. In TPC-AODV, except the channels where PU’s weak transmission power is detected, the remaining channels are possible to use depending on the application requirement. In AODV, however, only the channel that is completely vacant from PUs’ transmission could be used for data transmission. Especially in the scenario where PUs activity is high and thus most channels are occupied by PUs, TPC-AODV shows its best performance with 70 % higher throughput and 73 % lower average end-to-end delay. In conclusion, TPC-AODV is very suitable for CRAHNs where PUs activity is high.

In some scenarios, TPC-AODV might result in higher delay compared to AODV. This is because TPC-AODV data transmission follows AODV route discovery forward path, but the transmission power might be low, resulting in possibility that TPC-AODV could not reach its designated next-hop. This issue might be solved by modifying the AODV route discovery method such that the participating nodes should forward the control packets with their half transmission power. In future work, we will do a research on method for the destination node to select the best route and to design dynamic application classification.