You are on page 1of 15

JID: COMCOM

ARTICLE IN PRESS [m5G;October 6, 2015;12:4]

Computer Communications 000 (2015) 1–15

Contents lists available at ScienceDirect

Computer Communications
journal homepage: www.elsevier.com/locate/comcom

CogMAC+: A decentralized MAC protocol for opportunistic spectrum


access in cognitive wireless networks
Peng Wang∗, Junaid Ansari, Marina Petrova, Petri Mähönen
Institute for Networked Systems, RWTH Aachen University, Kackertstrasse 9, D-52072 Aachen, Germany

a r t i c l e i n f o a b s t r a c t

Article history: The rapidly increasing number of wireless applications are making the wireless spectrum scarcity a serious
Received 20 March 2015 problem. Cognitive MAC protocols have emerged as a promising solution to address this issue by opportunis-
Revised 14 July 2015
tically allowing secondary users to utilize unused licensed bands, and enabling spectrum co-existence of
Accepted 14 September 2015
multiple secondary networks. In this paper, we present CogMAC+, a decentralized multichannel MAC pro-
Available online xxx
tocol, which is based on multichannel preamble reservation scheme and CSMA principle. It achieves parallel
Keywords: transmissions for multiple secondary users by enabling them to estimate the duration of channel occupancy
Cognitive radios of each other. In order to achieve the optimal sensing schedule, it allows secondary users to dynamically ac-
MAC cess channels according to the channel occupancy of primary users and other secondary networks. Moreover,
Decentralized CogMAC+ uses an adaptive energy detection scheme to dynamically set the energy detection threshold ac-
USRP2 SDR platform cording to the carrier sensing status, the false positive detection ratio and the estimated noise level. CogMAC+
Experimentation
has been verified and evaluated empirically in a software defined radio testbed with realistic spectrum occu-
pancies of licensed users. Our experimental performance evaluation indicates that CogMAC+ is able to carry
out reliable parallel communication in multiple channels even in a severely interfered environment.
© 2015 Elsevier B.V. All rights reserved.

1. Introduction in [6]. In this paper we upgrade MPR scheme to a new Multichannel


Multiframe Transmission (MMT) scheme and extend such approach
Cognitive wireless networks are an attractive solution to increase by introducing Multichannel Virtual Carrier Sensing (MVCS) scheme
spectrum utilization efficiency and enable cooperation between dif- with strict time controls, and call this new MAC scheme as CogMAC+.
ferent user groups. One of the basic tenets in this concept is that The approach significantly improves performance and allows better
the users are divided into primary users (PU) and secondary users control on channel access and energy savings, the properties that can
(SU). The primary users have a priority for the spectrum due to a li- be very important for different Machine-to-Machine (M2M) and In-
cence or other arrangement, while the secondary users can access ternet of Things (IoT) applications using cognitive radios.
spectrum opportunistically. For recent reviews, we refer the reader to To evaluate CogMAC+ and prove the compatibility of CogMAC
[1–3]. One of the key requirements for cognitive communications is and CogMAC+, we have implemented both protocols in a Software
to have spectrum aware cognitive Medium Access Control (MAC) pro- Defined Radio (SDR) testbed using LabVIEW [7] and Universal Soft-
tocol. Besides classical cognitive radio operations, enabling efficient ware Radio Peripheral 2 (USRP2) [8]. In order to verify the validity
spectral co-existence of multiple networks in the ISM band can be of LabVIEW-USRP2 testbed and the compatibility of CogMAC pro-
also targeted by many cognitive MAC protocols. A number of cogni- tocol, we carry out a number of baseline comparison of CogMAC
tive MAC protocols have been proposed in recent years [4,5]. In order in the commercially available Wireless Open-Access Research Plat-
to carry out secondary transmission while tracking the activity of PU, form (WARP) [9] and LabVIEW-USRP2 testbeds. Although these two
most of the works include functionalities such as spectrum sensing, testbeds have different system characteristics, the baseline compar-
PU transmission detection, and coordination among SUs. isons indicate that CogMAC follows the same trend on both of the
One approach to enhance cognitive radio multiple access is to in- testbeds. In order to provide a comprehensive insight into the new
troduce Multichannel Preamble Reservation (MPR) schemes as done features of CogMAC+, a number of experiments are carried out with
respect to a number of key parameters. We use also realistic spectrum

models that are statistically characterized from practical measure-
Corresponding author. Tel.: +49 2418020915; fax: +49 24180620900.
E-mail addresses: pwa@inets.rwth-aachen.de, joqoko@hotmail.com (P. Wang),
ment campaigns to emulate the behaviors of external transmissions.
jan@inets.rwth-aachen.de (J. Ansari), mpe@inets.rwth-aachen.de (M. Petrova), Experimental results show that CogMAC+ is able to offer reliable data
pma@inets.rwth-aachen.de (P. Mähönen). communication services through opportunistic medium access while

http://dx.doi.org/10.1016/j.comcom.2015.09.016
0140-3664/© 2015 Elsevier B.V. All rights reserved.

Please cite this article as: P. Wang et al., CogMAC+: A decentralized MAC protocol for opportunistic spectrum access in cognitive wireless
networks, Computer Communications (2015), http://dx.doi.org/10.1016/j.comcom.2015.09.016
JID: COMCOM
ARTICLE IN PRESS [m5G;October 6, 2015;12:4]

2 P. Wang et al. / Computer Communications 000 (2015) 1–15

keeping the interference caused to PU under the permitted level. Es- exchanged by BEACON packets from server node to client node in an
pecially for unicast and multicast scenarios, CogMAC+ significantly unlicensed CCC, thus the communication of control information is not
enhances the system performance compared to our earlier CogMAC necessarily reliable.
protocol by enabling the parallel transmission. The rest of this pa- Majority of the studies mentioned above are evaluated through
per is organized as follows. We review related work in Section 2 and simulation and theoretical studies. Numerous studies have shown
describe CogMAC+ in Section 3. Afterward, we briefly introduce the that simulation and theoretical studies fail to depict the reality of
experimental setups in Section 4. The experimental results are ana- practical wireless communication systems, especially due to inaccu-
lyzed in Section 5. The paper is finally concluded and future work is rate or non-realistic models of the real wireless channels and physical
discussed in Section 6. layer behavior [25–28]. Therefore, it is highly important to evaluate
cognitive MAC protocols in actual deployment scenarios. SDR plat-
2. Related work forms follow the hardware/software co-design architectures which
allow them to provide flexibility and reconfigurability to cognitive
A number of cognitive MAC protocols have been proposed in the MAC protocol prototyping. Furthermore, SDR platform provides re-
literature [1–3,10]. In general, two major problems have to be ad- alistic physical functionalities which enable access to the real wire-
dressed by a cognitive MAC protocol. The first problem is how to less channels. Currently, many SDR platforms are available with dif-
gather necessary information of the wireless environment and other ferent architectures and features [29], and an increasing number of
users around, and secondly how to utilize the spectrum resources, cognitive MAC protocols have been verified through them. WARP
i.e., determining at what time, in which frequency band, and by what is an FPGA-based open SDR platform developed by Rice University.
strategy to carry out transmission. The first issue has been widely Our earlier CogMAC protocol has been implemented on WARP board
addressed by adopting different CSMA based schemes [11,12]. The [6,30]. USRP series platforms [8] aim at prototyping cognitive radio
listen-before-talk principle enables the user to verify the absence schemes on general purpose CPU architecture, which is able to offer
of other ongoing traffic in the shared frequency band down to the high degree of flexibility and customization.
spectrum sensing limit of the devices used, of course. Coordination As mentioned in the introduction, we have proposed and vali-
mechanisms are used to address the hidden node problem. Thus co- dated earlier a decentralized CSMA-based cognitive MAC protocol
ordination allows users to share their observations and decisions to CogMAC in [6] that achieves reliable transmission by considering the
improve the overall network performance [13]. Park et al. proposed a existence of external transmissions, i.e., PU transmission and other
measurement reporting MAC protocol called as Truncated Time Divi- secondary transmissions. CogMAC is designed for wireless nodes
sion Multiple Access (TTDMA) in [14] which enables dynamic control equipped with a single half-duplex radio interface, i.e., it can only ac-
information exchange. The second problem is addressed in central- cess one of the available channels for transmission or reception at a
ized protocols [1,3,15] by using a central coordinator. However, the particular time. CogMAC uses a MPR scheme to solve the rendezvous
wireless networks often have a decentralized nature in a sense that problem without a CCC or cooperative infrastructures. It uses the
observation and utilization are all performed individually by dis- CSMA based principle to avoid interruption of ongoing transmissions.
tributed terminals. Therefore the environment observation and con- Before attempting to transmit a frame, the transmitting node first
trol information have to be exchanged among central coordinator and needs to sense all the channels to ensure that no other transmission
users which inevitably causes delay and bandwidth wastage. Dis- is carrying out. After selecting a channel, it repetitively sends a frame
tributed protocols, which require no cooperative infrastructure, are back-to-back for long enough duration so that all receiving nodes in
widely used in wireless ad hoc networks. In distributed protocols, the its transmission range can receive it. At the receiving node, the pro-
major challenge is to coordinate users in a multichannel environment tocol uses multichannel carrier sensing method in which a node se-
so that different users are able to receive transmission of other users quentially senses all available channels. When a valid transmission is
in different channels seamlessly. This is called as rendezvous problem detected, the receiving node stays in the channel until all frames have
[16–18]. Song and Xie proposed a fully distributed CSMA based broad- been received. In this manner, the repetitive frame transmission im-
cast protocol BRACER [19], which addresses the rendezvous problem plicitly synchronizes all receiving nodes. CogMAC has been validated
by downsizing the set of deployed channels and designing the cor- in WARP boards.
responding broadcasting patterns and scheduling algorithm. Relying
on the neighboring location information, it achieves high successful 3. CogMAC+ design
broadcast radio with variant broadcast delays.
A number of protocols address rendezvous problem by assuming The new CogMAC+ protocol is a significantly enhanced version
the existence of a dedicated Common Control Channel (CCC). Intu- of CogMAC. CogMAC+ upgrades the MPR scheme of the previous
itively, using dedicated CCC is an effective way to exchange control CogMAC protocol by adopting a stricter timing analysis, and a more
information for SUs which enables them to coordinate their behav- accurate carrier sensing scheme. Several frame based bounds are de-
iors. In this category, we can further divide the protocols into two rived in the new scheme which optimize the secondary transmis-
subcategories, licensed CCC based protocol [20–22] and unlicensed sions while achieve better PU protection. Moreover, its accurate tim-
CCC based protocols, e.g., C-MAC [23]. However, the assumption of ing control enables idle SUs to estimate the transmission duration
availability of licensed CCC is not always easy to hold for SUs in li- of the transmitting SUs. Therefore, parallel transmissions are able to
censed bands due to spectrum allocation policies. For unlicensed CCC be carried out in different channels according to the meta-data of
based protocols, the problem is that the commonly available channel ongoing transmissions to substantially enhance the overall network
may not always simultaneously exist for all SUs which have differ- performance. Besides, CogMAC+ includes an adaptive noise floor es-
ent locations and channel characteristics. Moreover, how to sched- timation and energy detection mechanism which significantly en-
ule transmissions in the CCC is another challenge because the CCC hances the stability and portability of its implementation on differ-
may become saturated [4]. Without a dedicated CCC, the rendezvous ent SDR platforms. We enhance the channel selection algorithm by
problem becomes challenging in multichannel scenario where nodes using an Exponential Weighted Moving Average (EWMA) scheme.
only equipped with a half-duplex radio. RODMAC [24] aims at im- The portability and the synchronization of CogMAC+ is further im-
proving CogMAC through an on-demand-channel hopping scheme proved by the new backoff scheme. The new functionalities added
to allow simultaneous transmission. However, highly important is- into CogMAC+ are shown as the darker shaded blocks in Fig. 1.
sue of external transmission is not considered and evaluated in the The following subsections are organized as follows: we briefly
case of RODMAC. Moreover, the control information in RODMAC is review the principle of MPR scheme and its multichannel carrier

Please cite this article as: P. Wang et al., CogMAC+: A decentralized MAC protocol for opportunistic spectrum access in cognitive wireless
networks, Computer Communications (2015), http://dx.doi.org/10.1016/j.comcom.2015.09.016
JID: COMCOM
ARTICLE IN PRESS [m5G;October 6, 2015;12:4]

P. Wang et al. / Computer Communications 000 (2015) 1–15 3

Multichannel
Functionalities Broadcast-like Simple Channel Only rely on SDR Simple Random
Preamble Reservation
in CogMAC Transmission Selection Algorithm platform Backoff Scheme
Scheme

Stricter timing control; Dynamic channel pool;


Network based Adaptive algorithm; Using CCA duration as
New features Frame based analysis; Meta data recognition;
weights adjustment Greedy strategy backoff time unit
Refined carrier sensing CAV

Noise Floor Estimation;


Multichannel
Functionalities Multichannel Virtual EWMA channel Sorting Adaptive Energy CCA Based Random
Multiframe
in CogMAC+ Carrier Sensing Scheme and Selection Algorithm Detection Threshold Backoff Scheme
Transmission Scheme
Adjustment

Major Parallel
Optimization; Stability; Portability;
transmission Agile
Improvements PU protection
Enabled
Portability Synchronization

Fig. 1. Functionalities comparisons of CogMAC and CogMAC+ and the major improvement of CogMAC+.

sensing method in Section 3.1. In Section 3.2, we analyze the tim- Table 1
Some notations used in CogMAC+.
ing parameters of the protocol and demonstrate MMT scheme, the
enhanced version of MPR scheme in CogMAC+. In Section 3.3, we Variable Meaning
describe the virtual carrier sensing scheme to illustrate how parallel
C Total number of channels
transmissions are scheduled based on the timing information from C = {1, . . . , C } Set of all channels
MMT scheme. Section 3.4 shows the noise floor estimation and clear c, c ∈ C Currently used channel
channel assessment algorithms, and how these algorithms stabilize l Weight threshold for removing a channel from pool
the hardware implementation. In Section 3.5, the EWMA based chan- m Reversed counter for frame repetition
n Reversed frame index
nel weighting algorithm is introduced. Section 3.6 presents the ran-
NFr Total number of multiframes in a transmission
dom backoff scheme of CogMAC+. We list the notations and their NRe_Fr Number of frame repetition
corresponding explanation in Table 1. NPU Number of frames in one PU allowance interval
Nsa Number of samples for noise estimation
Nde_sa Number of samples for frame detection
3.1. Multichannel preamble reservation P Targeted channel pool size without CAV
P = {1, . . . , P } Set of sorted channel pool
q+ Energy detection threshold increment
MPR scheme is adopted to solve the rendezvous problem without q− Energy detection threshold decrement
a dedicated CCC. In order to guarantee seamless transmission, it re- rd , d = 1, . . . , Nsa Detected energy of the dth sample
quires the receiving node continuously sense all available channels Rc , c ∈ C Detected energy of the cth channel
to detect potential transmissions. We call the set of available chan- Sc , c ∈ C Channel status of the cth channel
Tc , c ∈ C Energy detection threshold in the cth channel
nels as a channel pool of a node. Therefore the operation of sequen-
tCCA1 CCA1 carrier sensing duration
tially sensing these channels is termed as a pool sensing. Correspond- tCCA2 CCA2 carrier sensing duration
ingly, the transmitting node is supposed to send multiple copies of tPU PU allowance time interval
the same frame back-to-back for a long enough duration in order to tprobing Time interval between two successive CCA2
reserve the channel so that other nodes are able to detect its trans- tTX_mode Time required to switch to transmission mode
tRX_mode Time required to switch to reception mode
mission during the pool sensing. The operation of transmitting the tswitch Channel switching duration
same frame repetitively is termed as a repetitive frame transmission. tinter_Fr Inter-frame time duration
As shown in Fig. 2, the transmitting node (TX) carries out repetitive theader Header transmission duration
frame transmission in channel f1 while two idle nodes (RX1 and RX2) tFr Frame transmission duration
tRe_Fr Repetitive transmission duration
are carrying out the pool sensing, i.e., they sequentially sense chan-
tMul_Fr Frame transmission duration after repetition
nels from f1 to f4. As shown in the figure, both RX1 and RX2 de- tinter_Fr Inter-frame transmission interval
tect the transmission and successfully receive at least one complete Wc , c ∈ C Weight of the cth channel
frame. In MPR scheme, the length of repetitive frame transmission wc (t ), c ∈ C Weight adjustment of the cth channel at time t
should be long enough to guarantee the reception of the frame by all τ c, c ∈ C Timestamp for the last update of Wc
α Decay factor of noise floor estimation algorithm
nodes, which may also have different pool sizes. Since the repetitive
λ Decay factor of channel weighting algorithm
frame transmission of the first frame implicitly synchronizes nodes,
the frame repetition for the following frames is not required. In order
to efficiently support high data traffic loads and minimize the num-
ber of frame repetitions, CogMAC+ continuously transmits frames transmission technologies. However, if such a capability is supported
without repetition after reserving the channel, namely aggregation on the platform, it can be added straightforwardly to further im-
transmission. It is similar to the MAC Protocol Data Unit (MPDU) prove the PU/SU detection. In the following we assume that we use
aggregation in IEEE 802.11ac standard [31]. The number of frames an energy detector based sensing. Energy detection does not require
in repetitive frame transmission and aggregation transmission are any a priori knowledge of the PU signal [11] which makes CogMAC+
marked with NRe_Fr and NMul_Fr in Fig. 4, respectively. In order to to be capable of working with co-existed heterogeneous transmis-
avoid interrupting external transmissions, the transmitting node has sion technologies. If the received signal energy is lower than the
to regularly suspend frame transmission to sense the channel. In threshold, channel is detected to be idle. Otherwise, the channel is
this work, we assume that nodes do not have any signal classifica- identified to be busy and the node starts a timeout timer and tries
tion or feature detection functionalities [32] to distinguish different to decode the received signal. Detailed information of the carrier

Please cite this article as: P. Wang et al., CogMAC+: A decentralized MAC protocol for opportunistic spectrum access in cognitive wireless
networks, Computer Communications (2015), http://dx.doi.org/10.1016/j.comcom.2015.09.016
JID: COMCOM
ARTICLE IN PRESS [m5G;October 6, 2015;12:4]

4 P. Wang et al. / Computer Communications 000 (2015) 1–15

Fig. 2. Multichannel preamble reservation scheme. As the two (unsynchronized) receivers detect an ongoing transmission, they stay in the channel f1 until a complete frame is
received.

sensing and energy detection of CogMAC+ is shown in Section 3.2 to be transmitted in a PU allowance interval, which represents the
and Section 3.4, respectively. As shown in Fig. 4, two types of carrier longest possible duration for SUs to occupy a channel without need-
sensing operations are used in CogMAC+, namely CCA1 and CCA2 ing to sense the channel. Considering the minimal duration between
with duration tCCA1 and tCCA2 , respectively. CCA1 is used in pool two successive frames tinter_Fr , we have,
sensing to sense an individual channel, and CCA2 is a shorter sens-  
ing operation used between frame transmissions in order to detect tPU − tRX_mode − tTX_mode + tinter_Fr
NPU = , (1)
external transmission in the same channel. If there is no data to trans- tFr + tinter_Fr
mit or receive, a node repetitively carry on pool sensing. Before start-
where NPU denotes the upper bound of the number of frames that are
ing a transmission, a node is required to perform pool sensing, and
allowed to be transmitted in one PU allowance interval. Thus tprobing ,
then sense the chosen channel again to ensure the availability of the
the actual duration between two consecutive CCA2 operations or
channel.
between the last CCA1 operation and the first CCA2 operation is
MPR scheme is effective in distributed multichannel MAC pro-
given by,
tocols. Therefore, CogMAC adopts it to achieve the seamless trans-
mission in multichannel environment and CogMAC+ also follows its tprobing = NPU tFr + (NPU − 1)tInter_Fr + tTX_mode + tRX_mode . (2)
principle. In CogMAC+, we re-design the MPR scheme and rename it
as MMT scheme by re-analyzing the timing parameters of the pro- Obviously, tprobing is upper bounded by tPU . The length of repetitive
tocol. In MMT scheme, we derive several bounds to optimize the frame transmission should be lower bounded to guarantee the frame
protocol performance and achieve better protection to PU transmis- reception at all nodes. Let NRe_Fr be the lower bound of the number
sions. Moreover, we use a frame-based analysis method to instead of frames in repetitive frame transmission, the duration of transmit-
the previous time-based analysis method of CogMAC, which is more ting NRe_Fr − 1 frames should larger than or equal to tab so that the
straightforward and achieves better portability among different hard- reception of the last copy of the first frame can be guaranteed. Since
ware platforms. We show the details of MMT scheme in the next it is not trivial to calculate NRe_Fr − 1, we divide NRe_Fr − 1 by NPU to
subsection. calculate how many PU allowance intervals are needed for repetitive
frame transmission,
3.2. Multichannel multiframe transmission NRe_Fr − 1
= gpu mod nre , (3)
NPU
A well designed multichannel cognitive MAC protocol should en-
where gpu denotes the number of complete PU allowance intervals
sure seamless communications among SUs while keeping the inter-
that is needed for repetitive frame transmission, and nre denotes the
ference caused to PU under a permitted level. In CogMAC+, we use
number of remaining frames required to be sent in the last PU al-
MMT scheme, the upgraded version of MPR scheme to meet both de-
lowance interval. We define the transmission duration function T(k)
mands and optimize the performance. MMT scheme follows the MPR
as a function of the number of frames k. For transmitting NRe_Fr − 1
scheme principle, a transmitting node should repetitively transmit
frames, we have
the first frame long enough so that even in the worst case the receiv-
ing node can receive at least one copy of the frame while carrying on T (NRe_Fr − 1) = gpu (tprobing + tCCA2 ) + nre tFr + (nre − 1)tinter_Fr . (4)
pool sensing operation. The duration of a node not sensing a specific
As mentioned above, the time of transmitting NRe_Fr − 1 frames
channel, tab , depends on the total number of channels. If the channel
should be larger than tab ,
pool size is P, duration of CCA1 is tCCA1 , and the interval between two
consecutive carrier sensing operations is tswitch as shown in Fig. 4. T (NRe_Fr − 1) > (P − 1)(tCCA1 + tswitch ) + tswitch . (5)
Note that tab is equal to (P − 1)(tCCA1 + tswitch ) + tswitch . It is worth
noting that the above duration only holds in an ideal case, i.e., when Therefore, gpu and nre can be deduced from (4) and (5) as,
no other transmission takes place. In the latter part of this subsection,  
(P − 1)(tCCA1 + tswitch ) + tswitch
we analyze the scenario where external transmissions exist. Let NPU gpu = , (6)
denotes the upper bound of the number of frames that is allowed tprobing + tCCA2

Please cite this article as: P. Wang et al., CogMAC+: A decentralized MAC protocol for opportunistic spectrum access in cognitive wireless
networks, Computer Communications (2015), http://dx.doi.org/10.1016/j.comcom.2015.09.016
JID: COMCOM
ARTICLE IN PRESS [m5G;October 6, 2015;12:4]

P. Wang et al. / Computer Communications 000 (2015) 1–15 5

Fig. 3. Different TIMEOUT durations in CogMAC+: (a) start sensing in the middle of a frame, (b) start receiving during default CCA operations, (c) start sensing when channel is
interfered or PU transmission is carrying out, (d) interference or PU transmission start during default CCA operations, (e) the maximal timeout duration.

Fig. 4. Different timing parameters.

Fig. 5. Relation between two types of carrier sensing durations in CogMAC+.

and Thus we get the number of repetitive frames,


  NRe_Fr = gpu NPU + min (nre , NPU ) + 1. (8)
(P − 1)(tCCA1 + tswitch ) + tswitch n(tPU − tCCA2 ) − tinter_Fr
nre = − .
tFr + tinter_Fr tFr + tinter_Fr To avoid missing repetitive frame transmission, the duration of CCA1
operation has to be lower bounded as below,
(7)
tCCA1 > tTX_mode + tRX_mode + tCCA2 . (9)

Since we use the ceiling function in (7), nre can be larger than NPU . It An example is shown in Fig. 5 to illustrate the worst case. If the CCA1
is worth noting that nre denotes the remaining frames in the last PU duration is less than tTX_mode + tRX_mode + tCCA2 , the sensing period of
allowance interval, therefore it must be less than or equal to NPU . If Node 2 may fall in the no transmission interval around CCA2 dura-
nre is larger than NPU , i.e., the receiving node starts sensing again in tion of Node 1. In this instance, Node 2 can miss the repetitive frame
either tTX_mode , tRX_mode or tCCA2 durations, nre is enforced to be NPU . transmission from Node 1.

Please cite this article as: P. Wang et al., CogMAC+: A decentralized MAC protocol for opportunistic spectrum access in cognitive wireless
networks, Computer Communications (2015), http://dx.doi.org/10.1016/j.comcom.2015.09.016
JID: COMCOM
ARTICLE IN PRESS [m5G;October 6, 2015;12:4]

6 P. Wang et al. / Computer Communications 000 (2015) 1–15

The existence of interference or parallel transmission can also time is exactly equal to the duration of the ongoing transmission. In
lead to the prolongation of carrier sensing operations in pool sens- other words, if a node is the destination of the ongoing transmission,
ing. Fig. 3(a) and (b) shows two scenarios in which repetitive frames obviously it should stay in the current channel for receiving the re-
are transmitted over the air. Carrier sensing operations are prolonged maining frames. Otherwise, it blocks the current channel and then
when a signal is detected. In Fig. 3(a), RX starts sensing at ta while continues pool sensing. Temporarily removing a channel which is in-
TX is transmitting, i.e., RX detects signal at the beginning of its sens- cluding an ongoing transmission reduces the channel pool size, and
ing period. Due to repetitive frame transmission, RX should prolong avoids timeout for the channel in the following pool sensing opera-
its sensing until tc to receive the frame header of the next frame. tions. Furthermore, after blocking the currently used channel, a node
After receiving the frame header, RX should stay in the channel to is still able to sense the remaining channels in its channel pool and
receive the following data. In Fig. 3(b), RX receives the frame in carry out parallel unicast/multicast transmissions to nodes which are
its regular sensing duration, thus it can receive the complete frame not transmitting or receiving. A timer is set after blocking a chan-
header. In this instance, the sensing duration is equal to the trans- nel, which is called Channel Allocation Vector (CAV) of the channel.
mission time of the frame header after detecting the signal. Please CAV is set according to the estimated duration of the ongoing trans-
note that for the sake of simplicity, we do not take the processing mission. When CAV expires, the node reallocates the corresponding
time which is inevitable in realistic wireless platforms into account. channel into its channel pool and senses it in the following pool sens-
Fig. 3(c) and (d) indicates the scenarios of sensing an external trans- ing operations. The duration of CAV is estimated by using the frame
mission. Same as Fig. 3(a) and (b), the carrier sensing durations in indices of the first received frame header of the ongoing transmission.
Fig. (c) and (d) should be set to max (tOUT_a ) and max (tOUT_b ), respec- In CogMAC+ frames are assigned two indices, the index of the frame
tively. If the frame size is known by RX, then max (tOUT_a ) is equal in repetitive frame transmission and the index of frame in aggrega-
to tFr + tinter_Fr + theader and max (tOUT_b ) is equal to theader . Consid- tion transmission. In order to accurately figure out the position of the
ering the CCA2 operation, the longest sensing duration is equal to received frame in the transmission sequence, we assign the two in-
tFr + theader + tTX_mode + tRX_mode + tCCA2 as shown in Fig. 3(e). There- dices in a reversed order to frames when they are generated, i.e., the
fore (5) has to be rewritten as (10) if an external transmission exists. transmitting node generates and transmits frames from the highest
Due to the prolongation of the sensing operation, the transmitting index to 0 as shown in Fig. 6. An example of three node transmission
node has to transmit more frames repetitively in order to guarantee is illustrated in Fig. 6. At t1_tx , Node 1 starts transmitting to Node 2
the seamless transmission. Nodes can determine the existence of ex- in channel f1. Node 2 and Node 3 start to sense channel f1 at t2_s1
ternal transmission according to the false positive frame detection and t3_s , respectively. In this example, Node 2 and Node 3 receive one
ratio. If the ratio is significantly higher than the default ratio, which header of the repetitively transmitted frame at tt2_rx and tt3_CAV , re-
is caused by the adaptive threshold adjustment for energy detection spectively. After receiving the header which includes the destination
(cf. Section 3.4), the transmitting node should use (10) instead of (5) information, Node 2 stays in the channel and waits until all frames
to deduce the number of repetitions. from Node 1 are received at t2_rx_end . However, after extracting des-
tination information at tt3_CAV , Node 3 determines that it is not the
T (NRe_Fr − 1) > (P − 1)(tFr + theader + tTX_mode + tRX_mode
destination of the ongoing transmission. Therefore, after calculating
+ tCCA2 + tswitch ) + tswitch . (10) the CAV duration t3_f1_CAV , Node 3 temporarily removes channel f1
from its channel pool. After the reduced pool sensing and an extra
CogMAC+ enables parallel transmission if nodes have independent
CCA1 operation in channel f2, Node 3 carries out its repetitive frame
unicast/multicast traffic (cf. Section 3.3). In the instance, the pro-
transmission that is targeted to another node in the network in chan-
longed sensing duration is related to the number of parallel trans-
nel f2. At this moment, the network carries out two parallel trans-
mission and the channel pool size. If a node detected j transmitters
missions. After t1_tx_end , which equals t2_rx_end , Nodes 1 and 2 start
in its detection range, then it may detect parallel transmission in
new pool sensing operations at the same time. Having a different or-
min ( j, P − 1) channels. Therefore, (5) should be replaced by (11) as,
der of channels in pool sensing, Node 1 and Node 2 detect the ongoing
T (NRe_Fr −1) > (P−1 − max (0, P − 1 − j))(tCCA1 + tswitch ) + tswitch transmission from Node 3 at different time instances and successfully
+ max (0, P − 1 − j)( max (tFr + tinter_Fr + theader , tCCA1 )). (11) receive the frame header at t1_CAV and t2_CAV , respectively. By reading
the destination information in the header, Nodes 1 and 2 temporarily
In the next subsection, we show how to carry out parallel trans- remove channel f2 from their channel pools so that the following pool
missions by using the timing information specified by MMT scheme. sensing operations are carried out only for three channels. In general,
the CAV duration tCAV can be calculated from the repeat index m and
3.3. Multichannel virtual carrier sensing frame index n as,

In CogMAC, all nodes in the range of an ongoing transmission tCAV = T (NRe_Fr + NFr ) − theader − T (NRe_Fr − m + NFr − n + 1),
have to wait in the channel until the ongoing transmission ends. (12)
This broadcast-like scheme effectively propagates the channel selec-
tion information and implicitly synchronizes all nodes in the neigh- where NFr denotes the total number of frame transmissions in both
borhood for broadcast communication pattern. However, for unicast repetitive frame transmission and aggregation transmission as shown
or multicast scenarios, non-addressed nodes unnecessarily wait in a in Fig. 4, which is not equal to the number of frames in aggregation
channel for receiving unwanted frames. By analyzing the sequence transmission.
number of the received frame and using MMT schemes reversely, Moreover, if a node is transmitting or receiving in a particular
CogMAC+ nodes is capable of estimating the duration of ongoing channel, it is not able to receive data in other channels during its
transmissions accurately. CogMAC+ provides MVCS scheme to reduce CAV duration. Therefore CAV mechanism not only blocks the occu-
the unnecessary waiting time and allows parallel transmissions in pied channel for the estimated CAV duration, but also blocks the
different channels in order to enhance the cumulative throughput for nodes that are either the transmitting node or the receiving node of
independent unicast and/or multicast transmissions. MVCS scheme the ongoing transmission for the same duration. Therefore, a node
allows a node to use meta-data from the received frame header to should not only check the destination address of the ongoing trans-
decide whether to stay in the current channel for receiving the fol- mission, but also record both the destination address and the source
lowing frames or to temporarily remove the current channel from its address from the received frame header. Therefore, a blocking list is
channel pool until the end of the ongoing transmission. The blocking maintained to record the nodes which are temporarily blocked by

Please cite this article as: P. Wang et al., CogMAC+: A decentralized MAC protocol for opportunistic spectrum access in cognitive wireless
networks, Computer Communications (2015), http://dx.doi.org/10.1016/j.comcom.2015.09.016
JID: COMCOM
ARTICLE IN PRESS [m5G;October 6, 2015;12:4]

P. Wang et al. / Computer Communications 000 (2015) 1–15 7

Fig. 6. Channel allocation vector in multichannel virtual carrier sensing scheme for parallel transmissions. Node 2 and Node 3 detect an ongoing transmission from Node 1 to the
specified destination Node 2 in channel f1 at t2_s1 and t3_s , respectively. Following the multichannel preamble reservation scheme, Node 2 stays in the channel f1 to receive the
remaining frames. However, Node 3 temporarily removes channel f1 from its channel pool for the interval t3_f1_CAV and carries out its own transmission in channel f2 to another
node.

MVCS scheme. A node should not transmit to the nodes in its blocking Algorithm 1 Multichannel virtual carrier sensing.
list.
while In reception mode do
Due to the prolongation of the timeout duration as mentioned in
for channel c ∈ C do
the last subsection, external transmissions can also cause prolonga-
if Channel c is not expelled then
tion of the carrier sensing duration. The prolonged carrier sensing
Sensing channel c
leads to correspondingly longer repetitive frame transmission, thus
if BUSY then
decreasing the performance of the protocol. In order to avoid wast-
if Received a frame header then
ing time for sensing the occupied channel, MVCS scheme temporar-
if destination address matches then
ily blocks the channel if no valid frame header is received during the
Stay in the channel
prolonged timeout duration. Due to the unknown external transmis-
Receive the whole frame
sion pattern, an exponential backoff scheme is applied to the channel
else
as an exponentially increased multiple of CCA1 durations as shown
Leave the channel, P \ c
in Algorithm 1. Unlike IEEE 802.11 protocol, which aims at differenti-
tc_CAV ← header information
ating the retransmission time to avoid collision, CogMAC+ keeps the
end if
same channel pool to address the rendezvous problem. Therefore the
else
exponential backoff scheme is designed without randomness.
Leave the channel, P \ c
3.4. Noise floor estimation and adaptive energy detection threshold Backoff coefficient uc ← uc + 1
vc ← 2uc − 1
As mentioned in [11,33], due to the simplicity and low hardware end if
requirement, energy detection is widely used. For example, a sim- end if
ple noise floor estimation and clear channel assessment algorithm is else
provided in [34] for embedded wireless sensor nodes, where carrier if vc > 0 then
sensing is performed by comparing the received power level with a vc ← vc − 1
predefined threshold. In general, low detection threshold leads to a end if
large detection range and enables the device to cooperate with neigh- if tc_CAV = 0 AND vc = 0 then
boring devices which has low transmission power or long distance. P ←P∩c
However, the low detection threshold also causes high false positive end if
frame detection ratio. In CogMAC+, the false positive detection leads end if
to prolonging carrier sensing duration, thus asynchronizes nodes and end for
causes unnecessary delays. In order to build a stable testing system end while
with more than ten USRP2 devices, the false positive frame detection
ratio should be strictly controlled. On the other hand, high detection
threshold also has drawbacks, e.g., it lowers down the communica- above make carrier sensing scheme with fixed detection threshold
tion range which is also important for carrying out large scale ex- ineffective and unportable. To the best of our knowledge, the ben-
periments. Therefore, an appropriate detection threshold should be efits of changing energy detection thresholds are investigated and
applied on every devices. Nevertheless, the differences of hardware the concepts of adaptive detection threshold methods are proposed
characteristics and fidelities leads to the differences in measuring re- [35,36]. In order to achieving a stable experimental environment and
ceived signal strength, noise level, and noise distribution in a real de- improving portability, we propose and implement Algorithm 2 which
ployment, even if the same type of hardware is in use. In addition, aims at empirically balancing the false positive detection ratio and
the characteristic of noise may vary with different positions, and even the detection range, while keeping the protocol stable at run-time. It
changes over the course of operations. The uncertainties mentioned requires no a priori knowledge of the pattern of noise and external

Please cite this article as: P. Wang et al., CogMAC+: A decentralized MAC protocol for opportunistic spectrum access in cognitive wireless
networks, Computer Communications (2015), http://dx.doi.org/10.1016/j.comcom.2015.09.016
JID: COMCOM
ARTICLE IN PRESS [m5G;October 6, 2015;12:4]

8 P. Wang et al. / Computer Communications 000 (2015) 1–15

Fig. 7. An example of noise floor estimation and adaptive energy detection threshold adjustment. Node 1 is the only node in the scenario which has two channels, f1 and f2 in its
channel pool. The node starts a frame transmission in channel f1 after the first round pool sensing operation. An external transmission starts from tf2_ex_s in channel f2.

Algorithm 2 Adaptive multichannel noise floor estimation and adap- updates the noise level during carrier sensing operations if the chan-
tive energy detection threshold adjustment. nel is determined idle. AEDTA is following a greedy strategy that it
continuously reduces the threshold to increase its detection range
Initialize all nc , ∀c ∈ C
until it detects an external transmission or hits the noise signal,
Initialize all Tc , ∀c ∈ C
which are indistinguishable as we assumed above. The key principle
while CCA1 & CCA2 in channel c do
of NFE and AEDTA is that both of them should be performed when
if TIMEOUT timer is not activated then
 the channel is idle. Therefore, MAC layer status, especially the car-
Rc ← rn /Nsa
n=1,...,Nsa rier sensing results are used to determine the operations of NFE and

if rn /Nde_sa < Tc then AEDTA. We will use an example to describe their behaviors in the rest
n=1,...,Nde_sa of this subsection.

if rn /Nde_sa < Tnoise then As illustrated in Fig. 7, NFE and AEDTA are only carried out when
n=1,...,Nde_sa
the channel is idle. For instance, Node 1 senses channel f1 from tf1_s1
nc ← α nc + (1 − α)Rc
to tf1_e1 , where the bold and straight line marked by  1 represents the
end if
threshold adjustment, and the curve marked by  2 is the estimated
Sc ← IDLE
noise floor which updated by an EWMA with coefficient α . One spe-
if CCA1 in channel c then
cial situation is marked by  3 , where only the noise floor is estimated.
Tc ← Tc − qNe−
It is due to the fact that decreasing threshold may increase the risk of
end if
hitting the noise level as shown between tf1_s3 to tf1_T_in . Therefore,
else
AEDTA is not performed during CCA2 operations in order to preserve
Sc ← BUSY
transmissions.
Start timeout timer
Symbols  4 and  5 mark the two instances where the energy de-
end if
tection threshold is increased. In channel f1, Node 1 carries out a CCA1
if timeout ends, no header received then
operation at tf1_s3 with a relatively low threshold. After a short time-
if CCA1 in channel c then
out duration as described in Fig. 3, the energy detection threshold is
Tc ← Tc + qCCA+
increased δ in order to be away from noise level. The similar operation
end if
appears in channel f2 which starts from tf2_rx , when Node 1 begins to
end if
sense the channel. As shown in the figure, an external transmission is
if header received during timeout then
being carried out since tf2_ex_s . Node 1 detects it at the beginning of
if Receives the corresponding frame then
the following CCA1 operation. After the timeout duration without re-
Tc ← Tc − qCCA−
ceiving a decodable frame header, Node 1 increases the threshold of
else
channel f2 by δ . However, the threshold should not be beyond a upper
Tc ← Tc + qCCA+
bound , which represents the estimation of the lowest energy level
end if
of external transmission. Therefore the increased threshold is set to
end if
 at tf2_T_in .
end if
In our LabVIEW/USRP2 testbed, the receiving functionality of
end while
USRP2 devices are uncalibrated, i.e., the noise level is different at dif-
ferent USRP2 devices. Moreover, the numerical readings of the re-
ceived signal strength may be non-linear to the actually received
transmission and allows nodes to dynamically adjust the threshold signal strength. Therefore, it is impossible to set a fixed threshold
based on the parameters and states from MAC layer. The algorithm with an absolute value to all USRP2 devices as the energy detec-
includes two major objectives, real-time Noise Floor Estimation (NFE) tion threshold, especially when multiple uncalibrated USRP2 devices
and Adaptive Energy Detection Threshold Adjustment (AEDTA). NFE are deployed in one experiment. Accordingly, NFE and AEDTA are

Please cite this article as: P. Wang et al., CogMAC+: A decentralized MAC protocol for opportunistic spectrum access in cognitive wireless
networks, Computer Communications (2015), http://dx.doi.org/10.1016/j.comcom.2015.09.016
JID: COMCOM
ARTICLE IN PRESS [m5G;October 6, 2015;12:4]

P. Wang et al. / Computer Communications 000 (2015) 1–15 9

essential for stabilizing our USRP2 implementation. In order to show Algorithm 3 Channel weighting.
the advantages, we have carried out a straightforward experiment
wc ← 0, ∀c ∈ C
in a typical indoor deployment. Two nodes which run the original
loop
CogMAC are supposed to communicate with different distances. The
τ ← current time
two nodes have the Line-of-Sight (LOS) channel and NFE scheme is
for all (c ∈ P) do
carried out for all experiments. For each distance, the goodput of
if CarrierSensing(c) then
original CogMAC with AEDTA and several fixed SINR thresholds are
if Sc = Free then
tested and compared. As shown in the figure, AEDTA outperforms
Wc ← Wc ∗ e−λ(τ −τc ) + 1
other fixed threshold experiments nearly in all distances. During the
else
experiment, we found that the minimal effective threshold with our
Wc ← Wc ∗ e−λ(τ −τc ) − 7
experimental settings is 4 dB, i.e., the deployed USRP2 devices always
end if
report channel busy if the threshold is only 4 dB higher than the av-
end if
erage noise level. As shown in Fig. 9, low threshold curve (threshold
end for
is 5 dB) remain constant when the distance between nodes varies.
if Start Tx or Rx then
However, their performance is suffered due to the high false positive
Wc ← Wc ∗ e−λ(τ −τc ) + 5
frame detection ratio for all distances. The false positive frame de-
end if
tection ratio suffers the performance of the whole protocol from two
if Rx then
sides. First, the transmitter may detect channel busy then postpones
if Destination address matches then
or cancels the imminent transmission. Second, the receiver can miss
for all j ∈ received channel map do
the frame transmission by entering the receiving state machine at the
W j ← W j ∗ e−λ(τ −τ j ) + 3
wrong time. High threshold performs quite well when two nodes are
end for
closed to each other, but they perform very bad in the experiments
else
with long distances, where the received signal strength is low. This
for all j ∈ received channel map do
experiment shows that the performance of NFE and AEDTA schemes
W j ← W j ∗ e−λ(τ −τ j ) − 3
is definitely dominant.
end for
The mechanism of blocking occupied channel which is mentioned
end if
in the end of the last subsection is also shown in Fig. 7. As described
τj ← τ
above, timeout timer of Node 1 expired at tf2_T_in without receiving
end if
any valid frame header. Therefore, channel f2 is removed from its
τc ← τ
channel pool in the next pool sensing operation. The same operation
end loop
appears for channel f1 at tf1_T_in . In both instances, the busy channel
is removed from the channel pool so that the following pool sensing
operation is shortened.
channel map to record the channel pool and insert the vector in the
frame header. Therefore, the channel pool of a node able to be re-
3.5. Channel weighting and dynamic channel selection
ceived is known by all receiving nodes within its transmission range.
The receiving nodes increase the channel weights which are marked
Before transmitting in a channel, CogMAC+ requires the node
in the received channel map. By exchanging channel pool informa-
to carry out pool sensing, and then sense again the chosen chan-
tion, nodes in the same network will soon converge to the same chan-
nel to ensure the availability of the channel. We design for this a
nel pool therefore the wasted time of carrier sensing is reduced, and
heuristic-based algorithm including channel sorting and channel se-
the rendezvous problem is better addressed.
lection. Channel weights are updated by a time-based EWMA, which
keeps the historical information while giving higher importance to
recent channel activities. Channel weights are adjusted by the fol- 3.6. CCA based random backoff scheme
lowing equation,
The random backoff scheme is used in CogMAC+ for collision
Wc = Wc e−λ(t1 −t0 ) + wc (t1 ), (13) avoidance. Before starting transmission, e.g., t1_tx_end of Node 1, and
where Wc is the current weight of channel c and wc (t1 ) is the t3_tx_end of Node 3 as shown in Fig. 6, nodes have to wait a random
weight adjustment of channel c at time t1 . Time point t1 is after t0 . time to avoid collision. In order to keep synchronization after trans-
Algorithm 3 shows all the events and the corresponding weight ad- mission and reception, CogMAC+ chooses the duration of CCA1 plus
justments. In CogMAC+, pool sensing follows the descending order the channel switching duration as the unit time of the random back-
of channel weights and the transmission is always carried out in the off scheme. Moreover, choosing this duration as the time unit of back-
channel with the highest weight. Therefore, channel selection is de- off detaches the whole backoff scheme from unnecessary hardware
termined by the channel weights. In order to keep the sensing order limitations, which improves the portability of the protocol. Nodes
stable during pool sensing, channel sorting algorithm is performed start to transmit when they have data to transmit while the backoff
only after the key time points such as at the end of pool sensing and counter is 0. Nodes freeze the backoff counter during the reception
at the end of aggregation transmission. A node removes a channel out period, but continuously countdown during the CAV duration.
of its pool if its weight is lower than a predefined threshold. In order
to keep the channel pool size constant, the node should include an 4. Protocol implementation
unused channel into its pool according to the last visited time. There-
fore, a node should maintain a local timestamp list of all channels We have developed an SDR testbed consisting of PCs with Lab-
and record the timestamp of a channel when it is removed from the VIEW 2012 and multiple USRP2 devices as shown in Fig. 8. In order
channel pool. The weight of new channel should be initialized to a to verify CogMAC+ in a relatively large scale network, up to 16 USRP2
predefined value. devices are used in the experiments. The RF front-end of the testbed
If all nodes are able to know the channel pool of other nodes, is implemented by USRP2 devices which provides a full physical layer
network coordination and synchronization become easier, and the configurability which enables an integrated MAC protocol design, e.g.,
rendezvous problem is efficiently handled. We use a vector named NFE and AEDTA of CogMAC+. The software is implemented using

Please cite this article as: P. Wang et al., CogMAC+: A decentralized MAC protocol for opportunistic spectrum access in cognitive wireless
networks, Computer Communications (2015), http://dx.doi.org/10.1016/j.comcom.2015.09.016
JID: COMCOM
ARTICLE IN PRESS [m5G;October 6, 2015;12:4]

10 P. Wang et al. / Computer Communications 000 (2015) 1–15

Fig. 8. A snapshot of our LabVIEW-USRP2 testbed.

a 700 b 1

0.9
600
0.8

Successful delivered ratio


500 0.7
Number of frames

0.6
400

0.5

300 AEDTA, TX 0.4


AEDTA, RX
200
Threshold = 11 dB, TX 0.3
Threshold = 11 dB, RX
Threshold = 8 dB, TX 0.2 AEDTA
100 Threshold = 8 dB, RX Threshold = 11 dB
0.1
Threshold = 5 dB, TX Threshold = 8 dB
Threshold = 5 dB, RX Threshold = 5 dB
0 0
0 1 2 3 4 5 6 0 1 2 3 4 5 6
Distances [m] Distances [m]

Fig. 9. One transmitter–receiver pair is used in this experiment for validate NFE and AEDTA. The achieved goodput with respect to different distance between the transmitter
and the receiver with AEDTA and fixed energy detection thresholds are compared. The transmitter generating randomized traffic with a fixed frame size of 500 bytes. Fixed CCA2
duration of 30 ms and PU allowance time of 500 ms are used. PU allowance time of is 500 ms.

Table 2 parameters is at least taken 1000 s. In this section, we first show


PHY/MAC parameter values.
the baseline comparisons between original CogMAC on WARP testbed
Parameter Value and the new LabVIEW-USRP2 implementations. Then we present the
results on performance evaluation CogMAC+ against CogMAC. For
Transmit mode switching duration (tTX_mode ) 15 ms
Reception mode switching duration (tRX_mode ) 150 ms
the experiments with external transmission, we implemented a mul-
Time duration for obtaining a channel sample (tcs ) 1 ms tichannel interferer by also using LabVIEW and USRP2 devices which
Channel switching duration (tswitch ) 15 ms are able to interfere multiple channels simultaneously to emulate
Inter-frame time duration (tinter_Fr ) 20 ms PU transmission. The performance of co-existed CogMAC+ networks
Header transmission duration (theader ) 1 ms
which use different modulation schemes are also evaluated.
Max. frame size used (LFr_max ) 1500 bytes
Max. frame transmission time (tFr_max ) 300 ms
Interferer timeout duration (tint_timeout ) 10 ms
5.1. Baseline comparison

In order to empirically verify CogMAC on the USRP2-LabVIEW


LabVIEW, which is inherently concurrent language offering a high de- testbed, we compare the performance of CogMAC to the results with
gree of flexibility for protocol design. Especially, it enables a parallel previous evaluation of CogMAC done using WARP based testbed [6].
design which is able to address the delay problem caused by base- It is worth noting that the supported PHY-layer performance levels
band processing as mentioned in [27,37]. Moreover, we can use its are different on USRP2 and WARP devices. The baseline comparisons
interactive Graphical User Interface (GUI) to visualize the features of are aimed at studying the performance trends with respect to MAC
the implemented applications in real-time. In LabVIEW, MAC proto- parameters.
cols are implemented as Virtual Instruments (VI). Therefore, we are Fig. 10(a) and (b) shows the goodput for a single transmitter and
able to compare different MAC protocols with the same testbed and receiver pair with different numbers of multiframes and different
same configurations by switching the corresponding VIs. Table 2 lists channel pool sizes. Both CogMAC results from Fig. 10(a) LabVIEW-
some of the key parameters used both for CogMAC+ and CogMAC. A USRP2 testbed and Fig. 10(b) WARP testbed shows the same trend
detailed description of the experimental testbed can be found in [38]. and scaling as the number of multiframes increases. It is also evident
from the figures that for larger channel pool size, the goodput goes
5. Experimental result down because of longer pool sensing duration.
Besides the number of multiframes and channel pool size, we also
In order to get ergodic results, we have carried out an experimen- compare on two testbeds the effect of different CCA2 durations. The
tal campaign for three months on the testbed, in which each set of comparison between Fig. 10(c) and Fig. 10(d) and the comparison

Please cite this article as: P. Wang et al., CogMAC+: A decentralized MAC protocol for opportunistic spectrum access in cognitive wireless
networks, Computer Communications (2015), http://dx.doi.org/10.1016/j.comcom.2015.09.016
JID: COMCOM
ARTICLE IN PRESS [m5G;October 6, 2015;12:4]

P. Wang et al. / Computer Communications 000 (2015) 1–15 11

4 6
x 10 x 10
4.5 4.5
1 channel
1 Channel
2 channels 4 2 Channels
4
4 channels 4 Channels
8 channels 8 Channels

CogMAC+ goodput [bps]


3.5

CogMAC goodput [bps]


3.5
3

3
2.5

2.5 2

1.5
2
1
1.5
USRP2 0.5 WARP
1 0
1 3 5 7 9 11 13 15 17 19 0 5 10 15 20 25
Number of multiframes Number of multiframes

(a) (b)[6]
4 6
x 10 x 10
5 3
1 Channel
1 channel
2 Channels
2 channels 4 Channels
4.5 4 channels 2.5 8 Channels
CogMAC+ goodput [bps]

CogMAC goodput [bps]


8 channels

4
2

3.5
1.5

USRP2 WARP
2.2 0.5
10 30 50 70 90 110 130 150 170 190 0 10 20 30 40 50 60
Carrier sensing duration [ms] Carrier sensing duration [ms]

(c) (d)[6]
6
4
x 10
x 10
5.5
4.5

4
5

3.5
CogMAC+ goodput [bps]

CogMAC goodput [bps]

4.5

3
4
2.5
3.5
2
3
1.5
2.5 CCA2 = 30 ms CCA= 30µs
1 CCA = 1.5ms
CCA2 = 90 ms
2 CCA2 = 150 ms CCA = 15ms
0.5 CCA = 150ms
USRP2 CCA2 = 210 ms
1.5
WARP
0 5 10 15 20 25 0
0 5 10 15 20 25
Number of multiframes Number of multiframes

(e) (f)[6]
Fig. 10. Comparison of the achieved goodput with respect to different parameters on USRP2 and WARP testbeds. One transmitter–receiver pair is used in these experiments with
the transmitter generating saturated traffic with a fixed frame size of 1000 bytes. Fixed CCA2 duration of 30 ms and 30 μs and PU allowance time of 500 ms and 15 ms are used in
(a) USRP2 and (b) WARP testbeds, respectively. PU allowance time of 500 ms and 15 ms are used in (c) USRP2 and (d) WARP testbeds, respectively. PU allowance time of 500 ms
and 15 ms are used in (e) USRP2 and (f) WARP testbeds, respectively.

between Fig. 10(e) and Fig. 10(f) show that the goodput goes varying these key parameters in exactly the same manner. All of the
down as the carrier sensing duration increases following the same following experiments indicate that for unicast traffic, CogMAC+ sub-
trend as on WARP testbed. In conclusion, larger number of multi- stantially outperforms CogMAC in multichannel environment where
frames, smaller carrier sensing duration, and smaller channel pool multiple transmitters and receivers exist.
size lead to higher channel utilization ratio and therefore improve The number of multiframes determines the length of transmis-
the goodput of CogMAC. In general, we are confident that our sion after reserving the channel, which averages the cost caused by
USRP2 testbed is implementing earlier [6] protocol properly and repetitive frame transmission. Fig. 11 shows the cumulative goodput
that fair comparison is possible against CogMAC+ by using this for two transmitter–receiver pairs scenario and four transceivers sce-
implementation. nario, where each transceiver randomly chooses a node as the des-
tination for each transmission. For both scenarios, the transmitters
5.2. CogMAC+ enhancement and transceivers generate saturated unicast traffic. We ensure that
all nodes are placed within the transmission range of each other. In
For both CogMAC+ and CogMAC, a number of parameters such the experiment, we vary the number of multiframes and the CCA2
as the number of multiframes and frame size affect the cumulative duration but fixed channel pool size to four. Due to the parallel trans-
goodput as shown in the above subsection. In this subsection, we mission by MVCS scheme, CogMAC+ achieves significantly higher cu-
empirically characterize CogMAC+ and compare it with CogMAC by mulative goodput than CogMAC. Both protocols scale similarly with

Please cite this article as: P. Wang et al., CogMAC+: A decentralized MAC protocol for opportunistic spectrum access in cognitive wireless
networks, Computer Communications (2015), http://dx.doi.org/10.1016/j.comcom.2015.09.016
JID: COMCOM
ARTICLE IN PRESS [m5G;October 6, 2015;12:4]

12 P. Wang et al. / Computer Communications 000 (2015) 1–15

a b
4
x 10 x 10
CogMAC+, CCA2 = 30 ms 6 CogMAC+, CCA2 = 30 ms
3 CogMAC+, CCA2 = 90 ms CogMAC+, CCA2 = 90 ms
CogMAC+, CCA2 = 150 ms CogMAC+, CCA2 = 150 ms
CogMAC+, CCA2 = 210 ms CogMAC+, CCA2 = 210 ms
CogMAC, CCA2 = 30 ms 5 CogMAC, CCA2 = 30 ms
2.5 CogMAC, CCA2 = 90 ms CogMAC, CCA2 = 90 ms
CogMAC, CCA2 = 150 ms CogMAC, CCA2 = 150 ms
CogMAC, CCA2 = 210 ms CogMAC, CCA2 = 210 ms
Goodput [bps]

Goodput [bps]
4
2

3
1.5

0.5
5 10 15 20 25 30 35 40 45 50 5 10 15 20 25 30 35 40 45 50
Number of multiframes Number of multiframes

Fig. 11. Goodput comparison of (a) two transmitter–receiver pairs scenario and (b) four transceivers scenario with respect to different numbers of multiframes and different carrier
sensing durations. All transmitting nodes generate saturated unicast traffic with a fixed frame size of 1000 bytes. Fixed CCA2 duration of 30 ms and PU allowance time of 500 ms
are considered.

4 4
x 10 x 10
6
CogMAC+, PU time = 1000 ms CogMAC+, CCA2 = 30 ms
CogMAC+, PU time = 800 ms 6 CogMAC+, CCA2 = 90 ms
5.5 CogMAC+, CCA2 = 150 ms
CogMAC+, PU time = 600 ms
CogMAC+, PU time = 400 ms CogMAC+, CCA2 = 210 ms
5 CogMAC, PU time = 1000 ms CogMAC, CCA2 = 30 ms
5
CogMAC, PU time = 800 ms CogMAC, CCA2 = 90 ms
4.5 CogMAC, PU time = 600 ms CogMAC, CCA2 = 150 ms
CogMAC, PU time = 400 ms CogMAC, CCA2 = 210 ms
Goodput [bps]
Goodput [bps]

4
4

3.5
3

2.5 2

2
1
1.5

1 0
5 10 15 20 25 30 35 40 45 50 300 400 500 600 700 800 900 1000 1100 1200
Number of multiframes Frame size [bytes]

Fig. 12. Achieved goodput with respect to different numbers of multiframes and dif- Fig. 13. Achieved goodput with respect to different frame sizes. Four transceiver sce-
ferent PU allowance time. Two transmitter–receiver pairs are used in the experiment nario is considered in the experiment with the transmitter generating saturated uni-
with the transmitters generating saturated unicast traffic with a fixed frame size of cast traffic. A fixed PU allowance time of 500 ms and a fixed number of multiframes
1000 bytes. Fixed CCA2 duration of 30 ms is considered. are considered.

For a network, the number of users affects its performance by


the number of multiframes, but CogMAC+ is always providing higher causing congestion and collisions. In order to evaluate the perfor-
throughput values. mance of CogMAC+ in a larger network, we carry out an experiment
PU allowance interval affects the performance of SU, because it with up to 16 USRP2 nodes. The results are shown in Fig. 15. Num-
determines how frequently the transmission is required to be in- ber of channels is initialized as four, but increases as the number of
terrupted and sensing is performed. A longer PU allowance interval transmitter–receiver pairs goes up to ensure that the number of chan-
means that the SU is able to carry out more frame transmissions be- nels is larger than or equal to the number of pairs. Therefore, each
tween two sensing operations, which leads to a higher channel uti- pair is able to find a non occupied channel to carry out its own trans-
lization ratio and higher throughput as can be seen from Fig. 12. In mission even in the worst case that all other pairs are transmitting at
our experiments, CCA2 duration was fixed to 30 ms and channel pool the same time. It can be seen from the result that as the number of
size was fixed to four. Two transmitter–receiver pairs are used in the pairs increases, the cumulative goodput of CogMAC+ increases due to
experiment, where each transmitter generates saturated unicast traf- the fact that more links are active. The figure also shows a trend that
fic to a fixed destination. As shown in Fig. 12, both CogMAC+ and as the number of pairs increases, the increment of cumulative good-
CogMAC are able to transmit more data with larger PU allowance in- put of the new pair is reduces, i.e., the cumulative goodput tends to
terval. For each value of PU allowance interval, the improvement of converge when the number of nodes increases. This happens because
CogMAC+ compared to CogMAC stays significant. the contention increases as the number of pairs increases, the pool
Similar to the number of multiframes and the PU allowance inter- sensing duration is also prolonged according to the channel pool size
val, frame size also affects the channel utilization. Fig. 13 shows the and parallel transmissions. A more clear convergence behavior can be
cumulative goodput of two transmitter–receiver pairs with respect seen from the graphs of CogMAC in the same figure. Because CogMAC
to different frame sizes. As expected, as the frame size increases, the does not support parallel transmission and virtual carrier sensing, the
goodput increases. contention in CogMAC is stronger.

Please cite this article as: P. Wang et al., CogMAC+: A decentralized MAC protocol for opportunistic spectrum access in cognitive wireless
networks, Computer Communications (2015), http://dx.doi.org/10.1016/j.comcom.2015.09.016
JID: COMCOM
ARTICLE IN PRESS [m5G;October 6, 2015;12:4]

P. Wang et al. / Computer Communications 000 (2015) 1–15 13

4 4
x 10 x 10
Six TX/RX pairs CogMAC+ 3 CogMAC+: average sequence load is 0
Five TX/RX pairs CogMAC+ CogMAC+: average sequence load is 0.2
6
Four TX/RX pairs CogMAC+ CogMAC+: average sequence load is 0.4
Three TX/RX pairs CogMAC+
CogMAC+: average sequence load is 0.7
Two TX/RX pairs CogMAC+
One TX/RX pair CogMAC+
2.5 CogMAC: average sequence load is 0
5 Six TX/RX pairs CogMAC CogMAC: average sequence load is 0.2
Five TX/RX pairs CogMAC CogMAC: average sequence load is 0.4
Four TX/RX pairs CogMAC CogMAC: average sequence load is 0.7
Three TX/RX pairs CogMAC 2

Goodput [bps]
Goodput [bps]

4 Two TX/RX pairs CogMAC


One TX/RX pair CogMAC

1.5
3

1
2

0.5
1

0
1 3 5 7 9 11 13 15 17 19 21 23 25
0
1 3 5 7 9 11 13 15 17 19 21 23 25 Number of multiframes
Number of multiframes
Fig. 16. Achieved goodput with respect to the number of multiframes. Two
Fig. 14. Achieved goodput with respect to the number of multiframes. Up to transmitter–receiver pairs are considered in the experiment with the transmitter gen-
6 transmitter–receiver pairs are considered in the experiment as all of the transmit- erating saturated unicast traffic. A fixed PU allowance time of 500 ms and a fixed CCA2
ters generating saturated unicast traffic. The number of channels is fixed to three in duration of 30 ms are considered. Different average sequence loads are changed in the
this experiment. A fixed PU allowance time of 500 ms and a fixed CCA2 duration 30 ms experiment.
are considered. The number of transmitter–receiver pairs is changed from one to six.

8
x 10 to emulate the behavior of external transmission. During the last
Eight TX/RX pairs CogMAC+
Seven TX/RX pairs CogMAC+ years an increasing number of studies on spectrum occupancies were
Six TX/RX pairs CogMAC+
7 Five TX/RX pairs CogMAC+
carried out. Stabellini made spectrum measurements in 2.4 GHz
Four TX/RX pairs CogMAC+ ISM band while considering heterogenous traffic [39]. Their analy-
Three TX/RX pairs CogMAC+
6
Two TX/RX pairs CogMAC+ sis statistically characterized that the Hyper-Exponential Distribution
One TX/RX pair CogMAC+
Eight TX/RX pairs CogMAC (HED) model provides a good fit to the empirical data, which assumes
Seven TX/RX pairs CogMAC
that the duration of busy state follows the Exponential Distribution
Goodput [bps]

5 Six TX/RX pairs CogMAC


Five TX/RX pairs CogMAC (ED), and the idle state follows HED. The parameters of HED are re-
Four TX/RX pairs CogMAC

4
Three TX/RX pairs CogMAC lated to the average sequence load which is the ratio of the duration of
Two TX/RX pairs CogMAC
One TX/RX pair CogMAC busy state and the overall experimental time. Due to the speed lim-
3
itation of USRP2-LabVIEW testbed, we proportionately increase the
HED parameters from millisecond to second. We implement an inter-
2
ferer by using the same setup as the testbed which is able to generate
different traffic loads according to the HED model to emulate the ex-
1
ternal transmission.
CogMAC and CogMAC+ are compared by varying the average se-
quence load1 of channels in Fig. 16. The spectrum model is chosen ac-
0
1 3 5 7 9 11 13 15 17 19 21 23 25 cording to [39], where the three levels of the average sequence load,
Number of multiframes i.e., the average sequence load of 0.2 for the medium load interval,
Fig. 15. Achieved goodput with respect to the number of multiframes. Up to the average sequence load of 0.4 for the high load interval, and the
8 transmitter–receiver pairs are considered in the experiment as all of the transmit- average sequence load of 0.7 for the very high load interval are tested
ters generating saturated unicast traffic. A fixed PU allowance time of 500 ms and a and the non-interference scenario is also carried out as a reference. It
fixed CCA2 duration 30 ms are considered. The number of transmitter–receiver pairs is shows that the performance degradation of CogMAC+ in the crowded
changed from one to eight.
environment is lower than the degradation of CogMAC in the same
environment.
In the above experiment, we always keep the number of channels Since the transmitting node only transmits when the channel is
to be larger than or equal to the number of node pairs. However, wire- idle, the utilization of channels with different average sequence loads
less spectrum is a very scarce resource in reality. Therefore, the per- should be different, e.g., the cumulative goodput should be lower
formance of CogMAC+ in a congested network should be evaluated. in the heavier loaded channel. In order to study the relation be-
Fig. 14 compares the performance of CogMAC+ and CogMAC by vary- tween loads and goodput, we design an experiment in which two
ing the number of node pairs from one to six but fixing the number of pairs of nodes carry out transmission in three channels with differ-
channels to three. Graphs with different numbers of pairs show that ent loads as shown in Fig. 17. The result shows a positive correlation
the cumulative goodput tend to converge when the number of pairs between the average sequence loads and cumulative goodput of both
increases. Due to the limited number of channels, the convergence in CogMAC+ and CogMAC. Moreover, it can be seen from the figure that
this experiment appears earlier compared to the previous one, where the channel utilization of CogMAC+ has higher linearity than Cog-
more channels are available. MAC with the loads. It indicates that CogMAC+ is better on exploiting

5.3. Performance evaluation of secondary usage 1


Average sequence load is defined in [39] as the ratio among the number of busy
samples and the total number of collected samples from a measured sample sequence.
In order to evaluate the performance of CogMAC+ with the ex- In our experiments, we use this term to denote the ratio between the channel idle
istence of external transmission, we use a realistic spectrum model duration and busy duration.

Please cite this article as: P. Wang et al., CogMAC+: A decentralized MAC protocol for opportunistic spectrum access in cognitive wireless
networks, Computer Communications (2015), http://dx.doi.org/10.1016/j.comcom.2015.09.016
JID: COMCOM
ARTICLE IN PRESS [m5G;October 6, 2015;12:4]

14 P. Wang et al. / Computer Communications 000 (2015) 1–15

10000 and it is able to achieve substantial improvement in both networks


Cumulative goodput of CogMAC+
Cumulative goodput of CogMAC when compared against CogMAC. The results prove that CogMAC+ is
9000
able to support the colocated heterogeneous networks and provide
8000 reliable and efficient data services for each participating network.

7000
6. Conclusion and future work
Goodput [bps]

6000
In this paper, we have presented the design and implementation
5000 of a novel decentralized cognitive MAC protocol, CogMAC+, which
enables nodes to efficiently utilize spectrum holes opportunistically.
4000
In CogMAC+, each SU is able to sense all channels in its channel pool
3000 and detect external transmissions. SU uses repetitive frame transmis-
sion for channel reservation, while carrying out aggregation trans-
2000 mission to lower down the frame repetition cost. By using the cyclic
sensing scheme, the interruption caused by SU to PU can be con-
1000
trolled under the permitted level. Moreover, virtual carrier sensing
0 scheme is used to achieve accurate channel sensing and dynamic
Chanel 1 with load 0.2 Chanel 2 with load 0.4 Chanel 3 with load 0.7
channel pool control which enables address-specified parallel trans-
Fig. 17. Cumulative goodput comparison of CogMAC+ with CogMAC in the presence mission. It is also able to avoid sensing the occupied channels. We
of external transmission in different channels with different average sequence loads. have also integrated the MAC layer states and parameters for adaptive
Two transmitter–receiver pairs are considered in the experiment. Transmitters gener-
noise floor estimation and clear channel assessment algorithm to al-
ating saturated unicast traffic. A fixed PU allowance time of 500 ms and a fixed CCA2
duration of 30 ms are considered. low a relatively low false positive frame detection ratio. We have em-
pirically evaluated CogMAC+ on the USRP2-LabVIEW testbed includ-
4 ing up to 16 USRP2 devices under different traffic loads and spectral
x 10
3.5
QPSK CogMAC+ conditions. A number of experiments revealed the fact that CogMAC+
BPSK CogMAC+ is able to offer reliable data communication services and significant
3 QPSK CogMAC performance improvement. Our evaluation with realistic spectrum
BPSK CogMAC models confirms that CogMAC+ is able to efficiently utilize spectrum
holes and enables efficient spectral coexistence. As part of our current
2.5
work, we are investigating the use of partially observable Markov de-
cision process framework for estimating the channel occupancy in
Goodput [bps]

2
a better way. This sort of predictor could be added to the current
CogMAC+ protocol and its heuristic quite straightforwardly.
1.5

Acknowledgment
1
We would like to thank the financial support from RWTH Aachen
University and German research foundation (Deutsche Forschungs-
0.5
gemeinschaft) through UMIC research center.

0
1 3 5 7 9 11 13 15 17 19 21 23 25 References
Number of multiframes
[1] C. Cormio, K. Chowdhury, A survey on MAC protocols for cognitive radio net-
Fig. 18. Achieved goodput of two networks with respect to different numbers of mul- works, Ad Hoc Networks 7 (7) (2009) 1315–1329.
tiframes. Four transmitter–receiver pairs are considered in the experiment, in which [2] I.F. Akyildiz, W.-Y. Lee, M.C. Vuran, S. Mohanty, A survey on spectrum manage-
two pairs use BPSK modulation, and another two pairs use QPSK. Frame size is fixed to ment in cognitive radio networks, IEEE Commun. Mag. 46 (4) (2008) 40–48.
500 bytes for both of the networks. All transmitters generate saturated unicast traffic [3] A. De Domenico, E.C. Strinati, M. Di Benedetto, A survey on MAC strategies for
cognitive radio networks, IEEE Commun. Surv. Tutorials 14 (1) (2012) 21–44.
to their preassigned receivers. A fixed CCA2 duration of 30 ms and a PU allowance time
[4] P.-Y. Ren, Y.-C. Wang, Q.-C. Du, J. Xu, A survey on dynamic spectrum access pro-
of 500 ms are considered.
tocols for distributed cognitive wireless networks, EURASIP J. Wireless Commun.
Networking 2012 (2012) 60.
[5] A. Ali, H.-Q. Wang, H.-W. Lv, X.-M. Chen, A survey of MAC protocols design strate-
the crowded spectrum environment and it adapts the external trans- gies and techniques in wireless ad hoc networks, J. Commun. 9 (2014) 30–38.
[6] J. Ansari, X. Zhang, P. Mähönen, A decentralized MAC protocol for opportunis-
mission in the long-term better than CogMAC. tic spectrum access in cognitive wireless networks, J. Comput. Commun. 36 (13)
In order to evaluate the performance of CogMAC+ of colocated (2013) 1399–1410.
heterogeneous cognitive networks, we designed an experiment with [7] National Instruments LabVIEW 2012 Release Details, http://www.ni.com/
labview/release-archive/2012/, last visited: 06.07.15.
two networks which are using different modulation schemes. There- [8] Ettus Research, Universal Software Radio Peripheral (USRP), http://www.ettus.
fore, the nodes in one network cannot distinguish the transmission of com, last visited: 06.07.15.
another network and PU transmission. Four channels are considered [9] A. Khattab, J. Camp, C. Hunter, P. Murphy, A. Sabharwal, E.W. Knightly, WARP:
a flexible platform for clean-slate wireless medium access protocol design, ACM
in the experiment with different average sequence loads. Following
SIGMOBILE Mob. Comput. Commun. Rev. 12 (1) (2008) 56–58.
the classification of the average sequence load in [39], two channels [10] B. Hamdaoui, K.G. Shin, OS-MAC: an efficient MAC protocol for spectrum-agile
are set in the very high loaded interval with the average sequence wireless networks, IEEE Trans. Mob. Comput. 7 (8) (2008) 915–930.
[11] T. Yucek, H. Arslan, A survey of spectrum sensing algorithms for cognitive radio
load of 0.7, one channel falls in the high load interval with the aver-
applications, IEEE Commun. Surv. Tutorials 11 (1) (2009) 116–130.
age sequence load of 0.4, and the last channel is set to the medium [12] S. Debroy, S. De, M. Chatterjee, Contention based multichannel MAC protocol for
load interval with the average sequence load of 0.2. The experimental distributed cognitive radio networks, IEEE Trans. Mob. Comput. 13 (12) (2014)
result shown in Fig. 18 verifies that both CogMAC+ and CogMAC are 2749–2762.
[13] S.M. Mishra, A. Sahai, R.W. Brodersen, Cooperative sensing among cognitive ra-
able to support colocated heterogeneous networks. The performance dios, in: Proceedings of the IEEE International Conference on Communications,
of CogMAC+ follow the same trend as in the single network scenario Istanbul, Turkey, 2006.

Please cite this article as: P. Wang et al., CogMAC+: A decentralized MAC protocol for opportunistic spectrum access in cognitive wireless
networks, Computer Communications (2015), http://dx.doi.org/10.1016/j.comcom.2015.09.016
JID: COMCOM
ARTICLE IN PRESS [m5G;October 6, 2015;12:4]

P. Wang et al. / Computer Communications 000 (2015) 1–15 15

[14] J. Park, P. Paweczak, D. Cabric, Performance of joint spectrum sensing and MAC [28] T.R. Newman, S. Shajedul Hasan, D. DePoy, T. Bose, J.H. Reed, Designing and de-
algorithms for multichannel opportunistic spectrum access ad hoc networks, IEEE ploying a building-wide cognitive radio network testbed, IEEE Commun. Mag. 48
Trans. Mob. Comput. 10 (7) (2011) 1011–1027. (9) (2010) 106–112.
[15] C. Cordeiro, K. Challapali, D. Birru, S. Shankar, IEEE 802.22: The first world-wide [29] M. Dardaillon, K. Marquet, J. Martin, T. Risset, H.-P. Charles, Cognitive radio pro-
wireless standard based on cognitive radios, in: Proceedings of IEEE DySPAN, Bal- gramming: existing solutions and open issues, Rapport de recherche RR-8358,
timore, USA, 2005. INRIA, 2013.
[16] M.D. Silvius, A.B. MacKenzie, C.W. Bostian, Rendezvous MAC protocols for use in [30] J. Ansari, X. Zhang, A. Achtzehn, M. Petrova, P. Mähönen, A flexible MAC develop-
cognitive radio networks, in: Proceedings of the 28th IEEE Conference on Military ment framework for cognitive radio systems, in: Proceedings of the IEEE Wireless
Communications, Boston, MA, USA, 2009. Communications and Networking Conference, Cancun, Mexico, 2011.
[17] K.-G. Bian, J.-M. Park, Maximizing rendezvous diversity in rendezvous proto- [31] IEEE 802.11 Working Group, IEEE 802.11ac. Standard for Information Technol-
cols for decentralized cognitive radio networks, IEEE Trans. Mob. Comput. 12 (7) ogy – Telecommunications and Information Exchange Between Systems – Local
(2013) 1294–1307. and Metropolitan Area Networks – Specific Requirements – Part 11: Wireless LAN
[18] S. Romaszko, A rendezvous protocol with the heterogeneous spectrum Medium Access Control (MAC) and Physical Layer (PHY) Specifications Amend-
availability analysis for cognitive radio ad hoc networks, J. Electr. Comput. Eng. ment 4: Enhancements for Very High Throughput for Operation in Bands Below
2013 (2013) 1. 6 GHz, IEEE Std, 2012, pp. 1–628.
[19] Y. Song, J. Xie, BRACER: a distributed broadcast protocol in multi-hop cognitive [32] X.-Y. Wang, A. Wong, P.-H. Ho, Extended knowledge-based reasoning approach
radio ad hoc networks with collision avoidance, IEEE Trans. Mob. Comput. 14 (3) to spectrum sensing for cognitive radio, IEEE Trans. Mob. Comput. 9 (4) (2010)
(2015) 509–524. 465–478.
[20] S.-L. Wu, C.-Y. Lin, Y.-C. Tseng, J.-P. Sheu, A new multi-channel MAC protocol with [33] M.S. Oude Alink, A.B.J. Kokkeler, E.A.M. Klumperink, G.J.M. Smit, B. Nauta,
on-demand channel assignment for multi-hop mobile ad hoc networks, in: Pro- Spectrum sensing with high sensitivity and interferer robustness using cross-
ceedings of the International Symposium on Parallel Architectures, Algorithms correlation energy detection, IEEE J. Emerging Sel. Top. Circuits Syst. 3 (4) (2013)
and Networks, Dallas/Richardson, TX, USA, 2000. 566–575.
[21] M. Timmers, S. Pollin, A. Dejonghe, L. Van Der Perre, F. Catthoor, A distributed [34] J. Polastre, Sensor network media access design, Technical report, EECS Depart-
multichannel MAC protocol for multihop cognitive radio networks, IEEE Trans. ment, University of California Berkeley, USA, 2003.
Veh. Technol. 59 (2010) 446–459. [35] Technical Presentations: Potential of Modified Signal Detection Thresh-
[22] J.-C. Jia, Q. Zhang, X.-M. Shen, HC-MAC: a hardware-constrained cognitive MAC for olds, https://mentor.ieee.org/802.11/dcn/15/11-15-0300-00-00ax-potential-
efficient spectrum management, IEEE J. Sel. Areas Commun. 26 (1) (2008) 106– of-modified-signal-detection-thresholds.pptx, last visited: 06.07.15.
117. [36] T. Lu, C. Zhao, Y. Zhang, X. Peng, Optimal threshold of Welch’s periodogram for
[23] C. Cordeiro, K. Challapali, C-MAC: a Cognitive MAC protocol for multi-channel spectrum sensing under noise uncertainty, in: Proceedings of the Third Interna-
wireless networks, in: Proceedings of the IEEE International Dynamic Spectrum tional Conference on Communications, Signal Processing, and Systems, Springer,
Access Networks Symposium, Dublin, Ireland, 2007. 2015.
[24] E. Nanda, U. Joshi, V. Ribeiro, H. Saran, RODMAC: a RObust and Distributed MAC [37] Y.-S. Huang, P.A. Walsh, Y.-H. Li, S.-W. Mao, A distributed polling service-based
protocol for efficient use of white spaces, in: Proceedings of the International Con- MAC protocol testbed, Int. J. Commun. Syst. 27 (2013) 3901–3921.
ference on Communication Systems and Networks, Bangalore, India, 2013. [38] P. Wang, J. Ansari, M. Petrova, P. Mähönen, Demo: CogMAC+ – a decentralized
[25] J. Marinho, E. Monteiro, Cognitive radio: survey on communication protocols, multichannel MAC protocol for cognitive wireless networks, in: Proceedings of
spectrum decision issues, and future research directions, J. Wireless Networks the 2014 ACM Workshop on Software Radio Implementation Forum, Chicago,
18 (2) (2012) 147–164. USA, 2014.
[26] K.R. Chowdhury, T. Melodia, Platforms and testbeds for experimental evaluation [39] L. Stabellini, Quantifying and modeling spectrum opportunities in a real wire-
of cognitive ad hoc networks, IEEE Commun. Mag. 48 (9) (2010) 96–104. less environment, in: Proceedings of the IEEE Wireless Communications and Net-
[27] F. Vazquez Gallego, J. Alonso-Zarate, C. Verikoukis, L. Alonso, A survey on proto- working Conference, Sydney, Australia, 2010.
typing platforms for the development and experimental evaluation of medium
access control protocols, IEEE Wireless Commun. 19 (1) (2012) 74–81.

Please cite this article as: P. Wang et al., CogMAC+: A decentralized MAC protocol for opportunistic spectrum access in cognitive wireless
networks, Computer Communications (2015), http://dx.doi.org/10.1016/j.comcom.2015.09.016

You might also like