Joint cooperative spectrum sensing and MAC protocol design for multi-channel cognitive radio networks

In this paper, we propose a semi-distributed cooperative spectrum sensing (SDCSS) and channel access framework for multi-channel cognitive radio networks (CRNs). In particular, we consider a SDCSS scheme where secondary users (SUs) perform sensing and exchange sensing outcomes with each other to locate spectrum holes. In addition, we devise the p-persistent CSMA-based cognitive medium access control (MAC) protocol integrating the SDCSS to enable efficient spectrum sharing among SUs. We then perform throughput analysis and develop an algorithm to determine the spectrum sensing and access parameters to maximize the throughput for a given allocation of channel sensing sets. Moreover, we consider the spectrum sensing set optimization problem for SUs to maximize the overall system throughput. We present both exhaustive search and low-complexity greedy algorithms to determine the sensing sets for SUs and analyze their complexity. We also show how our design and analysis can be extended to consider reporting errors. Finally, extensive numerical results are presented to demonstrate the significant performance gain of our optimized design framework with respect to non-optimized designs as well as the impacts of different protocol parameters on the throughput performance.


I. INTRODUCTION
It has been well recognized that cognitive radio is one of the most important technologies that would enable us to meet exponentially growing spectrum demand via fundamentally improving the utilization of our precious spectral resources [1]. Development of efficient spectrum sensing and access algorithms for cognitive radios are among the key research issues for successful deployment of this promising technology. There is indeed a growing literature on MAC protocol design and analysis for CRNs [2]- [12] (see [3] for a survey of recent works in this topic). In [2], it was shown that a significant throughput gain can be achieved by optimizing the sensing time under the single-SU setting. Another related effort along this line was conducted in [6] where sensing-period optimization and optimal channel-sequencing algorithms were proposed to efficiently discover spectrum holes and to minimize the exploration delay. In [7], a control-channel based MAC protocol was proposed for SUs to exploit white spaces in the cognitive ad hoc network. In particular, the authors of this paper developed both random and negotiation-based spectrum sensing schemes and performed throughput analysis for both saturation and non-saturation scenarios. There exists several other synchronous cognitive MAC protocols, which rely on a control channel for spectrum negotiation and access [8]- [12], [19]. In [4] and [5], we designed, analyzed, and optimized a window-based MAC protocol to achieve efficient tradeoff between sensing time and contention overhead. However, these works considered the conventional single-user-energy-detection-based spectrum sensing scheme, which would only work well if the signal to noise ratio (SNR) is sufficiently high. In addition, the MAC protocol in these works was the standard window-based CSMA MAC protocol, which is known to be outperformed by the p-persistent CSMA MAC protocol [30].
Optimal sensing and access design for CRNs were designed by using optimal stopping theory in [13]. In [14], a multi-channel MAC protocol was proposed considering the distance among users so that white spaces can be efficiently exploited while satisfactorily protecting primary users (PUs). Different power and spectrum allocation algorithms were devised to maximize the secondary network throughput in [15]- [17]. Optimization of spectrum sensing and access in which either cellular or TV bands can be employed was performed in [18]. These existing works either assumed perfect spectrum sensing or did not consider the cooperative spectrum sensing in their design and analysis.
Cooperative spectrum sensing has been proposed to improve the sensing performance where several SUs collaborate with each other to identify spectrum holes [20]- [27] and [37]. In a typical cooperative sensing scheme, each SU performs sensing independently and then sends its sensing result to a central controller (e.g., an access point (AP)). Here, various aggregation rules can be employed to combine these sensing results at the central controller to decide whether or not a particular spectrum band is available for secondary access. In [37], the authors studied the performance of hard decisions and soft decisions at a fusion center. They also investigated the impact of reporting channel errors on the cooperative sensing performance. Recently, the authors of [38] proposed a novel cooperative spectrum sensing scheme using hard decision combining considering feedback errors. In [23]- [26], optimization of cooperative sensing under the a-out-of-b rule was studied. In [25], the game-theoretic based method was proposed for cooperative spectrum sensing. In [27], the authors investigated the multi-channel scenario where the AP collects statistics from SUs to decide whether it should stop at the current time slot. In [39], [40], two different optimization problems for cooperative sensing were studied. The first one focuses on throughput maximization where the objective is the probability of false alarm. The second one attempts to perform interference management where the objective is the probability of detection. These existing works focused on designing and optimizing parameters for the cooperative spectrum sensing algorithm; however, they did not consider spectrum access issues. Furthermore, either the single channel setting or homogeneous network scenario (i.e., SUs experience the same channel condition and spectrum statistics for different channels) was assumed in these works.
In [28] and [29], the authors conducted design and analysis for cooperative spectrum sensing and MAC protocol design for cognitive radios where parallel spectrum sensing on different channels was assumed to be performed by multiple spectrum sensors at each SU. In CRNs with parallel-sensing, there is no need to optimize spectrum sensing sets for SUs. These works again considered the homogeneous network and each SU simply senses all channels. To the best of our knowledge, existing cooperative spectrum sensing schemes rely on a central controller to aggregate sensing results for white space detection (i.e., centralized design). In addition, homogeneous environments and parallel sensing have been commonly assumed in the literature, which would not be very realistic.
In this work, we consider a general SDCSS and access framework under the heterogeneous environment where June 18, 2014 DRAFT statistics of wireless channels, and spectrum holes can be arbitrary and there is no central controller to collect sensing results and make spectrum status decisions. In addition, we assume that each SU is equipped with only one spectrum sensor so that SUs have to sense channels sequentially. This assumption would be applied to real-world hardware-constrained cognitive radios. The considered SDCSS scheme requires SUs to perform sensing on their assigned sets of channels and then exchange spectrum sensing results with other SUs, which can be subject to errors. After the sensing and reporting phases, SUs employ the p-persistent CSMA MAC protocol [30] to access one available channel. In this MAC protocol, parameter p denotes the access probability to the chosen channel if the carrier sensing indicates an available channel (i.e., no other SUs transmit on the chosen channel). It is of interest to determine the access parameter p that can mitigate the collisions and hence enhance the system throughput [30].
Also, optimization of the spectrum sensing set for each SU (i.e., the set of channels sensed by the SU) is very critical to achieve good system throughput. Moreover, analysis and optimization of the joint spectrum sensing and access design become much more challenging in the heterogeneous environment, which, however, can significantly improve the system performance. Our current paper aims to resolve these challenges whose contributions can be summarized as follows: • We propose the distributed p-persistent CSMA protocol incorporating SDCSS for multi-channel CRNs. Then we analyze the saturation throughput and optimize the spectrum sensing time and access parameters to achieve maximum throughput for a given allocation of channel sensing sets. This analysis and optimization are performed in the general heterogeneous scenario assuming that spectrum sensing sets for SUs have been predetermined.
• We study the channel sensing set optimization (i.e., channel assignment) for throughput maximization and devise both exhaustive search and low-complexity greedy algorithms to solve the underlying NP-hard optimization problem. Specifically, an efficient solution for the considered problem would only allocate a subset of "good" SUs to sense each channel so that accurate sensing can be achieved with minimal sensing time. We also analyze the complexity of the brute-force search and the greedy algorithms.
• We extend the design and analysis to consider reporting errors as SUs exchange their spectrum sensing results.
In particular, we describe cooperative spectrum sensing model, derive the saturation throughput considering reporting errors. Moreover, we discuss how the proposed algorithms to optimize the sensing/access parameters and sensing sets can be adapted to consider reporting errors. Again, all the analysis is performed for the heterogeneous environment.
• We present numerical results to illustrate the impacts of different parameters on the secondary throughput performance and demonstrate the significant throughput gain due to the optimization of different parameters in the proposed framework.
The remaining of this paper is organized as follows. Section II describes system and sensing models. MAC protocol design, throughput analysis, and optimization are performed in Section III assuming no reporting errors.
Section IV provides further extension for the analysis and optimization considering reporting errors. Section V presents numerical results followed by concluding remarks in Section VI. The summary of key variables in the paper is given in Table IV.

II. SYSTEM MODEL AND SPECTRUM SENSING DESIGN
In this section, we describe the system model and spectrum sensing design for the multi-channel CRNs. Specifically, sensing performances in terms of detection and false alarm probabilities are presented.

A. System Model
We consider a network setting where N pairs of SUs opportunistically exploit white spaces in M channels for data transmission. For simplicity, we refer to pair i of SUs simply as SU i. We assume that each SU can exploit only one available channel for transmission (i.e., SUs are equipped with narrow-band radios). We will design a synchronized MAC protocol integrating SDCSS for channel access. We assume that each channel is either in the idle or busy state for each predetermined periodic interval, which is referred to as a cycle in this paper.
We further assume that each pair of SUs can overhear transmissions from other pairs of SUs (i.e., collocated networks). There are M PUs each of which may or may not use one corresponding channel for its data transmission in each cycle. In addition, it is assumed that transmission from any pair of SUs on a particular channel will affect the primary receiver which receives data on that channel. The network setting under investigation is shown in Fig. 1 where C i denotes channel i that belongs to PU i.

B. Semi-Distributed Cooperative Spectrum Sensing
We assume that each SU i is assigned a set of channels S i where it senses all channels in this assigned set at beginning of each cycle in a sequential manner (i.e., sense one-by-one). Optimization of such channel assignment will be considered in the next section. Upon completing the channel sensing, each SU i exchanges the sensing results (i.e., idle/busy status of all channels in S i ) with other SUs for further processing. Here, the channel status of each channel can be represented by one bit (e.g., 1 for idle and 0 for busy status). Upon collecting sensing results, each SU will decide idle/busy status for all channels. Then, SUs are assumed to employ a distributed MAC protocol to perform access resolution so that only the winning SUs on each channel are allowed to transmit data.
The detailed MAC protocol design will be presented later.
Let H 0 and H 1 denote the events that a particular PU is idle and active on its corresponding channel in any cycle, respectively. In addition, let P j (H 0 ) and P j (H 1 ) = 1 − P j (H 0 ) be the probabilities that channel j is available and not available for secondary access, respectively. We assume that SUs employ an energy detection sensing scheme and let f s be the sampling frequency used in the sensing period for all SUs. There are two important performance measures, which are used to quantify the sensing performance, namely detection and false alarm probabilities. In particular, a detection event occurs when a SU successfully senses a busy channel and false alarm represents the situation when a spectrum sensor returns a busy status for an idle channel (i.e., the transmission opportunity is overlooked).
Assume that transmission signals from PUs are complex-valued PSK signals while the noise at the SUs is independent and identically distributed circularly symmetric complex Gaussian CN (0, N 0 ) [2]. Then, the detection and false alarm probabilities experienced by SU i for the channel j can be calculated as [2] where i ∈ [1, N ] is the SU index, j ∈ [1, M ] is the channel index, ε ij is the detection threshold for the energy detector, γ ij is the signal-to-noise ratio (SNR) of the PU's signal at the SU, f s is the sampling frequency, N 0 is the noise power, τ ij is the sensing time of SU i on channel j, and Q (.) is defined as Q (x) = 1/ √ 2π ∞ x exp −t 2 /2 dt. We assume that a general cooperative sensing scheme, namely a-out-of-b rule, is employed by each SU to determine the idle/busy status of each channel based on reported sensing results from other SUs. Under this scheme, an SU will declare that a channel is busy if a or more messages out of b sensing messages report that the underlying channel is busy. The a-out-of-b rule covers different rules including OR, AND and majority rules as special cases. In particular, a = 1 corresponds to the OR rule; if a = b then it is the AND rule; and the majority rule has a = b/2 .
To illustrate the operations of the a-out-of-b rule, let us consider a simple example shown in Fig. 2. Here, we assume that 3 SUs collaborate to sense channel one with a = 2 and b = 3. After sensing channel one, all SUs exchange their sensing outcomes. SU3 receives the reporting results comprising two "1" and one "0" where "1" means that the channel is busy and "0" means channel is idle. Because the total number of "1s" is two which is larger than or equal to a = 2, SU3 outputs the "1" in the final sensing result, namely the channel is busy.
where u represents d or f as we calculate the probability of detection P j d or false alarm P j f , respectively;P is defined asP = 1 − P; Φ k l in (3) denotes a particular set with l SUs whose sensing outcomes suggest that channel j is busy given that this channel is indeed busy and idle as u represents d and f , respectively. Here, we generate all possible combinations of Φ k l where there are indeed C l bj combinations. Also, ε j = ε ij , τ j = τ ij , i ∈ S U j represent the set of detection thresholds and sensing times, respectively. For brevity, P j d ε j , τ j , a j and P j f ε j , τ j , a j are sometimes written as P j d and P j f in the following. Each SU exchanges the sensing results on its assigned channels with other SUs over a control channel, which is assumed to be always available (e.g., it is owned by the secondary network). To avoid collisions among these message exchanges, we assume that there are N reporting time slots for N SUs each of which has length equal to t r . Hence, the total time for exchanging sensing results among SUs is N t r . Note that the set of channels assigned to SU i for sensing, namely S i , is a subset of all channels and these sets can be different for different SUs. An example of channel assignment (i.e., channel sensing sets) is presented in Table I. In this table, SU 4 is not assigned any channel. Hence, this SU must rely on the sensing results of other SUs to determine the spectrum status.
Remark 1: In practice, the idle/busy status of primary system on a particular channel can be arbitrary and would not be synchronized with the operations of the SUs (i.e., the idle/busy status of any channel can change in the middle of a cycle). Hence, to strictly protect the PUs, SUs should continuously scan the spectrum of interest and evacuate from an exploited channel as soon as the PU changes from an idle to a busy state. However, this continuous spectrum monitoring would be very costly to implement since each SU should be equipped with two half-duplex transceivers to perform spectrum sensing and access at the same time. A more efficient protection method for PUs is to perform periodic spectrum sensing where SUs perform spectrum sensing at the beginning of each fixed-length interval and exploits available frequency bands for data transmission during the remaining time of the interval. In this paper, we assume that the idle/busy status of each channel remains the same in each cycle, which enables us to analyze the system throughput. In general, imposing this assumption would not sacrifice the accuracy of our throughput analysis if PUs maintain their idle/busy status for a sufficiently long time. This is actually the case for many practical scenarios such as in the TV bands, as reported by several recent studies [34]. In addition, our MAC protocol that is developed under this assumption would result in very few collisions with PUs because the cycle time is quite small compared to the typical intervals over which the active/idle statuses of PUs change. June

A. Cognitive MAC Protocol Design
We assume that time is divided into fixed-size cycles and it is assumed that SUs can perfectly synchronize with each other (i.e., there is no synchronization error) [11]. We propose a synchronized multi-channel MAC protocol for dynamic spectrum sharing as follows. The MAC protocol has four phases in each cycle as illustrated in Fig. 3. The beacon signal is sent on the control channel to achieve synchronization in the first phase [11] which is presented in the simple manner as follows. At the beginning of this phase, each SU senses the beacon signal from the volunteered synchronized SU which is the first SU sending the beacon. If an SU does not receive any beacon, it selects itself as the volunteered SU and sends out the beacon for synchronization. In the second phase, namely the sensing phase of length τ , all SUs simultaneously perform spectrum sensing on their assigned channels. Here, we have τ = max i τ i , where τ i = j∈Si τ ij is total sensing time of SU i, τ ij is the sensing time of SU i on channel j, and S i is the set of channels assigned for SU i. We assume that one separate channel is assigned as a control channel which is used to exchange sensing results for reporting as well as broadcast a beacon signal for synchronization. This control channel is assumed to be always available (e.g., it is owned by the secondary network). In the third phase, all SUs exchange their sensing results with each other via the control channel. Based on these received sensing results, each SU employs SDCSS techniques to decide the channel status of all channels and hence has a set of available channels. Then each SU transmitter will choose one available channel randomly (which is used for contention and data transmission) and inform it to the corresponding SU receiver via the control channel.
In the fourth phase, SUs will participate in contention and data transmission on their chosen channels. We assume that the length of each cycle is sufficiently large so that SUs can transmit several packets during this data contention and transmission phase. In particular, we employ the p-persistent CSMA principle [30] to devise our cognitive MAC protocol. In this protocol, each SU attempts to transmit on the chosen channel with a probability of p if it senses an available channel (i.e., no other SUs transmit data on its chosen channel). In case the SU decides not to transmit (with probability of 1 − p), it will sense the channel and attempt to transmit again in the next slot with probability p. If there is a collision, the SU will wait until the channel is available and attempt to transmit with probability p as before.
The standard 4-way handshake with RTS/CTS (request-to-send/clear-to-send) [31] will be employed to reserve a channel for data transmission. So the SU choosing to transmit on each available channel exchanges RTS/CTS messages before transmitting its actual data packet. An acknowledgment (ACK) from the receiver is transmitted to the transmitter for successful reception of any packet. The detailed timing diagram of this MAC protocol is presented in Fig. 3.

Remark 2:
For simplicity, we consider the fixed control channel in our design. However, extensions to consider dynamic control channel selections to avoid the congestion can be adopted in our proposed framework. More information on these designs can be found in [32].

B. Saturation Throughput Analysis
In this section, we analyze the saturation throughput of the proposed cognitive p-persistent CSMA protocol assuming that there are no reporting errors in exchanging the spectrum sensing results among SUs. Because there  are no reporting errors, all SUs acquire the same sensing results for each channel, which implies that they make the same final sensing decisions since the same a-out-b aggregation rule is employed for each channel. In the analysis, transmission time is counted in terms of contention time slot, which is assumed to be v seconds. Each data packet is assumed to be of fixed size of P S time slots. Detailed timing diagram of the p-persistent CSMA MAC protocol is illustrated in Fig. 3.
Any particular channel alternates between idle and busy periods from the viewpoint of the secondary system where each busy period corresponds to either a collision or a successful transmission. We use the term "epoch" to refer to the interval between two consecutive successful transmissions. This means an epoch starts with an idle period followed by some alternating collision periods and idle periods before ending with a successful transmission period. Note that an idle period corresponds to the interval between two consecutive packet transmissions (collisions or successful transmissions).
Recall that each SU chooses one available channel randomly for contention and transmission according to the final cooperative sensing outcome. We assume that upon choosing a channel, an SU keeps contending and accessing this channel until the end of the current cycle. In the case of missed detection (i.e., the PU is using the underlying channel but the sensing outcome suggests that the channel is available), there will be collisions between SUs and the PU. Therefore, RTS and CTS exchanges will not be successful in this case even though SUs cannot differentiate whether they collide with other SUs or the PU. Note that channel accesses of SUs due to missed detections do not contribute to the secondary system throughput.
To calculate the throughput for the secondary network, we have to consider all scenarios of idle/busy statuses of all channels and possible mis-detection and false alarm events for each particular scenario. Specifically, the normalized throughput per one channel achieved by our proposed MAC protocol, N T τ ij , {a j } , p, {S i } can be written as The quantity (4) represents the probability that there are k 0 available channels, which may or may not be correctly determined by the SDCSS. Here, Ψ l0 k0 denotes a particular set of k 0 available channels out of M channels whose index is l 0 . In addition, the quantity (5) describes the probability that the SDCSS indicates k 1 available channels whereas the remaining available channels are overlooked due to sensing errors where Θ l1 k1 denotes the l 1 -th set with k 1 available channels. For the quantity in (6), k 2 represents the number of channels that are not available but the sensing outcomes indicate that they are available (i.e., due to misdetection) where Ω l2 k2 denotes the l 2 -th set with k 2 mis-detected channels. The quantity in (6) describes the probability that the sensing outcomes due to SUs incorrectly indicates k 2 available channels. Finally, T ne p (τ, {a j } , p) in (7) denotes the conditional throughput for a particular realization of sensing outcomes corresponding to two sets Θ l1 k1 and Ω l2 k2 . Therefore, we have to derive the conditional throughput T ne p (τ, {a j } , p) to complete the throughput analysis, which is pursued in the following. Since each SU randomly chooses one available channel according to the SDCSS for contention and access, the number of SUs actually choosing a particular available channel is a random number.
In addition, the SDCSS suggests that channels in Θ l1 k1 ∪ Ω l2 k2 are available for secondary access but only channels in Θ l1 k1 are indeed available and can contribute to the secondary throughput (channels in Ω l2 k2 are misdetected by SUs). Let {n j } = {n 1 , n 2 , . . . , n ke } be the vector describing how SUs choose channels for access where k e = Θ l1 k1 ∪ Ω l2 k2 and n j denotes the number of SUs choosing channel j for access. Therefore, the conditional throughput T ne p (τ, {a j } , p) can be calculated as follows: where P ({n j }) in (8) represents the probability that the channel access vector {n j } is realized (each channel j where j ∈ Θ l1 k1 ∪ Ω l2 k2 is selected by n j SUs). The sum in (9) describes the normalized throughput per channel due to a particular realization of the access vector {n j }. Therefore, it is equal to the total throughput achieved by all available channels (in the set Θ l1 k1 ) divided by the total number of channels M . Here, T ne j2 (τ, {a j2 } , p |n = n j2 ) denotes the conditional throughput achieved by a particular channel j 2 when there are n j2 contending on this channel and I (n j2 > 0) represents the indicator function, which is equal to zero if n j2 = 0 (i.e., no SU chooses channel j 2 ) and equal to one, otherwise. Note that the access of channels in the set Ω l2 k2 due to missed detection does not contribute to the system throughput, which explains why we do not include these channels in the sum in (9).
Therefore, we need to drive P ({n j }) and T ne j2 (τ, {a j2 } , p |n = n j2 ) to determine the normalized throughput. Note that the sensing outcome due to the SDCSS is the same for all SUs and each SU chooses one channel in the set of k e = Θ l1 k1 ∪ Ω l2 k2 channels randomly. Therefore, the probability P ({n j }) can be calculated as follows: where The calculation of the conditional throughput T ne j2 (τ, {a j2 } , p |n = n j2 ) must account for the overhead due to spectrum sensing and exchanges of sensing results among SUs. Let us define T R = N t r where t r is the report time from each SU to all the other SUs; τ = max i τ i is the total the sensing time;T j2 cont is the average total time due to contention, collisions, and RTS/CTS exchanges before a successful packet transmission; T S is the total time for transmissions of data packet, ACK control packet, and overhead between these data and ACK packets. Then, the conditional throughput T ne j2 (τ, {a j2 } , p |n = n j2 ) can be written as where . denotes the floor function and recall that T is the duration of a cycle. Note that T −τ −T R T j 2 cont +T S denotes the average number of successfully transmitted packets in one particular cycle excluding the sensing and reporting phases. Here, we omit the length of the synchronization phase, which is assumed to be negligible.
To calculateT j2 cont , we define some further parameters as follows. Let denote T C as the duration of the collision; T S is the required time for successful RTS/CTS transmission. These quantities can be calculated under the 4-way handshake mechanism as [30] where P S is the packet size, ACK is the length of an ACK packet, SIF S is the length of a short interframe space, DIF S is the length of a distributed interframe space, P D is the propagation delay where P D is usually very small compared to the slot size v.
Let T i,j2 I be the i-th idle duration between two consecutive RTS/CTS transmissions (they can be collisions or successes) on a particular channel j 2 . Then, T i,j2 I can be calculated based on its probability mass function (pmf), which is derived in the following. Recall that all quantities are defined in terms of number of time slots. Now, suppose there are n j2 SUs choosing channel j 2 , let P j2 S , P j2 C and P j2 I be the probabilities of a generic slot corresponding to a successful transmission, a collision and an idle slot, respectively. These quantities are calculated as follows where p is the transmission probability of an SU in a generic slot. Note thatT j2 cont is a random variable (RV) consisting of several intervals corresponding to idle periods, collisions, and one successful RTS/CTS transmission.
Hence this quantity for channel j 2 can be written as where N j2 c is the number of collisions before the first successful RTS/CTS exchange. Hence it is a geometric RV with parameter 1 − P j2 C /P j2 I (whereP j2 I = 1 − P j2 I ). Its pmf can be expressed as Also, T i,j2 I represents the number of consecutive idle slots, which is also a geometric RV with parameter 1 − P j2 I with the following pmf Therefore,T j2 cont can be written as follows [30]: whereT j2 I andN j2 c can be calculated asT These expressions are obtained by using the pmfs of the corresponding RVs given in (18) and (19), respectively [30].

C. Semi-Distributed Cooperative Spectrum Sensing and p-persistent CSMA Access Optimization
We determine optimal sensing and access parameters to maximize the normalized throughput for our proposed SDCSS and p-persistent CSMA protocol. Here, we assume that the sensing sets S U j for different channels j have been given. Optimization of these sensing sets is considered in the next section. Note that the optimization performed in this paper is different from those in [4], [5] because the MAC protocols and sensing algorithms in the current and previous works are different. The normalized throughput optimization problem can be presented as where P j d is the detection probability for channel j; P j d denotes the target detection probability; ε j and τ j represent the vectors of detection thresholds and sensing times on channel j, respectively; a j describes the parameter of the a j -out-of-b j aggregation rule for SDCSS on channel j with b j = |S U j | where recall that S U j is the set of SUs sensing channel j. The optimization variables for this problem are sensing times τ ij and parameters a j of the sensing aggregation rule, and transmission probability p of the MAC protocol.
It was shown in [2] that the constraints on detection probability should be met with equality at optimality under the energy detection scheme and single-user scenario. This is quite intuitive since lower detection probability implies smaller sensing time, which leads to higher throughput. This is still the case for our considered multi-user scenario as can be verified by the conditional throughput formula (12). Therefore, we can set P j d ε j , τ j , a j = P j d to solve the optimization problem (23)- (25).
However, P j d ε j , τ j , a j is a function of P ij d for all SUs i ∈ S U j since we employ the SDCSS scheme in this paper. Therefore, to simplify the optimization we set P ij d = P j * d for all SUs i ∈ S U j (i.e., all SUs are required to achieve the same detection probability for each assigned channel). Then, we can calculate P j * d by using (3) for a given value of P j d . In addition, we can determine P ij f with the obtained value of P j * d by using (2), which is the function of sensing time τ ij .
Even after these steps, the optimization problem (23)-(25) is still very difficult to solve. In fact, it is the mixed integer non-linear problem since the optimization variables a j take integer values while other variables take real values. Moreover, even the corresponding optimization problem achieved by relaxing a j to real variables is a difficult and non-convex problem to solve since the throughput in the objective function (23) given in (7) is a complicated and non-linear function of optimization variables.
Given this observation, we have devised Alg. 1 to determine the solution for this optimization problem based on the coordinate-descent searching techniques. The idea is that at one time we fix all variables while searching for the optimal value of the single variable. This operation is performed sequentially for all variables until convergence is achieved. Since the normalized throughput given in (7) is quite insensitive with respect to p, we attempt to determine the optimized values for τ ij , {ā j } first for different values of p (steps 3-11 in Alg. 1) before searching the optimized value of p in the outer loop (step 12 in Alg. 1). This algorithm converges to the fixed point solution since we improve the objective value over iterations (steps [4][5][6][7][8][9]. This optimization problem is non-convex in general.
However, we can obtain its optimal solution easily by using the bisection search technique since the throughput June 18, 2014 DRAFT function is quite smooth [35]. For some specific cases such as in homogeneous systems [4], [23], [26], the underlying optimization problem is convex, which can be solved efficiently by using standard convex optimization algorithms.

D. Optimization of Channel Sensing Sets
For the CRNs considered in the current work, the network throughput strongly depends on the availability of different channels, the spectrum sensing time, and the sensing quality. Specifically, long sensing time τ reduces the communications time on the available channels in each cycle of length T , which, therefore, decreases the network throughput. In addition, poor spectrum sensing performance can also degrade the network throughput since SUs can either overlook available channels (due to false alarm) or access busy channels (due to missed detection). Thus, the total throughput of SUs can be enhanced by optimizing the access parameter p and sensing design, namely optimizing the assignments of channels to SUs (i.e., optimizing the sensing sets for SUs) and the corresponding sensing times.
Recall that we have assumed the channel sensing sets for SUs are fixed to optimize the sensing and access parameters in the previous section. In this section, we attempt to determine an efficient channel assignment solution (i.e., channel sensing sets) by solving the following problem Note that the optimal values of a j can only be determined if we have fixed the channel sensing set S U j for each channel j. This is because we aim to optimize the a j -out-of-b j aggregation rule of the SDCSS scheme for each channel j where b j = |S U j |. Since a j takes integer values and optimization of channel sensing sets S U j also involves integer variables where we have to determine the set of SUs S U j assigned to sense each channel j. Therefore, the optimization problem (26) is the non-linear integer program, which is NP-hard [36]. In the following, we present both brute-force search algorithm and low-complexity greedy algorithm to solve this problem.

1) Brute-force Search Algorithm:
Due to the non-linear and combinatorial structure of the formulated channel assignment problem, it would be impossible to explicitly determine the optimal closed form solution for problem (26). However, we can employ the brute-force search (i.e., the exhaustive search) to determine the best channel assignment. Specifically, we can enumerate all possible channel assignment solutions. Then, for each channel assignment solution (i.e., sets S U j for all channels j), we employ Alg. 1 to determine the best spectrum sensing and accessing parameters τ ij , {a j } , p and calculate the corresponding total throughput by using the throughput analytical model in III-A. The channel assignment achieving the maximum throughput together with its best spectrum sensing and accessing parameters provides the best solution for the optimization problem (26).
2) Low-Complexity Greedy Algorithm: We propose another low-complexity and greedy algorithm to find the solution for this problem, which is described in Alg. 2. In this algorithm, we perform the initial channel assignment in step 1, which works as follows. We first temporarily assign all channels for each SU. Then, we run Alg. 1 to find the optimal sensing times for this temporary assignment, i.e., to determine τ ij , which is used to assign one SU to each channel so that the total sensing time is minimized. In particular, the initial channel assignments are set according to the solution of the optimization problem (27)-(28) presented in the following.
June 18, 2014 DRAFT where x ij are binary variables representing the channel assignments where x ij = 1 if channel j is allocated for SU i (i.e., j ∈ S i ) and x ij = 0, otherwise. We employ the well-known Hungarian algorithm [33] to solve this problem.
Then, we perform further channel assignments in steps 2-18 of Alg. 2. Specifically, to determine one channel assignment in each iteration, we temporarily assign one channel to the sensing set S i of each SU i and calculate the increase of throughput for such channel assignment ∆T ij with the optimized channel and access parameters obtained by using Alg. 1 (step 6). We then search for the best channel assignment (ī,j) = argmax i,j∈S\Si ∆T ij and actually perform the corresponding channel assignment if ∆Tīj > δ (steps 7-10).
In Alg. 2, δ > 0 is a small number which is used in the stopping condition for this algorithm (step 11). In particular, if the increase of the normalized throughput due to the new channel assignment is negligible in any iteration (i.e., the increase of throughput is less than δ) then the algorithm terminates. Therefore, we can choose δ to efficiently balance the achievable throughput performance with the algorithm running time. In the numerical studies, we will choose δ equal to 10 −3 × N T c .
The convergence of Alg. 2 can be explained as follows. Over the course of this algorithm, we attempt to increase the throughput by performing additional channel assignments. It can be observed that we can increase the throughput by allowing i) SUs to achieve better sensing performance or ii) SUs to reduce their sensing times. However, these two goals could not be achieved concurrently due to the following reason. If SUs wish to improve the sensing performance via cooperative spectrum sensing, we should assign more channels to each of them. However, SUs would spend longer time sensing the assigned channels with the larger sensing sets, which would ultimately decrease the throughput. Therefore, there would exist a point when we cannot improve the throughput by performing further channel assignments, which implies that Alg. 2 must converge.
There is a key difference in the current work and [5] regarding the sensing sets of SUs. Specifically, the sets of assigned channels are used for spectrum sensing and access in [5]. However, the sets of assigned channels are used for spectrum sensing only in the current work. In addition, the sets of available channels for possible access at SUs are determined based on the reporting results, which may suffer from communications errors. We will investigate the impact of reporting errors on the throughput performance in Section IV.

E. Complexity Analysis
In this section, we analyze the complexity of the proposed brute-force search and low-complexity greedy algorithms.

1) Brute-force Search Algorithm:
To determine the complexity of the brute-force search algorithm, we need to calculate the number of possible channel assignments. Since each channel can be either allocated or not allocated to any SU, the number of channel assignments is 2 M N . Therefore, the complexity of the brute-force search algorithm is O 2 M N . Note that to obtain the best channel assignment solution, we must run Alg. 1 to find the best sensing and access parameters for each potential channel assignment, calculate the throughput achieved by such optimized configuration, and compare all the throughput values to determine the best solution.
2) Low-complexity Greedy Algorithm: In step 1, we run Hungarian algorithm to perform the first channel assignment for each SU i. The complexity of this operation can be upper-bounded by O M 2 N (see [33] for more details). In each iteration in the assignment loop (i.e., steps 2-18), each SU i needs to calculate the increases of throughput for different potential channel assignments. Then, we select the assignment resulting in maximum increase of throughput. Hence, the complexity involved in these tasks is upper-bounded by M N since there are at most M channels to assign for each of N SUs. Also, the number of assignments to perform is upper bounded June 18, 2014 DRAFT Algorithm 2 GREEDY ALGORITHM 1: Initial channel assignment is obtained as follows: • Temporarily perform following channel assignments S i = S, i ∈ [1, N ]. Then, run Alg. 1 to obtain optimal sensing and access parameters τ ij , {ā j } ,p .
• Employ Hungarian algorithm [33] to allocate each channel to exactly one SU to minimize the total cost where the cost of assigning channel j to SU i isτ ij (i.e., to solve the optimization problem (27)- (28)).
• The result of this Hungarian algorithm is used to build the initial channel assignment sets {S i } for different SU i. Optimize sensing and access parameters for current channel assignment solution {S i } by using Alg. 1.

5:
Calculate the normalized throughput N T c = N T τ ij , {ā j } ,p, {S i } for the optimized sensing and access parameters. 6: Each SU i calculates the increase of throughput if it is assigned one further potential channel j as Find the "best" assignment (ī,j) as (ī,j) = argmax i,j∈S\Si ∆T ij . 8: if ∆Tīj > δ then 9: Assign channelj to SUī: S i = S i ∪ j.   Table II in Section V demonstrates that our proposed greedy algorithms achieve the throughput performance very close to that achieved by the brute-force search algorithms albeit they require much lower computational complexity.

F. Practical Implementation Issues
In our design, the spectrum sensing and access operation is distributed, however, channel assignment is performed in centralized manner. In fact, one SU is pre-assigned as a cluster head, which conducts channel assignment for SUs (i.e., determine channel sensing sets for SUs). For fairness, we can assign the SU as the cluster head in the round-robin manner. To perform channel assignment, the cluster head is responsible for estimating P j (H 0 ). Upon determining the channel sensing sets for all SUs, the cluster head will forward the results to the SUs. Then based June 18, 2014 DRAFT on these pre-determined sensing sets, SUs will perform spectrum sensing and run the underlying MAC protocol to access the channel distributively in each cycle. It is worth to emphasize that the sensing sets for SUs are only determined once the probabilities P j (H 0 ) change, which would be quite infrequent in practice (e.g., in the time scale of hours or even days). Therefore, the estimation cost for P j (H 0 ) and all involved communication overhead due to sensing set optimization operations would be acceptable.

IV. CONSIDERATION OF REPORTING ERRORS
In this section, we consider the impact of reporting errors on the performance of the proposed joint SDCSS and access design. Note that each SU relies on the channel sensing results received from other SUs in S U j to determine the sensing outcome for each channel j. If there are reporting errors then different SUs may receive different channel sensing results, which lead to different final channel sensing decisions. The throughput analysis, therefore, must account for all possible error patterns that can occur in reporting channel sensing results. We will present the cooperative sensing model and throughput analysis considering reporting errors in the following.

A. Cooperative Sensing with Reporting Errors
In the proposed SDCSS scheme, each SU i 1 collects sensing results for each channel j from all SUs i 2 ∈ S U j who are assigned to sense channel j. In this section, we consider the case where there can be errors in reporting the channel sensing results among SUs. We assume that the channel sensing result for each channel transmitted by one SU to other SUs is represented by a single bit whose 1/0 values indicates that the underlying channel is available and busy, respectively. In general, the error probability of the reporting message between SUs i 1 and i 2 depends on the employed modulation scheme and the signal to noise ratio (SNR) of the communication channel between the two SUs. We denote the bit error probability of transmitting the reporting bit from SU i 2 to SU i 1 as P i1i2 e . In addition, we assume that the error processes of different reporting bits for different SUs are independent. Then, the probability of detection and probability of false alarm experienced by SU i 1 on channel j with the sensing result received from SU i 2 can be written as where u ≡ d and u ≡ f represents probabilities of detection and false alarm, respectively. Note that we have Again, u ≡ d and u ≡ f represent the corresponding probabilities of detection or false alarm, respectively. Recall that S U j represents the set of SUs who are assigned to sense channel j; thus, we have b j = |S U j | and 1 ≤ a j ≤ b j = S U j . For brevity,P ij u ε j , τ j , a j is written asP ij u in the following.

B. Throughput Analysis Considering Reporting Errors
In order to analyze the saturation throughput for the case there are reporting errors, we have to consider all possible scenarios due to the idle/busy status of all channels, sensing outcomes given by different SUs, and error/success events in the sensing result exchange processes. For one such combined scenario we have to derive the total conditional throughput due to all available channels. Illustration of different involved sets for one combined scenario of following analysis is presented in Fig. 4. In particular, the normalized throughput considering reporting errors can be expressed as follows: where T re p (τ, {a j } , p) denotes the conditional throughput for one combined scenario discussed above. In (31), we generate all possible sets where k 0 channels are available for secondary access (i.e., they are not used by PUs) while the remaining channels are busy. There are C k0 M such sets and Ψ l0 k0 represents one particular set of available channels. The first product term in (31) denotes the probability that all channels in Ψ l0 k0 are available while the second product term describes the probability that the remaining channels are busy.
Then, for one particular channel j 3 ∈ Ψ l0 k0 , we generate all possible sets with k 1 SUs in S U j3 (S U j3 is the set of SUs who are assigned to sense channel j 3 ) whose sensing results indicate that channel j 3 is available in (32). There are C k1 |S U j 3 | sets and Θ l1 k1,j3 denotes one such typical set. Again, the first product term in (32) is the probability that the sensing outcomes of all SUs in Θ l1 k1,j3 indicate that channel j 3 is available; and the second term is the probability that the sensing outcomes of all SUs in the remaining set S U j3 \Θ l1 k1,j3 indicate that channel j 3 is not available. In (33), for one specific channel j 4 ∈ S\Ψ l0 k0 , we generate all possible sets with k 2 SUs in S U j4 whose sensing outcomes indicate that channel j 4 is available due to missed detection. There are C k2 |S U j 4 | such sets and Ω l2 k2,j4 is a typical one. Similarly, the first product term in (33) is the probability that the sensing outcomes of all SUs in Ω l2 k2,j4 indicate that channel j 4 is available; and the second term is the probability that the sensing outcomes of all SUs in the remaining set S U j4 \Ω l2 k2,j4 indicate that channel j 4 is not available. Recall that for any specific channel j, each SU in S U (the set of all SUs) receives sensing results from a group of SUs who are assigned to sense the channel j. In (34), we consider all possible error events due to message exchanges from SUs in Θ l1 k1,j3 . The first group denoted as Φ l3 k3,j3 includes SUs in Θ l1 k1,j3 has its sensing results received at SU i 4 ∈ S U indicating that channel j 3 available (no reporting error) while the second group of SUs Θ l1 k1,j3 \Φ l3 k3,j3 has the sensing results received at SU i 4 ∈ S U suggesting that channel j 3 is not available due to reporting errors. For each of these two groups, we generate all possible sets of SUs of different sizes and capture the corresponding probabilities. In particular, we generate all sets with k 3 SUs i 5 ∈ Φ l3 k3,j3 where SU i 4 collects correct sensing information from SUs i 5 (i.e., there is no error on the channel between i 4 and i 5 ). Similar expression is presented for the second group in which we generate all sets of k 4 SUs i 6 ∈ Θ l1 k1,j3 \Φ l3 k3,j3 where SU i 4 collects wrong sensing information from each SU i 6 (i.e., there is an error on the channel between i 4 and i 6 ). Similarly, we present the possible error events due to exchanges of sensing results from the set of SUs S U j3 \Θ l1 k1,j3 in (35). In (36) and (37), we consider all possible error events due to sensing result exchanges for channel j 4 ∈ S\Ψ l0 k0 . Here, each SU in S U collects sensing result information from two sets of SUs in Ω l2 k2,j4 and S U j4 \Ω l2 k2,j4 , respectively. The first set includes SUs in Ω l2 k2,j4 whose sensing results indicate that channel j 4 available due to missed detection, while the second set includes SUs in S U j4 \Ω l2 k2,j4 whose sensing results indicate that channel j 4 is not available. Possible outcomes for the message exchanges due to the first set Ω l2 k2,j4 are captured in (36) where we present the outcomes for two groups of this first set. For group one, we generate all sets with k 5 SUs i 10 ∈ Ξ l5 k5,j4 where SU i 9 collects correct sensing information from SUs i 10 (i.e., there is no error on the channel between i 9 and i 10 ). For group two, we consider the remaining sets of SUs in Ω l2 k2,j4 \Ξ l5 k5,j4 where SU i 9 receives wrong sensing information from each SU i 11 (i.e., there is an error on the channel between i 9 and i 11 ). Similar partitioning of the set S U j4 \Ω l2 k2,j4 into two groups Γ l6 k6,j4 and S U j4 \Ω l2 k2,j4 \Γ l6 k6,j4 with the corresponding message reporting error patterns is captured in (37).
For each combined scenario whose probability is presented above, each SU i has collected sensing result information for each channel, which is the sensing results obtained by itself or received from other SUs. Then, each SU i determines the idle/busy status of each channel j by applying the a j -out-of-b j rule on the collected sensing information. Let S a i be set of channels, whose status is "available" as being suggested by the a j -out-of-b j rule at SU i. According to our design MAC protocol, SU i will randomly select one channel in the set S a i to perform contention and transmit its data. In order to obtain the conditional throughput T re p (τ, {a j } , p) for one particular combined scenario, we have to reveal the contention operation on each actually available channel, which is presented in the following.
Let S a i = S a 1,i ∪ S a 2,i where channels in S a 1,i are actually available and channels in S a 2,i are not available but the SDCSS policy suggests the opposite due to sensing and/or reporting errors. Moreover, letŜ a 1 = i∈S U S a 1,i be the set of actually available channels, which are detected by all SUs by using the SDCSS policy. Similarly, we definê S a 2 = i∈S U S a 2,i as the set of channels indicated as available by some SUs due to errors. Let k i e = |S a i | be the number of available channels at SU i; then SU i chooses one channel in S a i to transmit data with probability 1/k i e . In addition, letŜ a =Ŝ a 1 ∪Ŝ a 2 be set of all "available" channels each of which is determined as being available by at least one SU and let k max = Ŝ a be the size of this set.
To calculate the throughput for each channel j, let Ψ a j be the set of SUs whose SDCSS outcomes indicate that channel j is available and let Ψ a = j∈Ŝ a Ψ a j be the set of SUs whose SDCSS outcomes indicate that at least one channel in the assigned spectrum sensing set is available. In addition, let us define N j = Ψ a j and N max = |Ψ a |, which describe the sizes of these sets, respectively. It is noted that N max ≤ N due to the following reason. In any specific combination that is generated in Eqs. (31)- (37), there can be some SUs, denoted as {i}, whose sensing outcomes indicate that all channels in the assigned spectrum sensing sets are not available (i.e., not available for access). Therefore, we have Ψ a = S U \ {i}, which implies N max ≤ N where N = S U . Moreover, we assume that channels inŜ a are indexed by 1, 2, . . . , k max . Similar to the throughput analysis without reporting errors, we consider all possible sets {n j } = {n 1 , n 2 , . . . , n kmax } where n j is the number of SUs choosing channel j for access. June 18, 2014 DRAFT Then, we can calculate the conditional throughput as follows: Here P ({N j1 , n j1 }) is the probability that each channel j 1 (j 1 ∈Ŝ a ) is selected by n j1 SUs for j 1 = 1, 2, . . . , k max .
This probability can be calculated as where  describes the number of ways to realize the access vector {n j } for k max channels, which can be obtained by using the enumeration technique as follows. For a particular way that the specific set of n 1 SUs S n1 1 choose channel one (there are C n1 N1 such ways), we can express the set of remaining SUs that can choose channel two as Ψ a (2) = Ψ a 2 \(S n1 1 ∩ Ψ a 2 ). We then consider all possible ways that n 2 SUs in the set Ψ a (2) choose channel two and we denote this set of SUs as S n2 2 (there are C n2 N2 such ways where N 2 = |Ψ a (2) |). Similarly, we can express the set of SUs that can choose channel three as Ψ a and consider all possible ways that n 3 SUs in the set Ψ a (3) can choose channel three, and so on. This process is continued until n kmax SUs choose channel k max . Therefore, the number of ways to realize the access vector {n j } can be determined by counting all possible cases in the enumeration process.
The product term in (41) is due to the fact that each SU i chooses one available with probability 1/k i e . The conditional throughput T re j2 (τ, {a j2 } , p |n = n j2 ) is calculated by using the same expression (12) given in Section III. In addition, only actually available channel j 2 ∈Ŝ a 1 can contribute the total throughput, which explains the throughput sum in (40).

C. Design Optimization with Reporting Errors
The optimization of channel sensing/access parameters as well as channel sensing sets can be conducted in the same manner with that in Section III. However, we have to utilize the new throughput analytical model presented in Section IV-B in this case. Specifically, Algs. 1 and 2 can still be used to determine the optimized sensing/access parameters and channel sensing sets, respectively. Nonetheless, we need to use the new channel sensing model capturing reporting errors in Section IV-A in these algorithms. In particular, from the equality constraint on the detection probability, i.e., P j d ε j , τ j , a j = P j d , we have to use (29) and (30)   and t r = 80µs. The results presented in all figures except Fig. 11 correspond to the case where there is no reporting error.
To investigate the efficacy of our proposed low-complexity channel assignment algorithm (Alg. 2), we compare the throughput performance achieved by the optimal brute-force search and greedy channel assignment algorithm in Table II. In particular, we show normalized throughput N T versus probabilities P j (H 0 ) for these two algorithms and the relative gap between them. Here, the probabilities P j (H 0 ) for different channels j are chosen to be the same The results in this table confirms that the throughput gaps between our greedy algorithm and the brute-force optimal search algorithm are quite small, which are less that 1% for all except the case two presented in this table. These results confirm that our proposed greedy algorithm works well for small systems (i.e., small M and N). In the following, we investigate the performance of our proposed algorithms for larger systems.
To investigate the performance of our proposed algorithm for a typical system, we consider the network setting with N = 10 and M = 4. We divide SUs into 2 groups where the received SNRs at SUs due to the transmission from PU i is equal to γ ij 1,0 = −15dB and γ ij 2,0 = −10dB (or their shifted values described later) for the two groups, respectively. Again, to describe the SNR of different SUs and channels, we use {i, j} to denote a combination of channel j and SU i who senses this channel. The combinations of the first group corresponding to     Alg. 1. This figure shows that channel sensing and access parameters can strongly impact the throughput of the secondary network, which indicates the need to optimize them. This figure shows that the optimal values of p and τ 11 are around τ 11 ,p = (0.0054s, 0.1026) to achieve the maximum normalized throughput of N T p = 0.7104.
It can be observed that normalized throughput N T p is less sensitive to transmission probability p while it varies more significantly as the sensing time τ 11 deviates from the optimal value. In fact, there can be multiple available channels which each SU can choose from. Therefore, the contention level on each available channel would not be very intense for most values of p. This explains why the throughput is not very sensitive to the access parameter p.
In Fig. 7, we compare the normalized throughput of the secondary network as each SU employs four different aggregation rules, namely AND, OR, majority, and the optimal a-out-of-b rules. The four throughput curves in this figure represent the optimized normalized throughput values achieved by using Algs. 1 and 2. For the OR, AND, majority rules, we do not need to find optimized a j parameters for different channels j in Alg. 1. Alternatively, a j = 1, a j = b j and a j = b/2 correspond to the OR, AND and majority rules, respectively. It can be seen that the optimal a-out-of-b rule achieves the highest throughput among the considered rules. Moreover, the performance gaps between the optimal a-out-of-b rule and other rule tends to be larger for smaller SNR values.
In Fig. 8, we compare the throughput performance as the sensing times are optimized by using Alg. 1 and they are fixed at different fractions of the cycle time in Alg. 1. For fair comparison, the optimized a-out-of-b rules are used in both schemes with optimized and non-optimized sensing times. For the non-optimized scheme, we employ Alg. 2 for channel assignment; however, we do not optimize the sensing times in Alg. 1. Alternatively, τ ij is chosen from the following values: 1%T , 2%T , 5%T and 10%T where T is the cycle time. Furthermore, for this nonoptimized scheme, we still find an optimized value ofā j for each channel j (corresponding to the sensing phase) and the optimal value ofp (corresponding to the access phase) in Alg. 1. This figure confirms that the optimized design achieves the largest throughput. Also, small sensing times can achieve good throughput performance at the high-SNR regime but result in poor performance if the SNR values are low. In contrast, too large sensing times (e.g., equal 10%T ) may become inefficient if the SNR values are sufficiently large. These observations again illustrate the importance of optimizing the channel sensing and access parameters.
We compare the normalized throughput under our optimized design and the round-robin (RR) channel assignment strategies in Fig. 9. For RR channel assignment schemes, we first allocate channels for SUs as described in Table III (i.e., we consider three different RR channel assignments). In the considered round-robin channel assignment   schemes, we assign at most 1, 2 and 3 channels for each SU corresponding to cases 1, 2 and 3 as shown in Table III. In particular, we sequentially assign channels with increasing indices for the next SUs until exhausting (we then repeat this procedure for the following SU). Then, we only employ Alg. 1 to optimize the sensing and access parameters for these RR channel assignments. Fig. 9 shows that the optimized design achieves much higher throughput than those due to RR channel assignments. These results confirm that channel assignments for cognitive radios play a very important role in maximizing the spectrum utilization for CRNs. In particular, if it would be sufficient to achieve good sensing and throughput performance if we assign a small number of nearby SUs to sense any particular channel instead of requiring all SUs to sense the channel. This is because "bad SUs" may not contribute to improve the sensing performance but result in more sensing overhead, which ultimately decreases the throughput of the secondary network.
In Fig. 10, we consider the impact of PUs' activities on throughput performance of the secondary network. In particular, we vary the probabilities of having idle channels for secondary spectrum access (P j (H 0 )) in the range of [0. 1,1]. For larger values of P j (H 0 ), there are more opportunities for SUs to find spectrum holes to transmit data, which results in higher throughput and vice versa. Moreover, this figure shows that the normalized throughput increases almost linearly with P j (H 0 ). Also as the ∆γ increases (i.e., higher SNR), the throughput performance can be improved significantly. However, the improvement becomes negligible if the SNR values are sufficiently large (for ∆γ in [−6, −4]). This is because for large SNR values, the required sensing time is sufficiently small, therefore, further increase of SNR does not reduce the sensing time much to improve the normalized throughput. We assume that the reporting errors between every pair of 2 SUs are the same, which is denoted as P e . In Fig. 11, we show the achieved throughput as P e = 0%, P e = 1% and P e = 5% under optimized design. We can see that when P e increases, the normalized throughput decreases quite significantly if the SNR is sufficiently low. However, in the high-SNR regime, the throughput performance is less sensitive to the reporting errors.

VI. CONCLUSION
We have proposed a general analytical and optimization framework for SDCSS and access design in multichannel CRNs. In particular, we have proposed the p-persistent CSMA MAC protocol integrating the SDCSS mechanism. Then, we have analyzed the throughput performance of the proposed design and have developed an efficient algorithm to optimize its sensing and access parameters. Moreover, we have presented both optimal brute-force search and low-complexity algorithms to determine efficient channel sensing sets and have analyzed their complexity. We have also extended the framework to consider reporting errors in exchanging sensing results among SUs. Finally, we have evaluated the impacts of different parameters on the throughput performance of the proposed design and illustrated the significant performance gap between the optimized and non-optimized designs.
Specifically, it has been confirmed that optimized sensing and access parameters as well as channel assignments can achieve considerably better throughput performance than that due to the non-optimized design. In the future, we will extend SDCSS and MAC protocol design for the multihop CRNs.