Reliable Broadcast over Cognitive Radio Networks: A Bipartite Graph-Based Algorithm

Cognitive radio is a promising technology that aims to enhance the spectrum utilisation by enabling unlicenced users to opportunistically use the vacant spectrum bands assigned to licenced users. Broadcasting is considered as a fundamental operation in wireless networks, as well as in cognitive radio networks (CRNs). The operation of most network protocols in the ad hoc network depends on broadcasting control information from neighbouring nodes. In traditional single-channel or multichannel ad hoc networks, due to uniform channel availability, broadcasting is easily implemented as nodes are tuned to a single common channel. On the contrary, broadcasting in CR ad hoc networks is both a challenging and complex task. The complexity emerges from the fact that different CR users might acquire different channels at different times. Consequently, this partitions the network into different clusters. In this chapter, the problem of broadcasting in ad hoc CR networks is presented, current solutions for the problem are discussed and an intelligent solution for broadcasting based on graph theory to connect different local topologies is developed.


Introduction
The idea of an intelligent wireless communication framework cognitive radio (CR) network has been proposed as a solution to deal with the disparity between the increasing demand of wireless radio spectrum and the spectrum underutilisation by licenced users [1]. Unlike conventional spectrum policy in which designated parts of the spectrum are allocated specifically for exclusive use to licenced users (usually referred to as primary users), CR technology permits unlicenced users (usually referred to as CR users) to utilise idle bands as long as they do not cause harmful interference to primary users [2].
The operation of a CR network is more complicated than other wireless networks because the CR nodes dynamically access the available channels. Detecting the presence of primary users and further determining the availability of certain channels are regarded as a major technical challenge in CR networks [3]. Hence, spectrum sensing is considered as an important issue of CR networks that aim to find the vacant frequency bands in order to allow CR users access to licenced bands in an opportunistic manner [4].
According to the deployment scenario, CR networks can be classified into two basic types of networks: one is the infrastructure-based CR networks, and the second is the infrastructureless CR networks [5]. In the infrastructure-based CR networks, all CR nodes directly communicate with the central network entity, which is responsible for managing the network operations, for instance, spectrum sensing and spectrum assignment [6]. On the other hand, in the infrastructure-less CR networks, also known as CR ad hoc network, no central entity is present. Therefore, CR nodes have to rely on themselves for spectrum sensing, assignment and management. The application of CR technology in distributed scenarios remains underdeveloped due to a lack empirical research [7].
Broadcasting is considered a fundamental operation in wireless and cognitive radio networks (CRNs). The operation of most network protocols in the ad hoc network depends on broadcasting control information among neighbouring nodes, such as spectrum sensing and routing information.
In traditional single-channel or multichannel ad hoc networks, due to uniform channel availability, broadcasting is easily implemented as nodes are tuned to a single common channel. On the contrary, broadcasting in CR ad hoc networks is a challenging task and much more complicated. The complexity emerges from the fact that different CR users might acquire different channels at different times. Consequently, this partitions the network into different clusters. Cognitive radio (CR) ad hoc networks rely on extensive exchange of control messages among neighbouring nodes to coordinate critical network functions such as cooperative sensing, routing, medium access, etc. To reliably broadcast these messages, a preassigned common control channel is needed. However, assigning a static control channel contradicts the opportunistic access nature of cognitive radio networks (CRNs).
In this chapter, the problem of broadcast in ad hoc CR networks is discussed, current solutions for the problem are reviewed and an intelligent solution for broadcasting based on graph theory to connect different local topologies is developed, which is a unique feature in CRNs. The remainder of this chapter is organised as follows: Section 2 describes the related work in this area. Then the broadcast problem is presented with the system model in Section 3. The proposed broadcast protocol for multi-hop CR ad hoc networks is presented in Section 4. Performance evaluation is conducted in Section 5, followed by conclusions in Section 6.

Related work for broadcasting in CR network
In the literature, several works have extensively studied the broadcasting issue in traditional ad hoc networks, Mobile Ad Hoc Networks (MANETs), Wireless Mesh Networks (WMNs), vehicular ad hoc networks (VANETs) and wireless sensor networks (WSNs). Nevertheless, there are a few studies that investigate the problem of broadcasting in CR ad hoc networks. These works propose numerous performance goals, for example, optimisation of throughput, delay and data delivery. However, most of these techniques cannot be used in practical scenarios due to their limitations and impractical assumptions.
In the recent literature, many protocols have been presented for exchanging messages in CR networks. One of the simplest suggestions is broadcasting over the unlicenced bands such as ultra-wide band (UWB) or industrial, scientific and medical (ISM) [8]. This proposal cannot guarantee the reliability because these unlicenced bands are already overcrowded. Since many wireless devices communicate in the same band, harmful interference may significantly degrade the performance of broadcasting.
The authors in Ref. [9] propose a new strategy for broadcasting. They classify the channels based on the primary radio (PR) vacancy and CR occupancy. This strategy transmits on a single channel; therefore, CR nodes within the transmission range of the sender may not be able to receive the transmitted data if they tune onto a different channel. In Ref. [10], the authors proposed that the secondary network composed of a set of single-antenna secondary receivers (SRs) and one multi-antenna secondary transmitter (ST). The main responsibility of ST is to broadcast the message to the SRs without interfering the primary communication. Since the secondary users use orthogonal beamforming techniques, they can access the licenced spectrum without causing an interference to primary transmission.
The use of a dedicated control channel has been proposed to enable control message exchanging in multichannel networks [11,12]. To transmit or receive messages, the CR node must tune onto the common control channel (CCC). In CR networks, it is very difficult to find an idle common channel for all nodes. Hence, this technique is not considered to be feasible. Different schemes have been proposed for establishing a local common control channel for exchanging messages [13,14]. However, most of these schemes require prior information about the set of idle channels across all the CR nodes in the network.
In Ref. [15], the authors assume that the same idle channels between CR nodes are a must to successfully broadcast data. The proposed approaches in Ref. [16] assume that the CR node hops across the channels based on a random channel-hopping sequence to transmit broadcast data. This scheme cannot guarantee reliable dissemination even if there is a common channel between nodes. In Ref. [17], the authors study the issue of broadcasting using multiple transceivers. It is assumed that the number of transceivers of each CR node is equal to the number of channels. This will raise the operational cost and the complexity of the CR device; therefore it is considered an impractical choice.
Many algorithms assume prior knowledge of the channel availability information and the global network topology [18,19]. A time-efficient broadcast algorithm is presented in Ref. [18], where a set of channels and nodes are selected to convey a message from the source node to its neighbours. The authors in Ref. [19] propose a simple heuristic algorithm to transmit the messages between CR nodes in CR ad hoc networks. In this work, CR nodes are assumed to be equipped with multiple transceivers to broadcast to multiple channels.

Broadcast problem and system model
In this section, the broadcast problem, the system model and the basic assumptions are presented.

Broadcast problem in CR networks
To further illustrate the challenges associated with broadcast in CR ad hoc networks, consider simple single-hop broadcast topology for traditional and CR network shown in Figures 1 and 2, respectively, where node A is the source node with N neighbours.
In traditional ad hoc networks, all nodes can tune to the same channel due to the uniformity of channel availability. Therefore, broadcasting a message can be easily implemented over a single common channel as all nodes receive messages from the same channel. As shown in Figure 1, node A only needs to broadcast over a single channel to deliver the broadcast message to all its neighbouring nodes.
However, in CR ad hoc networks, the opportunity of a common channel available for all CR nodes may not exist. In addition, different CR users might acquire different channels at different times. Therefore, broadcasting in cognitive radio ad hoc networks is a much more challenging task. As shown in Figure 2, to deliver the broadcast message to all the neighbouring nodes, node A needs to transmit the broadcast message to different channels. In the worst case, each neighbouring node may tune onto a different channel. Consequently, the source node has to broadcast over all the channels.
In fact, the reliable broadcasting in CR ad hoc networks depends on connecting different local topologies. Hence, the broadcast channel(s) should be carefully and dynamically allocated in order to secure a reliable communication in CR networks.

Network model
A CR ad hoc network with no centralised coordinator is considered. Hence, network environment tasks like channel selection, neighbour discovery and spectrum sensing are individually accomplished by the CR users.
We consider a set of N cognitive radio (CR) nodes {CR 1 , CR 2 , …, CR n } and a set of M primary radio (PR) nodes {PR 1 , PR 2 , …, PR m } in the same geographical area. Primary radio nodes are the licenced users, and they can access their respective licenced bands without any restriction. While CRs can access licenced bands opportunistically, i.e. they are allowed to use the idle licenced bands only if they do not interfere with ongoing PR transmissions.
Note that an idle state describes the temporal availability of a channel. To prevent interference, CR users are capable of sensing spectrum opportunities using energy detectors, cyclostationary feature extraction, pilot signals or cooperative sensing [5].
A set of K nonoverlapping orthogonal frequency channels (C global = C 1 , C 2 , …, C k ) is considered, which may be freely occupied by the PR users. Each CR node knows the global channel set C global and can operate on a subset C local of this global channel set depending on the local channel availability at that node, where C local ⊆ C global . For simplicity, it is assumed that all channels have the same capacity. However, the proposed protocol can be easily extended to channels of different capacities.
In this model, it is assumed that CR nodes are equipped with half-duplex transceivers that can either receive or transmit (not both) on a single channel at any given time. Each CR can swiftly hop between channels using software-defined radio (SDR) technology. The utilisation of a single transceiver reduces the operational cost of the CR device [6], as well as avoiding any potential interference between adjacent transceivers due to their close proximity [7].
Throughout this chapter, it is assumed that the channel availability is relatively stable (i.e. during a short period of time, channel status does not change). Therefore, the proposed protocol is more suited to the case of temporal underutilisation and spatial spectrum underutilisation when the activity of PR user is not very dynamic. The main notations used in the chapter are summarised in Table 1 for easy reference.

Sensing spectrum holes
Spectrum sensing aims to identify the available spectrum and prevent any harmful interference to the primary users. It is assumed that CR nodes periodically perform spectrum sensing to ensure up-to-date information regarding the PR activity and identify the available channels.
In addition, it is assumed all CR nodes are synchronised and follow the same sensing cycles.
In the sensing period, no transmission is allowed, and all CR nodes must be silent. Therefore, the time needed to deliver a packet in the network may be influenced when the CR nodes are banned from transmission due to the imposition of the silent duration.
The transmission time and the spectrum sensing for every CR user are T t and T s , respectively, where T t is the effective duration of time for which transmission is allowed for any CR node on any choice of free spectrum, while T s is the duration of time that all CR nodes must be silent for the purpose of sensing. T s + T t gives the frame time for each user when considered together.

Discovering CR neighbouring nodes
To successfully deliver the broadcast messages to all the CR nodes in each neighbourhood, CRs must discover the network topology and the common idle channels that can be used to communicate among neighbours; these tasks are typically undertaken during the neighbour discovery.
In the absence of a common control channel, discovering neighbours in CR Ad Hoc Network (CRAHN) is undoubtedly a challenging task; we propose a neighbour discovery mechanism to address this issue. Initially, it is assumed that individual nodes are tuned to different channels and have no prior knowledge of their neighbours and the network topology. Furthermore, each CR node maintains the local idle channel list based on the information received from the spectrum sensing.
At the beginning of constructing the network, every CR node has to beacon its information (node's id and its available channels) onto all the locally available channels, one by one. As a result, all single-hop neighbours that are tuned to any idle channels are able to receive a copy of this message. Each CR node receives this beacon message and records the transmitter's CR node information in its single-hop neighbours list N i . After forming and configuring the network, the CR nodes do not have to beacon messages unless there is a change in their channel availability.

Intelligent broadcasting algorithm
In this section, we present optimal broadcasting algorithm (OBA), the proposed broadcast protocol for ad hoc CR networks. OBA mainly aims to maximise the reachability and increase the reliability of data dissemination in ad hoc CR networks. To guarantee successful broadcast operation, the OBA protocol adapts to current network characteristics. Hence, based on local measurements of the PR activities, each CR node independently classifies the set of available channels. This process of classification is refined by determining the minimum set of broadcast channels. The receiving channel of a given node is identified from this minimum set of channels. This tuning channel is selected from the set because it has no PR activity, thus being able to reach a higher number of CR neighbours.
To increase the network connectivity, the OBA aims to converge CRs that possess similar spectrum opportunities to the same channel. This in turn reduces the delay in packet dissemination and number of transmissions over multiple channels. This aim is motivated by two key factors. First, grouping CRs with similar available channels indirectly initiates hard-decision cooperative sensing [8,20]. Second, it minimises the required number of channels in the set that are needed to connect all neighbouring nodes.
In order to guarantee conveying the broadcast message to all the neighbouring nodes in each transmission, the CR sender broadcasts the message over a minimum set of the available channels that are shared between the sender and its neighbouring nodes.
CR nodes with no transmission requests refine the channels based on the same criterion to select the best channel for message reception. The use of similar refining techniques by all nodes in the network means it is highly probable that CR users in close geographic locations select the same channel set. It is probable that neighbouring CR nodes of the transmitter CR node sense the same primary activity. It is highly likely that channels at a CR node's disposition are also free to its neighbours [11]. Therefore, the probability of creating a connected topology is increased by OBA. Once a message is received, the intermediate CR node carries out the procedure again and rebroadcasts in order to deliver the message to its neighbours.
The following characteristics were considered crucial in the development of OBA: (i) decentralisation, distributed implementation of channel allocation; (ii) convergence, CR users with the same available channels individually converge to the same channel decisions; (iii) delay and communication efficiency, channel allocation is achieved with no exchange of messages; and (iv) adaptability, reallocation is required only in the case where there is a change in the network topology.

Primary radio activity model
The primary user activity on the licenced channels has a vital effect on the CR network performance. Therefore, the realisation of CR protocols depends on the estimation of these activities. In the literature, many works have used the PR activity model [5,9,21], where the PR traffic is modelled as an alternating renewal process of idle (OFF) and busy (ON) periods. It is assumed that both OFF and ON periods of the PR activity are independent and identically distributed (i.i.d.). In addition, the alternating renewal process is represented by a two-state birth-death process with birth rate λ on and death rate λ off [22].
Let 1/λ on and 1/λ off be the average ON and OFF times of the kth channel. The probability of the kth channel being occupied is given by where 1 ≤ k ≤ K (the total number of channels). Therefore, the probability of utilising the kth channel (i.e. the channel being idle) without causing harmful interference to the primary users is (2) Let the channel set that match the user requirements (i.e. probability of idle channels being greater or equal to a predefined threshold P th ), represented by Φ. From Eq. (2), the set of available channels Φ for each node can be obtained as follows:

Bipartite graph representation
Different CR nodes may detect different available channel sets and neighbours due to the temporal and spatial distribution of the primary activity. To initiate communication with other nodes, each CR node must construct a local view of the network topology. This will include neighbouring nodes in the vicinity and their channels' information. A bipartite graph jointly models the set of shared idle channels among neighbouring nodes and the CR network topology [23].
A graph G(V, E) is called a bipartite graph G(X, Y, E) if the set of vertices V can be divided into two disjoint sets X and Y with X ∪ Y = V, such that each edge in E has one endpoint in X and the other in Y.
Each CR i detects available channel set λ k i and acquires information from its single-hop neighbours N i on their available channels. To jointly represent the similarities between its own idle channels and those of its neighbours, it can construct an undirected bipartite graph. Each CR i constructs a bipartite graph G i (X i , Y i , E i ), where the single-hop neighbour N i is represented by the set of vertices X i , and while the set of channels λ k i is represented by the set of vertices Y i . An edge (x, y) exists between vertex x ∈ X i and a vertex y ∈ Y i if and only if y ∈ λ k i , i.e. channel y is in the idle channel set of both CR i and CR j . Note that CR i is connected to all vertices in Y i , since Y i = λ k i . The graph model is then used as the basis for computing the broadcast channel set. Figure 3 shows the topology graph for a CRN with six nodes. Figure 4 shows the bipartite graph G A (X A , Y A , E A ) constructed by CR A . Figure 5 presents the bipartite graph G B (X B , Y B , E B ) constructed by CR B , for the same topology of Figure 3. Note that G A ≠ G B despite the fact that CR A and CR B are one-hop neighbours. This holds true because N A ≠ N B and with different physical locations, it is expected that λ k A ≠ λ k B .

Broadcast channel selection
Based on its own bipartite graph G i (X i , Y i , E i ), the CR determines the minimum broadcast channel set (BCS) and selects the finest channel as the tuning channel (TC). The problem of determining the minimum broadcasting channels set for a CR node can be modelled as the set cover problem.
The set cover problem is defined as follows: Given a set of n elements called the universe U = {U 1 , U 2 , …, U n } and a set of m subsets of U, S = {S 1 , S 2 , …, S m }, find a minimum collection C of sets from S such that C covers all elements in U [24].
Finding the minimum and most effective BCS is the main goal of the OBA. Therefore, it represents the universe by the set of vertices X, the sets by the set of vertices Y and the inclusion of elements in sets as edges. Thus, Y has been transformed into a set of subsets of X. The aim is to identify the minimum cardinality subset of Y that covers all vertices of X. Finding the minimum set cover is an NP-complete problem [25].
A comprehensive search may be possible for bipartite graphs of small size. However, the space of possible solutions grows exponentially with the cardinality of the vertex set. Hence, OBA has been introduced as it is a greedy heuristic algorithm for finding a cover set with a minimum number of channels.
OBA continually examines a single channel. In each round, OBA selects the channel which connects the greatest number of nodes that have not been covered yet. The indexes of channels that have already been chosen is represented by vector BCS, while the set of CRs that are not covered yet by the channels in the BCS is represented by U. Initially, BCS = 0, while U = Xi and S = Yi. In each round, a channel Si from S is chosen, which has the maximum overlap with U.   Then, Si will be added to BCS, removed from S, and any CR users covered by Si will be dropped from U, and the operation will be repeated until U is empty.
Broadcast channels set BCS as the output. It is sorted in descending order based on the number of neighbours covered per channel. Prioritising channels in descending order is essential for two key reasons: (1) to guarantee the node picks the first channel in the list as the tuning channel TC enabling the maximum connectivity with its neighbouring nodes and (2) the node will ensure that the maximum number of neighbouring nodes are targeted during the first transmission, the second highest number of neighbours will be targeted during the second transmission and so on. Figure 6 explains the operation of the OBA algorithm.

Performance evaluation
The OBA protocol is implemented with the ns-2 simulator; we randomly deployed 100 CR nodes in a square region of sides 1000 m. The sensing and transmission times are set to T s = 0.1 s and T t = 0.6 s, respectively. To get accurate results, we repeated each group of simulations The performance of the proposed OBA protocol is compared against three studies: (a) SURF strategy proposed in Ref. [9], (b) selective broadcasting (SB) presented in Ref. [19] and (c) random strategy (RS).
In SURF, the channels are classified based on the PR vacancy and CR occupancy. This scheme transmits on a single channel; therefore, CR nodes within the transmission range of the sender may not be able to receive the transmitted data if they tune onto a different channel.
Instead of broadcasting over a single channel, in SB CR nodes broadcast the information over a selected group of channels. This approach requires the node to tune to more than one channel. SB does not provide any synchronisation between transmitter and receiver nodes.
However, RS strategy has been chosen as it is the simplest, and no further information is required. In RS, CR nodes randomly pick channels for transmission and/or receiving, without any consideration of the ongoing CR and PR activity over these channels.

PR communication protection
In this section, probable interference ratio (PIR) is characterised. Due to an inappropriate channel decision from OBA, RS, SB and SURF, PIR is caused by CR nodes to PR nodes. Figure 7 demonstrates that OBA allows less interference to PR nodes, compared to SURF, SB and RS. The proposed broadcasting protocol (OBA) tries to reduce the interference with the PR users' communication. This is achieved by intelligently identifying the unutilised spectrum based on a real-time sensing.
In OBA, if there is no available channel at the time of broadcasting due to PR activity, the CR will not broadcast the message. Figure 4 illustrates a small PIR value for OBA, which demonstrates the cases where potential interference would happen if no channel was available and the broadcasting continued. Table 2 and Figures 8 and 9 show the Packet Delivery Ratio (PDR) of OBA, SURF, SB and RS, when the total number of channels (Ch) is Ch = 5 and Ch = 10, respectively. Compared to other schemes, OBA performed very well and achieves a significant packet delivery ratio.

Packet delivery ratio
OBA ensures approximately a 70-80% successful delivery ratio when Ch = 5, while in the case of SURF, it is 32%, 21% in SB and 3% in RS. When Ch = 10, OBA guarantees almost an 80-90% successful delivery ratio, compared to 29% for SURF, 17% for SB and almost 1% in the case of RS.
It is important to mention that the diversity of PR activity and channel availability lead to the formation of different clusters (network topologies) at each CR node. To overcome this problem, OBA creates communication links with other clusters by broadcasting over the minimum set of idle channels. This covers all CR users in the vicinity that increase the successful delivery of the broadcast messages.
RS does not ensure the broadcast channel is free from PR activity for its transmission. Therefore, this causes a severe reduction in the delivery ratio. Although broadcasting is performed using multiple channels, SB achieves less successful broadcast delivery compared to OBA.
In certain cases, because of the lack of transmitter/receiver synchronisation between nodes (i.e. the tuning channel is selected randomly), the transmitter may not have any effective receivers. SURF strategy transmits using a single channel. This means only CR nodes within the transmission range of the source node and tuned to the same channel will be able to receive the broadcast message.
It is worth noting that the performance of OBA is slightly enhanced when the number of channels is increased. Since adding more channels automatically spreads nodes over more channels; thus, this result is not unreasonable. However, OBA achieves better results when more channels are available, when the proper metric is used and the same algorithm is employed at the sender and the receiver.

Channel set size
The number of channels utilised by a CR node to broadcast a message to its single-hop neighbouring node is defined as the channel set size (CSS). In Figure 10, the CSS of OBA is compared with the CSS of RS, SB and SURF in relation to the number of available channels. It is clear that SB utilises nearly all of the available channels.     Moreover, the number of the utilised channels increases when there is more available channels. This can be explained by the fact that CR nodes are spread over more channels when the number of idle channels increases. Consequently, the CR user needs to broadcast over more channels. However, the CSS in the case of OBA is considerable.
Furthermore, the increase in the number of available channels does not significantly impact the number of used channels. This is achieved by OBA and by using proper metrics to prevent CR nodes from dispersing over all the available channels. In addition, OBA helps to merge the neighbouring CR nodes to the same channel selection. This in turn results in a considerable reduction in the CSS.
Irrespective of the number of available channels, RS and SURF use only a single channel for the transmission. It is difficult to use a single channel for broadcasting in CR networks. This is because of the nonuniform channel availability and the impossibility of a global common channel being available. In the case of OBA, most of the CR neighbouring nodes will successfully receive the broadcasting message. This is because OBA connects different local topologies, which results in a significant increase in the successful packet delivery.

Conclusion
In this chapter, the problem of reliable broadcast in ad hoc CRNs is addressed. Due to the spatial variation in spectrum availability, different CR nodes might sense different idle channels, which can partition the network into different clusters. By jointly representing the spectrum availability and the network local topology as a bipartite graph, the problem of connecting different CR nodes can be mapped to the problem of set cover. An intelligent algorithm is developed, which guarantees a distributed reliable selection of the broadcast channel with a facilitative channel switching facility where primary user activity is detected without the need for frequent reselection. It has been shown through simulation results that the only way to provide a reliable broadcast that considers the spatial variation of spectrum availability is through connecting different local topologies in the absence of a common control channel.