1. Introduction
Multicasting is a fundamental networking primitive that is used by a wide range of applications. The fundamental idea of multicasting is to facilitate group communication by allowing the transmission and routing of packets to various destinations while using as few resources as possible, such as energy consumption, necessary bandwidth, and relay nodes. However, with the rise of low-power gadgets, efficient resource usage has become even more crucial. Cognitive radio technology has been recognized as a key enabler for next-generation wireless communication and effective spectrum usage. This helps us to minimize energy usage for transmission even further. This technology allows the nodes equipped with a cognitive radio to utilize the unused portion of the licensed spectrum in an opportunistic manner. The availability of these unused portions of the spectrum is dependent on the usage pattern of the licensed user. This varies in time and location, due to which a cognitive radio may observe a different set of available channels (which is referred to as spectrum heterogeneity). This raises several challenges for cognitive radio networks [
1].
This paper is interested in the multicast problem in cognitive radio wireless mesh network (CR-WMNs). Although a lot of research has already been done on multicasts in wireless networks, these findings cannot be applied due to the spectrum heterogeneity associated with CR-WMNs. This is because the properties of this kind of network may result in the transmission of the same frame multiple times over multiple channels depending on the availability of the channels at different nodes. Furthermore, most of the previous work done, which will be discussed later, focused towards either improving the throughput or decreasing the latency of the transmission for multicast session which is not applicable for an environment with low power devices. Keeping in view the current proliferation of low power devices, we considered the reduction of energy consumption to be the prime objective of this work. In this work, how to minimize these multiple transmissions of the same frame in order to reduce the energy consumption for multicast communication in CR-WMNs has been studied. To have a better understanding of multimedia communication over the CR-WMNs, a survey article presented by Amjad et al. in [
2] had been referred to.
For this purpose, first, an energy consumption model has been developed for multicast communication and an optimization problem designed to construct an energy efficient multicast tree while considering the spectrum heterogeneity property of CR-WMNs. Subsequently, rather than developing a single layer approach that solely focuses on multicast routing, a cross-layer heuristic approach is proposed to solve this optimization problem. The proposed approach considers the routing and channel assignment mechanism to construct an energy efficient multicast tree in CR-WMNs. In the proposed technique, for a given multicast session, a node level is defined for each node in the CR-WMN. The node level is determined on the basis of the node’s distance in terms of the number of hops from the source node (with the farthest node being assigned the highest level). A mechanism to select the forwarding nodes and assign channels to these nodes is then introduced for each level. This mechanism starts from the highest to the lowest level and ultimately results in the construction of a multicast tree. The decision to select the forwarding nodes and assign channels to these nodes is carried out in such a way that a frame is transmitted a minimum number of times to reach all its intended receiving nodes while taking care of spectrum heterogeneity. The main contribution of this paper can be summarized as follows:
A multicasting problem for CR-WMNs is established to reduce the amount of energy used during a multicast session.
A multicast routing algorithm is proposed to choose the multicast path from source nodes to destination nodes while minimizing the number of relaying nodes and channels required.
The simulation results for the proposed algorithm are presented in terms of the number of relaying nodes needed, the number of channels used, and the total amount of energy used.
The remaining paper is organized as follows.
Section 2 discusses the previous work related to multicasting in CR-WMNs.
Section 3 presents the network model and the minimum energy multicast tree construction problem for CR-WMNs.
Section 4 presents the proposed cross-layer approach to the construction of an energy efficient multicast tree for CR-WMNs.
Section 5 presents simulation results in order to demonstrate the performance of the proposed technique. Finally,
Section 6 concludes the paper.
2. Related Work
Energy efficient multicasting in wireless networks is a multi-faceted problem that can be addressed in several ways, to name a few, including optimization of transmission power [
3], optimization of routing paths [
4], and spectrum and bandwidth optimization for multicast sessions [
5]. CR is considered a promising candidate technology to be used in this field. However, these results in [
3,
4,
5] are not applicable to the CRN because of its unique features in terms of spectrum availability. Thus, it is essential to develop new protocols and algorithms for multicasting in CRNs.
Over the last few years, many studies have been reported on multicast communication in CRNs. A multipath on-demand routing protocol for CRNs has been presented in [
6]. The protocol is based on the Artificial Intelligence Reinforcement Learning Method and aims to increase throughput and reduce end-to-end delays. Results have shown that, particularly in the case of high primary user (PU) activity, the proposed protocol is superior to current state-of-the-art protocols.
A multicast scheduling technique for a single cell CR-WMN is proposed in [
7]. In this technique, client nodes assist the base station in delivering the multicast data over orthogonal channels to reduce total multicast time. Network coding is also utilized for a further reduction in overall multicasting time. The authors of [
8] have also used network coding for multicasting in CRNs with the goal of minimizing total transmission cost (amount of transmitted data) while taking into account both channel uncertainty and node mobility. A random network coding-based multicasting strategy is presented in [
9], and the aim was again to reduce the total number of transmissions (amount of data).
An optimization method for multicast scheduling in CRNs using network coding was presented in [
10]. In this optimization problem, several considerations, including protection of the PU and fairness, were taken into account. Two methods were proposed: a greedy method based on centralized optimization and a stochastic optimization-based online method. An optimization problem is presented in [
11] which jointly defines multicast routes and channel assignments with the goal of increasing multicast throughput in multi-hop CRNs. In [
12], the implementation of multicast non-orthogonal multiple access (NOMA) in CRNs is explored. Significant performance gains were achieved by CR user scheduling through cooperative NOMA. Other multicasting strategies inspired by NOMA are proposed for CRNs [
13,
14].
A multicast tree construction method is proposed in [
15] such that the total bandwidth used by the multicast tree is reduced to meet the predetermined
Quality of Service (QoS) requirements. The authors presented two approaches to solve this problem based on a minimal spanning tree so that time slots are allocated to tree links in a manner that reduces bandwidth usage. A minimum tree-based multicast routing protocol is proposed in [
16]. The contribution of this paper was to increase the total throughput and the delivery rate of the packets.
The authors of [
17] presented a problem related to joint power and rate allocation with a goal of maximizing the average multicast rate in CRNs while guaranteeing QoS in terms of the probability of service failure. A hidden node problem for multichannel multicast transmission is raised in [
18], and a local multicast concept is introduced to address this issue. A channel assignment algorithm is presented for this purpose that considers both partially overlapping as well as orthogonal channels. The authors in [
19] proposed a multi-channel multicast problem for a multi-radio network of wireless mesh nodes with directional antennas. The goal was to reduce interference by selecting the best multicast session tree, channel, and antenna beams. A survey article [
20] has been referred to for a more detailed review of multicast communication in CRNs. In
Table 1, the above related work is summarized as follows.
3. Network Model and Problem Formulation
Consider a CR-WMN with N nodes. First, each node employs a spectrum sensing technique to identify the channels unused by the PU. In this work, any specific spectrum sensing technique was not considered as it is beyond the scope of this work. Once each node
i performs spectrum sensing, it comes up with a set of available channels
Ci unused by the PUs. The available channels for two nodes may be different from each other depending on their geographical location. Furthermore, it is also assumed that each node shares its spectrum sensing results with its neighboring nodes via a control channel. The control channel setup is also beyond the scope of this work. It is assumed that each node transmits with its maximum transmission power P and has a transmission range
RT. Two nodes
i and
j are said to be neighbors if the distance d
ij between them is less than
RT and
Ci ∩
Cj ≠ Ø. There is a set
K of multicast sessions. Each multicast session
k ∈
K consists of a source node and multiple destination nodes. For each session, a multicast routing tree is constructed rooted at the source node. The multicast tree consists of source, forwarding/relay, and destination nodes. The multicasting on a multicast tree can be broken down into a number of local forwarding operations. For each forwarding operation, a hyperlink
H(
i,
h,
I) is established over channel
h, where
i is the forwarding node and
I is the set of receiving nodes. The energy consumed by any node
i involved in a hyperlink for a duration of bit τ can be modelled as
where
= Pτ is the transmission energy consumed per bit,
is the energy consumed per bit to activate the electronic circuitry and perform digital processing, and
is the energy consumed per bit at the receiver. The total energy consumption
E[
k] per bit for a multicast session
k is the sum of the energy consumed by each transceiver involved in the local forwarding operation in the multicast tree
Tk, which can be expressed as
Let
TG be a set of possible multicast trees for a session
k, with each multicast tree
Tk having different relay nodes and multicast links. In this work, our focus is to select appropriate relay nodes and establish multicast links in such a way that the minimum energy multicast tree
is constructed for each session
k. This can be mathematically expressed as
While selecting the relay nodes and establishing the multicast links for a tree Tk, we need to assign channels for each forwarding node which involves interference and scheduling constraints that needs to be obeyed.
Let us define a binary variable for the channel assignment
To avoid interference between hyperlinks, a hyperlink is established at a forwarding node
i over channel
h with
j as one of the receiving nodes. Another hyperlink with forwarding node
p and
q as one of the receiving nodes cannot be established over the same channel if
dpj <
RT because the transmission of node
p over the same channel may cause interference to the reception at node
j. This can be mathematically expressed as
where
Qj is the set of nodes whose distance to node
j is less than
RT and which has channels in common with node
j. Mathematically,
Qj can be expressed as
To summarize, we are a given set of sessions
K. For each session
k ∈
K we need to select the relay nodes and perform channel assignments to establish multicast links in such a way that a minimum energy multicast tree is formed for each session. Hence, our optimization problem has the objective function in (3) subject to the constraint in (4) and can be expressed as
According to [
21], the problem of finding a minimum energy consumption-based multicast tree is an NP-complete problem. Thus, this study proposes a heuristic algorithm to solve this optimization problem.
4. Proposed Technique
The overall energy consumption E[k] for a multicast session k is the sum of energy consumed by the different local forwarding operations belonging to the multicast tree constructed for that session. Each forwarding operation can be represented by a hyperlink. Thus, E[k] for a multicast session k can be reduced by minimizing the number of local forwarding operations/hyperlinks. In multicast CR-WMNs, the hyperlinks for a multicast session can be minimized by covering more receiving nodes in a hyperlink, either by assigning a suitable multicast channel or selecting the forwarding nodes.
Figure 1a illustrates how channel assignment can help to reduce hyperlinks. Node A has four available channels, i.e., CA = {1, 2, 3, 4} and three neighboring nodes, i.e., B, C, and D. The available channels at nodes B, C, and D are {2, 3}, {3, 4}, and {1, 2}, respectively. The distance between node A and nodes B, C, and D means a single channel cannot be used to cover them because of channel heterogeneity. It can be observed that there does not exist a single channel that node A has in common with all three nodes. Thus, node A must use multiple channels to achieve this one hop multicast. Several different realizations are possible, among them, two are shown in
Figure 1a,b. In
Figure 1a, node A uses three channels (1, 2, 3), thus there are three hyperlinks, i.e., {{A, 3, {B}, {A, 2, {C,}, {A, 1, {D}}. However,
Figure 1b uses two channels to cover all three nodes resulting in two hyperlinks, i.e., C
A = {1, 2, 3}; C
B = {2, 3}; C
C = {3, 4}; C
D = {1,2}.
According to the energy consumption model presented in (1), the energy consumed for a one hop multicast in
Figure 1a is 3(
Et +
Ec) + 4
Er, whereas the energy consumed for the second case is 2(
Et +
Ec) + 4
Er. Hence, by assigning the appropriate channel, the number of hyperlinks can be reduced resulting in a reduction of overall energy consumption.
The example given in
Figure 2 illustrates how the selection of forwarding nodes can help reduce hyperlinks in multicasts in CR-WMNs. Here, assume the same channels are available at each node and ignore spectrum heterogeneity. A multicast session with source node A and destination nodes E, F, and G is used. Assume that, based on distance, node B neighbors nodes E and F, node C neighbors nodes E, F, and G, node D neighbors nodes F and G, and vice versa. Any node neighbor to nodes E, F, and G can be a forwarding node for them based on which different realizations of hyperlinks are possible, out of which two are shown in
Figure 2a,b. In
Figure 2a, nodes B, C, and D are forwarding nodes for nodes E, F, and G, respectively, which results in three overall hyperlinks, i.e., {{B, 1, {E}, {{C, 2, {F}, {D, 3, {G}}, whereas there is only one hyperlink {{C, 1, {E, F, G} in
Figure 2b for this one hop multicast. According to the energy consumption model presented in (1), the energy consumed for a one hop multicast in
Figure 1a is 3(
Et +
Ec) + 4
Er, whereas the energy consumed in the second case is 2(
Et +
Ec) + 4
Er. Hence, by selecting the appropriate forwarding node, the number of hyperlinks can be reduced resulting in a reduction of overall energy consumption.
In this work, based on the joint consideration of the illustrated concepts, we proposed a heuristic algorithm to construct a minimum energy consumption-based multicast tree in CR-WMNs. For each session
k, a node level is defined initially. Each node level is the least number of hops it has from the source node ranging from 0 to L, where level 0 is assigned to the source node and level L to the leaf nodes. For example, in
Figure 3, node level is defined as ranging from L = 0 to L = 3. A is the source node and is assigned a level L = 0 and E and F are the leaf nodes and are assigned level L = 3. The tree construction then begins from level L. The forwarding nodes from level L1 are chosen for the potential receiving nodes at level L. For example, in
Figure 3 at level L = 3, E and F are the potential receiving nodes and nodes at level L = 2., i.e., D and G, are the candidate forwarding nodes. A bipartite graph is created for each node at level L = 1 to choose the forwarding nodes for the potential receiving nodes of level L. For example, in
Figure 3, a bipartite graph needs to be constructed for nodes D and G. A graph G(V, ξ) is called a bipartite graph if the set of vertices V can be partitioned into two disjoint sets, S
1 and S
2 with S
1S
2 = V, and if every edge in ξ connects a vertex from S
1 to S
2. G
i (S
1, S
2, ξ) is a bipartite graph, where S1 consists of node i and the potential receiving nodes of level L and S2 consist of the available channels at node i. For example, S1 for nodes G and D consist of nodes {G, E, F} and {D, E}, respectively. S1 for node D does not include F because the distance between nodes D and F is greater than RT. S
2 for G and D consists of the respective channels available at each node. An edge (x, y) exists between vertices such that x ∈ S
1 and y ∈ S
2 if y ∈ C
x, i.e., channel y is in the list of C
x.
Figure 4 shows the bipartite graph for nodes G and D. For G
i (S
1, S
2, ξ), find the number of edges finishing on each vertex of S
2 which can be said to be the degree of that vertex. Subsequently, find the vertex with the maximum degree that represents the channel with which the forwarding node can cover the maximum possible potential number of receiving nodes. For example, in
Figure 4a, the bipartite graph for node G, channel 2 has the maximum degree of 3. Subsequently, the same procedure is repeated for the remaining candidate forwarding nodes. Finally, the node with the maximum degree is chosen as the forwarding node and the corresponding channel is the selected channel. As illustrated in
Figure 4, node G has channel 2 which has the maximum degree of 3, and node D has three channels (2, 3 and 5) which have a degree of 2. Since node G has a channel with the maximum degree, it is selected as the forwarding node and it is assigned to channel 2, which ultimately results in the formation of a hyperlink {{G, 2, {E, F}}. Alternatively, if node D is selected as the forwarding node, it cannot cover both nodes E and F. Thus, this mechanism results in the formation of a hyperlink that can cover the maximum number of possible potential receiving nodes. The algorithmic form of this mechanism is given in Algorithm 1. Once a channel is assigned to a hyperlink, all nodes whose distance to any of the nodes involved in this hyperlink (either forwarding or receiving node) is less than R
T remove this channel from the list of available channels to ensure the constraint mentioned in (4). Next, if all the potential receiving nodes of level L are covered, a search for forwarding nodes in level L1 is performed by following the same procedure. As shown in
Figure 3, both potential receiving nodes, E and F, are covered by the selected forwarding node G. Otherwise, remove the covered nodes from the list of potential receiving nodes and again execute Algorithm 1 repeatedly until all potential receiving nodes are covered.
Algorithm 1 |
INPUT: G(S1 ∪ S2, ξ), A bipartite graph for node i
NL, Number of nodes in level L
OUTPUT: H(h, Y, Q)
Where h is the forwarding node;
Y is the selected channel;
and Q is set of covered nodes.
Initialization
I = 1;
Xi = Si;
i ≤ NL Find y∗ = arg max deg(y)
y ∈ Ci
Xi = Xi ∩ Ui,
Ui = {j ∈ S|y∗ ∈ Cj}
|Xi| > |Qi| Qi ← Xi
Yi ← y∗
h ← i
Return H(h,Y,Q) |
5. Simulation Results
In this section, simulation results of the proposed technique are presented. Performance is measured in terms of average energy consumption per bit for a multicast session and the average of engaged channels. Average energy consumption is only measured for the data packet, whereas the energy consumed for communicating the spectrum sensing results over the control channel is not considered. Engaged channels indicate the number of channels used among the total available channels. All simulations were carried out in MATLAB and the Monte Carlo simulation technique is carried out to report the average results. In order to evaluate the performance of the proposed technique, a comparison is made with the flooding approach used for multicast transmission. Six parameters are primarily used in the simulation, including the number of levels/hops denoted by L, the number of destination nodes denoted by D, the number of channels denoted by M, the probability of channels being available denoted by σ, the total energy denoted by ET, and the number of channels being used denoted by K. Performance is evaluated in terms of the average number of channels used K and the average energy consumed ET for a multicast session. M and σ are set to 100 and 0.7, respectively. The parameters D and L vary from 2 to 10 and 4 to 6, respectively.
Figure 5 shows the average energy consumed during multicast sessions for L = 4 and L = 6 by varying the number of destination nodes from 2 to 10. It can be observed that with an increase in the number of nodes, the energy consumed is also increasing. The curves for L = 4 and L = 6 also show a clear variation in the amount of energy consumed. As far as the comparison between the flooding technique and the proposed technique is concerned, the proposed technique consumes less energy. Less energy consumption occurs due to the minimum number of transmissions as well as the selection of channels which requires less energy. In addition, the proposed technique does not have to relay the data to every node in the network. Consequently, the energy consumed by the proposed technique is significantly less than the energy consumed by the flooding technique for setting up a multicast session.
Figure 6 shows the average number of channels used for L = 4 and L = 6 by varying the number of destination nodes from 2 to 10. It is apparent that with an increase in the number of nodes, the number of channels used is also increasing. The curves for L = 4 and L = 6 also show the difference in the average number of channels used for multicast sessions. While comparing the flooding technique and the proposed technique, it can be observed that the proposed technique utilizes significantly fewer channels because the flooding approach has to relay the data to every other node in the network. In contrast, the proposed technique only sends the data to the selected nodes. The selection of relaying nodes is based on the minimum number of data transmissions to the maximum possible nodes in the next level. This is possible only when the selected channel is available to more and more nodes. This channel selection technique results in the utilization of fewer channels compared to the flooding approach.
Figure 7 shows the average energy consumption of the multicast session against the varying number of relaying nodes at each intermediate level. The first level consists of one node called the source of the multicast session. The last level consists of four nodes that are supposed to receive the data and are called the destination. There are four levels in the current study, which means that there are two intermediate levels, and the nodes in each of these levels varies from 2 to 10. There is a significant variation in energy consumption between the proposed technique and the flooding approach. With an increase in the number of nodes at intermediate levels, energy consumption increases for the flooding approach while it decreases in the proposed approach. The number of transmissions for the flooding approach increases with an increase in the number of nodes at the intermediate level. Contrastingly, with an increase in the number of nodes at the intermediate level, the number of transmissions for the proposed approach decreases. This is because a larger pool of candidates is available to be selected as a relay node. Consequently, a relay node that covers a large number of data receiving nodes in the next level has been selected for transmission. This results in a reduced number of transmissions and therefore reduces energy consumption.