Learning Automata Based Multipath Multicasting in ... - IEEE Xplore

2 downloads 0 Views 4MB Size Report
spectrum and forces frequent channel switching for SUs. This dy- ... ing problem is modeled in the reinforcement learning based frame- work of learning ...
406

JOURNAL OF COMMUNICATIONS AND NETWORKS, VOL. 17, NO. 4, AUGUST 2015

Learning Automata Based Multipath Multicasting in Cognitive Radio Networks Asad Ali, Junaid Qadir, and Adeel Baig Abstract: Cognitive radio networks (CRNs) have emerged as a promising solution to the problem of spectrum under utilization and artificial radio spectrum scarcity. The paradigm of dynamic spectrum access allows a secondary network comprising of secondary users (SUs) to coexist with a primary network comprising of licensed primary users (PUs) subject to the condition that SUs do not cause any interference to the primary network. Since it is necessary for SUs to avoid any interference to the primary network, PU activity precludes attempts of SUs to access the licensed spectrum and forces frequent channel switching for SUs. This dynamic nature of CRNs, coupled with the possibility that an SU may not share a common channel with all its neighbors, makes the task of multicast routing especially challenging. In this work, we have proposed a novel multipath on-demand multicast routing protocol for CRNs. The approach of multipath routing, although commonly used in unicast routing, has not been explored for multicasting earlier. Motivated by the fact that CRNs have highly dynamic conditions, whose parameters are often unknown, the multicast routing problem is modeled in the reinforcement learning based framework of learning automata. Simulation results demonstrate that the approach of multipath multicasting is feasible, with our proposed protocol showing a superior performance to a baseline stateof-the-art CRN multicasting protocol. Index Terms: Cognitive radio network (CRN), multicasting, multipath, routing.

I. INTRODUCTION YNAMIC spectrum access (DSA) is an application of cognitive radio networks (CRNs) that promises to solve the problem of inefficient spectrum utilization [1]. With the increasing proliferation of newer wireless technologies, the demand for spectrum has greatly increased, and the inadequacy of the traditional command-and-control based static spectrum allocation approach has been exposed. This static approach is problematic since it creates an artificial spectrum scarcity, i.e., although, the spectrum is actually underutilized by licensed users, it is not available to unlicensed users. Using DSA, secondary users (SUs) can access licensed spectrum subject to the condition that it does not interfere with the licensed user, also known as the pri-

D

Manuscript received January 16, 2014; approved for publication by Ilenia Tinnirello, Division II Editor, January 30, 2015. This work has been supported by Higher Education Commission (HEC), Pakistan under the NRPU grant number 20-1639. A. Ali and J. Qadir are with School of EE and CS, National University of Sciences and Technology (NUST), Pakistan, email: {12mseeaali, junaid.qadir}@seecs.edu.pk. A. Baig is with School of EE and CS, National University of Sciences and Technology (NUST), Pakistan and with College of Computer and Information Systems, Al Yamamah University, Riyadh, Kingdom of Saudi Arabia, email: [email protected]. Digital object identifier 10.1109/JCN.2015.000071

mary user (PU). For the success of DSA, it is imperative that the interests of PUs are protected, and it is necessary for the SUs to ensure that no interference is caused to the operation of the primary network. This implies that SUs should vacate the channels when PUs appear, and access only when a spectrum opportunity presents itself. The problem of routing in such DSA based CRNs is very challenging due to the dynamic nature of spectrum opportunities. The spectrum opportunities are a function of both the location and activity profiles of a PU, which are not known to the SU a priori in general. This implies that the heterogeneous channels may be available to the SUs. This heterogeneity leads to the problem of coordination between the SUs. Different solutions have been proposed in the literature to solve this problem, and a commonly used solution to the coordination problem is to employ a common control channel (CCC) [2], [3]. Another problem that arises in CRNs is detecting the PU activity, and a common solution to this is spectrum sensing implemented through either a centralized or a decentralized approach. In the centralized approach, a spectrum sensing entity (SSE) is assumed which collects the information about the available channels in the whole network and transmits this information to all SUs typically via the CCC. In the decentralized approach, on the other hand, every SU is responsible for sensing the spectrum and sharing it with other SUs via the CCC. The objective of this paper is to propose an efficient multicast routing protocol for CRNs. The problem of multicasting becomes very difficult in CRNs because it is possible that an SU does not share a common channel with its neighbors. This can degenerate a multicast transmission into many unicast transmissions thereby introducing both redundancy and channel switching delay (which can be significant depending upon the spectral separation between the channels). The problem of channel switching can be addressed by using multiple radio interfaces on a single node. However, handling multiple radios in a cognitive radio network is difficult, and most of the proposed solutions in the literature have not tried to take advantage of using multiple radios. In this work, we attempt to exploit the advantages of using multiple radios and multiple paths to reduce the end-to-end delay and increase the throughput. We propose an on-demand multicasting protocol, named multipath on-demand multicast routing (MP-ODMR), which incorporates the ability to use multipaths while also exploiting the availability of multiple radios for improving routing performance (which we will measure in throughput and end-to-end delay). Our protocol adopts the reactive, or on-demand, approach for routing which is commonly adopted in CRNs to avoid the overhead of managing dynamic topologies proactively [4]–[7]. Our protocol makes use of route

c 2015 KICS 1229-2370/15/$10.00

ALI et al.: LEARNING AUTOMATA BASED MULTIPATH MULTICASTING IN COGNITIVE...

request (RREQ) and route reply (RREP), similar to the approach taken in the classical ad hoc on-demand distance vector (AODV) protocol [8], to calculate multiple paths towards destinations. We have modified AODV in order to have multiple routes to a single destination for multicasting. This is helpful in a cognitive environment because routes are fragile due to the PU activity. Therefore at every node, multiple routes are saved for a particular destination. The node uses the best available route in terms of end-to-end delay. Another modification is the introduction of the proposed channel field in the RREQ and RREP packets that helps in the coordination of channels between the nodes. It is necessary for effective routing in CRNs to incorporate learning and spectrum prediction into the routing framework. We have formulated our problem of multicast routing as a learning automata (LA) problem. LA has been adopted because it is useful in environments where the environment is dynamic, unpredictable, and all the parameters are not fully known. LA helps to keep the record of chosen paths and chosen channels and assigns them probabilities according to the reinforcement signals received from the environment. Future routes and channels are chosen on the basis of these probabilities. We will provide more details about the LA component of our solution in Section IV. Some salient aspects of our work are discussed next: • Proposal of backup paths: The use of backup paths has been proposed so that the protocol can work better in the presence of primary users. The previous studies done in this domain have not considered the effect of PU activity on the throughput, delay and packet delivery ratio (PDR). When the PU activity increases, the life of routes becomes very short and considerable time is wasted to find new routes every time. This degrades the network performance. Therefore, we have proposed the use of backup paths so that the discovered paths are reliable for longer period of time. This results in a better performance as compared to the single path with no backup routes. • Use of multipath multicast routing: Further exploiting the idea of backup paths, the idea of using multipath multicasting is also proposed and evaluated. This helps to further increase the network throughput. Our usage of multipath multicasting is motivated by the fact that the topology of a CRN is both dynamic and unpredictable. In such a dynamic environment, the relevance of routes becomes fragile and sensitive to changes in topology, which in turn leads to potential degradation of throughput. With multiple paths available, the network is more robust to topology change and link availability since it can fall back upon other available paths. • Use of multiple radios: Multiple radios are used so that the available channels can be utilized more efficiently while having less switching delay. The main contribution of this work is the proposal of performing multipath multicast in CRNs to address the problems related to dynamically changing network topology. In order to adapt to network conditions, we have also incorporated LA into our framework. We have implemented our LA based multipath multicasting approach in OMNET++ and have demonstrated its feasibility. To the best of our knowledge, this is the first work that has proposed and evaluated multipath based multicasting in

407

CRNs. The rest of the paper is organized as follows. Related work is presented in Section II. In Section III, we have presented the network model. Section IV briefly discusses the LA framework. Our proposed framework is introduced through an illustrative example in Section V while its details are discussed in Section VI. Section VII shows the simulation and comparison results and the paper is concluded in Section VIII. II. RELATED WORK Broadly speaking, there are two ways of calculating the routes: 1) Proactive routing is used to establish routes to the destination before the start of transmission while 2) on-demand routing finds routes only just before the transmission and routes are inactivated after some time. Our proposed routing protocol is an on-demand routing protocol in the mold of the classical on-demand unicast routing protocol AODV [8] that uses control messages (like RREQ and RREP) reactively to setup a route when required. In the remainder of this section, we will discuss some of the multicast routing protocols proposed for general wireless networks and CRNs in subsections II-A and II-B, respectively. A. Multicast Routing Protocols in Wireless Networks Multicast routing protocols in wireless networks like wireless ad-hoc networks can be classified into three types: i) Flooding, ii) proactive routing, and iii) reactive routing. Many algorithms have been proposed for multicasting in ad-hoc networks. Most of them form a shared tree in order to send data towards the multicast destinations. The protocols using shared tree are the ad-hoc multicast routing (AMRoute) [9], ad-hoc multicast routing protocol utilizing increasing id numbers (AMRIS) [10] and lightweight adaptive multicast algorithm (LAM) [11]. Another multicast routing protocol that lies in the class of reactive protocols is multicast ad-hoc on-demand vector protocol (MAODV) [12]. MAODV uses the sequence number of each multicast groups, generated by the multicast group’s leader. Apart from using the shared tree, some routing protocols such as the core assisted mesh protocol (CAMP) [13] also use a mesh topology. Using a mesh topology provides backup routes while also providing robustness against the dynamic changes. CAMP is similar to the on-demand multicast routing protocol (ODMRP) that also utilizes a mesh topology. Another protocol makes use of flooding with selective forwarding. The protocol is known as differential destination multicast (DDM) [14]. It selects some of the neighbor nodes of a node as forwarding group and data is forwarded only to that group. In this way, flooding is limited. Most of these protocols are mainly based on link state routing or distance vector routing. B. Multicast Routing Protocols in CRNs Relatively few studies in the literature have addressed the multicast routing problem in CRNs, with the various works proposed in literature summarized in a recent survey [15]. One of the most robust algorithm for on-demand multicast routing in wireless networks is ODMRP [16]. But when it is used in

408

CRNs, the issues of scalability arise. When the number of multicast sources increases, the network performance–measured in terms of throughput, end-to-end delay and PDR–degrades in ODMRP. In [17], a multicast routing protocol (COCAST) is proposed for mobile ad-hoc networks using cognitive radios which claims to alleviate the scalability issue in ODMRP. The simulation results also confirm that the proposed COCAST alleviates the issue of scalability in ODMRP. In [18], the effect of switching latency and channel heterogeneity is considered. A dynamic programming approach is used for the channel assignment and multicast routing problem in wireless cognitive mesh networks. A channel allocation and distributed on-demand routing algorithm is proposed with an objective of minimization of end-to-end delay. The results show that the proposed algorithm outperforms the baseline algorithms. In [19], multicast in cognitive wireless mesh network is formulated as an assisted multicast scheduling problem. A strategy for assisted multicast is introduced for minimizing the multicast time. In this strategy, the multicast receivers of a multicast group receive their data and also help in forwarding this data for the other receivers in the same group. A network coding scheme is also introduced for the reduction of overall multicast period. The results show that a significant amount of gain is achieved in reducing the overall multicast time, hence increasing the throughput. In [20], problem of minimum energy multicast tree construction is studied. The multicast problem is transformed into a directed Steiner tree problem and an approximation algorithm is proposed for this problem. The density of primary transmitters is increased and results are calculated for the percentage energy saved. The results are compared with an approximation algorithm which is proposed for traditional wireless networks in [21]. The results show that the percentage energy saving of the proposed algorithm under different densities of primary transmitters is much higher as compared to the approximation algorithm for conventional wireless networks. Issues of QoS multicasting are studied in [22]. The main concern in this paper is to find out a tree with minimum multicast bandwidth consumption while keeping QoS requirements in mind. Minimal spanning tree and slot assignment algorithms are proposed for this purpose. The proposed algorithms were compared with the shortest path tree based two-phase method (SPTTP). The performance is evaluated with respect to number of assigned transmission slots and success rate of QoS multicast requests. These metrics are evaluated against network load, bandwidth requirement and multicast group size. The results show that the proposed algorithms outperform the SPTTP in all respects. Routing in CRNs has also been studied as an optimization approach. In [23], video multicasting in CRNs is studied. The purpose of this study is to optimize the video quality received by the secondary users while avoiding interference with the primary users. To achieve this goal, a cross-layered optimization approach is proposed for multicasting video data to multimedia applications. The problem is formulated as a non-linear integer programming problem and then it is linearized to get a linear programming problem which is relatively easy to solve. The results are obtained for peak signal to noise ratio which shows the superiority of the proposed optimization algorithm over baseline algorithms. In another study [24], the problem of channel

JOURNAL OF COMMUNICATIONS AND NETWORKS, VOL. 17, NO. 4, AUGUST 2015

allocation and multicast routing has been formulated as an optimization problem. The objective is to maximize the aggregated throughput of each multicast session. Channel availability and interference constraints are considered jointly in the paper and objective is achieved by using various other constraints. The results bring the insights on how to select channels and routes for multicasting in CRNs. In another study [25], the problem of multicasting in CRNs is formulated via a cross layer optimization approach. The problem is formulated as a mixed integer linear program and an algorithm is proposed. The results obtained from the algorithm are compared with the lower bound which show that the algorithm provides nearly optimum solutions. Most of the above mentioned approaches do not incorporate a model of the activities of the PU, an essential component of CRNs. When the PU activity increases, there are rapid route breaks for the co-located secondary network of cognitive radio users. The effect of PU activity on throughput, delay and PDR by and large has not been studied for multicasting in CRNs. In our work, we have incorporated a model of PU arrivals in our network model, which we describe in the next section. We have obtained performance evaluation results for our work with this PU model, and our results in Section VII show that the proposed protocol outperforms the baseline protocol when PU activity increases. In this work, we have used COCAST as the baseline protocol [17]. We have chosen COCAST as the baseline for comparing our work since it is a PU-aware high-performance multicasting routing protocol proposed specifically for CRNs. Although, COCAST assumes single-radio interfaces, we have used COCAST in this work since no other multicasting work, to the best of our knowledge, has addressed multi-radio multicasting in CRNs [15]. To conduct a fair comparison, we present two variants of our routing framework: MP-ODMR and MP-ODMR-SR. The first variant assumes multiple radio interfaces while the second variant assumes a single-radio interface. This allows us to make an objective comparison. Without PU-awareness, typical multicasting protocols for wireless networks (such as ODMRP and MAODV) are expected to perform poorly in DSA based CRNs especially when the number of PUs, and PU activity ratio, is high. Although COCAST is not the only PU-aware multicasting protocol for CRNs, we use it as a benchmark in the capacity of an archetypal state-of-the-art PU-aware multicasting protocol for CRNs [17] that does not use multipathing for reliability and/ or artificial intelligence based techniques for adaptiveness. III. NETWORK MODEL We assume a CRN composed of N secondary nodes each equipped with cognitive radios. These secondary nodes are alternatively referred as SUs. These SUs coexist with the PUs in the same region. The PU activity process is modeled through an ON-OFF cycle that is initially unknown to SUs. In what follows, we will describe more details of our network model under the subsections of PU model, node architecture, and channel structure in subsections III-A, III-B, and III-C, respectively.

ALI et al.: LEARNING AUTOMATA BASED MULTIPATH MULTICASTING IN COGNITIVE...

A. PU Model As the performance of the SUs is largely dependent upon the activities of the PUs, it is very important to accurately model the PU activity and the spectrum white-spaces. While the actual PU activity is an empirical real-world process resulting with parameters which are unknown to SU, we use the abstraction of a stochastic model to direct the performance evaluation of our protocol (that we shall be discussing later in Sections V and VI). To satisfactorily model spectrum occupancy, it is essential that the mathematical model incorporates: i) The states of the channel along with their transition behavior and ii) the sojourn time or the stay time in each of these states [26]. A natural model for the spectrum state is a two state Markov ON-OFF model representing a busy and an idle channel by the ON and OFF states, respectively. Since the time spent in each state is continuous, assuming the general model of an unslotted MAC wireless network, a continuous-time model is most appropriate. Thus, a continuous time Markov chain (CTMC) representation looks appropriate for our task. In a CTMC, the sojourn time, or stay time, in each state is exponentially distributed by definition. While the exponentially distributed stay time considerably simplifies analysis due to its inherent tractability, it is unfortunately not a good model of how actual CRNs behave [26]. Nonetheless, although not entirely justified statistically, it has been used in previous routing work heuristically [6], [27]. In our work, we have modeled the spectrum occupancy through a generalization of CTMC known as a semi-Markov model (SMM). Both semi-Markov and CTMC models share the Markovian property and describe the transition behavior in the same way. The difference lies in the fact that SMMs allow for specifying the occupancy periods, or the sojourn time, arbitrarily and are not limited to only exponentially distributed sojourn times as CTMCs are. The SMM generalization of the 2-state Markov ON-OFF process is known as a 2-state semiMarkov process. This model has been used for spectrum occupancy modeling in many previous works [7], [26]. In particular, we have chosen the sojourn times to be Pareto distributed based on the observation made in empirical studies that state sojourn times typically have larger variability than suggested by the exponential distribution, and that the ON and OFF periods often have heavy-tailed marginal distributions [26]. In this paper, we have approximated the PU ON and OFF times by the generalized Pareto distribution [28] which is a heavy tailed distribution. We assume that all the channels are represented by a 2-state semi Markov process with Pareto distributed state sojourn times. Heavy tailed distributions are good fits for modeling empirical processes having pronounced randomness and large range of potential values. Typically, Pareto distribution is used to model scenarios (such as income distributions in modern capitalist economies) where a significant proportion of some resource is owned by a small percentage of users in any environment. In our case, primary users can use the particular resource (i.e., channel) for as long as they want with this duration varying between several seconds to several hours or even days. This causes the stay time of PU to fluctuate heavily. This stay time can be best modeled by approximating it by the Pareto distribution in which it is possible to obtain values far away from the mean with non-negligible prob-

409

ability. The Pareto distribution gives us the stay time or sojourn time of a PUTwhich we consider as the ON cycle of a PU represented by ON . The time during which PU is not operating and T channel is idle is considered as OFF cycle represented by We define ratio on the basis of ON-OFF cyOFF . T T PU activity T cle as: ON /( ON + OFF ) B. Node Architecture A set of gateways G is also considered. It is assumed that all the multicast data originates from the internet and reaches one of the g ∈ G gateways. It is the responsibility of the gateway to transmit this traffic to the desired group of nodes belonging to set M , where m ∈ M is a subset of N . In our network, the source of multicast data can only be one of the g gateways. Gateways and the nodes are equipped with the multiple cognitive radios interfaces k. A CCC is assumed. One interface is dedicated for sensing the spectrum and exchanging the control information with other nodes via CCC. This interface is always tuned to the CCC. We will call it control interface from now on. The remaining k − 1 interfaces are used for the data exchange. They will be referred as the data interfaces for the rest of the paper. C. Channel Structure The total number of channels is c. In our case we have assumed c = 3 while considering the number of non overlapping channels in IEEE 802.11b. It is necessary to mention here that we have to use only orthogonal channels while taking advantage of the multiple radios. The reason is that the partially overlapped channels cannot be assigned to the radio interfaces of a same node since this will lead to significant interference on the co-located radios. The interference would be so high in that case that no node will be able to do any transmission [29]. So if partially overlapped channels are to be used, then only a single interface must be used at every node. Using a single interface will introduce switching delay, but the number of available channels will increase. So it can be said that there is a cost of using multiple radios which is the limited number of available channels. But the advantage of using multiple radios lies in the reduction of switching delay. This reduction in switching delay would be maximum if the number of data interfaces k − 1 is equal to the number of available channels c, otherwise the purpose of using multiple radios will die and the data interfaces will keep on switching between these c channels and switching delay will be introduced. We have chosen the number of interfaces to be 4 and the number of channels as 3 (along with a control channel) to keep our design simple and not to conflate the benefits of channel assignment with the performance of our algorithm. Our algorithm will also benefit by increasing the number of channels above 3 but the complexity of channel switching would then need to be considered, which we have considered as outside the scope of our work. As we have considered c = 3, the value of k = 4 allows us to permanently tune the 3 data interfaces to these 3 channels. This will reduce the channel switching delay to zero although it will add to the cost of the node. But our objective is to reduce the end-to-end delay and maximize throughput, while achieving high PDR defined as the ratio of total successfully received

410

JOURNAL OF COMMUNICATIONS AND NETWORKS, VOL. 17, NO. 4, AUGUST 2015

probability vector Z is updated on the basis of this received reinforcement signal. Any action xm can be chosen from the set of actions and a reinforcement signal yn is received as a result. At the start probabilities in the probability vector are all equal. These values are updated according to following equations:

Fig. 1. LA operation (x = actions, y = reinforcement signal, z = probabilities)

packets to total packets sent. All the nodes n ∈ N are assumed to be static. Once the neighbors are known to each node n ∈ N , they will not change due to their non mobility. The route will break only due to the non availability of channels between two nodes. This network will be called secondary network. This network is co-located with a primary network with p ∈ P primary users. IV. LEARNING AUTOMATA LA is essentially a learning algorithm used for decision making [30] in uncertain environments. LA can be viewed as a particular technique in the more general reinforcement learning (RL) framework that works by learning through interaction with an unknown environment. RL provides the system with necessary information so that the reward received from the environment can be maximized. LA aims to learn the ‘optimal’ policy (i.e., mapping from situations to actions) in an unknown environment by interacting with the environment. Over time, LA learns from this interaction and is able to iteratively improve its policy. LA can be envisioned as a policy-iteration based RL technique [31]. LAs have been applied for solving various problems ranging across the networking stack [32]. The environment for the RL can be defined with the help of following triple: (1) A set of environmental states S; (2) A set of possible actions available to the system X; (3) The reward received against each taken action Y . A system is present in one of the states from set S at any time instance. The system chooses one of the actions from the set A and receives the next state and reward of choosing that particular action from the environment. This process is repeated with the objective of maximizing the overall reward. As a result of the chosen action, a decision is taken and interaction with environment takes place. The environment then responds with a reinforcement signal. The chosen action and the received reinforcement signal collectively update the LA algorithm. The operation of LA can be explained with the help of Fig. 1. The whole system can be described with the set of three elements E = {X, Y, Z}. X = {x1 , x2 , , x3 , · · ·, xm } is the set of the available actions from which any one action can be chosen. Y = {y1 , y2 , y3 , · · ·, yn } is the set of reinforcement signals which are returned by the nature as a result of any chosen action. Z = {z1 , z2 , z3 , · · ·, zm } is the set of probabilities associated with each action. At any time instance, LA agent chooses one action from the set X according to the set of probabilities Z. Upon selection of the action, the agent interacts with the nature and receives a reinforcement signal from the environment. The

pi (n + 1) = pi (n) + a(1 − pi (n)), pj (n + 1) = pj (n) − apj (n) ∀j, j 6= i, pi (n + 1) = (1 − b)pi (n), pj (n + 1) = b/(r − 1) + (1 − b)pj (n) ∀j, j 6= i

(1) (2) (3) (4)

where a and b are known as reward and penalty parameters [33]. Note that r is the total number of choices available, which in our case is number of channels. Probability vector is updated according to (1) and (2) if the received signal is desirable. If it is not desirable, then probabilities are updated according to (3) and (4). The indices i and j in these equations differentiate between the channels that have to be rewarded and the channels that have to be punished. In (1) and (2), i is the channel that is rewarded and j are the remaining channels that are to be penalized respectively. In (3) and (4), i is the channel that is penalized and j are all the channels that are to be rewarded respectively. Environment can be classified into three categories (p-, q-, or s-models) depending upon the nature of the reinforcement signal. If Y , the set of possible reinforcement signals that can be returned by the nature as a result of any chosen action, is a set containing only two elements, 0 and 1, then it a p-model. If Y defines a finite number of values in the interval [0,1], then it is known as q-model. If Y defines the entire range of real numbers in the interval [0,1], then it is known as s-model. We have used LA because the CRN environment is random and most of the parameters are not known. The application of LA can be found in literature for multicast routing in ad-hoc networks [34] and [35]. LA is also used as a learning tool in a CRN environment in [36] and [37]. We have modeled the set of available actions as the number of channels available for a link that exists between one hop neighbors and the available routes (links) between the one hop neighbors. Environment is classified as p-model because the reinforcement signal is of binary nature: either the transmission will be successful or not. Successful transmission is the reception of the link layer ACK. On the basis of this reinforcement signal, penalty probabilities are updated according to (1)–(4). These equations will be clarified next with the help of an example in Section V. V. AN ILLUSTRATIVE EXAMPLE Our proposed multipath multicasting framework, which will be discussed in detail in Section VI, can be illustrated intuitively with the help of a simple topology shown in Fig. 2(a). Assume that node 7 is the source node. Node 7 will broadcast the RREQ to its neighboring nodes 1, 2, and 3. All these neighbors will store the uplink information and will broadcast it again. Nodes 8 and 9 will receive three RREQs from nodes 1, 2, and 3, and will store these three routes for the source node 7. Nodes 8 and 9 will mark that route as “active” whose RREQ reaches it first. For our example, assume that the active path is through node 2. Nodes 8 and 9 will therefore mark node 2

ALI et al.: LEARNING AUTOMATA BASED MULTIPATH MULTICASTING IN COGNITIVE...

411

(a)

(b)

(c)

(d)

Fig. 2. An illustrative example to show how paths are constructed and reconstructed (when links become unavailable due to PU arrivals): (a) Network topology, (b) multiple paths, (c) primary user arrival, and (d) new paths.

as the “active next-hop” for reaching the source node 7. Nodes 8 and 9 will also mark the node from which it receives the next RREQ after the first RREQ as an active next-hop. For our example, assume that this is node 1. Nodes 8 and 9 will also receive a RREQ from node 3, but this will be marked as “non-active” route towards the source node 7. In summary, a node will mark those nodes as active next-hops from which it receives the first two RREQs, while others whose RREQs arrive later are marked non-active. The idea of using only two paths at a time is because of the observation that when we use more than two active routes for data transmission, the system throughput starts degrading because the network becomes saturated. So it is better to use two

paths at a time for multicasting. There is no limitation on backup or non active paths and a node will keep as many backup paths as the number of RREPs received. We justify our apparently arbitrary design choice of selecting two (and not a higher number of) paths by noting that it has been shown in previous research [38] that the bulk of benefits of multipathing can be reaped with only two paths and that increasing routes provide diminishing returns. This finding has been established in multiple studies. This has been formally studied in a widely cited paper on randomized load balancing [39] by Mitzenmacher. In another work, Akella et al. have also posited similar insights in an empirical study [40] focused on multihoming. More recently, Merindol et al. have proposed a multipath routing technique that also relies

412

on precomputing two paths. Based on the insight from these works, and on our motivation to keep the routing overhead low, we have adopted the design choice of using two paths at a time for multicasting. In our example, nodes 8 and 9 have received three RREQs. According to the proposed protocol, these nodes will respond with three RREPs. This is in contrast to AODV where only one RREP is generated. Nodes 8 and 9 will send RREPs to nodes 1, 2, and 3 who will in turn store the downlink information and send it forward to node 7. Node 7 now has to make a decision about whether to send data through nodes 1, 2, or 3. This decision is made on the basis of which node’s RREP is received first. In our example, we assume that the first RREP arrives from node 2, the second from node 1, and the third from node 3. According to our multipath protocol, the source node will maintain routes for those nodes whose RREP arrives first and second as active paths. Therefore, in our example, source node 7 will send data to the nodes 8 and 9 through nodes 1 and 2 while keeping the path through node 3 as a backup route or “non-active” route. Note that the active routes can differ in both the traffic directions or they can also be same in some cases. The decision about active next hop is taken independently by the nodes. Now generalizing our example to multiple flows. Consider another node 10 as another source which broadcasts its RREQ to its neighboring nodes 4, 5, and 6. Active and non-active paths would be computed in the same manner as explained earlier for the source node 7. Source node 10 will also choose active paths for transmission, and keep non-active backup paths. Assume that active paths are through nodes 4 and 5 while the backup path is through node 6. These paths are shown in the Fig. 2(b). Now we shall consider the case where one of the active routes is affected by a PU activity. Assume that some PUs become active near node 1 and node 4, as can be seen in Fig. 2(c). Since the source nodes cannot transmit data through these paths, they will have to switch to another path. As the source nodes already have backup (non-active) paths, they can immediately switch to these backup paths. In our example, node 7 will start transmitting data through node 3 and node 10 will start sending data through node 6. This is shown in Fig. 2(d). Now the source nodes have two active paths for data transmission to the destination nodes but they do not have any non active or backup path towards destinations. Now if a PU affects a route, source nodes will have only one path for transmission. They will send data using this single path. If this path is also affected by the PUs, then the source nodes will have to initiate the whole process again, and they will broadcast RREQs to find paths towards the destinations. If an intermediate (relay) node runs out of available paths, it will sends a route error packet RERR toward the source node and source node will start the above mentioned process again by broadcasting the RREQs. Before considering the data transmission, let us highlight the cognitive aspects of our protocol. While exchanging the RREQ and RREP, every node will tell its desired operating channel after scanning the spectrum to its child node. Channel allocation will be done in this way in addition to the route setup. Now the node 7 has three options for transmitting the data destined for nodes 8 and 9. Node 7 will scan the allocated channel of the links 7-1 and 7-2, first because these are the active routes cho-

JOURNAL OF COMMUNICATIONS AND NETWORKS, VOL. 17, NO. 4, AUGUST 2015

sen in the sense of minimal end-to-end delay. As node 7 has received RREP earlier from nodes 1 and 2 as compared to node 3, so it will mark the links 7-1 and 7-2 as active links and the link 7-3 as non-active link. Algorithm 1 MP-ODMR Input: G(V,E), i ∈ V , d = Destination node Output: Multicast tree with minimum end-to-end delay 1: if i is the node other than d then 2: if packet received by i is RREQ then 3: for Ist two RREQs received do 4: Get next hop uplink active from both RREQs; 5: end for 6: for RREQs received after first two RREQs do 7: Get next hop uplink “non-active” for each RREQ; 8: end for 9: Broadcast RREQ; 10: else if packet received by i is RREP then 11: for Ist two RREPs received do 12: Get next hop downlink active from both RREPs; 13: end for 14: for RREPs received after first two RREPs do 15: Get next hop downlink “non-active” for each RREP; 16: end for 17: Forward RREP; 18: else if packet received by i is Data Packet then 19: if Active downlinks are available then 20: Use both active links to transmit data; 21: else if Active downlinks are not available then 22: Use “non active” links to transmit data; 23: else if No downlink is available then 24: Send RERRs to the source; 25: end if 26: end if 27: else if i is Node d then 28: if RREQ is received then 29: Get next hop uplink active; 30: Get next hop uplink non-active; 31: Create RREPs equal to RREQs received; 32: Send RREPs; 33: end if 34: else if i is Data source then 35: if packet received by i is RREQ then 36: discard RREQ; 37: else if packet received by i is RREP then 38: Get next hop downlink active; 39: Get next hop downlink non-active; 40: if Active downlinks are available then 41: Use both active links to transmit data; 42: else if Active downlinks are not available then 43: Use “non active” links to transmit data; 44: end if 45: else if packet received by i is RRER then 46: Broadcast RREQ again; 47: end if 48: end if Here, LA will play its part. Node 7 has three available ac-

ALI et al.: LEARNING AUTOMATA BASED MULTIPATH MULTICASTING IN COGNITIVE...

Algorithm 2 Tree Joining Algorithm 1: for Node i other than Gateway do 2: if i is not in the Tree then 3: if i wants to join session then 4: create JOIN REQ packet; 5: broadcast JOIN REQ; 6: else if i receives JOIN REQ packet then 7: Get next hop downlink active; 8: Get next hop downlink non-active; 9: broadcast JOIN REQ; 10: end if 11: else if i is in the Tree then 12: if i receives JOIN REQ packet then 13: Get next hop downlink active; 14: Get next hop downlink non-active; 15: send JOIN REPs equal to JOIN REQs received ; 16: end if 17: end if 18: end for Algorithm 3 LA Algorithm 1: if ACK is received then 2: reward selected channel and selected routes; 3: penalize other channels and other routes; 4: else if ACK is not received then 5: penalize selected channel and selected route; 6: reward other channels and other routes; 7: end if tions in terms of routes and three available actions in terms of channels. If node 7 senses a free channel k1 on link 7-2, it will transmit the data destined for nodes 8 and 9 on this link 7-2 by using channel k1 . It will also sense the channel k2 on the link 7-1. If the channel is free, node 7 will also use the link 7-1 for transmitting the data destined for 8 and 9. Generally speaking, a node s has chosen an action from set of available actions X, and will wait for the reinforcement signal from the environment. This reinforcement signal, in our case, is the acknowledgment signal indicated by an ACK packet. If the reception is successful at nodes 1 and 2 via links 7-1 and 7-2 using channels k1 and k2 , respectively, they will send an ACK packet to node 7. Node 7 upon reception of this ACK will reward the link 7-1 and 7-2 according to the LA algorithm. Similarly, node 10 also has to send data to nodes 11 and 12. Node 10 has three options for transmitting the data destined for 11 and 12. Same process will be repeated for the source node 10 and links will be penalized or rewarded according to the same procedure as discussed before. Continuing with explanation of LA algorithm, the initial probabilities of the available routes will be 0.33 each, and that for channels will be 0.33 each. Due to the reception of ACK, the routes 7-1 and 7-2 and channel k1 and k2 are rewarded. They are rewarded by increasing their probabilities according to (1). The route 7-3, and channels other than the channel k1 and k2 , will be penalized and their probabilities will be reduced according to (2). On the contrary, if the transmission is not successfully received by nodes 1 and 2—potentially due to some PU activity that results in an ACK not being received—node 7 will penalize

413

channels k1 and k2 and will reduce their selection probability according to (3). After this node 7 will check for availability of other channels on link 7-1 and 7-2. If is no channel is available on link 7-1 and 7-2, it will go for the other route which is link 7-3 and will penalize the link 7-1 and 7-2 according to (3) while link 7-3 will be rewarded. Continuing the same way, every node that has multiple routes available to the next hop will have to make a decision to choose the right path. The nodes that only have one route available will make decision on the basis of available channels only. This LA algorithm is very helpful for identifying the best path, and best channel available for that path, which will enable successful transmissions. LA algorithm works on the basis of penalizing and rewarding routes on the basis of successful receipt of ACKs. Assuming non-mobility of PUs, consider a particular PU affecting a link 7-1, and not affecting the links 7-2 and 7-3. Therefore as long as that particular PU is active, the link 7-1 will not be selected and the probabilities of selection of links 7-2 and 7-3 will increase. As we have assumed in the illustrative example that no PU is affecting the links 7-2 and 7-3, so they are the best links for transmission in this particular example and we have learned these best paths through LA. After some time, the probabilities of routes and channels having performed greater number of successful transmission will be higher, and in this way, best routes and channels for data transmission will stand out. VI. THE PROPOSED MP-ODMR SOLUTION We have proposed two algorithms to address the problem of multicast routing in CRNs: The first algorithm named MPODMR is described in Algorithm 1, while the second Algorithm, which describes the tree joining procedure for nodes who wish to subscribe to the multicast session, is described in Algorithm 2. In the MP-ODMR algorithm (Algorithm 1), multiple paths are discovered from a source to a destination and the record of active and non-active paths is also kept. The algorithm can easily be understood by keeping the example of Section V in mind. The next hop uplink active is obtained by looking at the source of that two RREQs which reached first and second. Similarly, the next-hop uplink non-active is obtained by looking at the source of the RREQs which reached after the first two RREQs. Similarly, the next hop downlink active can be extracted from the first two RREPs. The RREPs which will reach after the first two RREPs will give us the next hop uplink non-active. Recall from Section V that we are using only two active links at a time because of the observation that the network throughput degrades due to saturation when more than two paths are active and are used for data transmission. Rest of the algorithm is self-explanatory and can be seen in Algorithm 1. In the tree joining algorithm (Algorithm 2), a node i which is not a part of the multicast tree and wants to join the multicast session will create a JOIN REQ packet and will broadcast this packet. This packet will be flooded until it reaches one of the nodes m ∈ M (i.e., a node already in the multicast tree). As soon as the JOIN REQ packet is received by the node m ∈ M , it will create a JOIN REP packet and will send it to the

414

JOURNAL OF COMMUNICATIONS AND NETWORKS, VOL. 17, NO. 4, AUGUST 2015

100

100

MP−ODMR COCAST

MP−ODMR−SR COCAST

90 Packet delivery ratio

Packet delivery ratio

90 80 70 60 50

80 70 60 50

40 10

15 20 Number of nodes

40 10

25

15 20 Number of nodes

(a)

25

(b)

Fig. 3. Packet delivery ratio (number of receivers = 2): (a) COCAST vs. MP-ODMR and (b) COCAST vs MP-ODMR-SR. 0.3

0.26 0.24 0.22 0.2 0.18 0.16 1

MP−ODMR−SR COCAST

0.28 End to end delay (s)

0.28 End to end delay (s)

0.3

MP−ODMR COCAST

0.26 0.24 0.22 0.2 0.18

2

3 4 Number of receivers

5

6

(a)

0.16 1

2

3 4 Number of receivers

5

6

(b)

Fig. 4. Average end-to-end delay (number of nodes = 20): (a) COCAST vs. MP-ODMR and (b) COCAST vs MP-ODMR-SR.

node i through the learned path. The learned paths here will be calculated exactly according to the MP-ODMR algorithm. As the learned paths are calculated through the Algorithm 1, we will also have multiple paths available towards the new node which has just joined the multicast session. These paths will also be categorized as active and non-active according to the Algorithm 1. LA algorithm is stated in Algorithm 3. As explained with the example in Section V, the reinforcement signal is binary in nature: i.e., either the ACK will be received or not in response to a transmission on a particular channel/link. The selected actions will be rewarded or penalized according to (1) and (3), respectively as described in Section V. VII. RESULTS We have simulated a CRN of n nodes in the OMNET++ simulator. Network nodes are arranged in an arbitrary topology in an area of 1000 × 1000 m2 . Number of nodes is increased from 10 to 25 with an increment of 5. We have assumed number of channels c = 3 and radio interfaces k = 4. One radio interface is always tuned to the CCC so that every node can share control information without having any switching delay. While, we typically present average results on the basis of 15 independent

simulation runs, to ensure that our results can be extrapolated to hold in general, we also provide 95% confidence interval bounds with our results [28]. To document the performance of our proposed solution, we have compared it against COCAST which we utilize as an archetypal state-of-the-art multicasting protocol for CRNs [17]. To the best of our knowledge, there does not exist any other multi-radio or multipathing multicasting solution in CRNs. To present a fair comparison, we have also compared COCAST with a single-radio modification of our MP-ODMR framework (which we refer to as MP-ODMR-SR). A. Packet Delivery Ratio Results PDR is defined to be the ratio of total number of packets received to the total number of packets sent by the source. We have compared MP-ODMR and COCAST in terms of PDR. PDR is taken as an average after running 15 experiments. The graph shows that the PDR decreases a little when the number of nodes is increased. The reason is that with increased number of nodes, the destination node can be anywhere far away from the source. So the data will have to pass from more number of nodes in order to reach destination. Every node will have its own number of packets to be processed. If a node has too many packets, it will run out of buffer space and will eventually start dropping

ALI et al.: LEARNING AUTOMATA BASED MULTIPATH MULTICASTING IN COGNITIVE...

700

MP−ODMR COCAST

Throughput (B/sec)

600 500 400 300

in Fig. 4(a). Just like PDR, we also calculated the end-to-end delay for our modified MP-ODMR-SR approach in which we use single interface. The results are shown in Fig. 9(b). These results still show the superiority of our proposed scheme. The delay is greater as compared to the delay in the case of multiple interfaces because now switching delay is introduced but still there are backup paths that provide our scheme MP-ODMR-SR superiority over COCAST. C. Throughput Results

200 100 10

415

15 20 Number of nodes

25

Fig. 5. Average throughput (packet size = 952 bytes, 2 receivers).

the packets. Therefore, an increase in number of relay nodes increases the probability of a packet drop. It can be easily seen from the graph that as the number of nodes exceed the value of 15, PDR of COCAST decreases drastically. There is a smooth decline in PDR of MP-ODMR because of multiple radios and backup paths. The results are shown in Fig. 3(a). Since COCAST is designed with a single radio interface assumption, we also modified our proposed algorithms to use only a single interface (this approach being called MP-ODMR-SR) for a fair comparison between COCAST and our framework. We present a comparison of the PDR of MP-ODMR-SR with COCAST in terms of the PDR metric in Fig. 3(b). The comparison of our modified framework MP-ODMR-SR with COCAST produces qualitatively similar results to the comparison of MPODMR with COCAST, with MP-ODMR-SR still outperforming COCAST due to its use of backup paths in contrast to the approach adopted in COCAST. B. End-to-End Delay Results The end-to-end delay is the average time elapsed between creation of packets at the source and the reception of packets at all destinations. This end-to-end delay also includes the route setup time. The results for end-to-end delay have also been calculated. Our results show that as the number of receivers increase, the end-to-end delay also increases. This is because the multicast receivers can be located anywhere in the network: they can be close to each other or they may be far away from each other. When they are far away from each other, they cannot be reached from the similar set of forwarder nodes. This effectively degenerates the multicast transmission into further smaller multicast transmissions or a few unicast transmissions which causes an increase in delay. Another reason for the increased delay is the breakage of routes due to the dynamic behavior of the environment. It can be seen from the graph that this delay is less in MP-ODMR as compared to COCAST. This is because MPODMR has more ability to resist the breakage of routes as compared to COCAST. COCAST has to setup the route again as soon as a route breaks but MP-ODMR has backup paths available and it immediately sends data through these backup paths without causing any route setup delay. These results are shown

Throughput is defined as average rate of successful packets delivered. We have kept the packet size = 952 bytes in our simulation and obtained results for throughput. Throughput calculations also show that MP-ODMR improves the performance of COCAST (Fig. 5). This graph shows that as the number of nodes increases, throughput decreases. This is because of the same reason as given for the reduction in PDR. D. Convergence Results The convergence results of LA algorithm are also shown. The convergence results show that after a number of trials, the nodes tend to converge to one action (which decides the channel and available route in our case). Convergence results have been taken for different values of a and b which are reward and penalty probabilities as discussed in Section IV. In Fig. 6(a), values of a and b is chosen such that b < a. When b < a, the algorithm is known as Lr∈p . The figure shows that the nodes converge to a common channel after 8 trials. In Fig. 6(b), values of a and b are chosen to be equal. When a = b, algorithm is known as LR−P . The figure shows that the nodes converge to different channels after 3 trials. These are the three relay nodes for a session and the sooner they converge to a single channel, the better it is. This convergence result in Fig. 6(b) is better for our cause as compared to the previous convergence result because nodes converge rapidly to a single channel after learning from the environment. E. Control Overhead The relationship between the number of control packets used to setup a route and the number of receivers has also been analyzed. If we assume the number of receivers to be n, the number of control packets for COCAST and MP-ODMR will be 2n and 3n, respectively. This is due to the fact that the proposed MPODMR seeks to calculate more than one route for every receiver wherever feasible. Although, MP-ODMR requires exchange of marginally higher number of control packets than COCAST during route setup, this has the advantage of providing route stability against the unpredictable cognitive environment. Furthermore, we also study the number of control packets exchanged after route setup to facilitate channel switching. These control packets include the route repair packets, and LEAVE and JOIN packets used in COCAST for switching the channel. The analysis shows that COCAST generates more number of control packets as compared to MP-ODMR. Since COCAST assumes a single radio, it involves more elaborate switching than our framework MP-ODMR that is based on multiple radios. This switching requires exchange of control packets since a child node has to inform its parent node on channel switching that

416

JOURNAL OF COMMUNICATIONS AND NETWORKS, VOL. 17, NO. 4, AUGUST 2015

4

Node 1 Node 2 Node 3

3

Channels

Channels

4

2

1 1

2

3

4

5

6

7

Number of trials

8

9

Node 1 Node 2 Node 3

3

2

1 1

10

2

3

4

5

6

7

Number of trials

(a)

8

9

10

(b)

Fig. 6. Convergence results: (a) Lr∈p (a = 0.6, b = 0.4) and (b) LR−P (a = 0.5, b = 0.5).

550

End to end delay (s)

500 Throughput (B/sec)

0.35

COCAST MP−ODMR

450 400 350

COCAST MP−ODMR

0.3

0.25

0.2

300 250

0.4

0.45 0.5 PU activity ratio

0.55

(a)

0.4

0.45 0.5 PU activity ratio

0.55

(b)

Fig. 7. The effect of increasing PU activity: (a) Throughput vs. PU activity ratio and (b) delay vs. PU activity ratio.

Average number of forwarders

6 5

F. Effect of PU Activity MP−ODMR COCAST

4 3 2 1 0

1

2 3 4 Number of receivers

Fig. 8. Number of relay nodes vs. number of receivers.

it will no longer be available on a particular channel. Since MPODMR uses multiple radios on a node, it requires lesser switching and therefore generates less number of control packets on average as compared to COCAST.

We have also studied the effect of PU activity, whose model is defined in Section III-A, on throughput and end-to-end delay. The range of PU activity ratio is according to the ON-OFF periods of primary users that are modeled as Pareto distribution. The graph of throughput vs. PU activity ratio shows that in start as the PU activity ratio increases from 0.40 to 0.43, throughput decrease linearly. But as the ratio increases from 0.43, throughput of COCAST reduces drastically and that of MP-ODMR decreases in a smooth manner. This is because of the fact that the MP-ODMR has backup paths and it is more resistant to the increase in PU activity. These results are shown in Fig. 7(a). The results for end-to-end delay show that when the PU activity is low, there is no significant difference of the end-to-end delay between COCAST and MP-ODMR. But as the PU activity ratio increases, COCAST fails to control the delay because paths become fragile and break frequently. COCAST has to reroute every time when a path is broken. This introduces the route setup delay and also causes jitter in end-to-end delay for the secondary users. On the other hand, MP-ODMR already has backup path available so it sends the data through the backup path without having to re-route. Therefore, MP-ODMR performs better when the PU activity is high and the age of routes is very small. These results are shown in Fig. 7(b).

ALI et al.: LEARNING AUTOMATA BASED MULTIPATH MULTICASTING IN COGNITIVE...

MP−ODMR COCAST

400

200

0

1

2

MP−ODMR COCAST

600 Throughput (B/sec)

Throughput (B/sec)

600

417

400

200

0

3 4 5 6 Number of receivers

(a)

1

2 3 Number of sessions

4

(b)

Fig. 9. Throughput performance with increasing number of multicast receivers and multicast flows; number of nodes = 20: (a) Average throughput vs. receivers and (b) average throughput vs. flows.

G. Number of Relay Nodes Number of relay nodes required to forward data to the intended receivers was also recorded against the number of receivers. The results in Fig. 8 show that as the number of receivers increase, number of forwarding or relaying nodes also increase. Note that the average number of relaying nodes for MP-ODMR is throughout greater than that of COCAST. This is because of the fact that MP-ODMR also keeps the backup paths and uses multiple paths for the transmission of data so a larger number of forwarders are required. This is the cost of using multiple paths. More number of nodes are involved in the delivery of data to the multicast receivers but it also provides better performance in terms of throughput, delay and PDR. H. Effect of Increased Multicast Flows and Receivers The result for throughput is also calculated against the number of receivers. The results show that as the number of receivers increase, the throughput decreases but MP-ODMR performs better as compared to COCAST. This is because MPODMR employs multiple radios on nodes, which allow more simultaneous transmissions, and hence more packets (as compared to COCAST) are sent within the same duration. The results are shown in Fig. 9(a). The number of flows have also been increased from 1 to 4 to check the performance of COCAST and MP-ODMR. The graph in Fig. 9 shows that as the number of flows increase the throughput degrades and MP-ODMR outperforms COCAST. VIII. CONCLUSION In this paper, we study the problem of multicasting and channel allocation in cognitive radio networks (CRNs). The objective is to minimize the end-to-end delay while achieving high throughput so that spectrum utilization can be maximized. We propose an on-demand multipath multicasting protocol MPODMR that can cope with dynamic network conditions, that may be potentially unknown to the cognitive radios, by employing the method of learning automata that works in the reinforcement learning paradigm. The main novelty of our work is in showing the efficacy of multipath technique for the multicasting

problem. Simulation results show that our protocol outperforms COCAST, a state-of-the-art CRN multicasting protocol, in terms of throughput, end-to-end delay and packet delivery ratio. This performance improvement is especially significant and evident when the primary user activity is high. REFERENCES [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16] [17] [18]

I. F. Akyildiz et al., “Next generation/dynamic spectrum access/cognitive radio wireless networks: A survey,” Comput. Netw., vol. 50, no. 13, pp. 2127–2159, 2006. T. Chen et al., “Topology management in CogMesh: A cluster-based cognitive radio mesh network,” in Proc. IEEE ICC, 2007, pp. 6516–6521. B. F. Lo, “A survey of common control channel design in cognitive radio networks,” Physical Commun., vol. 4, no. 1, pp. 26–39, 2011. I. Pefkianakis, S. Wong, and S. Lu, “SAMER: Spectrum aware mesh routing in cognitive radio networks,” in Proc. IEEE DySPAN, 2008, pp. 1–5. K. R. Chowdhury and M. D. Felice, “Search: A routing protocol for mobile cognitive radio ad-hoc networks,” Comput. Commun., vol. 32, no. 18, pp. 1983–1997, 2009. K. R. Chowdhury and I. F. Akyildiz, “CRP: A routing protocol for cognitive radio ad hoc networks,” IEEE J. Sel. Areas Commun., vol. 29, no. 4, pp. 794–804, 2011. K. C. How, M. Ma, and Y. Qin, “Routing and QoS provisioning in cognitive radio networks,” Comput. Netw., vol. 55, no. 1, pp. 330–342, 2011. C. E. Perkins and E. M. Royer, “Ad-hoc on-demand distance vector routing,” in Proc. WMCSA, 1999, pp. 90–100. J. Xie et al., “AMRoute: Ad hoc multicast routing protocol,” Mobile Netw. Appl., vol. 7, no. 6, pp. 429–439, 2002. C. W. Wu and Y. Tay, “AMRIS: A multicast protocol for ad hoc wireless networks,” in Proc. IEEE MILCOM, 1999, pp. 25–29. L. Ji and M. S. Corson, “A lightweight adaptive multicast algorithm,” in Proc. IEEE GLOBECOM, 1998, pp. 1036–1042. E. M. Royer and C. E. Perkins, “Multicast operation of the ad-hoc ondemand distance vector routing protocol,” in Proc. ACM/IEEE MobiCom, 1999, pp. 207–218. J. G. L. Aceves and E. L. Madruga, “The core-assisted mesh protocol,” IEEE J. Sel. Areas Commun., vol. 17, no. 8, pp. 1380–1394, 1999. L. Ji and M. S. Corson, “Differential destination multicast-a manet multicast routing protocol for small groups,” in Proc. IEEE INFOCOM, 2001, pp. 1192–1201. J. Qadir et al., “Multicasting in cognitive radio networks: Algorithms, techniques and protocols,” J. Netw. Comput. Appl., vol. 45, pp. 44–61, 2014. S. J. Lee, W. Su, and M. Gerla, “On-demand multicast routing protocol in multihop wireless mobile networks,” Mobile Netw. Appl., vol. 7, no. 6, pp. 441–453, 2002. W. Kim et al., “CoCast: Multicast mobile ad hoc networks using cognitive radio,” in Proc. IEEE MILCOM, 2009, pp. 1–7. H. M. Almasaeid, T. H. Jawadwala, and A. E. Kamal, “On-demand multicast routing in cognitive radio mesh networks,” in Proc. IEEE GLOBECOM, 2010, pp. 1–5.

418

[19] H. M. Almasaeid and A. E. Kamal, “Assisted-multicast scheduling in wireless cognitive mesh networks,” in Proc. IEEE ICC, 2010, pp. 1–5. [20] W. Ren, X. Xiao, and Q. Zhao, “Minimum-energy multicast tree in cognitive radio networks,” in Proc. IEEE ASILOMAR, 2009, pp. 312–316. [21] W. Liang, “Approximate minimum-energy multicasting in wireless ad hoc networks,” IEEE Trans. Mobile Comput., vol. 5, no. 4, pp. 377–387, 2006. [22] L. Xie, X. Jia, and K. Zhou, “QoS multicast routing in cognitive radio ad hoc networks,” Intl. J. Commun. Syst., vol. 25, no. 1, pp. 30–46, 2012. [23] D. Hu et al., “Scalable video multicast in cognitive radio networks,” IEEE J. Sel. Areas Commun., vol. 28, no. 3, pp. 334–344, 2010. [24] Z. Shu et al., “Channel allocation and multicast routing in cognitive radio networks,” in Proc. WCNC, 2013, pp. 1703–1708. [25] C. Gao et al., “Multicast communications in multi-hop cognitive radio networks,” IEEE J. Sel. Areas Commun., vol. 29, no. 4, pp. 784–793, 2011. [26] S. Geirhofer, L. Tong, and B. M. Sadler, “Cognitive radios for dynamic spectrum access-dynamic spectrum access in the time domain: Modeling and exploiting white space,” IEEE Commun. Mag., vol. 45, no. 5, pp. 66–72, 2007. [27] W. Y. Lee and I. F. Akyildiz, “Optimal spectrum sensing framework for cognitive radio networks,” IEEE Trans. Wireless Commun., vol. 7, no. 10, pp. 3845–3857, 2008. [28] R. Jain, “The art of computer systems performance analysis,” vol. 182. J. Wiley & Sons Chichester, 1991. [29] Z. Feng and Y. Yang, “How much improvement can we get from partially overlapped channels?,” in Proc. IEEE WCNC, 2008, pp. 2957–2962, [30] P. Nicopolitidis et al., “Adaptive wireless networks using learning automata,” IEEE Wireless Commun., vol. 18, no. 2, pp. 75–81, 2011. [31] R. S. Sutton and A. G. Barto, “Reinforcement learning: An introduction,” Cambridge Univ Press, 1998. [32] M. S. Obaidat, G. I. Papadimitriou, and A. S. Pomportsis, “Guest editorial learning automata: Theory, paradigms, and applications,” IEEE Trans. Syst. Man Cybern., Part B, vol. 32, no. 6, pp. 706–709, 2002. [33] M. Jahanshahi, M. Dehghan, and M. R. Meybodi, “LAMR: Learning automata based multicast routing protocol for multi-channel multi-radio wireless mesh networks,” Appl. Intell., vol. 38, no. 1, pp. 58–77, 2013. [34] J. A. Torkestani and M. R. Meybodi, “Mobility-based multicast routing algorithm for wireless mobile ad-hoc networks: A learning automata approach,” Comput. Commun., vol. 33, no. 6, pp. 721–735, 2010. [35] J. A. Torkestani and M. R. Meybodi, “Weighted Steiner connected dominating set and its application to multicast routing in wireless manets,” Wireless Pers. Commun., vol. 60, no. 2, pp. 145–169, 2011. [36] Y. Xing et al., “Dynamic spectrum access with QoS and interference temperature constraints,” IEEE Trans. Mobile Comput., vol. 6, no. 4, pp. 423–433, 2007. [37] Y. Song, C. Zhang, and Y. Fang, “Stochastic traffic engineering in multihop cognitive wireless mesh networks,” IEEE Trans. Mobile Comput., vol. 9, no. 3, pp. 305–316, 2010. [38] M. Wang et al., “Cost of not splitting in routing: Characterization and estimation,” IEEE/ACM Trans. Netw., vol. 19, no. 6, pp. 1849–1859, 2011. [39] M. Mitzenmacher, “The power of two choices in randomized load balancing,” IEEE Trans. Parallel Distrib. Syst., vol. 12, no. 10, pp. 1094–1104, 2001. [40] A. Akella et al., “A measurement-based analysis of multihoming,” in Proc. ACM SIGCOMM, 2003, pp. 353–364.

JOURNAL OF COMMUNICATIONS AND NETWORKS, VOL. 17, NO. 4, AUGUST 2015

Asad Ali completed his M.S. degree in Electrical Engineering from the School of Electrical Engineering and Computer Sciences, National University of Sciences and Technology, Pakistan in 2014. His research interests are in the areas of wireless networking, algorithms, and optimization.

Junaid Qadir is an Assistant Professor at the School of Electrical Engineering and Computer Sciences, National University of Sciences and Technology, Pakistan. He completed his Ph.D. degree from University of New South Wales, Australia in 2008. His research interests include the application of algorithmic, machine learning, and optimization techniques in networks. He serves as an Associate Editor for IEEE Access. He is a Member of ACM and a Senior Member of IEEE.

Adeel Baig received Ph.D. and M.Eng.Sc. degrees in Computer Engineering from the University of New South Wales, Sydney, Australia in 2007 and 2001, respectively. Currently, he is an Assistant Professor at School of Electrical Engineering and Computer Science (SEECS), Islamabad. His research interests are in the protocols and applications for on-board mobile communication networks, cognitive radio networks, network optimization, and QoS provisioning.

Suggest Documents