1 Introduction

The last two decades witnessed an exponential increase in the wireless services and applications. Such services and application require huge amount of spectrum. This triggered Federal Communication Commission (FCC) to conduct spectrum utilization measurements. These measurements reported inefficient spectrum utilization as the actual spectrum usage ranges from 15 to 85% [1,2,3]. This result has motivated the use of new adaptive spectrum access technology such as cognitive radio (CR) technology to effectively utilize the available spectrum [4, 5]. In CR operating environment, two types of users exist: primary radio users (PU) and secondary users (SU). A PU (or a legacy user) has the priority to access the licensed bands, while SUs can dynamically exploit the underutilized licensed bands without disturbing the operations of PUs [1, 4, 6]. A CR has two main characteristics: cognitive capability that allows SUs to capture and sense the information from the operating RF environment (identifying idle channels), and cognitive re-configurability that enables SUs to dynamically reprogrammed their operating parameters (e.g., carrier frequency, bandwidth, power, modulation, etc.) according to the interaction with the RF environment [7, 8].

Multi-Input and Multi-Output (MIMO) technology has been recently adopted in many wireless systems due to its ability to improve transmission efficiency and bandwidth utilization [9,10,11,12,13,14,15]. In MIMO systems, the transmitter and receiver are equipped with multiple antennas resulting in different propagation paths. Based on how data are transmitted over a given channel, MIMO can provide spatial diversity and/or spatial multiplexing gains. Spatial diversity is realized when the same data are transmitted or received over the different propagation paths using different antennas [14,15,16,17,18]. This improves the reliability and the received signal-to-noise ratio (SNR) of the system, resulting in reduced bit error rate (BER). On the other hand, multiplexing gain is realized when transmitting different data packets over different propagation paths using different antennas. This improves the achieved network transmission rates and overall throughput [14, 19,20,21,22]. To farther improve spectrum utilization and provide efficient solution to meet the exponential growth in spectrum demands of emerging wireless services and applications, the MIMO technology has been integrated into CR systems. This integration is referred to as MIMO-based CR networking [23, 24].

Extensive researches have been conducted to develop communication protocols for MIMO-based wireless networks [25,26,27,28,29,30,31,32] that investigated the trade-off between spatial multiplexing, diversity and array gain. It has been shown that such gains can improve the transmission range, data rate per link, link reliability and the received SNR. Most of the existing communication protocols for MIMO-based wireless networks were designed either by performing mode selection on a given channel or perform channel assignment for a given mode. None of the previous works have investigated the joint mode selection and channel assignment in MIMO-based CRNs. In this paper, we propose a joint channel assignment and adaptive MIMO-mode selection MAC protocol (referred to as JCASM) for MIMO-based CRNs. The proposed protocol allows for hybrid-mode selection (diversity-only, multiplexing-only or simultaneous hybrid diversity-and-multiplexing) along with the appropriate channel assignment based on the received SNR over the different channels. This protocol allows selecting the suitable antenna mode, and assigning the appropriate idle channel for a contending CR transmission such that the maximum number of independent data packets while guaranteeing predefined reliability constraints. It attempts to use the multiplexing mode as much as possible along with the best diversity for data transfer based on the received SNR over the various antennas at the receiver such that the achieved network throughput is improved. JCASM jointly considers the achieved data rate and link reliability. Specifically, for each antenna with received SINR greater than the threshold SINR value for correct reception, independent packet will be sent (making use of multiplexing) such that higher throughput is achieved. On the other hand, if the received SINR is < the threshold SINR value for some antennas, these antennas are used to transmit the same packet (making use of diversity) such that the received SINR over these different antennas is greater than the SINR threshold. Simulation results reveal that the proposed adaptive protocol provides significant improvement in network capacity and link reliability over random channel-selection adaptive mode-selection MAC protocol (RCSASM), spatial diversity-mode MAC protocol (SDM) and spatial multiplexing-mode MAC protocol (SMM).

The rest of this paper is organized as follows. The related work is given in Sect. 2. In Sect. 3, the network model is described. The problem formulation and solution are given in Sect. 4. Simulation results are presented and thoroughly discussed in Sect.5. Section 6 concludes this paper.

2 Related Work

Several previous research efforts have been conducted to design communication protocols for MIMO-based wireless systems. The authors in [25] have proposed joint multiplexing and transmit diversity for MIMO-based wireless networks. This network employed both MIMO modes. Each communicating pair can select the best diversity for data transfer based on the measured SNR at the receiver. Compared with standard SISO IEEE 802.11, the simulation results show that there the throughput performance per node is improved. In [26], the authors studied the capacity of MIMO-based CR system in flat fading channels. They derived a capacity formulation under Rayleigh distributed channels. CR system incorporated with MIMO technique improves spectrum utilization and diversity gain as the number of antennas increases. The authors in [27] proposed a novel hybrid-MIMO receiver that can support spatial multiplexing and space-time block coding in CRNs. Such receiver has the capability of detecting spatial multiplexing and spatial diversity at the same time. The receiver used maximum likelihood (ML) and zero forcing (ZF) detection methods. The simulation results showed that the proposed system still maintains the advantages of diversity and reduce the symbol error rate (SER). In [33], the authors investigated diversity, multiplexing and array gain trade-off in MIMO channels. The trade-off was studied for Alamouti, BLAST schemes under Rayleigh fading independent and identically distributed channels. It was concluded that the optimal trade-off can be achieved in the infinite SNR regime. The authors in [34] presented an analysis on the multiplexing-diversity– trade-off for ordered MIMO-based successive interference cancellation (SIC) receivers. According to general settings, they proposed a novel geometric approach to prove that the optimal ordering rule provides no improvement in system performance when V-BLAST SIC receivers is used in point-to-point MIMO channels.

In summary, the existing MIMO-based communication protocols designed for wireless networks can be categorized into two main groups: spatial-multiplexing-based and diversity-multiplexing-based protocols. The diversity-multiplexing-based protocols exploits the MIMO technology to support reliable communications and extend the transmission range. On the other hand, the spatial-multiplexing-based is used to increase the achieved transmission rates. In addition, most of the existing communication protocols for MIMO-based wireless networks perform mode-selection on a given channel. These protocols do not allow for simultaneous hybrid mode adaptation (at a given time, either multiplexing-mode or diversity-mode is s selected). None of the previous protocols have investigated the joint mode-selection and channel assignment in MIMO-based CRNs with hybrid simultaneous mode. Table 1 provides a qualitative comparison between the discussed related works based on their supported capabilities.

Table 1 Comparison of the related work

3 Network Model

We consider a MIMO-based ad hoc CRN that consists of N SUs located in the same locality (single-collision domain). Each CR receiver has the capability of detecting spatial multiplexing and spatial diversity at the same time. The two capabilities can be implemented using Maximum Likelihood (ML) and Zero Forcing (ZF) detection methods, respectively. The mode selection information can be made available at the transmitter using the exchanged control packets. The CRN geographically co-exists with a PR network (PRN). The available bandwidth for the PRN is divided into orthogonal frequency channels. We define \(\mathcal {M}\) as the set of all PR channels; each with BW bandwidth. There are several CR transmitter–receiver pairs (SUs) that contend to access the set of idle channels at a given time t, referred to as \(\mathcal {C}(t)\in \mathcal {M}\), where \(C=|\mathcal {C}|\) represents the number of idle channels. Each SU is equipped with \(N_t\) antennas (i.e., \(N_t \times N_t\) MIMO system). Each pair coordinate its transmission through exchanging Request-To-Sent (RTS) and Clear-To-Send (CTS) control packets over a dedicated Common Control Channel (CCC). Each SU can opportunistically access only one idle channel. Based on the exclusive channel occupancy model; this channel cannot be simultaneously occupied by another SU in the same vicinity [35]. This mitigates the collisions between SU transmissions. The idle/busy Markov model is used to describes the PU channel availability. The channel is idle when it is not used by a PU and busy when the channel is occupied by a PU.

The supported data rate of each idle channel \(i \in \mathcal {C}(t)\) for each antenna j (\(R_j^{(i)}\)) can be computed as [36]:

$$\begin{aligned} R_j^{(i)} = \Bigg \{ \begin{array}{ll} f(\text{ SNR }_j^{(i)})~\text{ Mbps }, &{}\quad \text{ if } \text{ SNR }_j^{(i)} \ge \mu ^{*}\\ 0, &{}\quad \text{ Otherwise. } \end{array} \end{aligned}$$
(1)

where f(.) represents the rate-SNR function, SNR\(_j^{(i)} = \frac{P_{rj}^{(i)}}{N_{o}}\) is the received SNR over channel i for antenna j, \(P_{rj}^{(i)}\) is the received power over channel i for antenna j and \(N_{o}\) is the thermal power in (Watt) [37]. We consider that the total transmit power \(P_{t}^{(i)}\) is equally allocated to the \(N_{t}\) transmit antennas as \(P_{tj}^{(i)}=\frac{P_{t}^{(i)}}{N_{t}}\), where \(P_{tj}^{(i)}\) is the allocated transmit power for each antenna. The received power over a distance d between communicating pair over channel i for antenna j (\(P_{rj}^{(i)}\)) is given by [37]:

$$\begin{aligned} P_{r_{j}}^{( i )}=P_{tj}^{(i)} G_{t}G_{r}~ \left( \frac{ \lambda }{4 \pi d} \right) ^{n} \varrho _{j}^{ \left( i \right) }, \end{aligned}$$
(2)

where \( G_{t},~G_{r} \) are respectively the gains of the transmit and receive antennas, n denotes the path-loss exponent and \(\varrho _{j}^{ \left( i \right) }\) is the power gain of the fading process. For Rayleigh fading channel model, \(\varrho _{j}^{ \left( i \right) }\) is exponentially distributed with mean 1 [37].

To guarantee the performance of PUs, a binary-level transmission power strategy is assumed when a SU wants to transmit over channel i , which is given by:

$$\begin{aligned} P_{t}^{ \left( i \right) }= \Bigg \{ \begin{array}{ll} P_{\max }^{ \left( i \right) }, &{}\quad \text{ if } \text{ channel } \text{ i } \text{ is } \text{ idle }\\ 0, &{}\quad \text{ if } \text{ channel } \text{ i } \text{ is } \text{ occupied } \text{ by } \text{ a } \text{ PU } \end{array} \end{aligned}$$
(3)

where \(P_{\max }^{ \left( i \right) }\) is the maximum allowable power that can be provided by the battery of the CR device, which should be smaller than the FCC maximum permissible transmit power over channel i [35]. We consider that the average availability time of a selected channel i is always greater than the required transmission time (\(Tr_{j}^{(i)}=\frac{D}{R_j^{(i)}}, \forall j\)), where D is the data packet length (in KB).

Fig. 1
figure 1

Throughput versus the transmit power

Fig. 2
figure 2

Throughput versus idle probability

Fig. 3
figure 3

MIMO Efficiency versus idle probability

Fig. 4
figure 4

Network throughput versus the transmission power

Fig. 5
figure 5

Network throughput versus number of CR communicating pairs

Fig. 6
figure 6

Network throughput versus packet size for \(N=10\)

Fig. 7
figure 7

Network throughput versus idle probability

Fig. 8
figure 8

MIMO efficiency versus idle probability

4 Problem Statement and Solution

4.1 Problem Statement and Design Constraints

For a given SU source-destination pair, given the number of transmit/receive antennas and the idle channel list, our objective is to improve the overall network throughput by assigning the most appropriate channel along with the MIMO-mode that can support transmitting the highest number of independent data packets using the available antennas subject to the following reliability and resource constraints:

  • C1. Exclusive channel occupancy constraint: each idle channel can be assigned to one SU transmission at a given time.

  • C2. Reliability constraint: the received SNR for each SU packet transmission over an idle channel (over one or more antennas) should be larger than a pre-specified SNR value \(\mu ^{*}\).

  • C3. Single-transceiver constraint: each SU can be assigned one channel only.

4.2 The Proposed Algorithms

The main objective of the proposed algorithm is to send data packets from a source node to a destination node in a MIMO-based CRN using SMM and/or SDM such that the overall network throughput is maximized. The algorithm selects the MIMO mode that can result in the highest number of independent data packets over each idle channel while satisfying the aforementioned design constraints. Accordingly, it selects the best antenna mode and assigns an idle channel that provides the maximum throughput for each communicating pair. For this end, we propose three MIMO-based channel assignment design variants as follows.

4.2.1 Joint Adaptive Channel and MIMO-Mode Selection

This algorithm attempts at jointly selecting the operating channel and the appropriate SMM and/or SDM mode that can support the highest data rate between communicating users. For each idle channel, the algorithm selects the MIMO transmission mode that can enable the highest number of independent data packets while satisfying the design constraints. Then, the algorithm selects the channel that can support the highest number of independent data packets among all the available channels. The variant allows for hybrid MIMO-mode selection and channel assignment. The algorithm is executed as presented in Algorithm 1.

figure a

4.2.2 Adaptive Channel Assignment with MIMO-Multiplexing Mode

This design variant is to send data packets from a source node to a destination node in a MIMO-based CRN using SMM by selecting the best channel that can support the highest possible overall network throughput. This algorithm employs multiplexing-mode only and selects the channel that can support the highest number of independent data packets while satisfying the design constraints. Accordingly, it computes the supported transmission rate over each channel while using SMM. Then, the idle channel that supports the largest number of independent data packet transmissions is selected. The variant is based on multiplexing-mode channel assignment. The algorithm is executed as presented in Algorithm 2.

figure b

4.2.3 Adaptive Channel Assignment with MIMO-Diversity Mode

This design variant is to send data packets from a source node to a destination node in a MIMO-based CRN using SDM such that the overall communication reliability is achieved. The algorithm employs multiplexing-gain overall available antennas. For each idle channel, the algorithm computes the achieved SNR assuming the same data packet is to be sent over the available antennas. Then, the idle channel with the highest received overall SNR that satisfies the design constraints is selected. This variant is based on exploiting diversity-mode only. The algorithm is executed as presented in Algorithm 3.

figure c

5 Methodology of Evaluation

5.1 Simulation Setup

First, we distribute a network of CR users within a 1000 meter \( \times \) 1000 meter area that coexists with a PRN in the same geographical area. A total of N one-hop CR transmitter–receiver pairs are considered. We consider that the total number of PR channels is M channels; each with 5 MHz of bandwidth. The PRN carrier frequency is considered \(f_c=900\) MHz [38]. We set \(\mu ^{*}\) to 10 dB for all channels, the maximum transmission power to \(P_{t}=1\) Watt [36] and the thermal noise power spectral density to \(N_{o}= 10^{-17}\) W/Hz. The signal propagation model with \(n=2\) path-loss exponent and Rayleigh fading power gain is used to quantify the link conditions between any two communicating SUs [38] and with unity antenna gains (\(G_t=G_r=1\)) for all channels and antennas. A data packet with size of \(D=2\) KB and required data rate of at least 5 Mbps are required by each SU. The simulation time is sub-divided into time slots, each of 3.3 ms. Each time slot indicates the transmission time that is required for one CR packet at a rate of 5 Mbps. The 2-states Markov model is used to describe the status of the PU channels, which alternates between BUSY and IDLE states. At a specific time slot, the probability that a PU channel is idle is set to \(P_{I}\) for all channels. In the simulation region, the SU transmitters and receivers are randomly located. Our simulation experiments are performed using MATLAB. The performance of our proposed algorithm (JCASM) is compared with that of adaptive mode-selection random-channel selection MAC protocol (RCSASM), spatial diversity-mode MAC protocol (SDM) and spatial multiplexing-mode MAC protocol (SMM). The RCSASM algorithm randomly selects an idle channel and perform adaptive mode selection to select the mode that can support the highest number of parallel independent transmissions. The SDM and SMM algorithms employ channel assignment for a given MIMO-mode (i.e., the two design variants of our algorithm described in Algorithm 2 and 3). Comparing with RCSASM that exploits only the adaptive mode selection with no intelligent in channel assignment shows the benefit of performing channel assignment. On the other hand, comparing with SMM and SDM (performing channel assignment for multiplexing-only and diversity-only, respectively) shows the performance gain of performing joint channel assignment and adaptive mode selection. The aforementioned simulation parameters for the CRN is selected based on the realistic settings that have been used in [9, 10, 36, 38, 39].

5.2 Link-Level Simulation

To verify the performance gain achieved by our proposed protocol, we consider a one CR-link and \(M=10\) PU channels. For this scenario, we study the performance of JCASM algorithm as a function of the different operating parameters. The simulation results are reported for 5000 link conditions (instances). For each instance, the distance between the source-destination pair and the available channel list is randomly generated. Figure 1 plots the achieved link throughput versus the transmission power for different \(P_{I}\), \(M=10\), \(N_{t}=4\), \(BW=5\) MHz and \(D=2\) KB. This figure reveals that the JCASM protocol outperforms the SMM, SDM and RCSASM protocols by up to \(28.29\%\), \(121.37\%\) and \(48.64\%\), respectively.

Figures 2 and 3 plot network throughput and MIMO efficiency with \(N_{t}=4\), \(M=10\), \(P_{t}=1\) W, \(BW=5\) MHz \(D=2\) KB for all schemes versus PU traffic loads, respectively. Figure 2 shows that network throughput increases with larger values of \(P_{I}\). This is because the more availability of spectrum. Figures 2 and 3 reveal that JCASM outperforms the SMM, SDM and RCSASM schemes. For \(M=10\), Fig. 3a shows that the proposed scheme outperforms SMM, SDM and RCSASM in term of MIMO efficiency by up to \(16.22\%\), \(148.9\%\) and \(48.3\%\), respectively. Figure 3b indicates that similar behavior for \(M=20\) to that of \(M=10\) is observed, but with higher performance gain.

5.3 Network-Level Simulation

We perform extensive simulation experiments to study the network performance of the proposed protocol. The simulation setup given in the previous section is considered, but with varying N (the number of communicating pairs). Figure 4 plots the achieved network throughput versus the transmission power for different values of \(P_{I}\) with \(M=20\), \(N_{t}=4\), \(N=10\), \(BW=5\) MHz and \(D=2\) KB. This figure reveals that JCASM outperforms the SMM, SDM and RCSASM by up to \(17.58\%\), \(134.2\%\) and \(105.64\%\), respectively.

Figure 5 plots network throughput versus the number of communicating pairs N under different PU activity levels and different values of M (20 and 40) for \(N_{t}=4\), \(P_{t}=1\) W, \(BW=5\) MHz and \(D=2\) KB. This figure reveals that the achieved network throughput enhances with increasing N for all schemes. It also reveals that the network performance is significantly improved as \(P_I\) increases due to the more availability of channels, in which more SU transmissions can be served. The proposed scheme JCASM outperforms SMM, SDM and JCSASM in term of throughput by up to \(15.93\%\), \(159.71\%\) and \(102.56\%\), respectively.

Figure 6 plots network throughput for all schemes versus the data packet size for \(P_t=1\) W, \(M=20\), \(N_{t}=4\) and different values of \(P_{I}\). Figure 6 shows that the JCASM scheme outperforms SMM, SDM and RCSASM schemes in term of the throughput, irrespective of the data packet size. We note here that increasing the packet size increases the transmission time, resulting in decreasing the probability of successful transmission as reported in Fig. 6. Figures 7 and 8 respectively plot network throughput and MIMO efficiency for all schemes versus PU traffic loads with \(N=10\), \(N_{t}=4\), \(P_{t}=1\) W, \(BW=5\) MHz and \(D=2\) KB. Figure 7 indicates that network throughput improves as \(P_{I}\) increases. It also indicates that JCASM outperforms the other protocols in term of throughput and MIMO efficiency.

6 Conclusions

In this paper, we studied the problem of designing spectrum access protocol in MIMO-based CRNs. Specifically, we proposed a joint MIMO-mode selection and channel assignment for MIMO-based CRNs. The proposed protocol allows each SU source-destination pair to adapt its MIMO-mode and select the operating frequency channel based on the link-quality and channel availability conditions of the idle frequency channels such that the maximum number of data packets can be simultaneously sent while providing performance reliability guarantees. The proposed protocol improves network throughput and spectrum efficiency. We have conducted simulation experiments to verify the effectiveness of the proposed protocol under varying channel conditions and network parameters. The performance of the proposed protocol is compared with that of the SMM, SDM and RCSASM protocols. The results showed that our protocol significantly outperforms the other protocols in term of network throughput and MIMO efficiency.