1 Introduction

The emergence of new wireless technologies is causing the scarcity of available spectrum. The study says that the scarcity is not because of the unavailability of the spectrum but due to mismanagement. The problem of spectrum mismanagement is mainly due to the static channel allocation policy. Conventional wireless technologies follow the static channel allocation policy [1]. To address the spectrum scarcity problem, a dynamic spectrum allocation policy comes into the picture. CR is the frontier technology based on dynamic spectrum allocation [2]. In CR technology, two types of nodes are defined: primary nodes, also called primary users (PUs), and secondary nodes or secondary users (SUs). The PUs are the licensed nodes with the authority to use channels. On the other hand, the SUs are unlicensed nodes. They are allowed to access the channels in the absence of PUs [3]. Therefore, it can be said that the dynamic policy is followed in the allocation of the spectrum to the SUs. The SUs always search for spectrum holes (absence of PU in the channel). As soon as the spectrum hole is obtained, the SUs can start transmission [4]. The concept looks simple, but the implementation is not simple. As the presence of PUs in the channels is highly dynamic, detecting a spectrum hole is not easy. Complexity is further increased due to the existence of a multi-channel environment in CR technology [5]. Researchers have proposed a solution to this problem by introducing a control channel. The control channel is used to carry control information. It includes information related to link set-up, synchronization, etc. Therefore, to maintain high throughput, the role of the control channel becomes very crucial [6]. The MAC layer is responsible for control channel design. In CR-MAC, the state of the art categorizes the control channels design based on their use [7]. Three approaches are possible for the use of the control channel. The first approach is in-band control channel design where the data channels are used opportunistically for control information transfer. It means that whenever a PU is absent in the data channel SU can use it for both control and data packet transfer. The second approach is out-band control channel design where a separate channel is used for control information transfer. Generally, an unlicensed band of industrial, scientific, and medical (ISM) is used as a control channel [8]. Therefore, the control information is shared in a dedicated channel. The television white space (TVWS) emerges as a new attraction in out-band control channel design for CR-MAC. Federal Communication Commission (FCC) has recently approved TVWS for its use in CR technology [9]. The TVWS band, as a control channel, provides a good transmission range for CR technology. The third control channel design approach is based on hybridising in-band and out-band approaches. To implement a hybrid design, the control channel is used in in-band mode first and then in out-band mode or vice versa.

All three approaches of control channel design have their own pros and cons. The in-band does not need a separate control channel, thus maintaining the decorum of CR technology. The in-band design suffers from a lack of synchronization and performs poorly compared with the out-band design. The out-band has the advantages of all-time availability and global coverage. Due to the use of the ISM band as a dedicated control channel, the out-band control channel design faces issues like security breaches, saturation, and interference. The hybrid approach of control channel design utilizes both in-band and out-band. It maintains tight synchronization among nodes using the out-band approach and maintains the decorum of CR technology using in-band design. The performance of the hybrid control channel design approach lies between in-band and out-band designs. Out of the three control channel design approaches, the out-band performance is the best [10]. Therefore, the proposed research follows the out-band approach for control channel design.

The uncertainty of PU arrival and departure causes a random availability of holes in the spectrum. Because of the random availability of the spectrum holes, obtaining the desired QoS becomes a challenging task. The guaranteed QoS is achieved to some extent by using the layered stack of the OSI model. The traditional seven-layer OSI model is more suited to conventional wireless networks [11]. However, the emergence of new technologies like CR offers new modalities in communication. Therefore, some changes are advised in the conventional OSI model to exploit more opportunities in CR technology. Cross-layer design is one of the proposals which can handle the modalities proposed by new technologies [12]. The cross-layer designs provide the flexibility to researchers to make the protocol more responsive to stated problems. Therefore, it helps in obtaining the optimal solutions for the problems. The research related to cross-layer design in CR networks shows substantial improvement in throughput, routing efficiency, delay, fairness, and energy consumption.

The wireless network resources are primarily distributed among the bottom three layers of the OSI model, namely, the physical layer, data link layer (MAC) and network layer [13]. The physical layer deals with the physical attributes of the communication channel, like bandwidth, modulation, packet rate, transmission power, etc. The MAC layer deals with the channel accessing mechanism. The channel can be accessed in frequency or time division mode. The MAC layer transmits data packets up to a single hop distance. The network layer deals with routing data packets; therefore, it is sometimes termed the routing layer. The routing layer selects an efficient path for end-to-end packet transmission. These three layers seem very much interlinked, as a modification on one layer will affect the other layer. The routing decision to select an efficient path on the network layer will reflect in the contention level at the MAC layer. This motivates the author to develop a cross-layer framework where some changes are made at the network layer to obtain desired results at the MAC layer [14].

At the network layer, many routing protocols are available to satisfy the needs of the wireless networks. To meet the on-demand need for communication links in ad hoc networks, the AODV (ad hoc on-demand distance vector) routing protocol is preferred. For efficient route selection, four packets, RREQ (route request), RREP (route response), RERR (route error), and HELLO, are used in the AODV protocol. These packets help in the formation of a routing table at each node. The RREQ, RREP, and RERR follow the request for a route from the sender, response for the route from the receiver, and error in the link, respectively [15]. The HELLO packets are used to ensure the availability of nodes in close vicinity. The HELLO packets are transferred to check the viable communication link between nodes. The transfer of the HELLO packet is limited to a single-hop distance. The presented paper utilizes this limitation of HELLO packet transfer at MAC layer [16]. The MAC layer operates in distributed coordination function (DCF) mode. In DCF mode, a four-way handshake mechanism (RTS/CTS/DATA/ACK) is implemented. In a four-way handshake mechanism, the transmission of the request to send (RTS), clear to send (CTS), data (DATA), and acknowledgement (ACK) are limited to one-hop distance only [17]. The hop-based transfer of the HELLO packet of AODV at the network layer and control packets of DCF at the MAC layer motivates the authors to develop a cross-layer scheme between the network and the MAC layer. In a cross-layer scheme, the control information is shared through the network layer first and then utilized by the MAC layer to establish tight synchronization among nodes.

Twofold research is done in this research paper. The first part deals with constructing, storing, and sharing a PCL. The PCL is used to store the latest status of the channels. Therefore, the PCL is nothing but the control information of the wireless scenario. This control information is shared first to achieve tight synchronization among nodes [18]. The sharing of PCL causes CR nodes to be aware of the network coordination and topological setup in advance. Therefore, tight synchronization is achieved because of PCL sharing. The PCL is shared in a dedicated control channel. TVWS 902 MHz frequency band is used as a dedicated control channel. The sharing of PCL further assists in common data channel selection among CR nodes [19]. A cross-layer design between the network and MAC layer is implemented in the second part of the research. The objective of the cross-layer design is the same as the first part i.e. sharing PCL to achieve tight synchronization and then using PCL to select common data channels among CR nodes. Here, the HELLO packet of the AODV routing protocol at the network layer is modified to carry PCL. This shared PCL at the network layer is used to select a common data channel at the MAC layer. The novelty of the research lies in the way PCL is transmitted. The PCL is shared as a separate control beacon in some wireless scenarios. A PCL beacon is created at MAC and shared among nodes. On the contrary, in the proposed novel scheme, the PCL is shared with the use of the HELLO packet of the AODV routing protocol. Then, it is used at MAC to obtain a channel for data transfer. No separate beaconing is required.

The organization of the paper is as follows. A detailed review is given in Sect. 2. It covers the MAC layer’s state-of-the-art control channel design and data channel selection schemes. In addition, it covers the latest research in cross-layer design in CR technology. A detailed system model for the construction of PCL is discussed in Sect. 3. Section 4 covers the use of PCL for common data channel selection. Section 5 explores the motivation behind the proposed cross-layer design scheme. This section also discusses the working of the CR-AODV protocol and CR-MAC protocol in detail. The modifications in HELLO packets for implementation of cross-layer design are covered in Sect. 6. Section 7 focuses on the proposed cross-layer design scheme. The cross-layer design algorithm is also covered in this section. In Sect. 8, the simulation results are obtained for the proposed scheme and compared with convention schemes. A detailed discussion of the obtained results is also given in this section. Finally, in Section 9, the conclusion and future work is focused.

2 Related Work

The CR is a multi-hop multi-channel technology. Average throughput, packet delivery ratio, average delay, and average energy consumption are the key attributes that decide the performance of the CR scenario. The performance of the scenario is dependent on the selected path among CR nodes. Therefore, a collision-free path selection is needed to get optimum results. The complexity in the CR scenario is added because of the multi-channel environment. This multi-channel environment gives rise to a serious problem called multi-channel hidden terminals. These multi-channel hidden terminals are the main sources of collision and are responsible for degrading the performance of CR scenarios [20]. One possible solution to this hidden terminal problem is the tight synchronization among CR nodes. Better synchronization is achievable at the cost of increased control overhead. Some extra control beacons need to be transferred to achieve tight synchronization. Therefore, increased control overhead is the cost of collision-free transmission in the data channel. Further, the control channel design at MAC becomes crucial for collision-free data transfer [21]. The control channels are broadly categorized among in-band, out-band, and hybrid designs. As out-band design uses a dedicated control channel, the highest throughput is achieved by using out-band design. On the other hand, the control and data packets are shared through opportunistic data channels; therefore, the in-band performance is the worst among all three. The performance with hybrid control channel design lies in between in-band and out-band designs.

The CR networks possess great dynamism in spectrum allocation. This dynamism makes it difficult to achieve QoS. To address the issues related to dynamic spectrum allocation, it is better to provide more flexibility to the layers of the OSI model. The cross-layer designs enjoy the flexibility provided by the layered stack. Thus cross-layer design can help in attaining desired QoS. Generally, the layers have good interaction with their neighbor layers, but in cross-layer design, different architectural violations are permissible [22]. The cross-layer design can be implemented by doing two types of architectural violations. The first is on the basis of the flow of information. Some examples of violations are shown in Fig. 1 [23]. New interfaces are created in Fig. 1a, b, and c. The flow of information is mostly upward or downward and sometimes bidirectional (back and forth). The second type of violation is done by merging two or multiple layers. The possible examples of such violations are shown in Fig. 1d (by multiple layers), Fig. 1e (by coupling of layers without interface), and 1f (calibration of all layers on the vertical axis).

Fig. 1
figure 1

Cross-layer architectural violations

The cross-layer design helps to manage resources and achieve many end-to-end goals like QoS, security, delay, throughput, etc. Resource management is achievable at all layers. At MAC, cross-layer architecture helps in designing control channels. It is also helpful in making smart decisions for efficient common data channel selection. Parameters like queue space, transmission bandwidth, data rate, and link quality are important while making decisions at the MAC layer [24]. In a multi-channel scenario like CR, the cross-layer architecture can help in prioritizing the channels. Therefore, the chances of selecting collision-free links between nodes are improved in cross-layer design. As the network resources are mainly shared among physical, MAC, and network layers, most cross-layer design schemes involve these layers. The real-time interaction of these three layers is more frequent than among any other layers [25].

The cross-layer design between the network and the physical is the most popular of these three layers. Papers [25,26,27] offer the cross-layer design between the network and physical layer. In the research paper [25], the sensing function of the physical layer is focused. The SU performs sensing of available channels. Binary values represent the channels with their sensing status. In papers [26, 27], new routing protocols are developed with the help of cross-layer design. The cross-layer design is implemented in the paper [26] to collect the transmission information from the physical layer. This information is then used for routing purposes at the network layer. Cross-layer design implemented in paper [27] connects some parameters of the physical layer to the network layer. These parameters are used in the routing algorithm. Further, beam-forming is implemented for data transmission to achieve a high packet delivery ratio. The cross-layer design between the network and MAC layer is implemented in papers [28, 29]. The availability of vacant spectrum is combined with routing decision at the network layer in the paper [28]. The algorithm helps to reduce routing delays. Paper [29] tries to reduce the switching delay by implementing an intelligent channel selection algorithm. The cross-layer designs are not limited to two layers only. The research papers [30, 31] implement the cross-layer violation among multiple layers. A cross-layer design between the network, MAC, and physical layer is implemented in paper [30]. The sensing feature of the physical layer is used for opportunistic communication link set-up at the MAC layer. The physical and MAC layers then help the network layer with efficient route discovery. The protocol targets to calculate an effective route by calculating the length of the RREQ packet of the AODV routing protocol. In the paper [31], a cross-layer design has been implemented among four layers; transport, network, MAC, and physical. The motive of cross-layer design is to maximize the communication link capacity. The design combines the physical and transport layers to improve the throughput performance in a multi-hop scenario.

In the presented paper, the research has been done in two parts. In the first part, a common data channel selection scheme is developed. For this, a list containing the latest status of channels (PCL) is created at every CR node and shared in the nearby vicinity. A separate beacon is created to share PCL. The PCL is shared in a dedicated control channel. The shared PCL is then used to select a common data channel between nodes. A cross-layer design is implemented in the second part to perform the same common data channel selection. The cross-layer design is implemented between the network and MAC layer. The HELLO packet of the AODV routing protocol is modified to carry PCL. PCL is then used to make the decision of efficient data channel selection at the MAC layer. In the proposed scheme of common data channel selection, transmitting an extra control beacon is unnecessary. The HELLO packet is shared to get the current status of neighbour CR nodes and to share PCL. Therefore, the PCL makes information on topological set-up available at every CR node. The nodes, after getting information related to channel statistics and the topological set-up of the scenario, select common data channels. Selecting data channels in this way will reduce the effect of hidden terminals, and therefore, the chances of collision in the channels are very low.

To the author’s knowledge, this research is the first effort to modify the HELLO packet and develop a cross-layer architecture. The paper has few novel contributions as follows:

(1) a common data channel selection scheme is developed using a cross-layer design between the network and MAC layer.

(2) HELLO packet of AODV routing protocol is modified to share PCL.

(3) An efficient approach to select the common data channel with the help of PCL.

(4) The effect of multi-channel hidden terminals is nullified.

(5) From the results point of view, the graphs of throughput, delay, and control overhead characteristics are plotted with respect to increasing traffic.

(6) To validate results, the performance is also tested under the worst conditions.

3 System Model

An ad hoc network scenario is the desired setup for any wireless network [32]. The M CR nodes are randomly distributed and autonomous to establish a communication link with any other node. In the presented scenario, a cognitive radio ad hoc network is set up. To make the scenario versatile

(1) a point-to-point link is considered among nodes rather than broadcast or multicast links.

(2) total N data channels are considered DC1, DC2, DC3, DC4.... DCN. It is assumed that at least one PU is available in each data channel, so every channel will actively participate in the cognitive operations. Therefore, N number of PU is considered.

(3) PU arrival and departure times in the channels are taken completely random.

(4) the number of arrivals and departures of PUs are also taken randomly in a channel.

(5) a multi-hop scenario is considered.

For proper operation, it is assumed that nodes have three interfaces: transmitter, receiver, and control. Every node can communicate with other nodes by following these three links. The control channel is tuned for control beacon transfer by using the control interface. Similarly, to transmit and receive data packets, the transmit and receive interfaces are used to tune data channels.

Further, a dedicated control channel is set as an out-band in the TVWS band. 902 MHz is the frequency used by the control channel for PCL transfer. Every CR node has to construct a PCL after sensing all the channels. In PCL, the status of current channels is stored in the form of a matrix. The absence of PU in the channel is registered as bit ‘0’ in the PCL. On the other hand, the presence of PU in the channel is indicated by bit “1”. Therefore, for an individual node, if there are total N channels available, then the size of PCL can not be more than N bits. The matrix for mth CR node can be represented as \(X^{[m]}\) and expressed as

$$X^{{[m]}} = \left[ {\begin{array}{*{20}c} {X_{{(1,1)}}^{{[m]}} } & \cdots & {X_{{(1,n)}}^{{[m]}} } \\ \vdots & \ddots & \vdots \\ {X_{{(m,1)}}^{{[m]}} } & \cdots & {X_{{(m,n)}}^{{[m]}} } \\ . & {} & {} \\ \end{array} } \right]{\text{ }}$$
(1)

The value of \(m = {1, 2, 3,..., M}\). Matrix \(X^{[m]}\) represents M CR nodes in rows and N data channels in columns. Here \(X^{[m]}\) is called the PCL matrix. The individual value of this PCL matrix can be given as

\(X_{(i,j)}^{[m]} \rightarrow j\)th channel of ith node at Mth CR node. Here only binary values can be assigned to \(X_{(i,j)}^{[M]}\). Therefore,

\(X_{(i,j)}^{[m]} = 0 \rightarrow j\)th channel of ith CR not having PU activity and available for communication of CR nodes.

\(X_{(i,j)}^{[m]} = 1 \rightarrow j\)th channel of ith node is having PU activity and the channel can not be used by CR users.

Fig. 2
figure 2

Example of PCL matrix

Once the PCL is shared in the scenario, every node has complete information about the channel”s occupancy and the topological set-up. The nodes, after receiving PCL from neighbour nodes, construct a PCL matrix. An example of a PCL matrix is shown in Fig. 2. Further, for ease of understanding a node channel matrix is created for the whole scenario. The node channel matrix X is formed by combining matrix \(X^{[m]}\) for all \(m = {1, 2, 3,..., M}\) together. The matrix X can be given as

$$\begin{aligned} X= [X^{[1]}, X^{[2]}..., X^{[M]}]. \end{aligned}$$
(2)

The biggest advantage that is achieved using PCL sharing is the nullification of the effect of hidden terminals [19]. The CR scenario suffers from the multi-channel hidden terminal problem. These hidden terminals are the primary source of collision in data channels. As soon as the PCL is shared, the nodes become aware of the other nodes in close vicinity and also of their channel statistics. These channel statistics are available prior to data channel selection. Therefore, tight node synchronization is achievable.

4 Common Data Channel Selection Scheme by the Use of PCL

In traditional CR networks, a random data channel selection scheme is employed. It means that out of all available channels one channel is selected at random for data transmission. No algorithm for data channel selection is used. Therefore, the performance obtained with such a scenario is very poor. In random selection, if an inefficient data channel is selected then it will give rise to a very high collision. Sometimes it results in link blockage or complete failure. The reasons for high collision can be the lower bandwidth of the channel, the frequent appearance of PU, over-utilization of the channel, and blockage of the channel [33]. To overcome the stated problem an efficient scheme for the selection of common data channels is developed here. To implement this common data channel selection scheme, a PCL has to be created at every node. The PCL is then shared in the nearby vicinity by each node. The PCL is shared in the form of a control beacon. To share the PCL beacon a control channel is needed. The nodes can tune the control channel with the help of the control interface. Whenever a CR node wants to initiate communication, it has to establish a communication link. The control information related to communication links is needed to be shared prior. To achieve better performance out-band control channel design is preferred over in-band design. A dedicated out-band channel is available to work as a control channel. A TVWS frequency band (902 MHz channel) is used to provide all-time availability as a control channel. Here, the communication scenario can be of two types: single-hop communication scenario and multi-hop communication scenario. The single-hop communication scenario is shown in Fig.  3. Here, the SourceCR and DestinationCR are neighbour nodes and only one hop distance away from each other. In this condition, a SourceCR, starts broadcasting its PCL in unlicensed control channel 902MHz. At the same time, the other CR users, including DestinationCR, are also broadcasting their PCL in the same unlicensed control channel. After receiving the PCL from its neighbour nodes, the SourceCR can prepare the PCL matrix as discussed in the system model in Fig. 2. A common data channel is selected between SourceCR and DestinationCR. Once a common data channel has been selected, the data transmission will take place in the distributed coordination function (DCF) mode, and a four-way handshake mechanism (RTS/CTS/DATA/ACK) will be implemented. SourceCR initiates communication in the common data channel through broadcasting RTS. The DestinationCR replies with a CTS packet in the same data channel. Once the link is established, the transmission of DATA packets is followed in the same channel. The communication is terminated by DestinationCR after sending an acknowledgement ACK to the source. The process of common data channel selection is shown in Fig. 3. The multi-hop communication scenario set-up is discussed in the subsequent sections.

Fig. 3
figure 3

Common data channel selection scheme

The notable point is that the PCL is transmitted regularly in the control channel. Therefore, the PCL and PCL matrices are updated regularly, and the decision of data channel selection is made on the basis of this updated matrix.

5 Motivation for the Cross-Layer Design

In the proposed scheme, the cross-layer design has been implemented between the network and MAC layer. There are two main motivations for implementing this cross-layer design. The first motivation is the hop-based transmission of packets between source and destination nodes. In the OSI model, layers follow different hop-based transmission strategies. The network layer deals with the end-to-end transmission of data. On the other hand, the MAC layer is responsible for data transmission up to one-hop distance. At the MAC layer, the data channel link is set up for a one-hop distance. Therefore, the packets are scheduled for transmission to the nodes available at a one-hop distance only. For the next hop, another data channel link has to be set up.

The second motivation is the use of AODV routing protocol at the network layer and DCF mode transmission at the MAC layer. As stated in the system model, the topological set-up of the presented scenario is ad hoc type. The preferred routing protocol for ad hoc networks is AODV. AODV protocol mainly uses RREQ and RREP packets for routing table formation at each node. The transmission of RREQ and RREP are end-to-end. It means RREQ starts from the source node and reaches all the way to the destination. The RREP packets follow the same path as RREQ but in opposite directions, i.e. from destination to source node. In the AODV routing protocol, the HELLO packets are used to check the connection regularly between two neighbour nodes, i.e. up to a one-hop distance. By sending a HELLO packet, the node checks whether the neighbour node is active and in the range of communication. The sending of HELLO is necessary since every node maintains one neighbour table. In the neighbour table, entries are made for the nodes active in the neighbourhood. A node regularly updates its neighbour’s table after receiving HELLO packets from neighbour nodes.

The HELLO packet of AODV is shared regularly up to one-hop distance. At the MAC layer, the PCL is regularly shared up to a one-hop distance for common data channel selection. This motivates the author to design a cross-layer architecture between the MAC and network layer. The motive of cross-layer architecture is to transfer the MAC layer information (i.e. the PCL used for data channel selection) through the network layer (HELLO packet of AODV routing protocol).

Fig. 4
figure 4

Operation of CR-AODV and CR-MAC in cognitive radio scenario

5.1 CR-AODV Protocol

Figure  4 depicts the working of CR-AODV protocol in the CR scenario. A routing table is formed at each node with the help of RREQ and route RREP packets as discussed above. The routing table is useful for making routing decisions. The RREQ packets consist of source and destination addresses and hop count numbers. The RREP packet contains the destination address as well as the hop count number. The packet format of the RREP is shown in Fig. 5a. In AODV, to check the connectivity of nodes with nearby nodes HELLO packets are transferred. The HELLO packets are shared in the control channel. The transmission of the HELLO packet has two features. First; HELLO packets are shared regularly to check the connectivity. Second; The HELLO packets are shared up to a single-hop distance. The motive for sharing HELLO is to maintain a neighbour node table. The packet format of HELLO looks similar to RREP except for the fixed hop count number. The value of hop count in HELLO is fixed as “0”, indicating that it is used for one-hop distance only. The HELLO packet format has other fields like HELLO INTERVAL and ALLOWED HELLO LOSS, which are used to indicate the maximum interval between two HELLO packets and the maximum allowed time for HELLO reception, respectively. If the packet is not received till ALLOWED HELLO LOSS, then it is assumed that the connectivity between nodes is lost. The HELLO packets are shared in the control channels to check connectivity between neighbour nodes and then to update the neighbour node table. The SourceCR floods RREQ packets in all PU-free data channels to neighbour nodes. The SourceCR neighbour nodes falling in the way to DestinationCR are transit nodes. The RREQ packet generated by SourceCR is forwarded by these transit nodes towards the DestinationCR. The response packet RREP from the DestinationCR is transmitted back towards SourceCR. The route selected for RREP is the same as followed in RREQ, but the direction is opposite.

5.2 CR-MAC Protocol with DCF Mode of Transmission

The CR-MAC protocol has two main objectives. First, the selection of a common data channel between the sender node and the destination node. The PCL sharing mechanism, as discussed in section 4, is implemented to select the common data channel between the sender and the receiver node. once the common data channel has been selected, the DCF mode of transmission is followed in CR-MAC. DATA is transferred only after the sharing of RTS and CTS control packets. The CR-MAC is a hop-based protocol. It means CR-MAC is responsible for carrying the data up to the one-hop distance only. For the next hop, the CR-MAC repeats the same process in the same or different data channel. As shown in Fig. 4, the selected data channel between two nodes in one hop is different from the data channel of the next hop. This means that the data packets are forwarded in the direction of the destination, and because of CR-MAC, the communication in successive hops can be handled by different data channels. After the reception of DATA, ACK is transferred back to the source by the destination node.

6 Modification in HELLO Packet to Share PCL

Every CR node repeatably performs sensing of the channels to obtain vacant channels. The status of sensed channels is stored in PCL as discussed in section 3. The cross-layer mechanism is developed by attaching the PCL with HELLO packets. The control information in the form of PCL is shared with HELLO packets. It is used for common data channel selection at the MAC layer. The format of the modified HELLO packet is shown in Fig. 5c. The HELLO packet format is very similar to the RREP packet. The format of RREP is shown in Fig. 5a. A few modifications are needed to use the RREP packet as a HELLO packet. The modifications in the RREP packet are shown in red colour in Fig. 5c. PCL is appended in the HELLO packet in Fig. 5c. The length of PCL is variable and must be equal to the total number of primary channels i.e. N. Fig. 5b indicates the PCL beacon used in traditional scenarios. The traditional approach of PCL beacon sharing is followed in [34]. The user sends HELLO and PCL beacon as two different packets [34]. The following advantages are achieved through transmitting PCL with HELLO packet:

(1) Extra control overhead due to beacon transfer is avoided.

(2) Because of lesser control overhead the congestion in the control channel is reduced.

(3) The amount of collision is also becoming less. Results in saving of the energy needed in retransmission of packets.

(4) Sharing of PCL before data transmission causes to achieve tight synchronization of the nodes.

Fig. 5
figure 5

Format of modified HELLO packet; a RREP packet format; b Beacon used in traditional approaches of PCL sharing; c HELLO packet used in proposed cross-layer design

7 Proposed Cross-Layer Scheme

Total m CR nodes are randomly distributed in the scenario, and every node can access a maximum of N data channels. To understand the proposed cross-layer design a two-hop network set-up is shown in Fig. 6. The source node CR3 can communicate to destination CR15 through a transit node CR9. In the first hop of communication, the node CR3 sends packets to transit node CR9. In the second hop, the CR9 will forward the packets to destination CR15. All node performs spectrum sensing and a PCL is created at each node. In Fig. 6, the PCLs PCL3, PCL9 and PCL15 are corresponding to nodes CR3, CR9 and CR15. These PCLs are appended in HELLO as discussed in the previous section and demonstrated in Fig. 5c. After adding the PCLs, the modified HELLO packets corresponding to CR3, CR9 and CR15 are HELLO3, HELLO9 and HELLO15 respectively. The node CR3 shares the modified HELLO in the control channel and at the same time receives the modified HELLO like HELLO1, HELLO5 and HELLO9 etc from its neighbour nodes. After receiving modified HELLO from neighbour nodes, CR3 prepares a PCL matrix. The same PCL matrix is prepared by nodes CR9 and CR15. The PCL matrix available at the nodes CR3 and CR9 will help in the selection of a common data channel DC3 as discussed in section 4. The same process is implemented to select the common data channel DC4 between CR9 and CR15.

The AODV routing protocol starts its operation by sharing the modified HELLO packets regularly to maintain the neighbour table. Once the neighbour table is updated, the CR node knows its neighbours. In our scenario, CR3 and CR9 are neighbours i.e. positioned at a single-hop distance. Likewise CR9 and CR15 are also neighbours with single-hop distance. The transmission of RREQ and RREP is similar to the conventional AODV as discussed in section 5.1.

Once the selection of common data channel DC3 is completed between CR3 and CR9. The CR-MAC protocol will take care of the rest of the communication in four-way handshake mode, as discussed in Sect. 5.2. The CR3 sends \(RTS(3-9)\) to CR9 and waits till it receives clear signal \(CTS(9-3)\) from node CR15. Then DATA is sent from CR3 to CR9. The transmission of DATA is complete once CR3 receives \(ACK(9-3)\) from CR9. Similarly, DC4 is selected as a common data channel between nodes CR9 and CR15. Between the link of CR9 and CR15, the CR-MAC works in the same way as it works between nodes CR3 and CR9. The transit node CR9 sends \(RTS(9-15)\) to CR15 and receives \(CTS(15-9)\) from CR15. CR9 is a transit node. It can only forward the DATA coming from CR3. The CR9 forwards the DATA to CR15 and waits to receive \(ACK(15-9)\)

7.1 Algorithm of Proposed Cross-Layer Design

The proposed scenario is created by taking m CR nodes and maximum N data channels. The algorithm for the proposed cross-layer scheme is represented in the view of source node CR3 and shown in algorithm 1. At starting of the algorithm every CR node is designated for the sensing of every channel. The presence or absence of PU in the channel is registered in PCL. In the algorithm, node CR3 is considered the source node while CR15 is the destination node. A node CR9 is a transit node. The PCL constructed at CR3 is then attached with the HELLO packet of the AODV routing protocol. The PCL-enabled modified HELLO packet is shared to the neighbour transit nodes CR9 in a dedicated control channel of 902 MHz. Once the HELLO packets are shared, a PCL matrix is formed to select common data channel DC3. Then, the DCF mode of CR-MAC is used for performing the data transfer.

Fig. 6
figure 6

Proposed cross-layer design based common data channel Selection

Algorithm 1
figure e

Algorithm for Proposed Cross-layer Design based Common Data Channel Selection

8 Simulation Setup and Results

The aim of this section is to evaluate the performance of a novel common data channel selection scheme based on the cross-layer design in cognitive radio. The performance of the proposed scheme is observed by using a simulation tool, Network Simulator version 2 (NS2), and compared with conventional schemes [35]. Initially, an ad hoc network scenario is set up for cognitive radio and denoted as “IEEE802.11”. In IEEE802.11, the in-band design is followed for the control channel and the common data channel selection is made randomly. The first modification is made through the sharing of PCL for efficient common data channel selection (denoted as PCL Transmission). The PCL is shared in the form of beacons, which help in making decisions for common data channels. Further, in place of the in-band, the control channel is designed in the out-band by using a dedicated channel. Unlicensed 902 MHz of TVWS band is used as a control channel. The effect of the use of a dedicated and all-time available control channel is observed in the scheme. Both the discussed schemes use conventional AODV routing protocol. The next modification is made in IEEE802.11 by implementing the cross-layer design. This modification is denoted by “Cross-layer Design” in the graphs. In cross-layer design, PCL is shared by attaching with HELLO packet. As this approach is implemented on IEEE802.11, therefore the in-band control channel is used. The data channel is selected using the HELLO packet-based PCL transmission. Finally, a dedicated control channel-based cross-layer design is implemented and denoted as “Proposed Scheme” in the graphs. Compared to cross-layer design, in the proposed scheme a 902 MHZ TVWS band is used to design the out-band control channel. The HELLO packets are transmitted in the dedicated control channel to share the PCL and to get the information of connectivity among nodes.The detail of proposed scheme, cross-layer design and other schemes used in the paper is mentioned in table 1.

Table 1 Legends and their explanation

To test the performance, the traffic of the CR scenario is varied. The variation in traffic is achieved in two ways: first, the number of CR nodes is varied, and second, the packet generation rate at each node is varied. PU activities also play a pivotal role in the performance of the CR scenarios. The PU arrival and departure in data channels are modelled using the exponential ON/OFF model. In the model, ON means the time duration for which PU remains active in the data channel. Similarly, OFF is the time duration for which the channel is observed PU-free. The ON and OFF lengths are varied to create different PU activity models as shown in Fig. 7. These models are used to test the performances of the CR scenarios. The high PU activity is observed in peak hours in dense areas. The low PU activity is observed in late-night hours in remote areas. The intermittent PU activity model is one where both ON and OFF lengths are taken approximately equal. This intermittent model is used to test the performance of all scenarios like IEEE802.11, PCL transmission, cross-layer design, and the proposed approach. On the other hand, high and low PU activity models are used to create the worst scenarios for testing the results. [36]

Fig. 7
figure 7

Primary user activity model

8.1 Simulation Environment

For simulation, the scenario is set up as a CR ad hoc network with the help of a Network Simulator (NS\(-\)2.31). The topological dimensions are set as \(1000*1000 {m^2}\). The nodes can move randomly in this dimension. A total of 10 data channels are set. The scenario is created in such a way that at least one PU is active per data channel. Each channel is allocated with 8MHz bandwidth. Further, one dedicated control channel is created in the TVWS band at 902 MHz. The performance of the proposed schemes are observed in terms of packet delivery ratio, average throughput, average delay, control overhead and average energy consumption. The graphs are plotted with respect to the increasing traffic to observe the performance. To vary the traffic, the packet generation rate and number of CR nods are varied in the simulation scenario. The packet generation rate is variable from 10 packets/second to a maximum of 1000 packets/second. The traffic is also varied by varying the number of CR nodes from 30 to 100. To observe the results the nodes are incremented in the steps of 10. Other simulation parameters with their descriptions are given in table 2.

Table 2 Simulation parameters to run CR scenario

8.2 Discussion on Simulation Results

In the proposed research, the results are plotted to observe the performances of control channel design approaches, i.e. in-band and out-band design and common data channel selection approaches, i.e. random selection, PCL-based selection and modified HELLO-based selection. The modified HELLO based common data channel selection is the cross-layer design approach. In Fig. 8, the results in IEEE 802.11 (black colour graph) represent a conventional CR network. In IEEE 802.11, the in-band control channel is used, and the common data channel between source and destination nodes is selected randomly. The improvement in IEEE802.11 is noted through the PCL transmission (red colour graph) for common data channel selection. The PCL is shared in the form of a beacon. Unlike IEEE 802.11, a dedicated out-band TVWS channel is used as a control channel here. The PCL beacons are transmitted in the out-band control channel of the TVWS band at 902 MHz. The transfer of the PCL beacon before data transmission reduces hidden terminals in the scenario. The lesser the number of hidden nodes, the lesser the packet collision. Because of less collision, the throughput is improved. Further, due to less collision, the number of packet retransmissions is saved [37]. This improves the time delay performance. The smaller number of packet retransmissions reduces the CR network’s energy consumption [38]. Unlike random data channel selection of IEEE802.11, here PCL beacons are used to select the common data channel between source and detonation CR nodes. This means that a PU-free data channel is available for data packet transfer. The required number of handoffs is reduced in the scenario. That, in terms reduces the channel switching delay of the network [39]. This further improves the delay performance. The improvement in the performance of delay, packet delivery ratio and throughput are evident in red colour graphs in Fig. 8a,b,c,f,g and h. The scenario faces challenges in control overhead and energy consumption performances. The PCLs are shared regularly as a separate beacon. Transmission of PCL extra beacons increases the energy consumption. Therefore, the PCL transmission has two contrary effects on energy consumption. The energy consumption is reduced, because PCL-based common data channel selection reduces packet collision and the number of packet re-transmissions. The energy consumption is increased because PCL are shared as separate beacons. These contrary effects are evident in red colour graph of Fig. 8e. With low packet generation rate, the energy consumption of PCL transmission scheme is higher than IEEE802.11 scheme. As soon as the packet generation rate increases the energy consumption performance in PCL transmission scheme improves. The PCL beacon format is shown in Fig. 5b. It includes PREAMBLE and CRC (cyclic redundancy check) bits as overhead. The transmission of PREAMBLE and CRC bits, along with PCL, increases the control overhead of the scenario. The same is observed in the graphs 8d and i. Thus, PCL transmission in a dedicated out-band control channel gives multi-fold advantages at the cost of increased control overhead and energy consumption. The challenges of increased control overhead and energy consumptions are addressed by implementing the cross-layer design. The blue colour graph represents the cross-layer design with an in-band control channel. In cross-layer design, the HELLO packet is modified and attached with PCL. In the AODV protocol, the CR node regularly shares HELLO to check the connectivity and maintain a neighbour table. The cross-layer design and proposed scheme share these modified HELLO packets. No separate PCL beacon is required this time. This leads to managing the control overhead in a reasonable range compared to the PCL transmission scheme. The energy consumption is significantly reduced. This can be observed from the graphs 8d, e, i and j. The effect of reduced overhead is seen in the performances of PDR, throughput and delay. Compared to IEEE802.11 and PCL transmission scheme, the PDR, throughput and delay are improved in cross-layer design scheme Fig. 8a,b,c,f,g and h. In the graph 8d, the control overhead is plotted with respect to the packet generation rate. For the packet generation rate of up to 100 packets per second, the control overhead remains approximately the same as in the case of the PCL transmission scheme. As the packet generation rate increased further, the overhead rose exponentially. The increased packet generation rate positively impacts throughput performance. The throughput also increases exponentially after a packet rate of 100 packets/second, as shown in Fig. 8b. Unlike the cross-layer design where an in-band control channel is used, the proposed scheme uses an out-band control channel. This means that in the proposed scheme, the cross-layer scheme is implemented by sharing modified HELLO in a dedicated out-band control channel. In Fig. 8, the purple colour graph shows the result for the proposed scheme. The advantages of the out-band control channel over the in-band are discussed in 1 and are clearly evident in the results. The out-band control channel is independent of the PU activity. This means the out-band control channel is more reliable for transferring control packets than the in-band channel. Therefore, with an out-band control channel design, the chances of setting up a communication link between two CR nodes are high. Because of this, the performance of PDR, throughput and delay are improved in the proposed scheme. The proposed scheme outperforms the cross-layer design as shown in Fig. 8.

The results are also tested in the worst scenario to validate the performance of the proposed scheme. Very high and very low PU activity models are implemented to create the worst scenario as shown in Fig. 7. A very high PU activity model with an ON-time duration approximately equal to 80% of the total time duration is considered. To implement the low PU activity model, the ON duration is made approximately 20% of the total time duration. In worst scenarios, the throughput result of the proposed scheme is compared with IEEE 802.11 in Fig. 8k and l. The obtained results in the worst scenario are satisfactory.

Fig. 8
figure 8

Simulation results of packet delivery ratio, average throughput, average delay, control overhead and average energy consumption are plotted w.r.t. the increasing packet generation rate in figure (a), (b), (c), (d) and (e). The results are plotted on a logarithmic scale. The same results are plotted again w.r.t. the increasing number of CR nodes in figures (f), (g), (h), (i) and (j). In figure (k) and (l) the average throughput graphs are plotted in the worst scenarios. Very high and very low PU activity models are used to create the worst scenarios

9 Conclusion

The role of data channel has become very significant at MAC and network layer of opportunistic technology like cognitive radio. The selection of a common data channel at the MAC layer and obtaining an end-to-end channel route at network layer are the backbone of communication in cognitive radio network. Moreover, multi-channel hidden nodes, overhead, channel access delay, frequent handoffs and channel saturation are the severe challenges for common data channel selection schemes. The control channel design approaches like in-band and out-band are used to transfer control packets and thereby assists to common data channel selection schemes. Conventional CR-MAC and CR-AODV protocols are not able to perform efficiently with in-band control channel design. To address the said challenges, a cross-layer design-based common data channel selection scheme is proposed in this paper. In the paper, a dedicated out-band control channel is used in a cross-layer design between the MAC and network layer.

To avail the latest status of data channels in the neighbourhood, a PCL is created at each CR node and shared as a beacon in the out-band control channel. Unlikely to use random channel for data transmission here PCLs are used to select a common data channel between source and destination CR nodes. Better performance is achievable in terms of average throughput, packet delivery ratio and delay at a cost of increased control overhead. Since the PCLs are shared as separate beacons, the performance of control overhead and energy consumption are affected. To address these performances challenges, the cross-layer design is implemented. The HELLO packet of the AODV routing protocol is modified to carry PCL at the network layer. The modified HELLO packet of AODV not only updates the connectivity status in the neighbour table but also shares PCL to select a common data channel at the MAC layer. Therefore, the proposed cross-layer design-based common data channel selection scheme not only improves the performances of throughput, packet delivery ratio, delay and energy consumption but also maintains the control overhead within a limit. The proposed cross-layer design based common data channel selection scheme has applications in the low throughput scenarios like cognitive radio aided sensor networks.