Smart Routing Management Framework Exploiting Dynamic Data Resources of Cross-Layer Design and Machine Learning Approaches for Mobile Cognitive Radio Networks: A Survey

The concept of Cognitive Radio (CR) has emerged as a practical solution to solve the issue of the fixed spectrum and bandwidth scarcity in wireless communication. However, the nature of dynamic Mobile Cognitive Radio Networks (MCRNs) drives to the emergence of new challenges, especially concerning the routing protocol operations. Applying a cross-layer design is considered a sufficient remedy to overcome routing protocol challenges such (e.g. channel diversity, integration route discovery with spectrum decision, mobility, etc.). Consequently, the cross-layer design has a magic solution to overwhelm routing challenges in MCRNs due to the ability to be free from the strict boundary and share the information and services with other layers in a manner that contributes to enhancing routing performance. Thus, the scope of this survey is to review and taxonomy numerous routing protocols in MCRNs according to methods of design to highlight the strength and weakness points. Also, machine learning has acquired much interest in this literature. A cross-layer framework for smart routing protocol in MCRNs has been proposed by exploiting machine learning mechanisms. Finally, the open research issues of routing protocol in MCRNs are summed up.


I. INTRODUCTION
The growing demand for wireless applications, coupled with the ineffectiveness in spectrum usage, invite for the appearance of a new wireless communication paradigm that based on the dynamic spectrum participation rather than a fixed spectrum. To implement the concept of dynamic spectrum in wireless technology, this required the development of new The associate editor coordinating the review of this manuscript and approving it for publication was Xiaokang Wang. technology known as cognitive radio. CR technology allows an unlicensed user namely Cognitive User (CU) or Secondary User (SU) to compose links of communication over licensed spectrum bands that used by the Primary User (PU) on an opportunistic foundation to increments the management spectrum efficiency [1]. However, CUs have imposed serious dilemmas because of the dynamic nature of the channel, mobility nodes, and the interference probability with the PU [2]. VOLUME 8, 2020 This work is licensed under a Creative Commons Attribution 4.0 License. For more information, see https://creativecommons.org/licenses/by/4.0/ Under these circumstances, the routing protocols had a wide range of problems in MCRNs, especially channel selection, path stability, QoS, PU interference, and others [3], [4], [6]. In addition, MCNRs can significantly effect on characteristics of the stack-layer protocols due to the dynamic network resources and PU activities [3]. Hence, there has been increasingly focused on getting rid of routing problems in MCRNs. According to this, numerous encouraging routing protocols have been proposed in MCRNs, which followed different techniques [2], [5]. For instance, joining path and spectrum diversity can assist MCRNs in avoiding the activity of PUs and improving routing performance. Moreover,The cross-layer design is a premium solution through sharing services and information in the effective way between non-adjacent layers to accommodate changes CRNs topology [7].
Today, many new applications in Cognitive Radio Networks (CRNs) can be highlighted. For instance, (CR)-based internet of things [8], military applications [9], health monitoring [10], 5G technology [11], etc. However, all these technologies require a robust and flexible routing protocol that can transfer data packet applications between the nodes reliably. In contrast, the routing protocols in CRNs still are facing more hurdles due to new emerging applications, which needs to find more intelligent routing protocols.
Learning from the CRNs environment is a fundamental demand for providing intelligent communication services [100]. In fact, routing protocols in MCRNs can learn and reconfigure its services to adapt with the dynamical network resource [99]. In other words, machine learning can play to optimise routing performance and utilise network spectrum resources [98], [99].
There are existing surveys for a routing protocol in MCRNs that try to highlight routing protocol in MCRNs from different aspects, e.g., routing and channel selection, routing metric, etc. However, there are still no serious attempts to study routing protocols in MCRNs from a perspective of employing machine learning beside CRNs protocol to signify a smart routing protocol in MCRNs by using a cross-layer design. Also, It explorers routing protocols in MCRNs from a perspective of the cross and non-cross layer design to identify and distinguish the difference between each model. Hence, a critical review has been done to recapitulation and evaluation of routing protocol in MCRNs to highlight the strength and weakness points. Besides, the cross-layer design and machine learning methods have analysed and synthesised to design intelligent routing framework in MCRNs. Consequently, we have proposed an intelligent routing framework that has features of cross-layer and machine learning to make the right routing decision.
The foremost contributions of this paper are summarized as follows.: • This study explorers the fundamentals of routing protocol in MCRNs.
• It has been proposed a new taxonomy for routing protocol in MCRNs.
• The prominent routing methods or techniques in MCRNs are reviewed and highlighted their strengths and weaknesses.
• A generic cross-layer framework for intelligent routing protocol in MCRNs has been proposed. The framework will offer a quantum leap in principle working of routing protocols in MCRNs through engaging machine learning functions with layer stack services.
• The open research challenges for routing protocol in MCRNs are outlined. The rest of the paper is structured as follows. Section II explorers the fundamentals of routing protocols in MCRNs. In Section III, it describes the classification of routing protocols in MCRNs. Subsequently, a critical review of existing methods or techniques for the routing protocol in MCRNs is done, where their strengths and weaknesses are needed In Section IV. After then, Section V provides a description of the smart cross-layer framework routing protocol in MCRNs. Next, Section VI presents suggestions for the directions for research challenges that seeking to improve the routing performance in MCRNs. In the end, the paper is concluded in Section VII.

II. FUNDAMENTALS OF CROSS-LAYER ROUTING
Cross-layer design has been broadly investigated and developed to enhance the decision resource allocation in MCRNs [103], [107]. Recently, especially in the field of routing protocol in MCRNs, cross-layer design theory has been the focus of attention by many researchers concerning improving route decision and link-channel selection [3]. Fundamentals of cross-layer routing in MCRNs require acknowledging the cross-layer resources and limitations considering the routing challenges [85]. The cross-layer facilities can present an ideal model that can trade off guidance and resource performance across layers. From the same perspective, diagnosing the problem of routing protocols in MCRNs can guide to knowledge of the required services and information from other layers [87]. For example, the path is defined based on physical layer sensing information expressed by the probability of channel availability. By setting up a routing algorithm to adapt to new features and implementing them across the layered framework can lead to create a valid routing protocol in CRNs [5], [106], [107]. There must be harmony between traditional routing functions and the extended functions to create a reliable routing protocol.
For more details, the next subsections will discuss the basis of fundamental cross-layer routing.

A. BASIC ROUTING FRAMEWORK FOR COGNITIVE RADIO NETWORKS
The general routing framework in CRNs has described in Fig. 1, which consists of many various blocks such as (QoS) evaluation, routing information, learning decision and route establishment block [12]. The block of routing decision executes base on the knowledge of the interaction  between all these blocks, whose descriptions clarity in the ensuing: • Block of Routing Information: This block includes information such as next-hop, the availability and quality of the channel, modulation, transmission rate, and different other parameters which are specific to each link. Besides, the process of channel switching includes a finite delay, which diminishes the rate of throughput and increases the latency in the end-to-end connection. [13]. In the routing protocol, the channel selection is considered the primary role in order to get a high performance and stability [1]. For that, the channel select strategy has to regard choice the channel with less occupied by PU to reduce the total interference, high availability and high connectivity with other neighbours.
• Block of QoS Evaluation: The QoS rate in CRNs is related to the effectiveness of the routing algorithm [14], [15]. In other words, application layer requirements receive by this QoS block and gauge to discover how the performance of current routing to these requirements.
• Block of Learning: The network paradigm is moving towards learning from observation and experience to enhance performance over time [16]. It is imperative to incorporate the routing framework into the fabric of the learning block. In more, the networks develop on the way to the individual-learning and environment-aware paradigm. As a result, the learning block became necessary to take part in the routing framework. By following up for the prior history of the channel, This block traces the routing operations layer over time. It serves the block of the decision to determine a more reliable idle channel and a stable route.
• Block of Decision: According to the output of sensing knowledge, the upshot of the block of QoS evaluation, learning, and decision leads to make a decision that might modify the current path or to exchange a channel or might keep continuing to the current route.
• Block of Route establishment: Lastly, this block erects a route from the source node to the target node, when the outcome of preceding block information can be significant (according to a selected metric), to establish a new route to achieve the better router performance.

B. CROSS-LAYER-ROUTING CONCEPT
The concept of the cross-layer design has introduced to establish a link between different protocols in different layers and to minimize the overhead in the layer stack [17].
In another way, the cross-layer design breakdowns the traditional network stack in which each protocol in the network layer's stack operates independently [18]. In CRNs, a cross-layer methodology attempts to intensify the accomplishment of routing by combined the lower layers. Consequently, the overall performance of the wireless systems in term of data rate, error, and radio resource utilization is improved [19]. Hence, a cross-layer routing strategy in CRNs is a must, not a choice [20]. In order to address the satisfactory network performance, apply QoS requirements, and reduce interference, the traditional network layer stack and stratified protocol reference models are limited and not able to solve the wireless network challenges in CRNs [21]. For that, the static layer model cannot address all the challenges of CRNs and provide an efficient routing performance. The cross-layer design depends on the fact that traditional static models can be revised in many ways to achieve QoS, network performance, and interference mitigation [17]. Also, spectrum management in CRNs needs a cross-layer design mechanism where different layers can be considered in attaining the optimal design and implementation results [22]. Indeed, the routing performance can take advantage of the stack-layer information and make them useful tools to develop routing operations [7].

C. A FUNCTION KEY OF THE STACK LAYERS IN THE COGNITIVE RADIO NETWORK
The cross-layer is defined as the design that violation of the communication architecture of a reference protocol concerning the architecture of the particular layered [22], [23]. In general, routing protocol in MCRNs is considered the main issue because of the fluctuation availability of spectrum resource and PU activity [6]. Therefore, it is worth noting that the objective is to find appropriate solutions for routing issues through suggested a cross-layer design as a significant solution.
In more specific, mobility CU and/or PU impacts on routing protocol to recognise the best idle channel and the stable path between a pair of CUs [24]. For this reason, SU must be able to accommodate the dynamic change in the spectrum utilisation by PU [5], respectively. Routing protocol has many challenges [2] such as (channel switching, CR mobility, PU interference, etc.), which generally affect the routing performance in CRNs [25]. In particular, applying a cross-layer method with a multi-channel and the multi-path concept it draws a new communication environment in principle working of routing protocol in CRNs [26].  Stack-layers' functions in cognitive radio technology [12], [27], [30], [101].
For instance, the cooperation of physical and MAC layers can feed the routing algorithm very prominent information about spectrum sensing, which utilized by routing decisions [5], [13]. Shortly, the routing can get more optimization by allowing the layer of physical and MAC for collaboration [7]. In more details, every layer in the stack-layer can provide different information and services to adapt with MCRNs [12], [27], [28] as explained in Fig. 2. Hence, every layer can serve different functions by creating new interfaces to the other layers in order to facilitate information exchange, flexible control, and protocol optimization. In more details, every layer function has been explained as mentioned below: • Application layer: The services of application layer introduce information about the availability of the resource, synchronizing communication, and identifying the communicating devices [29]. Furthermore, it can introduce methods of data dissemination, data aggregation, and fusion [30]. For that, the application layer plays a crucial role in the definition of QoS. In contrast, the efficient QoS in CR networks is considered highly challenging due to increasing dynamic of network conditions that it cannot always be guaranteed the availability of the required resources [7].
• Transport layer: It can provide different services that including congestion control, flow control, and endto-end error recovery. Also, it is a title from many vulnerabilities subjects that infect the MCRNs [29].
• Network Layer: The network layer can forward a data packet from the sender node to the target node. Moreover, maintenance and update of routes that it use for delivering a packet over it [7], [29]. It also acts fragmentation and reassembly of packets, if required [12]. In contrast, the traditional routing protocol at the network layer has many challenges in MCRNs. In other words, the routing protocol in CRNs is not like conventional self-organising wireless ad hoc networks [2]. It has not designed to work with a dynamic spectrum frequency band and PU activity [31]. In a word, the limitation of information about channel availability, SU mobility, probability PU interference, and other factors that can affect the routing performance [32].
• Link-layer: This layer is capable of handling with multiplexing/multiple access of data across one or more physical links. Besides, it is responsible for error correction operations. From the same perspective, the link layer, in MCRNs, is accountable for accessing and capable of using the available spectrum opportunities [29]. More functions are provided by the MAC, which is a sub-layer of the link-layer. MAC layer can allow for multiple users to be simultaneously sharing the resource of the channel within the same network [7]. The MCRNs has imposed on link-layer some new functions compare to the services are offered traditional wireless networks. It needs to explore PU activity to avoid interference with it [7]. Besides, due to spectrum mobility, • Physical-layer: Physical layer manages the connection between the data link layer and the physical wireless medium. The physical layer interest that how to transfer the bits of information from a sender to a receiver [33]. The processes that occur within this layer are modulation/demodulation, coding/ decoding, and signal processing for transmission and reception [7]. In more, the difference in this, that in the case of CRNs, the physical layer has to able to adapt rapidly due to dynamically of the spectrum, which brings more issues [7]. The function of the sensing spectrum, at the physical layer, is responsible for discovering spectrum opportunities over a frequency band and estimating the probability of interference with PU [29]. As mentioned above, the layers in network stack need to include the advanced functions and services at each layer to allow MCRNs devices to operate. Therefore, the traditional network is unable to meet the challenges of MCRN routing due to resource constraints. To emphasize, the routing protocol in MCRNs needs to update its information about the free channels to avoid the interference with the PU, and that can create a stable path routing. Consequently, the cross-layer design is emerging as a method for interaction and sharing the layer's parameters to adapt the layer's protocols operations in MCRNs environment. Thus, through applying cross-layer design, routing protocol algorithm at the network, layers can be sharing different parameters, i.e., (channel availability), for more efficiently and effectively routing decision to select the path and the channel [33]. Thus, the routing algorithm performance can be more significant by: • Choose best an idle channel, More link life. • Avoid the interference probability with PU. • Higher throughput, less delay. • Stability the route between the source node and destination.
• The highest overall network performance. Hence, the cross-layer design can offer a lot of active elements for routing algorithm, especially in case of mobility and time diversity [27], [107]. In more specific, there are remarkable differences between the traditional network and the cross-layer network [7], [30]. In the traditional network, the nodes cannot share and enjoy the parameters of neighbour layers, because every layer cares about its neighbours [7]. In contrast, the cross-layer provides a bridge to take part and utilise to serve the interests of other layers [7]. Network performance always needs to be enhanced with expansive applications [3]. The tradition network, however, cannot provide high performance for the limited resource. Thereby, the inclusion of the available resources of each layer with other layers can achieve higher network effectiveness [30]. The energy consumption sector also plays as a critical key in term of network resources [102]. In more, Higher energy consumption in the term (per bit) refers to the total energy demand for each node in the network to deliver a data bit to the target node safely [102]. As noted, the cross-layer method could reduce energy consumption in the term (per bit), through combining lower layer parameters.

D. WHY CROSS-LAYER
The classical network layer stack model has not provided quick accessibility for services and information with the other layers. In general, The process of exchange control information carries out only between the neighbor's layers protocol by applying the service access point (SAP) concept [103]. The function of SAP is to enable the ability to access and choose the functionalities of subset protocol by precisely defined primitive operations [34]. In more details, since the different layers are ordered in the network structure, so each layer has to operate sequentially (e.g., a lower layer has to wait until a higher layer has finished processing) [103]. This sequential operation results in computational overhead and latency. With the layers being is isolated, components in one layer may not be able to access information in other layers.
The wireless-link issues and opportunist conduct of CR are the initial impulses for cross-layer design in MCRNs. There are several problems in MCRNs cannot be solved by handling it by the traditional wireless communication [19], [107]. In MCRNs, the limitation of discovering channel diversity at the network and rapid change in spectrum resource, that it makes participation the physical layer parameters about spectrum sensing a legal requirement [69]. For instance, sharing spectrum sensing with MAC protocol might supply to select the best channel, and that can contribute to increasing data rate is an assignment for a particular link [34]. The decisions at the network layers' stack must be considered and accounted for the parameters of the lower-layers [101]. Thus, the link-layer optimisation services will affect positively on other layers performance such a network layer [101].
Consequently, the collaboration among the elements in the different layers is poor [3]. Thus, the performance of the entire system may be not enhanced due to the lack of global information exchange, and that is contradicted with the requirements of MCRNs. In short, MCRNs need to share spectrum sensing the information between the layers in the fast and effective way and that due to the dynamically of spectrum in MCRNs to identify the spectrum hole and a avoid PU appearance.

E. CHALLENGES OF CROSS-LAYER IN COGNITIVE RADIO ROUTING
Generally, the cross-layer design also has some challenges and issues which are inevitable due to the nature of the characteristics of these design [33]. As the following: • Coexistence of cross-layer designs: It is a challenge to coexistence different wireless communication [33]. In other words, for wireless networking using different technologies, it needs to find a common language for communication [23]. The cross-layer design can be the universal language to standardization and adapt the VOLUME 8, 2020 characteristic heterogeneous of wireless networks [23]. On the other side, the idea of coexistence different cross-layer design also can execute through finding a chance for standardization of the mechanism of building the cross-layer. Therefore, To create a state of coexistence between different cross-layer design, that requires to set the standardization rules [33]. Thus, to enable different cross-layer environment technology to coexistence needs to take into account to put the standardization for the interface of communication between them.
• Cross-layer signalling: To interchange the services and information of cross-layer between the nodes in wireless communication, the signalling operations need to be considered [95]. The signalling inside cross-layer has to control and the manner of exchanges network information inside the cross-layer model [30], [95]. Thus, cross-layer has to set the control to operation exchange information in a wireless network. Consequently, one of the most critical issues that cross-design has to solve is signalling.
• Universal cross-layer design: Numerous applications have inspired the cross-layer that emphasis on a particular application, e.g., audio, video, protected connections [7], [30]. Nevertheless, the cross-layer model that has designed for a single application or a group is not necessary to be suitable for different applications. One of the principal problems in the cross-layer design is the absence of cross-layer design that automatically acclimate with various applications. The number of applications is continuously increasing, which call to design the universal cross-layer [95]. Creating a universal crosslayer, which can deal with multiple applications, is a real dilemma. In more specific, all these problems that are referred to in the cross-layer can be negatively affected in routing performance. For that, it is necessary to address these challenges during the design of the cross-layer model [22]. The significant optimizations of cross-layer could cause struggles in a layer. Thus, when the layered design is a breakdown, some interactions are not quickly expected [35]. In short, most of these challenges were taken seriously during the design of our cross-layer routing framework.

III. TAXONOMY OF ROUTING PROTOCOLS IN MOBILE COGNITIVE RADIO NETWORKS
The cognitive radio technology presents an efficient design for utilising the available spectrum. However, it also introduces new challenging problems which are not present in traditional wireless networks, especially the changing channel availability over time. In more, the routing protocol in MCRNs is a complex mission because of the dynamic spectrum access, node mobility, and PU interference. Therefore, one of the critical routing design is how SU should take decisions about which channel they will use and at which time to enable SU communication while avoiding harm to PU. This problem becomes much more complicated under the time-variant impact and the limited routing tables information that save only the next-hop. Hence, cross-layer architecture is needed to assist routing protocol for right channel selection decision. On the other side, there is not much research that has highlighted the routing protocol from the perspective of routing design methods. As shown in 3, we have been taxonomy the routing protocol based on design methods, namely, the Non-Cross-layer Routing Protocol (NCLRP) for Proactive protocol, Reactive protocol, and Hybrid protocol, respectively. Another taxonomy is called Cross-layer Routing Protocol (CLRP), which combines the networks layer with other layers. Meanwhile, machine-learning in this survey has gotten much respect through exploring smart routing protocol in MCRNs. This taxonomy can contribute to an overview of the routing protocol in MCRNs and the knowledge of weaknesses and strengths. Moreover, it provides a chance to discover new research areas for MCRNs routing protocol that it needs more contributions.

A. NON-CROSS-LAYER-ROUTING PROTOCOL (N-CLRP)
Routing is a transfer packet across the network from source to destination [2]. Cognitive radio routing is various from traditional routing in wireless Ad-hoc [22]. In MCRNs, the routing algorithm poses several from critical challenges due to spectrum diversity and PU activities. Differently, in the traditional wireless network, e.g., Ad-hoc network, the routing algorithm operates with a fixed licensed spectrum frequency, e.g., 2.4 GHz and 5 GHz. On the other hand, the routing algorithm, in MCRNs, operates with a license and unlicensed spectrum [8]. In non-cross-layer design, the network stack layers cannot violate the others layer. From that, the routing algorithm strove to find innovative solutions to overcome cognitive routing challenges. Hence, based on type classification, routing protocols are categorized into proactive, reactive, and hybrid [8], [82].

1) PROACTIVE ON N-CLRP
In the proactive routing protocol, such as OLSR and DSDV, per node recurrently changes the link-information with other nodes [5]. In more, the proactive protocol always maintains information about paths with other neighbours' nodes [5]. Thus, the proactive protocol always keeps ongoing updating to eschew the stale paths. For that, SU can always obtain path information meanwhile demanded by solely looking in the routing table [36]. In contrast, the higher overhead and bandwidth waste are considered one of the main flaws and sins in the proactive routing protocol. In this case, the large network size and high mobility of SU can lead to an increase in routing overhead.
The author in [37] presented a path-centric spectrum assignment framework (Cog-Net). This scheme was addressed the challenge of how to incorporate path discovery with channel resolution to reduce delay the channel switching. The aim of channel switching in a wireless multi-channel network is to minimise the collision of datapacket with the neighbours' nodes by using a similar channel,  and that can increase the rate of throughput. More in details, the Cog-Net model is also considered the structure of a multi-layer graph network at each CU. In more, each layer refers to one channel, and a provided CU can show in all the layer stack as a sub-SU or a peak point. In more, vertical edges amongst the sub-nodes of SU, that connected through the exact SU, oppose for the ability to forward the data amongst the various channels for the node. Likewise, other SUs, which are accessible from an offered node using a channel, are joined by the matching horizontal edges layers in frequency. Hence, the vertical edges might have given a weight that equivalent to the switching period on the spectrum. In contrast, it sets the horizontal edge to provide a weighted for spectrum access delay. However, this work has dropped the overhead effect of channel reassignment once the channels prove to be unavailable because of the preemption by PU.
The author in [38] proposed a Smallest Delay Cognitive Routing (SDCR) that aims to reduce the delay of the endto-end connection. The SDCR can handle the challenges of the dynamics of channel availability. They have divided the strategies for solving these challenges into two stages. First, it specifies a weight in the term of estimate the delay of transmission for every link that regards the channel bandwidth, availability of channel, and the quantity of channel availability for every link. Second, it estimates the minimum rate delay for the end-to-end connection. The results explained that the proposed routing algorithm for CR could find a lighter path delay compared to classical routing algorithms. In more, this algorithm assumes a CU is static, whereas it recognizes the band of the free spectrum as a perpetual resource accessible during its activity. It is noted that it confirms such a presumption for traditional multi-channel networks. In contrast, this work has not considered the time of spectrum availability. The time of channel switching and transmission has a decisive impact on routing and network connectivity.

2) REACTIVE ON N-CLRP
The reactive (or on-demand) routing approach, such as ADOV, DSR, each SU source node establishes the route when it needs to send packets to the target node. [5]. In more, VOLUME 8, 2020 SU sends a spate of Route REQuest (RREQ) packets for the neighbour's nodes. After receiving that RREQ, The destination node will send the Route REPly (RREP) packet [5]. The reactive routing profit is to decrease the consumption of bandwidth and network overhead. Plus, it saves the node memory. On the other hand, the drawback of reactive routing is incurred a higher delay in route discovery [36].
The author in [39] proposed a routing scheme on-demand for the Multi-Hop Single-transceiver Cognitive Radio network routing Protocol (MSCRP). This routing algorithm focuses on the challenges of the dynamic spectrum resource, absent of the common control channel, and reduce the delay of channel switching. A technique is intended to combine the control information of protocol amongst SUs without the framework of routing. That it can increase the rate of throughput of every flow across attaining the optimal channel selection and improve the convergence rate of selecting an optimal path. Thereby, the throughput wins enhance due to the proposition of the assignment channel can harmony a load of the channel. Thus, depending on the result of delay outline, channel utilization improvement is achieved. On the other hand, permitting CUs to switch channels can appear of deafness problem, where a pair of CUs are unable to connect due to they are sensing on different channels.
The author in [40] introduced Cognitive Ad-hoc On-demand Distance Vector (CAODV) routing based on modifying the AODV protocol to evade PU activity and sharing path and spectrum. At the time of route establishment, CAODV excluded the channels which are exploited by PUs from the process of discovery route. However, at the time of forwarding, when the channels become occupied by the PUs, the CU neighbors invalidate all the routes that it used by that channels through broadcast PU-RERR control message. The shortest path was used as a nominee to choose among the fresh routes that tag lower hop-numbers. The drawback of CAODV protocol has selected the channel randomly without considering the best idle channel availability results in poor routing performance and PU interference.
The author in [41] presented Dual Diversity Cognitive Ad-hoc Routing Protocol (D 2 CARP) is the modified version of CAODV. The path and spectrum are individually exploited in CAODV, whereas D 2 CARP join utilization of path and spectrum diversity for more effectively using spectrum in MCRNs. This method allows for CUs to move and communicate with other CUs node in dynamically way over several paths and channels. Notwithstanding the above, D 2 CARP selected an idle channel arbitrarily without considering the channel estimation model to detect the best idle channel. Also, D 2 CARP is suffering from a phenomenon of higher network overhead.
The author in [79] presented the Dynamic Spectrum Aware Routing (DSAR). The process of packet forwarding depends on gleaned monitor spectrum mobility and spectrum sensing information for CR network topology. The method of spectrum selection and the next nodes coordination at network layer together with constrained geographical routing to embrace all the spectrum probability areas. In more, spectrum management operation has been done by using various slots for spectrum management for a gather of spectrum sensing information and delivery slots for forwarding the data packet. Plus, SU explores the paths through sharing an idle frequency and next-hop election in the sending periods. In other words, SU transmits its RREQ to the forwarding area with regards to SU with the highest priority to receive this control packet, while the irrelevant neighbours drop it. In this way, the routing overhead reduced, with increasing the range of spectrum coverage. On the other hand, although selection next-hop depends on neighbor nodes' location as a metric rather than using a dedicated control channel to exchange spectrum status. In this case, this technique is inappropriate with the nature of CR dynamicity.
The author in [80] proposed Stable Routing (PSR) that chooses the most suitable channel from the list of channels available for a pair of CUs. In more, each CU computes the steadiness of its free channels relative to the activity of PU to contact its relay nodes. Then, it attaches channels that have a higher stability possibility to the neighbour table. The framework of channel assignment and routing was construct based on the multilevel graph. Moreover, to identify the surrounding neighbors, CU in advance exchanges a hello packet with them. Then, it gathers information about all channels to its every neighbor, and periodically calculate channel availability in advance by a CU and saves in a table. On the downside, the complexity and inflexibility of the multilevel graph model make it not efficient for CRNs. Additionally, using hello-packet periodically to identify surrounding neighbors increases network overhead.
The author in [81] proposed Spectrum-Aware Anypath Routing (SAAR) for Multi-Hop networks. The uncertainty spectrum and capricious transmission characteristics are both metrics to predict and assess the quality of any route in MCRNs. Besides, extensively simulations have done to compute the packet dropping ratio, delay of connection and throughput. In a word, the SAAR algorithm can achieve the objective of improving the multi-hop performance in MCRNs and efficient spectrum utilization. However, the network performance is suffering from high overhead due to the statistical information size of the packet and the routing table packet. Also, when the channel status alteration, the predetermined candidate and channels might be inaccessible and non-perfect solutions, that fetches an eloquent challenge.
The author in [31] suggested the Cognitive radio Routing Protocol (CROP), which focused on select a route that offers high throughput between the two end nodes. The methods of Smart Spectrum Selection (SSS) and Succeeding Hop Selection (SHS) were promoted to allow for CUs in a single process to choose the unoccupied spectrum by the relay node. That it will make the path configuration procedure is a simple process as well as decrease overhead of routing. However, the suggested solutions may not be able to find the shorter path, and this leads to an increased delay and energyconsuming. Besides, the author assumed that the MAC to be ideal without a wrong alarm and missed detection and that not always possible in case of CU mobility and spectrum diversity.
The author in [82] proffered merge channel selection and routing protocol name as (CSRP) in CRNs that is built based on AODV routing technicality. The mission of this algorithm is to guarantee the stability of routing, channel accessibility, and switching delay are used as the election metric. On a broader scope, the central control did not use as a unit to govern the spectrum distributed information for overall CRNs. In this case, the knowledge of a free channel depended on channel history to permit CU nodes to take part license spectrum hole. In more, when the target node receives more than one RREQ packet over different channels and paths, then the routing algorithm filters these routes through measures the rate of delivery of the entire link agreeing to available channel probability in each RREQ packet. As a result, this process has a clear footprint in terms of reducing interference rate with PUs during a transmission time and also to obtain higher data delivery rates and lower time-delay. However, the procedure of the channel selection based on channel history is not an efficient way, especially for dynamic spectrum and PU/ CU mobility.
The author [83] introduced a shared stability-based routing, link scheduling, and channel assignment (SRLC) algorithm. Also, the author has been taken into consideration the impacts of SUs' mobility and PUs' vitality on the link-span. In more detail, the principal goal in the first part is to compute the link lifetime because of the PUs' vitality, SUs' mobility, and relative speeds. The next hope selection also has been studied in terms of balancing the consumption of energy in the network. Lastly, based on the above mechanism, the SLR algorithm selects the better neighbor with the increase transmission ability and the better free channel with the reduce channel switching cost. On the other hand, it has not to take into account the effect of the probability distribution of the route lifespan in MCRNs, which rely on many parameters like the density of nodes, PUs' activities model, and connectivity of path.

3) HYBRID ON N-CLRP
The hybrid strategy blends the features of both proactive and interactive orientation schemes. It earns a stable achievement trade-off between proactive and interactive routing schemes in various network scenarios with various requirements [5], [6]. In more, the advantage of this strategy can decrease the routing overhead, also boost routing performance in a case adjacent node are more inclined to collaborate [6]. An example of a routing protocol of the hybrid style is named Zone Routing Protocol (ZRP) which has a pre-defined zone centred at itself regard to the hop-numbers [42]. In more details, when the nodes inside the zone, it can use the proactive routing protocols to save the routing information. On the other hand, for the nodes are out of the zone, it takes on reactive routing methods. In contrast, the related nodes with the zone are governed and construed about the availability of a path.
The author [43] proposed a Spectrum-Tree based On-Demand routing protocol (STOD-RP) to construction a tree routing protocol for every channel availability to facilitate a channel and path selection. This tree routing protocol diagnoses several problems, such as the fluctuation of channel availability, absence of a fixed common control channel, and union of channel decision and route discovery. In more detail, this routing scheme is a hybrid between a proactive and reactive routing algorithm. Proactive routing is needed to keep an intra-channel routing tree that is recognised by adopting a single channel. Also, SU might be set in cases of overlapping. Thus, SU can arrive at various channels which might become a portion of multiple routing trees.
The author [44] introduced a joint venture between combine routing and channel chosen scheme known as (MPP) to meet bandwidth requirements of flows, and to overcome on the challenge of the dynamic spectrum and how to integrate of channel decision and route discovery. Base on the probability of PU-CU interference, the bandwidth for each channel is estimated. In more, every CU chooses a path according to the probability of matching the bandwidth requirements of its flows. Then, the CU has to approve the selected route. Meanwhile, in the case of the path has no corresponding the bandwidth requirements, so the CU requirements to append more of channels to diminish the bottleneck links. On the downside, the channel selects based on the probability (i.e., history) of the channel in a randomly way rather than regarding best history according to information to be transmitted.
The author [45] proposed a hybrid protocol knows as On-demand Cluster-based Hybrid Routing (OCHR), where a proactive technique is used for intra-cluster routing, and reactive technique is used for inter-cluster routing. In more details, the first of all insert the mechanism of spectrum-aware clustering, that distributed CUs into clusters rely on the availability of spectrum, the level of power, and stability. Additionally, they have promoted a routing protocol to reduce the delay and fulfil an adequate rate for the delivery ratio, and that has a positive impact to supply steady and trustworthy routing in CRNs. In contrast, the author has not been considering the concept of dynamic spectrum availability, which has a meaningful impact on routing performance.

B. CROSS-LAYER ROUTING PROTOCOL
The standardisation of layered protocol stacks has permitted the rapid development of interoperable systems, but at the same time limited the overall structure performance, due to the lack of coordination between the layers. In more specific, this problem is especially relevant for routing protocol in CRNs due to the dynamic spectrum access, time-varying behaviour of channel, severe interference with PU, etc., which called for the modification of the layering paradigm. For that, the cross-layer design has been found as a method for a changing of the layering paradigm. The main idea of cross-layer design is to preserve the functions associated VOLUME 8, 2020 with the original layers but to allow coordination, interaction and joint improvement of protocols that cross different layers. Consequently, cross-layer optimisation approaches attempt to dynamically match the requirements of routing protocol in CRNs to maxima network performance. For that, the cross-layer routing protocol is classifications by focusing on the combination of two or more layers through join routing algorithm at a network layer with other layers, e.g., physical, MAC, etc., and to highlight the strengths and weakness. Our classification also takes into account adopting of the machine-learning method for the routing protocol in CRNs to design the smart routing framework.
Further details for routing protocol taxonomy has discussed in the next subsections.

1) TWO-CROSS-LAYERS ROUTING PROTOCOL
In this section, the previous studies for routing protocol in CRNs are reviewing based on joining two layers such as (combine MAC layer with the network layer, etc.), and discuss in details. In contrast, there are still some cross-layer designs that have not addressed, such as (network layer with application layer) in any previous studies. Accordingly, we try to draw a relation map between these layers' parameters with expected future direction for it.

Application and Network Cross-layers:
In general, the application layer functions need to support different user's applications such as (QoS, file transfer, internet browsing, multimedia applications, intra-refreshing rate, etc.) [46]. However, the adequate provision of QoS at the application layer is an extremely challenging issue in CRNs, primarily due to the raise dynamism of the networking conditions which are not able to continually secure the supply of the required resources [7]. For instance, the selection of a stable path and higher lifetime channel availability can minimize the distortion at the application. In more specific, the observed decrease of the QoS at the application layer by SUs may restrict the chance of success CR technologies. Again, a new cognitive radio module can be designed that can interface to the other layers' protocols. Hence, a right cross-layer design can create a new interface between the lower layers and the upper layers variables to optimization the target applications. A formulation cross-layer model that joins the application layer with the network layer has to be taking into account various factors which have a real impact such as scalable, path selection, channel selection, throughput, and other elements. Fig 4 shows a general cross-layer framework via cooperation between the network layers with the application layer According to our acknowledgements, although many research papers have tried to meet the user requirements at the application layer in CRNs, still this gap of co-operating the application layer with the network layer is a challenge. For the sake of clarity, Fig. 4 demonstrates the types of services that can be exchanged between these layers, to provide these layers with all necessary information that assists routing to make the right decision to serve the main objectives concerning operate to these layers. In contrast, the application layer can adapt its application packet to meet the route resource [35]. For that, the term of QoS routing algorithm concept can apply not only from metric selection (e.g., bandwidth, delay, etc.), path computation, QoS state propagation, maintenance, scalability [20], but also to answer the requirements other layers. In a word, this design carries within it a mutual benefit for both segments. Over and above that, the routing algorithm also needs to study the impact PUs activities impact the network layer and application layer [7]. The proposed framework will have an introduction to the white spectrum availability information in the network to meet the application imperatives. The application layer calls information about the available resource and other services to adapt its' needs according to that [47]. In CRNs, the network layer has acknowledgment about network resource that it inherits it from the lower layers, which can help the upper layers. In that case, the application layer can reconfigure its configuration base on that [35]. The network characteristics can provide information such as mobility, power, and network lifetime. Really, the responsibility is not lies solely with the layer of the directive, but also the application layer has a key role to play in improving the functioning of the routing protocol. Thus, cross-layer design can hold a new partnership between the network layer and application layer to serve the work of each layer.

Transport and Network Cross-layer:
In general, the transport layer deals with TCP and UDP protocols, also provides different functions and services such as round-trip time, receiver window, most magnificent transmission unit, congestion window, rate of packets lost and throughput [48]. On the other hand, the transport layer is suffering from adaptive with CR technique. In more detail, as an example of TCP, TCP is not suitable meanwhile applied in mobile networks, multi-hop in CRNs due to the fluctuated channels with variable characteristics [9]. In a word, the TCP is slow to adapt to the rapid frequency change, interim In fact, few research papers have addressed the transport layer issues but shyly [9]. The author [48] called to design The Cognitive Radio Transport Layer (CTRL) that aims to provide the chart between the QoS at the application layer and down layers stack and to breed a connection of transport layer. In more, the CRTL is in charge of treating with various packet data context and the requirements of QoS between applications and control layer management in cognitive radio. Also, the CRTL executes QoS filtering to aid with the routing of application data with diverse QoS demands to pre-define contexts, administer the flow of packets to lower layers, and to supply utilization to context creation and modification. Anyway, to enable CRTL services that it needs to implement the cross-layer design to offer it with the necessary data to activate the services that can adapt with CR. Indeed, there are no real attempts to use cross-layer that join between network-layer with the transport layer to serve the functions of them. In more, the problems at the transport layer in CRNs are related to sensing operations [12]. At the time a middle node on the path is employed in spectrum sensing, it will not be able to forward packets [75]. In more specific, the routing path cut-off while sensing is virtual, i.e., the route itself will resume as soon as the sensing is complete. Hence, the SU source has to reduce the transmission rate to an ideal rate to block the overflow of buffer in the intermediate nodes, rather than ultimately stop the path connection as usual in classical ad hoc networks [12], [49]. For that, the integration between the network layer parameters with transport with CR routing protocol can create a successful model and enhance the transport layer protocol.

Network and Link (MAC) Cross-layers:
The function of MAC in CRNs is to define the available spectrum resource during spectrum sensing, determine the optimum sensing and transmission times, and organize spectrum access, and channel assignment with the other users [29], [50]. The author [56] proposed a cross-layer design between data-link (MAC) and network layer. The aim is to reduce wastage resources used by the packet in their previously hops. For that, the resource allocation, at the link-layer, is accounting by the insert of hop-count information that obtains from the network layer. So, in cased of a packet is missing at the maximal hop-count, this outcome has represented the wastage of resources in the earlier hops. Thus, to surmount those obstacles, after channel reservations to transfer the packets, he power is distributed between packet and transmission through the most suitable available channel without any regression throughput.
The author [84] introduced a cross-layer to join between routing protocol (Network layer) with spectrum information (Mac layer) for ad-hoc mobile in CRNs. The aim is to mitigate the frequency channel switching, because a re-routing process in CRNs is expensive, regarding energy, delay, and throughput. Therefore, to reduce channel switching, the investigator presented a smart selection way by using cross-layer-based on cognitive radio routing (CLC-routing) protocol. The CLC-routing can obtain information about channel availability from the MAC layer and chose the next-hop node. Thus, the network layer can select the next hop according to the list idle channels. The advantage of this way, it can be reducing the rerouting frequency, data packet collisions, a maximum average of throughput, and increase the lifetime of the network. However, the author has not analyzed the delay of channel access, which defines as the average time spent by a data packet in the MAC queue, respectively. It can affect the channel selection process.
The author [19] introduced cross-layer-based routing layer solution that intends to reduce channel switching frequently. The routing algorithm has been taken into account that it is a better way to save the costs of energy, delay, and throughput through select a route in such a way that requires less channel switching. In more, the CU requires specifying a link-failure result in spectrum mobility from a node failure for better performance. Also, the author has design to channel selection methods that called smart-selection and random selection to explain that the rate of channel switching process can reduce considerably where insert channel selection parameters in routing. In short, implemented smart-selection in cross-layer routing has a particular resonance on routing performance rather than random selection. On the downside, this work did not consider the channel access delay due to lower channel access time, it is better for MAC and routing performance.
The author [57] adopted a cross-layer approach to link the control of power, the assignment of the channel, and route selection in a bounded optimisation framework. The goal of this way is to reduce interference between SU and PU, and for proving a routing session in CR based on the constraint an average data rate of the end-to-end connection for SU. Further, the routing approach does not only depend on the reducing of the interference probability between SU and PU but also the spectrum sensing values. The resulting explained a significant decrease in mean interference and higher performance. Nevertheless, the spectrum sensing model is not practical since it did not examine the fading nature of the spectrum sensing channels. The author [58] introduced a cross-layer routing based on joining Rate adaptation, Channel Assignment, and Routing, which called (J-RCR). The J-RCR protocol aims to increase social welfare through the exploitation VOLUME 8, 2020 of spectrum resources in multi-channel multi-hop CRAHNs. At link-layer, the routing algorithm combines the data rate average for each time-slot and specifies for all link-channels along the route in case it arrives a new flow or any PU activities. For the guarantee rate requirements, the virtual queue model was applied in the routing algorithm. Furthermore, the J-RCR routing algorithm not only has been considering for the level of workload and spacing amidst relay and target CU nodes but also has implemented the interference due to co-channel. Also, a new routing metric was proposed that it relies on service price per packet, which combine queue backlog and distance to the target node. The output result shows that the J-RCR reveals improvements in throughput rate, path stability, and reduced delay. Although the routing algorithm has succeeded in joining the channel and routing decision and reducing the probability of interference with PU, it did not consider the channel/link characteristics. In more, the operation of selecting an idle channel based is unlearned, without also taking into consideration any factor to measure the quality of the channel. The author [59] presented a cross-layer, that is to say, joint routing and channel assignment (J-SRCA) algorithm for mobile cognitive radio Ad hoc networks. This schema is involving node mobility, PU and CU co-channel interference, the burden of dealing with a channel and measure the space between the relay and target node. At the results level, the J-SRCA significantly enhance the performances, especially in the case of higher PU density and mobility. In any case, the J-SRCA algorithm has not been taken into account the factor of a lifetime to find a more stable link, especially in node mobility. Nonetheless, it has not considered the influence of node density on the routing performance.
The author [60] proposed the distributed joint dynamic Routing and Channel Allocation (RCA) algorithm by using a cross-layer design. RCA algorithm has been designed based on a join the link-layer (MAC) and a network as one optimization challenge. In practical, the MAC services such as (dynamic spectrum allocation, scheduling, and transmit power control) has joined with the routing algorithm to achieve the aims of the routing and to meet the QoS requirements. In addition, this scheme aspires to build a state of balance between the functionalities of MAC and routing. Hence, the utility function was called to increase the link-capacity between CU nodes. In more, the process of path selection from the source to the target node relies on the Traveling Salesman Problem (TSP) to find the shortest path to the destination node. The output results of the RCA protocol observed attains a higher throughput and packet delivery ratio. On the other hand, RCA is suffering from an increase in rates of high end to end latency.

Network and Physical Cross-layers:
In CRNs, SU is responsible for discovering the transmission range of PU and trying to avoid interference with it [56]. For that, SU has to be intelligent for sensing the spectrum to prevent interference with PU transmission. Furthermore, the process of spectrum sensing can provide more spectrum access opportunities. The physical layer in CRNs can supply these requirements. Thus, the physical layer manages the operation of spectrum sensing, detecting the PUs, and assessing the quality of available channels [7]. The author [62] proposed a cross-layer Routing Protocol (CLRP). The purpose of CLRP is to increase the throughput and to build a stable path and increment the possibility of detecting an end-to-end route. In another way, through channel sensing, each SU preserves a list of observing channels that specify the probability of availability with 0 and 1. A common control channel did the signaling of the control routine. The author supposed that the relay nodes (i.e., in-between nodes) might observe and sense a group of selection the ideal channel after setting the path. On the downside, the other channels that are not sensing are considered as always available with a probability. The author [63] suggested a cross-layer design to integrate the the transmission-guide information of the physical layer and process coding at the network layer. This schema is aim to assist the connection between multiple a pair of cognitive users, that permits to use of the spectrum resources. Also, the interference rate is less with primary licensees. Therefore, the author employs network coding at between nodes to associate the packet received prior re-sending, which gains reliability, increase in throughput, and more bandwidth utilisation. In contrast, underlay mode habitually runs with lower power which leads to reduce data rate transmission. the author [64] offered undercover, a cross-layer routing protocol that connects the physical layer services with routing algorithm at the network layer. In more, undercover employs collaborative groups with applies beamforming to transmit data, typically albeit PU actives on the same channel. In that case, this property can improve the packet delivery rate for undercover than other protocols. Expressively, the capability to transfer packets concurrently with PU over the same channel can provide a new level of freedom that was never available before. In order to evaluate the link-quality, more than one metric has been used between the next hop and relay node. Thus, the diverse values for the routing metric have been computed, according to different groups, which can facilitate the carriage from the neighbor's node to the next hop. The output results clarify enhancement of goodput rate of up to 250% contrast to other routing protocols, with the lowest overhead. Even so, allowing SUs to use the licensed channels with PUs at the same time that it enforces to use low-power transmissions, which leads to a decline data rates.

2) THREE-CROSS-LAYERS ROUTING PROTOCOL
The integration between three layers have been explained in this part, with presented many previous studies to show what is the features and disadvantages of participating between three layers in different ways in CRNs.

Application-Transport and Network Cross-layers:
The QoS is regarded as an essential and sensitive point at the application layer than at other network layers. Besides, CRNs-based services for SU would have a severely lower QoS than radio services that enjoy secure spectrum access [47]. At the application layer, if QoS is not prudently considered in MCRNs, the perceived decrease in QoS related to the MCRNs could obstruct the success of MCRNs technology. Therefore, to improve the quality of service, the upper layers of the stack layer need to share and aware information [60]. The transport layer is accountable for controlling the transmission data rate of per link to ensure the QoS requirement and to prohibit a rapid row rate from the restrained channel rate [61]. In more, there are many factors in a wireless network that can be an effect on QoS [60]. For instance, the transmission error average (e.g., package loss once using a TCP) is considered a severe problem that can solve by using the cross-layer design environment [33]. Cross-layer design can significantly achieve the QoS requirements on multi-hop networks and improve system performance [18]. Choosing a high-quality path for real-time applications is considered one of the critical rules for QoS at the network layer [62]. By the same token, delivery paths for streams are defined by using the information resource of network availability as well the QoS necessities of identical flows [18]. In more specialized, real-time applications for SU are considered as a natural judge to test the routing performance for MCRNs. In wireless networks, it has developed a traditional approach to support QoS in CRNs [20]. Pragmatically, new multi-aim metrics have been joined route fastness with other QoS metrics such as (delay, bandwidth, channel selection, channel quality, etc.), candidate as essential metrics for QoS in MCRNs. In more detail and point out, cooperation these metrics with multipath routing metrics for SU is to choose backup routes or route simultaneously on various routes. Also, it can supply a valuable framework for real-time applications.
As far as we know, this combination between these layers yet is not addressed in any previous research practically. Without a doubt, a mix between these layers' parameters via a cross-layer intends to enhance the performance of a system by combining the layers protocol [7], [49]. In the same way, the outputs are flexibility in sharing the information between network layers and provide better QoS for network dynamic and limited resource [18]. Thus, every layer of these three layers, Application, Transport, and Network, has different parameters, and combining these layers or parameters can be more practical [7]. In more, the cross-layer mechanism joins the transport-layer with the application and network layer to solve a particular issue. The transport layer can handle various data-packets contexts and perform operations of QoS. It can be filtering the requirements of the application according to the QoS-routing resources. Also, it manages the stream of IP packets to lower layers and supplies help for setting making and alteration [30]. Thus, it is the fact that the application layer, transport layer, and network layer are all interdependent, and the combination among these three layers can enhancement the QoS, and help the routing be more efficient to support the application layer.

Transport-Network and MAC Cross-layers
Using an efficient transport protocol in CR is essential to send the data in a reliable manner [63]. Congestion control and reliability are provided by a transport protocol when the congestion control is imperative to avert congestion by arrangement, the rate of transmission, or by employing other strategies [30]. Reliability is anxious about providing steady and mistake-free data transmission. Once a data transmission incident takes place, the data sender should be able to affirm that the receiver has to receive the data correctly. The protocols in the network layers' stack need to enhancement to accommodate the extra functionalities of MCRNs. The phenomenon of switching, congestion, and queuing products a delay at each of the relay nodes along with a communication influx, also, the interference due to the spectrum fluctuating in the surrounding environment [64]. For that, these problems are called the cross-layer design in order to combine MAC layer scheduling with the network layer [64]. For this reason, the joint between MAC parameters such as (coordinate dynamic spectrum access, cooperate in sensing the spectrum, etc.) and network layer by cross-layer design can ease off the routing issues such as switching the channel [7], [65]. Undoubtedly, combining the transport layer with the MAC and network layer can be more imperative according to essential services that provide by every layer. In more detail, join the transport layer with the MAC layer and network in MCRNs can be more significant due to it can improve the higher layer functions through the incorporation of lower-layer services such as spectrum access, spectrum mobility, routing decision, and congestion-free end-to-end reliability [50]. In contrast, these attributes can be located in the infrastructure networks at the centre of CRNs control. However, the CRNs distributed systems network needs to smart collaboration between different protocols in the network layers' stack. VOLUME 8, 2020

Network-Link (MAC) and Physical Cross-layers
It is attracting the attention of some researchers processes of combining the lower layer with the network layer due to its positive results on the routing performance in MCRNs. On the other hand, CR technique imposes the lower layers also to update its structure to adapt with new features offered by CR such as dynamic spectrum access, multi-channel. Definitely, joining lower layers' parameters with routing algorithm, especial in routing decision, can represent compelling solutions.
The author [85] realized a cross-layer routing and dynamic spectrum strategy for CRNs, which knows as Routing and Spectrum Allocation Algorithm (ROSA). For the routing metric, it is designed based on spectrum utility and spectrum holes. In more, the ROSA algorithm aims to increase the network throughput and that through sharing routing, customize the dynamic spectrum, scheduling, and control on transmit power, respectively.It can deal with the dynamical spectrum resources to maximizing the link-capacity without harmful interference to other users. Moreover, it can exploit the weighted sum of difference backlogs to steady the system by granting precedence to excellent link-capacity with a high differential backlog. However, the ROSA algorithm has a drawback in its schema. Equally, the routing algorithm is suffering by default from the problem of competes for the low economical cost route to the destination node, and the policies of model attempt to employ links that maximize queue differential backlog. Thus, these two procedures could probably be in inconsistency in the calculated paths that point for directing the packets from source SU to destination. As a matter of fact, this can lead to an outcome in routing loops that have a terrible effect on the end-to-end delay of delivered packets and on the end-to-end delay of delivered packets and at a critical state, the situation could have a negative influence on network throughput due to continued interference by the extreme looping effect. Over and above, the author also suggested that routing and scheduling can be accomplished through a single interface with the presumption of CSMA-CA MAC design at the lower layer. Notwithstanding, this presumption is not considered the deafness problem. The author [86] used cross-layer design for a routing protocol in CRNs, through join sensing with MAC and network layer. The physical layer function is to process the data and control frames into identical bit-streams and directs them to the data (if the MAC allocates the channel) and the control channels. The cross-layer combine between MAC and network, where the sensing process already joins from the physical layer to the MAC layer. This approach aims to evaluate performance by measure the average of packet sending successfully between the sender-receiver node and the average rate of clash with the PUs. In particular, the author presented a sequential Bayesian estimation scheme where each SU estimates the probability of the channel availability for each frequency band. Moreover, designing a reward metric corresponding to the channel availability probability and their capacity, respectively. A reward metric is used by the MAC layer to select the channel that the link between two SUs, which has the most significant reward metric. At the network layer, its candidates the first-best-seek routing protocol that chooses the relay node in the area of the forwarding packet to the destination node. As a result, the numerical results explained the trade-off PUs collection and increased the successful packet transmissions rate. In contrast, the Best-first-search routing algorithm consumes a large amount of memory and network resources, since it has to keep the tree of backtracking in its memory. The author [87] Cross Layered Opportunistic Routing Protocol (CLORP) that joins between physical layers spectrum sensing, MAC layers opportunistic link discovery, and network layers opportunistic data transmission. In more detail, the energy detection (ED) method at the physical layer has used to detect the idle channels that allow the CUs to transmit the data over it. Moreover, in order to gauge the link-quality for selecting, the Error vector magnitude (EVM) method, at the MAC layer, was considered. The CLORP has extended the route request structure, which is called cognitive radio route request (CRRREQ), that included the available free channels. Meanwhile, the metric of path selection was designed based on the minimum length CRRREQ to the target node, including selecting the spectrum occasion at each SU node. More clearly, the CLOPR algorithm has been focused on discovering an optimal route across opportunistic link discovery with employs the most significant spectrum opportunity (SOP) toward each hop, including the probability of delivery in a secure way. The SOP obtains its information through the messages exchanged of a cross-layer model based on the layer spectrum sensing function (PSSF). By looking deeply, the author has kept on reducing the number of control packets through merging SOP information inside the RREQ packet, which called CRRREQ. For that, the phenomenon of link failure has been avoided by using the information of the best link (BL) and the SOP. This information has already included inside CRRREQ rather than using PU-RERR message as in CAODV. Even so, using the CRRREQ as a rescue letter to avoid PU interfering is not a practical solution. In more, the mobility mode of SU always exposed to the risk of PU interfering, which leads to more rescue letters. That means more CRRREQ messages that including more than one control packet, which considers an increase in the volume of consumption of network sources and more overhead.

Application-Network and Physical Cross-layers:
Joining application parameters with the lower layers can affect positively on acceptable for variation of delay, required throughput, delay tolerance, and fair packet loss rate, etc. [22]. Similarly, the MCRNs has authorised the dynamic control of necessary the parameters of a physical layer such as (transmission power, modulation, constellation size, etc.) [66]. For that, CR adaptives the physical layer information to make an optimal decision to obtain on maximise performance for QoS at the application layer.In more, application layer QoS can be amelioration significantly if the intra-refreshing-rate is modified together with parameters at low layers, such as spectrum sensing at the physical layer [47]. Therefore, enhancement of the QoS by the cross-layer design amongst the application layer and physical has a sound. Typically, one of the aims of the routing protocol is to provide QoS that meet QoS at the application layer in MCRNs [67]. For that, to enable a QoS-aware routing protocol in MCRNs that it has to take into consideration the delay-sensitive and bandwidth resource for hungry applications [68]. Likewise, combine, at the network layer, to its routing agent information about, for instance, channel state information, PU activity, etc., whereas the application layer, e.g., define the type of applications such as (audio, video, text. etc.). This information pushes the routing protocol to make the right decision about channel/link selection, which serving application layer requirements [7]. This area still needs more effort to discover the positive results that can be gained through this design and expected problems.

Application-Network and Link (MAC) Cross-layers:
The synergy between the layers of the network must be consistent with the goals it needs to achieve [23]. For instance, the service that it provides by the physical layer has a different effect, in contrast, when the cross-layer design passes through the MAC layer [7]. For the QoS in CR, the application layer has to account and implement in the cross-layer design [47]. Thus, to preserve the end-to-end QoS, it is compulsory to add conduct at the wireless link [55]. At the MAC sub-layer, the parameters can facilitate to support the routing protocol. For example, the MAC sublayer information from the channel location and channel assignment can use to promote the routing algorithm in MCRNs [33]. From that, it is evident that the cross-layer between MAC and network can achieve the routing process, whereas multiple license channels are scheduling to the multi CU in a quest to meet QoS specifications [55].
There is no much research that touches this type of design. For the sake of simplicity, the study by [69] has assumed just as an illustrative example. The cross-layer protocol has been designed based on the channel allocation and routing with QoS requirements. This approach has the aim to consider the quality of service requirements and channel availability by presented a new scheme jointly. From that, the mechanism of integration of allocates channels and determines a path that can keep the QoS claims for the real and non-real-time applications. These schemes offer to reduce the packet loss rate for the applications of real-time and throughput for the applications of non-real-time, which is considered as evidence for the effectiveness of cross-layer design-related to the QoS challenges in CRNs. In a word, the cross-layer will have a crucial role to play in solving problems of QoS and meeting the growing demands of services.

Transport-Network and Physical Cross-layers:
The parameter selection map between the layers must be according to the objectives to be achieved and the challenges that must be overcome. Actuality, the deep understanding of the nature operating of layers can provide refresh solutions. For instance, the transport layer parameters, e.g., congestion control, adaptive control, flow control when combining truly with lower layers, can be as an antibiotic for CR challenges. On the contrary, the wrong building cross-layer design can give fruitless results. In MCRNs, during the process of sensing, SU cannot forward the packet [28]. Thus, the sensing time needs to value and share with the transport layer to evade the retransmission error, which can be a reason to influence overall routing performance [28].
As well, at the transport layer, the congestion control of TCP can be enhanced through obtaining information for the physical layer into consideration. For instance, the knowledge of the physical layer can use to distinguish packet loss because of the PU interference or the bad link quality [70]. In more details, much research about the transport layer has been focused on the enhancement of TCP protocol, increased throughput, reduce end-end delay [71]. For more simplicity, integration congestion control can decrease the rate of packet loss and improve performance [71]. Hence, meanwhile creating transport protocols for CRNs, it should consider some factors such as congestion control, lower-layer parameters, and loss recovery into account for more spectrum-efficiency and optimization performance. However, still, the existing cross-layer has limitations due to many factors such as PU behavior, spectrum dynamicity. Nevertheless, the challenges of design window-size that it has to take features of CRNs and activity of PU/CU are open challenges [71]. In effect, improvements in the operating of the network layers will not only affect the target layer but also will take part in improving the process of the other layers. In fact, the cross-layer system is a series of related events and actions, where the exchange of necessary information will be a rescue bridge to overcome the obstacles of CR challenges.

3) FOUR-CROSS-LAYER ROUTING PROTOCOL
Combining between different four-layer explained in this section, with more reviewing and information about the design mechanism and how these cross-layer methods can boost the operations of network layers and to be aware of the CR technology requirements.

Application-Transport-Network and Link (MAC) Cross-layers:
The single-layer process, e.g., where the improvement of the performance is the target of the only a particular layer, whereas the different layers operate as an assistant to supply the necessary information parameters, has not enough high flexibility to adequately addressed to meet the MCRNs demands [72]. At the same time, the steps of the solution need to define explicit targets to build a model that matches the requirements of the current stage. To enable unlicensed devices to send and receive the data effectively that the cross-layer design routing must be adapting for more efficient dynamic spectrum access [74]. In more specific, integrated the data-link and the network layer can reduce re-routing initiate, which increases the routing stability and minimises the routing delay [19]. In contrast, the delay is considered an essential metric for the QoS in MCRNs [20]. The QoS at a higher layer in MCRNs is a hard job to provide a significant QoS due to there is increasing in the average of the dynamism of the networking, and that makes difficult to supply enough stable resource for QoS requirements [7]. Again, the QoS operations at the application layer can promote significantly by the exploitation of management services that it provides by the link layer [7]. A little research has been touch this type of design [30]. However, it was implemented to solve the challenges of traditional wireless networks. Today, with the emergence of the MCRN challenges, that it requires applying the cross-layer design to overcome new challenges [7]. Pooled data between the transport-MAC layer is needful because of the sensing process effects on transport-layer protocols. [28]. In that case, the sensing-period has to be an accuracy account at the transport layer to save any unnecessary re-transmissions and packet loss on the route. For that, this process will call to join between the MAC and transport layer to reduce packet drop and re-transmissions process, which also to avoid the buffer overflow at an intermediate node [12]. In more, a cross-layer design is needed to interchange information between the network layer stack in a motivating way and thus allowing to diminish the overhead [7]. A cross-layer environment between application, transport, network, and data link layer, have to include the adaptive protocol, which should know the divergence in the cognitive radio environment [73]. In particular, they should consider the traffic activity of PU in the adaptive protocol. Besides, SU transmission characteristics are needed and change in channel quality [19]. The flexibility of cross-layer design could invest in service to implement this design that could be included, for instance, QoS, congestion control, scheduling, resource allocation, routing, and the list goes on as long as these layers can provide different services. This design is still unexplored in the field of research.

Transport-Network-Link (MAC) and Physical Cross-layers:
The author [74] devoted a distributed cognitive cross-layer design algorithm for multi-hop wireless networks enhancement through merging the upper layer (transport layer) with the lower layers at (network, datalink, physical). In more, the author explained that the traditional network layer stack could not be a source of inspiration for optimal performance for the wireless network. In other words, this method tried to solve the predicament of Network Utility Maximization (NUM). In this, per CU source independently setting its rates, according to the current capacity of the link settled by the physical layer. The previous data from its neighbors define the link-layer scheduling, and routing has done by using the AODV protocol. In that case, The concurrent enhancement for the control through multi-protocol layers can motivate the cross-layer design to gain higher throughput, support the capacity and utilization of network, minimize power-consuming, and interference. In a word, cross-layer design can assure the aims of the end-to-end data stream through wholly utilising the CRNs resources. On the downside, this design has inherited complexity. That means the higher network equipment resources are needed to allow this model. Thus, replacing the layer with another layer can lead to change in scenery of the process cross-layer design and the output results. It is reasonable since every stack-layer has its parameters which affect negatively on the performance.

Application-Network-Link (MAC) and Physical
Cross-layers: The relation between the data link layer and the physical layer has a close coupling to attain the performance and to be ambidextrous to dealing with the dynamic spectrum in MCRNs. From another perspective, the physical layer factors such as signal processing, modulation, coding, can be imperative the network performance in the term of delay, throughput, packet loss rate, and interference. Thus, optimisation is achieved by cross-design combining physical layer and MAC layer.. Besides, link error-rate and MAC protocol factors also can influence on the link's usability, and that leads to re-routing operations. For further clarification, the example below meets the same cross-layer design as mentioned here. However, this work has not focused precisely on routing performance.
The author [105] proposed a cross-layer optimisation architecture to minimise the bit error rate, out-of-band interference, power usage, and to maximise the overall throughput. Besides, the genetic algorithm has also applied to the optimisation of distributed problems, where it depends on the methods of frequency allocation for distributed cognitive. In essence, the traditional genetic algorithm is changed, which is a namely serial sub-carrier-wise genetic algorithm that uses multi-objective fitness function. To further minimise out-of-band interference, partial quantisation within one transmission can be used. From that, there are four network system parameters that it selected to optimise through the recommended method, where the results are shown that the proposed method can simultaneously decrease the bit error rate and the out-of-band interference while maximising the overall throughput. For the routing protocol, the author called that routing stability, and link availability relies on the BER and locations of nodes, and the number of hops and congestion over a route located by the delay value for the transmission application.

Application-Transport-Network and physical Cross-layers:
For stack-layers, each layer carries on different critical parameters inside it, which can be harnessed to serve and optimise other layers' operations [30]. The transform from the traditional wireless network to cognitive radio has called for the birth of some new concepts [75]. For instance, spectrum sensing is an old concept which has already applied with the traditional wireless network. Nevertheless, with the appearance of MCRNs, that it invites to develop the spectrum sensing operation to be able to discover the spectrum hole and to void PUs activity [12]. At the same, the cross-layer design also has been developed by building new relationships between layers parameters. For more understanding, the function of layers joining can be done in different stages. For instance, Fig. 5 elucidates that although spectrum sensing is considered as the primary task for a physical layer, the link-layer also has been sharing this process, whereas the spectrum sharing also touches the physical layer. Meanwhile, the higher layers also share some tasks [12]. That means the pre-existing common elements between existing layers will contribute to increasing the efficiency of layer protocols [76]. In the same way, the process of conjunction the upper layer (Application, Transport) with the lower layer (Network, Physical) can improve in several aspects, such as reduce the routing delay and increase the throughput [3], [47]. Besides, join the application layer and transport have an impact on QoS [3].

4) FIVE-CROSS-LAYERS ROUTING PROTOCOL
This classification explains the cross-layer design between the fives layer. It is still this classification is not vastly employed, but from the previous studies can obtain some evidence to support this suggestion.

Application-Transport-Network-Link (MAC) and Physical Cross-layers:
To exploit interaction bonds between five layers' parameters, that requires finding a language of dialogue among layers functions to accommodate the new tasks entrusted to it [30]. Admittedly, designing a model that cooperate with five layers of services needs to drastic the changes inside each stack-layer [33]. That means that the process of synthesis between layers' protocols leads to receives new inputs [102]. For instance, joining channel availability with the routing decision requires the routing algorithm to adapt and coexistence with new facts. Indeed, coupling two layers or more need always to prepare that target layer to digest new inputs and deals smoothly with it. Undoubtedly, the expansion of cross-layer to join different layers will increase the capabilities of layer protocols to deal with more challenges in a practical way [3]. However, it will contribute to growing the complexity of the cross-layer model and consumption of network sources. Practically speaking, the process of direct connect among the parameters of each layer allows for those parameters at any layer to be noticeable to other layers at run-time. The five cross-layer design has been investigated, which proposed by [3]. It is mentioned just as an example for clarifying the concept design of a cross-layer over five-layers. In contrast, the routing problem is considered a sub-problem. In more information, the vertical calibration framework was used as a model for five cross-layer design, which took care of the network objectives and constraints imposed the lower layers to the higher layers. Accordingly, the author has translated the generalised utility optimisation problem (GUOP) mathematically in CRNs for covering various layers starting from the physical layer to the application layer. These constraints have been represented in the access management components from the power of access control, frequency functions, choose the routing algorithm, flow control to ensure QoS through incorrect mixed non-linear programming. For that, the optimisation cross-layer design has been used that be applied by the vertical decomposition (COVD) pattern to separate objectives and constraints. For more simplicity, CRN multi-hop networking problems have decomposed into several subs-problems. In other words, the optimisation process can pass through the optimal spectrum, scheduling with dual-factor (OPT2), multiple (OPT3) protocols at the network layer, and engineering traffic with QoS assurance methods (OPT4). Furthermore, the complexity of computation operations of optimisation a cross-layer design was reduced by using the proposed heuristic algorithm (COHA). Actually, this work has been focused on the problem of improving the utility optimisation of the network. However, there are various restrictions, from the lower layers to upper-layers functions, should take into account.
In [3] has introduced different cross-layer models that it partially satisfies the concept of the design in this section, which based on computing in a repetitive loop among the layers with flowing-back services and information and forth execution different tasks. In essence, the map of interactions divided into networkphysical, application-network, and transport-physical. With a simple scenario, based on the possible next-hop map, the resource spectrum has been allocated by the PHY-MAC algorithm, and after that, the routing table has founded at each CU user benefiting from combining the network-physical layers resource. With more evidence, the author mentioned that further knowledge underpass requires between application-network that to make it possible for the routing algorithm can satisfy the QoS requirement. In the end, a new road within the transport and the physical layer are demanded to achieve the traffic balance and power regulation process to save energy. All these evident statements are considered an attractive point for more researches in this domain. In more clarifying, Fig. 6 shows a sample for cooperating cross-layer parameters that are used as a critical solution for facing the CR challenges. The wise from this example is to explain how the interaction methods between layer can play as a critical role to deal with different challenges through setting up a new cross-layer relationship for parameters to win on CR challenges such as route selection, spectrum diversity, channel selection, QoS, traffic control, and others. In more specific, this method can give official status to the idea of using cross-layer design for routing challenges in CRNs. Consequently, the routing protocol, in the cross-layer architecture of GUOP, chooses stable paths instead of finding the shortest-hop routing, respectively. The proliferation of endless hops is prohibited by aiming to reduce the delay of routing. In the same context, the recently proposed protocol was introduced by [76], which is called Mobility Adaptive Cross-layer Routing (MACRO) protocol. The MACRO depended on the concept of cross-layer intercommunication strategy across five-layers from the physical layer to the application layer. MACRO seeks to provide the dependability of a path by considering the variations topology and channel conditions like node congestion, failures and to harnesses knowledge like the average mobility and RSSI over multiple-layers. Similar to the AODV protocol, it applied the route discovery technique to decrease the number of deluge by trapping the group of CUs mobile ready to answer the requests. Also, it selected the most secure paths for forwarding packets based on mobility of CU and the link-quality. Simulation outcomes revealed that the MACRO affords significant enhancements in terms of the packet delivery ratio and delay of end-to-end connection. However, the discovering process takes part in reduces the amount of flooding, but it raises the delay of end-to-end connection and the consumption energy rate.

5) SMART CROSS-LAYER ROUTING BASED ON MACHINE LEARNING METHOD
Today, machine learning is widely used in various applications and technologies [89]. The routing protocol in CRNs is considered one of this application that beneficial interest from the features of machine learning [89], [90]. In more, the CRNs routing protocol at the network layer has various factors that can be trained by machine learning for the true route decision, respectively [109]. The cross-layer routing protocol is considered more suitable for using machine learning due to its ability to provide various useful services and information from other layers [91]. In practical terms, the algorithms of machine learning are trained according to the routing protocol factors such as hop count, node speed, node energy, CAP, CQ, etc., and that constitutes a smart routing protocol [89], [109].
In fact, the development of the principle work of machine learning algorithms has made them useful solutions in routing protocols [94]. This is reasonable due to the machine learning algorithms has the flexibility and ability to integrate and understand the challenges of routing algorithms in CRNs.
On the other side, the number of research in this field is still shy, which make it an attractive research area. For that, we have introduced in this survey a new smart framework for cross-layer routing protocol in CRNs in order to explore the mechanism of integrating machine learning and cross-layer routing protocol in CRNs.

IV. A CRITICAL REVIEW OF EXISTING WORKS FOR THE ROUTING PROTOCOLS IN MOBILE COGNITIVE RADIO NETWORKS
Numerous techniques for routing protocol in CRNs have been proposed. All appropriate methods or techniques are reviewed, and their strengths and weaknesses are highlighted as mention in Table 1. In more detail, based on critical reviews tabulated in Table 1, most of the work in the early stage of CRNs discussed in non-Cross-layer approach. However, recent related work focuses on cross-layer issues because of its positive impact on CRNs. As the CRNs is very much dynamic due to its characteristics, a smart routing approach is required by analysing environmental behaviour. Fewer works have been addressed in the literature. Hence, machine learning could be a prominent approach to analysing the environmental behaviour of CRNs. In the same context, smart routing protocols in CRNs will permit a robust modern spirit of a smart adaptive at the level of CRNs which will expedite useful improvement and will be an outstanding aid In the general framework of the principle work of routing protocol. In this paper, we weave the idea of proposing a framework for smart cross-layer routing protocol in CRNs by using machine-learning techniques. Applying machine-learning for cross-layer routing protocols in CRNs can be optimisation routing performance at the level of multi-path/multi-channel selection.
In practical terms, cross-layer features can provide the machine-learning engine insufficient information (such as CAP, CQ, link-interference, etc.), which can be serviceable by the smart routing protocol particularly for the jobs of routing in CRNs. In more, machine-learning can play as the boss that manages the cross-layer resource at network-layer and trains the routing protocol to predicate the future route decision. To our knowledge, this is the first survey article that concentrates on issues of design smart routing protocol in CRNs through presenting a framework for smart cross-layer routing protocol in CRNs by employing machine-learning technology.

V. SMART CROSS-LAYER MANAGEMENT FRAMEWORK FOR ROUTING PROTOCOL IN MOBILE COGNITIVE RADIO NETWORKS
Many cross-layer designs have been proposed and simulated various challenges and requirements routing protocol in CRNs [3], [7]. Accordingly, there has been a great diversity of practical ideas to present mimic this type of application. An example of this point is the achievement of cross-layer techniques for allocating resources. The cross-layering approach to resource allocation has been known to drive to better solutions to enhance routing performance. Although cross-layer available resource resilience, it is still limited due to need central control for resource allocation management. On the other side, the machine-learning technique is considered a key solution to manage and train the cross-layer resources. In more, machine-learning proposes an engaging opportunity to manage resource allocation, which considers one of the main shortcomings of the cross-layer routing protocol algorithm in CRNs [77]. For instance, the supervised algorithm is one of the machine learning technique that aims to forecast the value of an outcome measure based on some input featuers, where learning is done base on a set of training samples. In more, Table 2 illustrates a sample of the input resources for services and information that have been shared from stack-layer to the network layer. Hence, It has become necessary to find a smart cross-layer routing framework to manage cross-layer routing resource and overcome routing challenges in CRNs [77]. For that, Fig. 7 describes the proposed cross-layer routing framework in CRNs, whereas machine learning has employed its services and functions for more intelligent routing decisions. The details of the framework are in the following:

A. ATTRIBUTES SERVICES AND INFORMATION OF THE HIGHER AND LOWER LAYER IN THE CROSS-LAYER FRAMEWORK
he successful cross-layer routing protocol in MCRNs depends on to adapt the layer's services and information to make a correct routing decision for next-hop [92]. In fact, the smart routing protocol in MCRNs needs to define the right metrics, which affects positively to optimize routing performance [93]. From that, we need to explorer the influence of taking part in the information and services of the higher and lower layer on routing algorithms. In more details, the attributes of the higher and lower layer explain as the following:

1) INPUT SERVICES AND INFORMATION PROVIDE BY APPLICATION LAYER IN CROSS-LAYER FRAMEWORK
Each layer in a stack can provide different services and share it with its neighbours according to the layer stack policy [7]. When the CU prepares its data packet to send to the target node, the application layer will make the data and share it with the network layer through cross-layer design, as illustrated in Fig. 7. The advantage of this information is that the routing protocol can define the data packet (i.e., text, audio, video, etc.) to provide adequate resources [3]. Also, the routing algorithm can meet the QoS requirements at the application layer by sharing the characterised of data-packet [14].

2) INPUT SERVICES AND INFORMATION PROVIDE BY TRANSPORT LAYER IN CROSS-LAYER FRAMEWORK
The transport layer can directly share its services and information with the network layer. It can contribute effectively to refining the performance of the routing protocol in CRNs, especially in the QoS and throughout [7]. Packet Loss Probability (PLP) is related to the transport layer [93]. In CRNs, many reasons can lead to an increase in the rate of PLP, such as (Delay-sensitive, PU interference. etc.). The buffer size of the routing protocol can take part in increasing the PLP. The CU sends the data-packet at random times, and that can lead the queue to build up at a router [93]. For that, if the routing has not enough properly buffer sized, the route will force to drop packets [7]. On the other hand, Enabling routing protocol to select a better idle channel with more bandwidth resource can reduce the probability of packet loss [2]. In contrast, the increasing rate of the PLP can lead to more packet drops, which harmful the routing performance.
That means the buffer of routing should always be willing to receive CU's data packet and monitoring the average of PLP. Moreover, selecting the higher channel availability with more bandwidth availability can play a crucial role to reduce the PLP [30].

3) INPUT SERVICES AND INFORMATION PROVIDE BY MAC LAYER IN CROSS-LAYER FRAMEWORK
The MAC layer also plays through giving its services/ information with the network layer [55]. It considered as a significant player through participation routing with channel decision for next hope. Moreover, enabling routing protocol to select the channel with higher availability that can increase routing stability, reducing channel switching, PU interference and others, especially in the mobility scenario [45], [46]. Fig. 7 illustrates the MAC layer services, namely scheduling transmission on a free ideal channel (STFC), which has cooperated with the network layer. This service can guarantee to route the proper to the better idle channel (i.e., higher CAP and CQ) [90]. Also, it can avoid CU the probability of interference with the PU [48].

4) INPUT SERVICES AND INFORMATION PROVIDE BY PHYSICAL LAYER IN CROSS-LAYER FRAMEWORK
The dynamic nature of CRNs has been imposed on the physical layer to extend its functions. In a traditional wireless system, there is no PU and CU. However, the physical layer in CRNs has to differentiate between PU and CU. Consequently, physical layer develops its mechanism to sensing the idle channel and provide this information and service to other layers such as (MAC layer, network layer, etc.). Fig. 7 explains that the physical layer has different functions. Channel availability probability, one of the physical layer functions, refers to the availability of a licence channel to an unlicensed user. However, higher channel availability is not always represented as the best idle channel. The quality of the channel is also interference in decision making to select a better idle channel. In a wireless network, a link refers to a wireless connection between two nodes. By the same token in CRNs, a link is referred to as connecting between two CU nodes. However, when one or a pair of CUs are inside the interference range of PU that mention to link-interference. The link-interference can also take part in estimating link-throughput and link-delay.

B. INTELLIGENT ROUTING PROTOCOL WITH THE SUPERVISED MACHINE AT THE NETWORK LAYER IN CROSS-LAYER FRAMEWORK 1) CROSS-LAYER MECHANISM
It performs the cooperation of cross-layer information and services. In addition, the cross-layer mechanism embraces the services of other layers and shares them with the network layer. Fig. 7 also clarifies that this mechanism has a vital communication with other parts to serve the interests of the functions of these parts in the network layer.

2) ROUTING TABLE WITH EXTENDED INFORMATION
The routing operations performed through using a routing table [12]. This table assists routing protocols to determine the best path to the destination based on a pre-defined scale (i.e., routing metric) [12]. However, the routing table in the traditional infrastructure-less wireless networks maintains only limited information (i.e., next-hope information) [59]. In contrast, spectrum mobility, PU interference, channel switching, have paralysed the traditional routing table to meet new challenges in MCRNs [12]. In Fig. 7, it explains an extended routing table to include extra information (e.g., CAP, CQ) for the link-channel of next hope. For instance, CAP can reduce the probability of channel switching and provide a stable channel [59]. Thus, successful routing protocol in MCRNs needs to extend its routing table with full information.

3) LEARNING ROUTING DECISION ENGINE
The Learning Routing Decision Engine (LRDE) is the lusty part that is attached to machine learning. Once the link-connection is established between a pair of CU users and the data packet is waiting inside the buffer of routing protocol for sending, then the CU will forward data-packet to next CU node based on the LRDE feedback. In more detail, LRDE is accountable for handling services and information gathered from other layers and making a true routing protocol decision. Fig. 7 reveals that the LRDE has the different processing inside the training phase and the regression (i.e., estimation) phase.

4) TRAINING PHASE
Training is an iterative process in which the data gradually help to improve the quality of the prediction [92]. For more details, we are going to explain the functionalities of every process, as shown below: 1) Feature Extraction: To learn the LRDE to produce curate estimate labels, it needs to train the LREAD firstly. The first step in the training phase is to extract the (features, labels) from the input of the cross-layer mechanism [93]. However, the cross-layer mechanism can serve different services and information and that it needs to prepare this information [7]. Therefore, before applying the data for the learning phase, it has to go into a pre-processing phase to clean the data and papering it for extracting phase [89]. This phase plays an essential key because of in MCRNs due to these metrics can be used to predict such link-delay, link-throughput, and others.

2) Sample Collection:
It is referred to select a sample from the features and pre-filtration before sent it to regression algorithm [91], [99]. It is an essential process because the layer stack can provide various features. Therefore, the regression algorithm needs to filter these features and prepare its configured according to routing operations such as regression link-delay, link-throughput.
3) Supervised regression learning: Supervised regression learning aims to predicate a value based on features input [89], [98]. The output of regression could be numerical or categorical according to the input natural features [99]. The learning process always needs to find a relation between the features to increase the learning regression accuracy [99]. For instance, using features of a physical layer, i.e., CAP, CQ, and LI can train it to estimate the link-throughput [88]. Hence, supervised first must train the algorithm on this data to learn how to estimate link-throughput for the smart routing protocol and that it can make the CU smarter to select the higher throughput link and can increase the routing efficiency.

5) REGRESSION PHASE
After training the supervised regression to estimate the link throughput based on the input metrics from the cross-layer mechanism, the learning regression algorithm now has the experience start to fill the routing table with regression value [94]. In the same way, new input services and information will pass through the extraction phase and transfer to a regression algorithm [92]. Fig. 7 shown that the output estimation values has been sharing with a routing protocol to update the routing table. On the other side, the LRDE also has an explicit link with routing operations to learn the CU node to select the most appropriate route decision. On the other hand, there are different supervised regression algorithms such (linear regression, logistic regression, decision tree, etc.), which has to select according to input metrics.

6) ROUTING OPERATIONS BY MCRNs
Routing operations is a sequence of steps that it targets to reach the data-packet to the destination node [2]. Different from traditional routing operation, this phase includes PU-RERR for handling PU activity. In more, routing services such (RREQ, RREP, etc.) has to extend its structure to include channel information. That it is reasonable due to CU node needs to discover the best idle channel through injection this information inside the control packet.

VI. RESEARCH CHALLENGES
Several studies have been presented the routing challenges in MCRNs [2], [5], [12]. However, with the increasing and varied CR applications, it can create new routing challenges and issues. Thus, this section tries to review and discuss these new challenges.

A. APPLICATION LAYER CHALLENGE IN MOBILE COGNITIVE RADIO NETWORK
• QoS-aware: The QoS-aware at the application layer is a fateful matter to success the CR technology [52].
Increasing the numbers and types of applications such as (IoT, multimedia application, etc.) lead to emerge significant challenges [3], [7]. Mobility of spectrum-quality availability and application-mobility may be a necessity to face the flood of QoS challenges of CR user's requirements in the heterogeneous network [71]. The mobility of CU and/or PU is a real crisis due to various spectrum quality and availability in the region. The QoS is also suffering from application-mobility, which refers to the variety and difference of applications [9]. Hence, to meet the heterogeneous QoS in MCRNs that need to think seriously concerning the mobility of spectrum-quality and applications. Movement of CR user is not mean only geographic change but also including change the spectrum-quality characteristics to match QoS requirements. Besides, application-mobility such as ( voice, multimedia, IoT, 5G, etc.) need to find what satisfies its greedy from the spectrum. Different parameters and services can contribute to addressing challenges QoS at the application layer. For instance, the priorities of CR user application, delay sensitivity, loss tolerance, traffic type and other services can play a pivotal role in containing a crisis of providing the best QoS for MCRNs.

B. TRANSPORT LAYER CHALLENGE IN MOBILE COGNITIVE RADIO NETWORK
• Congestion control and PU mobility: PU mobility leads to grow the phenomena of congestion and causes in service interruption [71]. The transport layer protocol needs to take into account the tradeoff spectrum sensing, time-variant of spectrum availability, and PU activity [3], [7], [54], [75]. In a traditional network, there is no PU and SU, which makes the reasons for the interruption of service belongs to traditional reasons such as buffer occupies, window size, network congestion and others [3]. In contrast, the protocol of connection-oriented and connectionless is unsuitable for adapting to the MCRNs. That means when the interruption of service occurs, the protocols at the transport layer will refer to the traditional reasons. Consequently, the process of re-connection will cost the MCRNs losing to its resource. Therefore, sharing the appropriate spectrum sensing with the transport layer can beat the transport layer protocol challenges in MCRNs. Thus, cross-layer optimizations considering spectrum sensing and the mechanisms of congestion control will be highly desirable.

C. NETWORK LAYER CHALLENGE IN MOBILE COGNITIVE RADIO NETWORK
The routing challenges at the network layer in MCRNs are abstracted below: • Routing scalability: Scalability is one of the main fundamental concerns in CRNs due to it can be considered as the principal performance measure for routing [5].
In general, scalability could be mentioned as the routing ability to achieve valuable work with the rise in network density size, i.e., network load. For instance, the scalability factor can be useful to determine if the performance of CRNs increases with the increase in the number of CUs, and also if the routing protocol performance increase with the increase in the network size, etc. From that, scalability plays a critical issue routing design in CRNs due to it defines the routing algorithm's ability to provide reliability, fairness, and ingest the network load [78]. In a word, routing scalability requires developing routing algorithm operations through the integration of new parameters and routing metric to win more robust routing.
• Limitation routing algorithm resource with upper layers: In the traditional network, Ad hoc routing algorithm saves in its routing table only the neighbour nodes information. In contrast, the routing table in CRNs needs to extend its rows to include more parameters such as network characteristics, list free channel, etc. because routing in CRNs demands to a dynamic environment and PU activity [7], [12]. In fact, many studies, as mention previously, have been referred to this challenge. However, all these efforts nearly have been focused on lower layer parameters. According to our classification in this research, it has revealed an urgent need for taking into account the higher network layer. In more specific, not only the lower layer parameters can share in achieving routing performance, but also the upper layer [73]. For instance, the upper layer can provide routing algorithm guideline information about the nature of the applications such as the nature of traffic, e.g., audio, video, frame size, and other parameters [7]. Exchange upper layer service with routing algorithm is not only reflected on the performance routing algorithm but also the network performance in general.
• Time-variant for relative distance between PU and CU: Not only the resource location factor but also the time-variant spectrum availability should be considered [95]- [97]. In more, when the PU and/or CU is a mobile, the time of channel availability is variant due to mobility relative distance between SU and PU [41]. As a result, the time-variant for network resource makes the path and channel instability. Thereupon, time-variant plays a decisive factor for successfully avoiding PUs activity and determining the correct link communication, especially when PU/CU or together mobility. So, the routing protocol, due to time-variant for channel availability, needs every period to update its information about the list of channel availability. Hence, time-variant imposes on routing a new challenge that demands to develop a new mechanism for channel selection.

D. LINK LAYER (MAC) CHALLENGE IN MOBILE COGNITIVE RADIO NETWORK
Control sensing and transmission: Mobility CU and PU will increase the complexity of the duties of the MAC protocol in CRNs. MAC protocol has to update its strategies to deal with mobility challenges concerning sensing control [7], [101]. Sensing control is responsible for facilitating MCRNs to do its sensing process in adaptively way with mobility of spectrum resource [12]. In more, spectrum sensing aims to avoid interfering with PU during to explore opportunities for spectrum access [12], [55]. Indeed, the MAC protocol needs to know-how to avoid Interference with PU mobile and the fast-discovery for spectrum resource for MCRNs. The MAC protocol has to impose its control on session operations by defining a mechanism for a sensing period. At the link-layer, the MAC protocol demands to identify the extended period of spectrum sensing [55]. By the same fashion, the speed diversity will demand to the fast-discover process for spectrum. Longer and shorter time can play on the tune of spectrum accuracy discover [55]. On the other hand, transmission-time also needs to take into account. It is considered as another problem that needs to take into consideration. The spectrum sensing and transmission are one part complete the other. Thus, the MAC has to know how to determine the appropriate times of sensing and transmission. In other words, it is a fundamental problem in controlling the spectrum sensing and transmission, especially in CU and PU mobility.

E. PHYSICAL LAYER CHALLENGE IN MOBILE COGNITIVE RADIO NETWORK
• Physical layer services and functions: The services and functions at the physical layer have already not been specified for CR [7]. For that, the physical layer must develop its services and features to adapt to CR technology [87]. One of the critical function that needs to explore at the physical layer is the fast-adapt with the time-varying channel. The physical layer must be vigilant to any varying in licensed channel availability. Because of the mobility of CU and PU, physical layer jobs to detect the PU signal on the licensed channel become a daunting task [88]. Numerous studies have focused on spectrum sensing to identify PU signal [12]. However, it is still considered a chronic disease. The physical layer has a great responsibility, which is restricted to monitoring the varying period of channel availability [88]. Also, the physical layer must improve its ability to detect the PU signal early. The rapid change in mobility and channel availability will make PU fishing more difficult. Therefore, the physical layer can not deal with the CU node as an Ad-hoc node. In MCRNs, the temporal diversity of availability of the licensed channel distance mobility between CU and PU needs to be radically addressed.

VII. CONCLUSION
The technical routing protocol details are explained throughout this paper, which including explored a cross-layer framework for the smart routing protocol in MCRNs. In more, machine learning plays as a critical interaction factor by proposed machine learning features with the routing algorithm, so that MCRNs can communicate reliably, over a multi-path/multi-spectrum environment. It also classifies the routing algorithm based on methods of design, which belongs to cross and non-cross-layer design. Next, critical reviewing has done for related work to explorer the strengths and weakness. In the end, this paper vigorously discussed the open issues related to the routing protocol in CRNs.