Routing in Cognitive Radio Ad-Hoc Networks Payel Bandyopadhyay University of Helsinki Helsinki, Finland Email: payel.bandyopadhyay@cs.helsinki.fi Abstract Cognitive Radio (CR) mitigates the problem of inefficient spectrum usage. Cognitive radio is based on Dynamic Spectrum Access (DSA), through which unlicensed users can use the licensed spectrum band without causing harmful interference to the licensed users. However, this dynamic spectrum access increases designing of communication protocols in different layers. In this paper, I have presented several challenges that cognitive radio ad-hoc networks faces while routing. The main challenges that I have focused on is spectrum awareness, set up of quality routes and maintenance of those routes. In the next section, several solutions based on these challenges have been presented. The routing solutions presented in this paper is categorised into full spectrum knowledge and local spectrum knowledge. In the last section of this paper, a comparison of all the above mentioned solutions have been presented. I. INTRODUCTION The radio spectrum is divided into two parts: licensed spectrum band and unlicensed spectrum band. Licensed spectrum bands consists of Ultra High Frequency (UHF)/ Very High Frequency (VHF) TV frequency bands and many other licensed frequencies while unlicensed spectrum bands consists of ISM (Industrial, Scientific and Medical) and U-NII (Unlicensed National Information Infrastructure) [1]. Previously, fixed licensed policy was used to allocate spectrum bands to different users. Only licensed users could access the licensed spectrum. Studies of Federal Communications Commission (FCC) [2] showed that only 15-85% of licensed spectrum band was utilised, hence large part of this spectrum band was idle in different time and space. On the other hand, the unlicensed spectrum band became congested with the applications of different fields like WLANs, mesh area network, body area networks and sensor networks; which lead to the problem of inefficient spectrum usage. Hence, Cognitive Radio was discovered in 1999 to mitigate the problem of this inefficient spectrum usage. Devices having Cognitive Radio capabilities are called Cognitive Radio devices and the network that they form together is called Cognitive Radio Networks (CRNs). Cognitive radio is based on Dynamic Spectrum Access [2], through which unlicensed users can use the licensed spectrum band without causing harmful interference to the licensed users. Unlicensed users are referred as Secondary Users (SUs) and licensed users are referred as primary users (PUs). The idea is based on the fact that SUs can access the available licensed spectrum band but have to immediately change the spectrum band once an allocated PU need to access the spectrum band (PU still accesses the spectrum in fixed license policy). With the help of Software Defined Radios (SDRs) [1], a Cognitive Radio can change its transmitter parameters according to the external environment but this spectrum changing capabilities also cause routing issues in CRNs. Cognitive Radio Networks are two types according to their architecture: infrastructure based networks and ad-hoc based networks. Ad-hoc based networks are also called as Cognitive Radio Ad-Hoc Networks - CRAHNs [3]. Users of infrastructure based CRNs connect with each other via an infrastructure, like access point. Unlikely in CRAHNs, CR users connect with each other in an ad-hoc manner means there is no access point present. In CRAHNs, the available spectrum also known as Spectrum Opportunity (SOP), is divided into multiple channels. SUs try to access those channels which are currently not occupied by any PU. In this paper, I will be focusing on routing in multi-hop CRAHNs. Section II, mentions about why routing in multi-hop CRAHNs is an issue. Section III, presents a survey on different routing protocols proposed so far based on the routing challenges mentioned in Section II. Section IV, provides a comparison of all the proposals mentioned in Section III. II. PROBLEMS OF ROUTING IN MULTI HOP CRAHNS Many research work have already been made regarding routing issues in MAC and physical layer of single hop Cognitive Networks [4], [5] based on spectrum sensing, spectrum decision and spectrum sharing but the MAC protocols which provided optimal solutions for single hop CRNs could not be applied on multi-hop CRNs due to the distributed architecture of multi hop CRNs. Moreover, the dynamic network topology increases the complexities in network design of CRAHNs. Figure 1 represents how routing takes place in multi hop CRAHNs. Hence, recently much of research has taken place regarding routing issues in multi hop CRAHNs in both upper and lower layers. The upper layer includes transport layer while the lower layer includes physical and MAC layer. In this paper, I will be mainly focusing on lower layer protocols. Choosing the appropriate path and the appropriate frequency band at each path are the two major routing problems in CRAHNs [6]. There have been many routing challenges described so far. I will be listing some of them in the following subsections. These routing challenges are mainly based on physical/mac layers. Based on the spectrum the main challenges of routing in multi hop CRNs include: spectrum awareness, quality routes and route maintenance [2].
Fig. 1. Information routing in multi hop CRNs [2] Challenge 1: Spectrum awareness - compactness between routing modules and spectrum functionality should be there so that routing modules always have a picture of the surrounding environment, which will help to take correct routing decisions. The spectrum occupancy information may be obtained in either of the following ways: externally (like SUs having access to database of white spaces of TV towers); locally gathered by SUs by distributed sensing mechanisms; or by both externally and internally. Challenge 2: Set up of quality routes - routes in multi hop CRNs depends mainly on the PUs behaviour. Hence, to measure the quality of routes from source to destination metrics path stability and spectrum availability/pu activity should be considered. If PUs are less active then the network topology of SUs becomes less active. If, PUs become more active, then SUs also have to change their routes continuously. Challenge 3: Route maintenance/reparation - Re-routing is required if a route fails suddenly due to a sudden appearance of a PU. Hence proper methods are required to restore the broken routes. III. CLASSIFICATION OF COGNITIVE ROUTING SCHEMES Here I will mention about different routing schemes in lower layers. Based on spectrum issue there are several routing solutions that have been proposed so far. The routing solutions are categorised into two routing schemes: routing schemes based on full spectrum knowledge and routing schemes based on local spectrum knowledge [2]. A. Full spectrum knowledge In full spectrum knowledge scheme, nodes in CRNs have full knowledge about the availability of spectrum from the central spectrum database recently promoted by FCC to show the availability of spectrum below 900 MHz and around 3GHz [7]. Full spectrum knowledge is further divided into Graph based routing approaches and Mixed Integer Non-Linear Programming also known as MINLP optimization approach. 1) Graph based routing approach: Graph based routing approach [2] helps in creating efficient routes in multi hop CRNs. It consists of two phases: graph abstraction and route calculation. Graph abstraction refers to the network topology Fig. 2. Two Channel between four nodes [2] Fig. 3. Constructed layered graph showing horizontal, vertical access edges between 2 channels [8] of CRNs containing the number of edges (V), number of nodes (N) and a function to assign weight to each edge of the graph (f(v)). Route calculation refers to calculating the efficient routes to connect from source and destination. Graph based routing can be classified in three distinct methods: routing through layered graph, routing through colored-graph, routing and spectrum selection through conflict-graphs. Routing through layered graph: In layered graph approach [8] is mainly based on how channel is assigned and routing in semi-static multi-hop CRNs. The assumption is that PU dynamics is low. The layers of the graph represents the number of available channels. Each secondary user device is represented by a node, A,and additional sub nodes (one for each available channel) ranging from A 1, A 2,..., A m. There are three types of edges in layered graph namely, access, horizontal and vertical. Access edges connects each node with its suitable sub nodes. Horizontal edges connects sub nodes of same logical layers and adds them to the graph if two corresponding secondary devices can reach each other at the corresponding channel. Vertical edges connects sub nodes of various layers of same secondary device to portray the switching ability of secondary device from one channel to another channel to forward incoming traffic. The above Figure 2 represents two channels between four nodes and Figure 3 represents the layered graph model explained so far.
Fig. 4. Example of edge costs [8] Fig. 5. Updated edge costs of CRNs [8] Once a graph has been set, metrics are assigned to each of the edges to calculate the shortest route (the routing path) from source to destination. At first we arbitrarily choose two nodes based on descending order of traffic load information metric but other metrics can also be used. The cost of vertical edge depends on channel switching overhead and is fixed in routing path computation period. The cost of horizontal edge is dependent on link usage. The cost of access edge can be set arbitrarily because only access edge of source and destination participate in the path computation. Taking an example as shown in the Figure 3, I will be explaining the algorithm. Suppose, we have to calculate the shortest path between A and D. At first we choose node A and B for calculating the shortest path. The cost of vertical edge, horizontal edge and access edges of A and B are 1,2 and 0 respectively as shown in Figure 4. All the cost are arbitrarily set, the values of cost can vary. The path we choose is A, A 1, B 1, B with path cost 2. As, the subnodes of both the nodes belong to the same channel i.e. channel 1, the radios of both A and B is assigned to channel 1. As, subnodes A 1 and B 1 are taken in the path, they are referred as active node while the sub nodes A 2 and B 2 are referred as inactive node. Then we update the vertical and horizontal edges of the sub nodes as following. We remove all the vertical edges between inactive sub nodes of the same node. We remove the horizontal edge between A 2 and B 2. We change the vertical edge between A 1 and A 2 to uni-directional from A 1 to A 2. Similarly, vertical edge between B 1 and B 2 becomes unidirectional from B 1 to B 2. The horizontal edge of B 2 and C 2 is changed to out going from B 2. Then we increase the cost of all horizontal edges that are related to the path, as in the shown in Figure 5, cost of horizontal edges between A 1, B 1 and between B 1, C 1 increases. Then, we compute the path between C and D in the same manner as above. We assign C and D nodes in channel 2 as both of their active sub nodes (C 2, D 2 ) lies in channel 2. Now, while computing the total path from A to D, as shown in Figure 6, B and C are in different primary channels. So, when large number of packets of this path arrives at node B, it switches its channel from channel 1 to channel 2. In most link centric channel assignment cases, nodes often fluctuate between channels to maintain the link level connectivity to neighbours. Hence, in this way channels are assigned to the nodes of CRNs and routing path is designed. The algorithm described is in centralised mode but it will also work in distributed mode. Fig. 6. Computing the routing path from node A to node D [8] Fig. 7. Channel assignment and corresponding multi hop CRNs [9] Routing through colored graph: In colored graph approach [9], different channels are represented by different colors. The three parameters of the graph is denoted by G =(V, E C, W E ), where V is the vertex set representing each individual secondary user, E C is the set of colored edges and W E is the weight of edges. Each of the channels is assigned different colors, there are N possible colors, where N represents the number of channels. Figure 7 represents the colored graph topology. The route calculation algorithm is the same as mentioned in routing through layered graphs but it is used only in centralised mode. Routing and spectrum selection through conflict graph: Conflict graph approach [10] is different from the above mentioned two approaches. This approach separates routing and spectrum (or channel) assignment. Here, route selection and channel selection is done in the following way. Given a sourcedestination pair, at first all the possible routes from source to destination is considered one by one. Then all the possible channel assignment for each route is found out. Then for each route/channel assignment, conflict free scheduling algorithm is performed. Then the best combination of route/channel is chosen. Here, vertex refers to wireless link of the network and edge is the link between two vertices, if the two vertices are not active simultaneously. Hence, in this manner channels
are assigned to the nodes of CRNs and the efficient route is selected. 2) Optimization approach to routing design: Here, optimization model and algorithm [11] is used to design routes in multi-hop CRNs. This approach is based on Mixed Integer Non-Linear Programming formulation also known as MINLP. The main aim of MINLP is that it maximises the spectrum reuse factor in the network so that the overall bandwidth usage of the network is reduced. MINLP takes into consideration, for instance, link capacity, interference and routing. Link capacity formulates that the total traffic flow should always be less than the wireless link it is currently travelling through. Interference states that two SUs can interfere in the same interference range but they cannot share the same sub band for transmission. Routing is based on flow balanced constraints which states that for each source to destination path, all the nodes expect the source and destination nodes have their incoming flow equal to the outgoing flow. The flow creation point is the source node and the flow sink point is the destination node. In network, multiple paths can exist between a given source destination pair. The path designed is robust but is difficult to implement in packet-switched network. Here, routing is based on sequential fixing which is a centralised and heuristic approach. The sequential-fixing algorithm starts by setting up and solving the relaxed LP version of the original problem to obtain the lower bound. Then the assignment variables are sorted in descending order. Then the largest bit is set to 1 and other variable are set to 0. Then, the LP formulation of the problem is solved based on the variables. This procedure is repeated until we get fixed assignment variables. B. Local spectrum knowledge In local knowledge based scheme, nodes do not have a full knowledge of the spectrum availability. Each SU has its own spectrum availability knowledge gathered through distributed protocols. The proposed solutions are divided according to the metrics it uses to specify quality of routes like interference and power based solutions, delay based solutions, throughputbased solutions, link quality/stability based solutions, probabilistic approaches. 1) Interference and power based solutions: Interference and power based solutions [12] are mainly based on power consumption for transmission and the interference that is generated along a multi hop path through secondary users. It solves the problem of neighbour discovery and routing. Different terminals in CRAHNs have different wireless systems which makes neighbour discovery and routing from source to destination an issue. To solve this problem, a common link control radio (CLCR) [12] is introduced, which is a common active wireless system of cognitive terminals. Based on CLCR, a minimum weight routing protocol is introduced which helps in finding the path from source to destination having the minimum weight so that data can be transmitted though minimum overhead path among the terminals. The main objective of this scheme is that network discovery and routing will be performed in CLCR through a Fig. 8. Neighbour discovery and routing over CLCR [12] Fig. 9. Example of routing parameters [12] common active wireless system of the terminals. In CLCR, terminals discover the neighbours by sensing the carriers of its neighbours. After the neighbours are selected, the best path is selected by selecting the wireless link that is mostly available. Figure 8 shows how neighbour discovery and routing takes place in presence of CLCR. Here, transmission power is considered as one of the routing overhead. The transmission power is represented as the distance between a transmitter (source) and receiver (destination) and is denoted by: P T X = P RX (4 Π d/λ) 2 (1) where P T X denotes transmission power of a transmitter, P RX denotes remaining power of wave at a receiver, λ denotes wave length and d denoted the actual distance between source and destination. Figure 9 shows an example of routing weights and reachable distances. The protocol is based on finding the path that has minimum weight between source and destination. At first, the source discovers its neighbours by broadcasting a request over CLCR. The nodes receiving the request replies back to the source with a list of all the wireless systems available. Based on this reply, the source selects a neighbour which it can reach in minimum weight. This process is repeated for every source destination, until the final destination is reached.
2) Delay based solutions: Delay based solutions [13] are based on delays that occur in establishing, maintaining and sending traffic in multi-hop routes in CRAHNs. The delay metrics that are considered are switching delay, medium access delay and queueing delay. In CRAHNs nodes often switch their path from one frequency band to another which may lead to switching delay. MAC access scheme that are used in a given frequency band leads to medium access delay. Queueing delay refers to the delays experienced in a node s queue because of the limited output transmission capacity of a node. The protocol is based on local coordination of neighbours. A node which is common among the neighbour nodes decides whether to keep the incoming flow or to change its direction to its neighbours based on the local work load. While creating the path between source and destination, at first the source broadcasts route requests (RREQ) message, which contains the local network state, to its immediate neighbour. In the Figure 10, source forwards a RREQ message to node 1. Node 1 in turn forwards the message to node 2, by adding its own spectrum opportunities (SOP) - which contains a list of currently available and unavailable channels. RREQ message is forwarded by intermediate nodes until it reaches the destination D where the possible delays are calculated on each probable frequency bands, based on the above mentioned metrics. Out of these it chooses the best possible frequency band that can be used and sends back a route reply (RREP) message back in the same path as RREQ message. All the nodes in the backward path process the RREP packet, as shown in the Figure 10. But as this RREP message moves along the backward path, it may change its route - whenever a node has more than one flow, it can switch between frequency bands depending on delay. In the Figure 10, node 3 checks whether its neighbour nodes can carry the flow in a better delay. As, node 3 can carry the flow with a better delay, the backward path flow is moved through node 3. Hence, in this way the best possible path is chosen. 3) Throughput based solutions: Throughput based solutions [2] are based on maximising the throughput and further classified as: path spectrum availability routing and spectrum utility based routing. Path spectrum availability routing [2]: It is based on Spectrum Aware Mesh Routing (SAMER) protocol which takes long term and short term spectrum availability into account. SAMER designates a path to send data that has highest spectrum availability. At first all the possible paths are established using Path Spectrum Availability (PSA) metric. PSA s metric includes: Local spectrum availability [2]: Spectrum availability at node i depends on availability of spectrum block at i, bandwidth and contention from other SUs. Spectrum blocks quality depends on their bandwidth and loss rate. After all the possible paths are established, the path having the highest PSA value is used to send data. PSA is measured in terms of throughput as: T hr (i,j),b = T f,b.b w,b (1 P loss,b ) (2) where B w,b denotes bandwidth and P loss,b denotes the loss probability of the spectrum block b.the aggregate throughput between pair of neigh nodes i,j is measured by smoothed aggregate throughput denoted by: ST hr (i,j),b = α.st hr i,j + (1 α).t hr i,j (3) The spectrum availability of a path is measured by smoothed aggregate throughput. Hence, when a data is send from a source to destination, the source first chooses its next hop based on PSA and this step is repeated until destination is reached. Spectrum utility based routing [14]: It is based on routing and dynamic spectrum allocation (ROSA) algorithm. This algorithm is based on spectrum utility and the best route is based on spectrum opportunities with the goal to maximise spectrum utility. Spectrum utility for link (i,j) is defined as: U i,j = c i,j (Q s i Q s j ) (4) where c i,j represents achievable capacity for link i,j; Q i (s*) represents the current backlog of packets at node i for the session (packet flow) s* and s* is the session with the highest differential backlog. The node i at first tries to find out its next hops for session s(n 1, n 2,..., n N ). Then it calculates the capacity over the links for each probable neighbour means each SU uses a decision algorithm to choose the spectrum mini-bands and power level that will be used during the whole spectrum bands. Then it chooses the next hop, j*, that maximises the spectrum utility. These steps are repeated until the destination is reached. 4) Link quality/stability based solutions: In link quality/stability based solutions [15] the available channels changes frequently in CRNs. The number of channels available at SUs varies and change often with respect to other nodes. Hence, routes also change according to the available nodes. Based on this problem, the solution proposed here is to design stable and multi-hop routes. This protocol introduces route stability based on route maintenance cost. The route maintenance cost refers to the cost of maintaining end-to-end connectivity in dynamic multi-hop CRNs. The route changes according to the link switching and channel switching as PUs become active. When PUs become active, one or more links should be altered with a link that is not interfered by PUs. SUs coordinate with each other in terms of signalling, which measures cost in terms of power and service interruption time during switching routes. Figure 11 shows that due to an incoming PU, a new route is required to be established as shown in Figure 12 - two hop path is replaced by three hop path. The main aim of this protocol is maintain a stable route between secondary source destination pairs with low maintenance costs. Routing is also based on epochs which means time interval in which the network topology is stable. In each epoch network topology changes,
Fig. 10. Example of route establishment [2] Fig. 11. Rerouting needed due to PU becoming active [2] Fig. 12. Rerouting due to PU activation [2] due to incoming and outgoing of PUs. MILP formulation, as described in subsection A part two, is used to reduce the maintenance costs under interference, link capacity and flow balanced constraints. The metric used to measure the maintenance cost is: w l = (C s l w + αc rep l )/E[T T S l ] (5) where parameter α allows gauging of different cost contributions and E[TTS l ] denotes the average time to switch for the link l. The maintenance cost is inversely proportional to the lifetime. Hence, denominators provide lower link weights to longer available links. Based on the above metric, path on the source side is constructed and changed according to the spectral conditions. 5) Probabilistic approaches: In probabilistic approach [16] routing is based on probabilistic estimation of available capacity of every CR link. Here source based routing protocol is used for path selection from source to destination. When an application requests a route from a source to a destination with a rate demand D, the source node starts the algorithm. The source node gathers information about other nodes using link state advertisements over the control channel. Then the link probabilities on all the channels are calculated as: P r[c i kj D] = P r[p i i,j (P i r,j/2 D/wi 1) N 0 ] (6) where D is the rate demand, N 0 is the power of the white Gaussian noise, w i represents bandwidths and P i r,j is the power of the received signal. After that, the source chooses a route to destination using path selection algorithm. In this case, a log operation on the probability is used to obtain ordered weights. The smaller the weight means higher is the probability. Then, Dijkstra s algorithm is used to find the shortest path from source to destination. IV. COMPARISON OF AFOREMENTIONED PROTOCOLS Table 1 demonstrates a thorough comparison of the above mentioned protocol solutions. The routing solutions can be divided into two main categories: Category 1: Solutions are mainly based on fixed or stable network topology and each node has full knowledge of the available spectrum. Here, designing routes for CRAHNs
is related to designing routes for traditional static wireless networks. Graph theory and mathematical programming is used to design routes from source to destination. These types of solutions are mainly useful in cases where SUs have knowledge of data bases storing the spectrum maps. Category 2: Solutions are based on local knowledge of each SU about the network topology. Here, some approaches create full path from source to destination while some approaches are based on hop to hop movement till destination is reached. However, all the approaches are based on selecting the spectrum on each link of the path. The suitable spectrum bands are selected by measuring metrics like interference, delay, throughput, etc. In some solutions the dynamic PU activity is also considered while creating a route from source to destination. TABLE I COMPARISON OF ALL THE PROTOCOL SOLUTIONS DESCRIBED SO FAR Solutions Whole path Next hop Spectrum awareness Graph + - - MINLP-MILP + - - Interference and power - + - Delay + - - Throughput - + + Link quality/stability + - + Probabilistic approaches + + + V. CONCLUSION Though cognitive radio acts as an effective solution for efficient utilization of spectrum bands, it has some drawbacks as presented in this paper. The dynamic spectrum changing pattern of devices enabled with cognitive radio capabilities makes routing a challenging issue. Though in this paper, I have presented several solutions which help in routing efficiently in Cognitive radio ad-hoc networks. However, some issues are still needed to be solved like issues pertaining to crosslayering, etc. Hence, routing in cognitive radio ad-hoc network will still remain an interesting research area to work on. [5] W. Jeon and D. Jeong, An advanced quiet period management protocol for cognitive radio systems, IEEE Trans. Veh. Technol., vol. 59, no. 3, p. 12421256. [6] X. Huang, D. Lu, P. Li, and Y. Fang, Coolest path: Spectrum mobility aware routing metrics in cognitive ad hoc networks, 2011 31st International Conference on Distributed Computing Systems, pp. 182 191, 2011. [7] FCC, FCC 08-260, Unlicensed Operation in the TV Broadcast Bands, November 2008. [8] C. Xin, L. Ma, and C.-C. Shen, Path-centric channel assignment in cognitive radio wireless networks, Cognitive Radio Oriented Wireless Networks and Communications, 2007. CrownCom 2007. 2nd International Conference, pp. 313 320, August 2007. [9] X. Zhou, L. Lin, J. Wang, and X. Zhang, Cross-layer routing design in cognitive radio networks by colored multigraph model, Wirel. Pers. Commun., vol. 49, no. 1, pp. 123 131, April 2009. [Online]. Available: http://dx.doi.org/10.1007/s11277-008-9561-7 [10] Q. Wang and H. Zheng, Route and spectrum selection in dynamic spectrum networks, vol. 1, pp. 625 629, Jan. [11] T. Hou, Y. Shi, and H. Sherali, Optimal spectrum sharing for multi-hop software defined radio networks, pp. 1 9, December 2007. [12] C. Pyo and M. Hasegawa, Minimum weight routing based on a common link control radio for cognitive wireless ad hoc networks, pp. 399 404, 2007. [Online]. Available: http://doi.acm.org/10.1145/1280940.1281026 [13] Z. Yang, G. Cheng, W. Liu, W. Yuan, and W. Cheng, Local coordination based routing and spectrum assignment in multihop cognitive radio networks, Mobile Networks and Applications, vol. 13, no. 1-2, pp. 67 81, April 2008. [Online]. Available: http://dx.doi.org/10.1007/s11036-008-0025-9 [14] L. Ding, T. Melodia, S. Batalama, and M. Medley, Rosa: distributed joint routing and dynamic spectrum allocation in cognitive radio ad hoc networks, pp. 13 20, 2009. [Online]. Available: http://doi.acm.org/10.1145/1641804.1641810 [15] I. Filippini, E. Ekici, and M. Cesana, Minimum maintenance cost routing in cognitive radio networks, pp. 284 293, October 2009. [16] H. Khalife, S. Ahuja, N. Malouch, and M. Krunz, Probabilistic path selection in opportunistic cognitive radio networks, pp. 1 5, December 2008. VI. ACKNOWLEDGEMENT I thank Dr. Suzan Bayhan for guiding me to complete this paper. I am also thankful to my reviewers for helping me to improve my paper. REFERENCES [1] J. Marinho and E. Monteiro, Cognitive radio: survey on communication protocols, spectrum decision issues, and future research directions, Wireless Networks, vol. 18, no. 2, pp. 147 164, 2011. [Online]. Available: http://www.springerlink.com/index/10.1007/s11276-011-0392-1 [2] M. Cesana, F. Cuomo, and E. Ekici, Routing in cognitive radio networks: Challenges and solutions, Ad Hoc Networks, vol. 9, no. 3, pp. 228 248, May 2011. [Online]. Available: http://www.sciencedirect.com/science/article/pii/s157087051000079x [3] I. Akyildiz, W.-Y. Lee, and K. Chowdhury, Crahns: Cognitive radio ad hoc networks, Ad Hoc Networks, vol. 7, no. 5, pp. 810 836, July 2009. [Online]. Available: http://dx.doi.org/10.1016/j.adhoc.2009.01.001 [4] C. Cormio and K. Chowdhury, A survey on mac protocols for cognitive radio networks, Ad Hoc Networks, vol. 7, no. 7, p. 13151329, September 2009. [Online]. Available: http://dx.doi.org/10.1016/j.adhoc.2009.01.002