1 Introduction

As the WSN technology of cloud computing service continues to advance, sensor node network with the capacity of multi-receiving has become a common application scene. Many applications develop from simple event-oriented communication to providing real-time continuous data transmission, such as multimedia data transmission. In practice, it often happens that the data of some events which appear somewhere in the wireless sensor networks are detected by several receiving nodes at the same time. In this application scene, the researchers’ main question is how to send the data collected by the source node to all receiving nodes in the network simultaneously in the most economic way. Obviously, multicast technology is the main way to deal with this problem, and multicast routing algorithms and protocols for sensor networks come into being in this context.

Many multicast routing protocols of cloud computing service have been proposed in the literature. In literature (Zhang et al. 2014), the author divided these multicast routing protocols into four categories according to how to create the routing group members: (1) tree-based methods. Sterner tree is regarded as the best method to solve multicast correspondence, computing the Steiner tree is an NP-complete problem (Lee et al. 2002; Garcia-Luna-Aceves and Madruga 1999; 2) mesh-based methods. It constructs a mesh to connect group members, providing robustness against mobility. It also provides stable links based on links availability according to future prediction of links state, and higher battery life links tending to power conserving. Applying multicast communication in such an environment provides efficient saving in bandwidth and reduces communication cost (Vuran and Akyildiz 2006; Zhang and Kang 2012b; Zhang and Zhao 2012; 3) stateless multicast routing. It uses a list of the multicast members’ (e.g., sinks’) addresses, embedded in packet headers, to enable receivers to decide the best way to forward the multicast traffic. It exploits the knowledge of the geographic locations of the nodes to remove the need for costly state maintenance, making it ideally suited for multicasting in dynamic networks (Chiang et al. 1998; Mystkowski 2013; 4) hybrid methods. It separates out the data forwarding link from the join-query forwarding link. It incorporates a low overhead local clustering technique to classify all nodes into core and normal categories. When multicast routes to destination nodes are unavailable, join-query messages are sent to all nodes in the network and data packets are forwarded by the core nodes to the destination nodes using differential destination multicast (Sanchez and Ruiz 2006). Literature Xie et al. (2002) proposed a more detailed classification of multicast routing. According to existing research (Junhai et al. 2008), tree-based methods provide high data forwarding efficiency at the expense of low robustness, while mesh-based methods provide better robustness at the expense of high forwarding costs and increasing network load.

The sensor nodes of wireless sensor networks of cloud computing service are usually power supplied by batteries of limited capacity. In many application scenarios, such as battlefields or volcanic scene, once they are deployed, it is very difficult or even impossible to recharge or replace the battery. Therefore, it is a primary goal of multicast routing design in wireless sensor networks to improve energy efficiency. However, the authors of literature (Kunz 2001) and literature (Zhang and Zhang 2012) have shown that the minimum transmission multicast tree is an NP-complete problem, which can be proved by solving the minimum set cover problem or the lowest common denominator dominating set problem (vertex).

Nowadays, wireless sensor network is widely used as an effective medium to integrate physical world and information world of cloud computing service. Many algorithms have been used in topology control and routing design to balance the energy consumption and prolong the lifetime of wireless sensor networks. At the same time, interdisciplinary achievements are learned and then applied in wireless sensor networks.

Some heuristic protocols (Kunz 2001; Zhang and Zhang 2012) have been proposed based on the NP-completeness of the minimum transmission multicast routing problem. However, most of the protocols proposed now are centralized, and the entire network topology assumes that the multicast tree is computed by a single node.

Obviously, the centralized method assumes that the entire network topology is sensed by a single node, which is neither practical nor efficient in saving energy in many applications. Though distributed method has been described in literature (Zhang and Zhang 2012), it requires that all of the receiving nodes join the construction stage of the multicast tree at the same time. In DODMRP (Ruiz and Gomez-Skarmeta 2005), the author proposed a multicast routing which improves the energy efficiency by reducing the number of non-multicast group member nodes (called extra nodes). However, we prove that only reducing the number of extra nodes will not necessarily reduce the transmission cost.

To solve the above problem, this paper presents a new heuristic distributed minimum transmission multicast routing algorithm and establishes a transmission model of cloud computing service. By introducing the offset back-off scheme and taking advantage of the broadcast characteristic of wireless communication, this protocol chooses the forwarding routes which can connect more multicast receivers. After consideration of geographic routing protocols which have been shown to be very valuable and efficient solution in the same multicast cases considered in the paper, we will have conclusion that our method has obvious advantage and novelty.

2 Related technology

2.1 Technology background

Wireless sensor network of cloud computing service is self-organizing wireless network system (Zhang and Kang 2012a) formed by a large number of micro-sensors whose communication mode is single hop and multi-hop, each sensor has the capabilities of self-control, sensing, processing computation and wireless communication and has limited energy, they transmit the information data perceived in the target area to the observer to process through mutual association and cooperation. The protocol stack of wireless sensor networks of cloud computing service includes five layers: physical layer, data link layer, network layer, transport layer and application layer, and three management platforms (Zhang and Zhu 2012): energy, transfer and mission. According to the structure of wireless sensor networks, the characteristics and application types of routing protocols and so on, researchers divide routing protocols into the following categories now:

  1. 1.

    Data-centric routing protocols. The main idea of the data-centric paradigm is to minimize the number of transmission (network convergence) by eliminating redundancy on the way of the multi-source node’s arrival so that it will save the network energy and extend its life. Different from the traditional end-to-end routing, data center (DC) routing finds that the targets come from multiple source nodes, and allows the redundant data to exist in the link of network convergence.

  2. 2.

    Hierarchy-based routing protocols. In the layered architecture, the high-energy nodes are used to process and send information, while the low-energy nodes can be used to approach the targets. This means that it can greatly promote the scalability of the overall system, extend life and improve the energy efficiency by creating clusters and assigning special tasks to the cluster head. The hierarchical routing lowers the data aggregation and integration in the cluster, reduces the number of messages transmitted and the energy consumption of BS in an efficient way. The hierarchical routing mainly contains two layers: one layer is used to select the cluster head, while the other layer is used for routing.

  3. 3.

    Routing protocols based on geographic information. The so-called geographical and energy aware routing protocol (GEAR) sends data packets to the target area using energy and geographical location information as a heuristic to select the link. The key idea is not sending Interest to the entire network, but only considering making Interest diffuse directionally in a given area.

  4. 4.

    Routing protocols based on multi-link. To improve the network performance, researchers study the routing protocols using multiple links rather than a single link. When the primary link fails, fault-tolerant protocol (elasticity) can measure the possibility of the existence of alternate links between source and destination. It can maintain multiple links between source and destination at the expense of sustainable energy consumption and congestion. By sending periodic messages, it can make the link transform. Therefore, it can improve the reliability of the network by increasing the overhead cost of maintaining the transformation of the link.

2.2 Theory basis

According to literature (Zhang 2012), the network can be simulated in a graph \(G(E,V,\delta _{uv} ,(u,v)\in E)\), where \(E\) represents the set of edges, \(V\) represents the set of nodes of graph \(G\), \(\delta _{uv} \) is the descriptor of the link\((u,v)\in E\), which can be delay, bandwidth or other types of metrics. \(s\in V\) is the source, which usually represents the base station, and \(M=\{m_1 ,m_2 ,\ldots ,m_N \}\subset V\) represents the set of multicast nodes. The above description is shown in Fig. 1.

Fig. 1
figure 1

Multicast wireless network model

We assume that the average transmission weight of each node in the network is

$$\begin{aligned} P_{uv}^\mathrm{TX} =g,\;\;\;\forall (u,v)\in E \end{aligned}$$
(1)

The probability of successful packet reception can be calculated using Rayleigh recession model, which is as follows

$$\begin{aligned} P(\hbox {packet}\;\hbox {reception})=P_{uv} =\exp \left( -\frac{\Theta \cdot \sigma _Z^2 \cdot d_{uv}^\gamma }{g}\right) \end{aligned}$$
(2)

where \( \Theta \) is a hardware-related threshold, \(\sigma _Z^2 \) represents the noise weight, \(d_{uv} \) denotes the distance between the nodes \(u\) and \(v\), and \(\gamma \) is the link loss exponent.

We assume that the receiving nodes use the communication program of acknowledgement packets (ACK), and that the value of ACK is not limited. The sequence of packets transmitted between the source node \(u\) and the destination node \(v\) can be seen in Table 1. \(v\) may successfully receive the data packets, which is denoted by 1, but the reception of data packets may also be failed, which is represented by 0. ACK may be decoded correctly by \(u\) or not, and the communication ends when all packets are successfully received. \(\xi \) in the first column denotes the event that the data can be correctly received without ACK confirmation, and \(\zeta \) is used in the second column to represent the event that the data cannot be received successfully. The corresponding distribution can be expressed as follows

$$\begin{aligned}&P(\xi _{uv} =m)=(1-P_{vu} )^m\cdot P_{vu}\end{aligned}$$
(3)
$$\begin{aligned}&P(\zeta _{uv} =n)=\frac{P_{uv} \cdot P_{vu} \cdot (1-P_{uv} )^n}{(1-P_{uv} +P_{uv} \cdot P_{vu} )^{n+1}} \end{aligned}$$
(4)

We define \(\chi \) as a random variable which denotes the corresponding weight consumption on the link \((u,v)\) until the data are successfully received

$$\begin{aligned} \chi _{uv} =\xi _{uv} \cdot 2g+\zeta _{uv} \cdot g+2g \end{aligned}$$
(5)

The expected value of the transmission weight over the link \((u,v)\) is

$$\begin{aligned} E(\chi _{uv} )=E(\xi _{uv} )\cdot 2g+E(\zeta _{uv} )\cdot g+2g \end{aligned}$$
(6)

In this case, the distribution of the delay \(\delta _{uv} \) on the link \((u,v)\) can be calculated using the following formula

$$\begin{aligned} P(\delta _{uv} =l)=P_{uv} \cdot P_{vu} \cdot (1-P_{uv} \cdot P_{vu} )^{l-1},\quad l=1,2\ldots \nonumber \\ \end{aligned}$$
(7)
Table 1 A sequence of packets transmitted until both data and ACK are received

3 A minimum transmission multicast routing method for WSN of cloud computing service

3.1 Establishment of our network model

First of all, we deploy a multi-hop wireless sensor network in a two-dimensional plane area, and we assume that the locations of the local sensor nodes are static or changing very slowly. The situation that the nodes move frequently is not considered in the research work of this paper. Each sensor node has a fixed transmission power and the same transmission range r. If the power of the received signal is greater than the threshold of the received power, then the data packets will be successfully received. In this paper, we establish the network model through undirected graph, \(G=(V,E)\), where \(V\) represents a group of sensor nodes, and \(E\) denotes a group of communication links. For any two sensor nodes \(v_{1}\) and \(v_{2} ,\,\,(v_{1} ,v_{2} \in V)\), if the transmission power range of \(v_2 \) is within the transmission power range of \(v_{1} \), then the undirected edge \((v_{1} ,v_{2} )\in E\).

We assume that (S, Group_ID) is an already given multicast transmission request, where S represents the source node, and Group_ID specifies a group of multicast receiving nodes R, in other words, all the multicast receivers have the same Group_ID. Given a graph \(G=(V,E)\), the source node S and a group of multicast receiving nodes R, then the multicast routing problem can be defined as follows: find a multicast tree T in graph \(G\), and the tree connects the source node S with each multicast receiver \(r_i\in \mathrm{R}\). The tree contains a group of forwarding nodes \(F\subset V\). In the multicast tree T, all the leaf nodes are destination nodes merely used to receive multicast data packets, and only the non-leaf nodes have the task of forwarding information.

The expense of one time of transmission contains the delivery cost of the sender and the reception cost of the one-hop neighbor; given a distributed wireless sensor network whose work-sleep state does not transform mutually, and the transmission cost is proportional to the delivery cost. Therefore, the number of the forwarding nodes needs to be reduced if we want to improve the energy efficiency of multicast routing in wireless sensor networks. So the multicast routing minimum transmission problem can be programmed into the question how to minimize the size of the set of forwarding nodes. We learn that this is an NP-complete problem through previous researches (Garcia-Luna-Aceves and Madruga 1999; Vuran and Akyildiz 2006; Zhang and Kang 2012b; Zhang and Zhao 2012). This paper undertakes a study on this problem using heuristic method, and proposes a heuristic distributed minimum transmission multicast routing algorithm (DMTMRA) based on WSN of cloud computing service in the next section.

3.2 Principle of DMTMRA

Before we introduce the design of DMTMRA proposed by this paper in detail, we first explain the differences between three kinds of multicast trees in transmission cost in the same network. Multicast trees are generated according to different link selection rules, as is shown in Fig. 2. The source node sends the data packets to five multicast receivers. Each node has four neighbor nodes at most, and the diagonal lines cannot be connected. The multicast tree in Fig. 2a is constructed based on seeking the shortest link of all the multicast receivers, and the data packets can route from the source node to any multicast receiver at the lowest number of hops. In this example, the multicast tree contains 10 nodes and 9 edges, and it needs 7 times of transmission to complete the multicast task; Fig. 2b is an example showing a multicast tree which has the minimum edge costs. In fact, such minimum cost multicast tree is the famous Steiner tree problem. However, this is not the best solution to wireless sensor networks, and the energy efficiency of multicast routing can be further improved. The multicast tree in this example contains 9 nodes and 8 edges and needs 7 times of transmission. Figure 2c is a minimum transmission multicast tree which uses the broadcast characteristic of wireless communication, as can be seen, it only needs 4 times of transmission, and low transmission cost makes this kind of multicast tree more suitable for energy-constrained wireless sensor networks.

Fig. 2
figure 2

Three different kinds of multicast trees in the same network: a SPT; b the minimum Steiner tree; c the minimum transmission multicast tree

The minimum transmission multicast protocol does some preparatory work in the initialization phase. The node periodically broadcasts a “HELLO” message to exchange the information content of the multicast group members, such as multicasting Group_ID. If the node wants to update the information of its multicast group members, it will also send out this kind of “HELLO” message. After the initialization stage, the node obtains the information of all the members of its current neighbor nodes multicast group.

In the minimum transmission multicast protocol, each node maintains a table of the neighbor information, and the timestamp (the time of receiving the “HELLO” message last time) of each entry in the table is recorded. Once receiving the “HELLO” message, it will search in the neighbor table according to the Node_ID of the “HELLO” message received. If it is a new neighbor, a new entry will be inserted into the table. If the neighbor is known, the record of the timestamp of the entry will be updated. The node establishes a timer to avoid misleading information, in other words, the overdue entries in the neighbor table will be recycled after a period of time.

3.3 Heuristic distributed minimum transmission multicast routing method based on offset back-off scheme

The minimum transmission multicast routing protocol can also be applied to generate routing dynamically and maintain the members of the multicast group, which can reduce the overhead of the channels and improve scalability. When the multicast source node needs to send data, it will broadcast a multicast request (S,Group_ID). To maintain continuity with the previous content, the multicast request is seen as Join_Query message in this section.

When the multicast source node has data to send, it will broadcast a Join_Query message. The Join_Query message contains at least the following elements: Message_Type, Node_ID, Source_ID, Group_ID, Sequence_Number, Hop_Count and link_Profit (its definition is given in Definition 2). Message_Type specifies that it is Join_Query message. The sequence number is maintained by the source node and increases by 1 every time the source node broadcasts new Join_Query. Source_ID, Group_ID and Sequence_Number determine the Join_Query message, and can be used to prevent looping and abandon the outdated routing. Hop_Count is the count of the maximum distance that has been hopped up to now. Node_ID, Hop_Count and link_Profit are updated after each hop.

The Join_Reply message consists of at least several parts of information as follows: Message_Type, Node_ID, Group_ID, Next_Hop_ID, Recv_ID, Source_ID and Sequence_Number. Next_Hop_ID specifies the next node selected, and Recv_ID specifies the source node of Join_Reply. When a node receives a Join_Reply, whether it is a multicast receiver or not, it will check if it is the next node selected by Join_Reply. If it is, it finds that it is on the link to the source node, and simultaneously marks itself as a transponder (by setting a flag FG_FLAGE) of the current multicast session. Then, the forwarding node renews the Join_Reply message and fills the upstream cache Node_ID of this multicast session as Next_Hop_ID.

The offset back-off scheme was pointed out that the minimum transmission multicast routing protocol proposed in this paper uses the following two definitions.

Definition 1

We define the access_Profit of a forwarding node as the number of the multicast receivers connected between it and its neighbors, but the multicast receivers that have been connected by other forwarding nodes are not included.

access_Profit is obtained through dynamic calculation which is based on monitoring the area near Join_Reply. If a node detects that a multicast receiver sends a Join_Reply message, it will mark the neighbor as a receiver that can be connected to. Given the table of one-hop neighbors and the Join_Query message, the forwarding node will know the number of the multicast receivers among the neighbors of the multicast group through the neighbors of the same multicast group.

Definition 2

We define link_Profit of the routing from the source node to the current forwarding node as the number of the multicast nodes covered by the current link, but it does not include the access_Profit of the current forwarding node.

access_Profit (\(v_{k})\) denotes the access_Profit of the node \(v_{k}\), and link_Profit does not change with the propagation of Join_Query in the network.

The DMTMRA adopts offset back-off method. According to the previous reasons, if the given node has a large access_Profit and a link_Profit with high priority and undertakes the forwarding task, it will be likely to reduce the number of the forwarding nodes and increase the leaf nodes. In other words, both access_Profit and link_Profit will affect the calculation of back-off time.

Furthermore, the minimum transmission multicast routing algorithm often involves a few members of the non-multicast group, which are called the extra nodes. Figure 3 shows an example, in which the source node S sends data packets to receivers C and D using multicast technology. In the construction stage of the multicast tree, both node B and node C receive the Join_Query message broadcasted by node A, and they have the same values of access_Profit and link_Profit. In this case, node C prefers to forward Join_Query earlier.

Let \(T_\mathrm{backoff} \) denote the delay back-off of forwarding node \(v_i \), and it can be calculated through formula (11):

$$\begin{aligned} T_\mathrm{backoff} =\left\{ {{\begin{array}{ll} {T_\mathrm{rbd} +T_\mathrm{pbd} +\mathrm{random}(0,\tau ), \quad \hbox {if}\;v_i \in \hbox {R}}\\ {T_\mathrm{rbd} +T_\mathrm{pbd} +\mathrm{random}(\tau ,2\tau ), \,\hbox {Otherwise}} \\ \end{array} }} \right. \end{aligned}$$
(8)

The purpose of the random function random is to reduce the radio interference. random \((a, b)\) returns a random value between \(a\) and \(b\). After calculating \(T_\mathrm{backoff}\), the forwarding node starts the back-off timer. It can be seen in formula (11) that the larger access_Profit and link_Profit are, the earlier the time slice assigned will be at each hop. Therefore, a higher priority may make the routing contain fewer forwarding nodes and more leaf nodes.

To further reduce the cost of multicast transmission, the minimum transmission multicast routing protocol uses monitor to reduce the unnecessary transmission loss, and this is called link handover scheme. As the wireless medium is shared, the principle of monitor is that each node can monitor the data packets from neighbors.

When a node receives a Join_Reply message, if the node is not the next hop of Join_Reply selected, it will compare the Node_ID and Receiver_ID of Join_Reply, and if Node_ID and Receiver_ID are different, it indicates that the Join_Reply is broadcasted by a forwarding node. In this case, it updates the neighbor table and marks the neighbor as a forwarding node. If the node is the next hop selected by Join_Reply, it will check whether its neighbor table contains forwarding nodes first. If it finds a forwarder, then there is no need to forward the Join_Reply message, because there must be a route from the source node to a multicast receiver, and the multicast receiver is the origin of Join_Reply. For the current multicast session, it only marks itself as a forwarding node.

Similarly, when a multicast receiver receives a Join_Query message, before replying a Join_Reply, it checks whether there are forwarding nodes in its own neighbor table first. If there are, it remains silent; if there are not, it will send out a Join_Reply.

In addition, taking into account the uncertainty of wireless channel, such as competition and conflict, a node may still receive the Join_Reply message, but it will mark itself as a forwarding node. In this case, it will drop the Join_Reply. When a multicast receiver receives a Join_Reply, if it is the next hop selected by Join_Reply and has been covered, it will mark itself as a forwarding node and drop the Join_Reply.

link handover scheme (phs) not only can reduce the transmission cost of the multicast tree in the construction phase, but also can streamline the redundant multicast routing. About how a node deals with the Join_Query and Join_Reply messages received in the minimum transmission multicast routing protocol, this paper describes Algorithm1 corresponding to the pseudo codes of Recv_Join_Reply() .

Now, we take into account that the link quality difference will affect the performance of WSN of cloud computing service, and we introduce in the routing metric the expected number of transmissions (expected transmission count ETX). The value of link ETX is the forecast of data traffic using this link to contract. The calculation of ETX uses the forward and reverse transfer rate of link. The forward transfer rate \(p_f \) represents the measure of probability that the packet reaches the recipient successfully. The reverse transfer rate \(p_r \) represents the probability of successful arrival of an ACK packet.

The loss packet rate \(p=1-(1-p_f )(1-p_r ), s (k)\) means data packets after the attempt of \(K\) times the probability of successful transmission times. Expected transmission count

$$\begin{aligned} \mathrm{ETX}=\sum \limits _{k=1}^\infty {k\times s(k)=\frac{1}{1-p}} \end{aligned}$$
(9)

We present a integrated metric to describe the performance of communication link between the wireless access point \(v_i \) and \(v_j \)

$$\begin{aligned} M_{(i,j)} =\alpha \mathrm{NLR}+\beta \mathrm{LLR}+\gamma \mathrm{ETX} \end{aligned}$$
(10)

In the formula \(\alpha , \beta , \gamma \) are weighting factors and meet \(\alpha +\beta +\gamma =1\). NLR is the load of node, LLR is the available bandwidth of link. The value of the three parameters depends on the different network applications. When network traffic increases, the node load correspondingly becomes heavier, the first part influences the formula mostly, so the value of \(\alpha \) increases and the value of \(\beta , \gamma \) reduces correspondingly. When the node power increases, the link is busy, the values of \(\beta \) corresponding will increase, the value of \(\alpha , \gamma \) will reduce. When the network environment becomes bad, link will be busy, the value of \(\gamma \) corresponding will increase, \(\alpha , \beta \) will reduce. In this paper, \(\alpha =\beta =0.3, \gamma =0.4\).

We draw on the optimization theory to build optimization model. In this paper the routing algorithm chooses delay and throughout as a constraint conditions precedent, make NLR + \(\beta \) LLR+ \(\gamma \) ETX the optimization goal, this dynamic the solution method can promptly adapt to the change of the structure of the network.

Lemma 1

(The optimization theorem) Set for a multi-stage decision-making process which the order number is \(N\), and its stage number is \(k=1,2,\ldots ,N\). For the initial state \(x_1 \in X\), the necessary and sufficient conditions of the strategy \(p_{1,N}^*=\{u_1^*,...u_N^*\}\) is the optimal strategy for any k \((1<k \le N)\), there is

$$\begin{aligned}&V_{1,N} (x_1 ,p_{1,N}^*)=\mathop {opt}\limits _{p_{1,k-1} \in p_{1,k-1} (x_1 )} \nonumber \\&\quad \times \varphi \left[ {V_{1,k-1} (x_1 ,p_{1,k-1} ),\mathop {opt}\limits _{p{ }_{k,N}\in p_{k,N} (x_k )} V_{k,N} (x_k ,p_{k,N} )} \right] \end{aligned}$$
(11)

opt represents extreme value, \(\varphi \) is a increasing monotony of variable \(V, V_{k,N} (x_k ,p_{k,N} (x_k ))\) represents the target function from stage \( k\) to \(N\).

Lemma 2

(Convex set theorem) If functions based on convex sets \(x\in E^{n}\) is convex, when any two points \(x_1 ,x_2 \in X\), and to all \(\lambda \in [0,1]\), it should meet \(f[\lambda x_1 +(1-\lambda )x_2 ]\le \lambda f(x_1 )+(1-\lambda )f(x_2 )\).

Supposed there are n nodes in every hop of link and \(k\) is its any jump, the optimized objectives are the load of node, the available bandwidth of link and ETX. According to the convex set theorem, the reliability and throughout of the network with regard to routing is not concave, it can construct a convex space. This proposes that \(P\) is routing solution space of the optimal target. \(p_1, p_2, p_3\) are three optimal link solution subspace. First seek the ideal point, in separate conditions, respectively, to compute the extreme value of the load of node, the available bandwidth of link and ETX in subspace \(p_1, p_2, p_3\) solving using dynamic programming segment. If the ideal point exists, that is to say the absolutely solution exists, so the algorithm ends. Otherwise solve \(min \{\alpha \mathrm{NLR} + \beta \mathrm{LLR} + \gamma \mathrm{ETX} \}\) any effective optimal solution, meanwhile adjusting the parameters according to different network conditions. The link between the nodes should choose the optimal value, as follows:

$$\begin{aligned}&M_{1,n} (x_1 ,p_{1,n}^*)=\mathop {opt}\limits _{p_{1,k-1} \in p_{1,k-1} (x_1 )} \varphi [M_{1,k-1} (x_1 ,p_{1,k-1} ), \\&\quad \mathop {opt}\limits _{p_{k,n} \in p_{k,n} (x_k )} \varphi [M_{k,n} (x_{k,} p_{k,n} )]] \end{aligned}$$

Meanwhile inferred by the optimal theory regardless of how the state and decision of the past were, for the greatest current state formed by the current decision, the remaining decisions must constitute the best strategy for overall strategy.

That is to say if \(M_{1,n}^*\in M_{1,n} (x_1 )\) is best decision, for any k \((1< k \le n)\), its sub-strategies \(p_{k,n}^*\) is also the optimal strategy for the sub-processes determined by \(x_1 \) and \(p_{1,k-1}^*\) in which the starting point \(x_k^*\) from \(k\) to \(N\).

In \(G (V, E)\) any of the routing links \(l=l_0 ,l_1 ,...,l_k \), this paper defines the metric of routing is the sum of metric of all links. The metric of node from source node \(v_i \) to destination node \(v_j \) is

$$\begin{aligned} M_L =\sum \limits _{l=0}^{k-1} {M_{l(i,j)} } \end{aligned}$$
(12)

The routing mechanism could be described as: for a given source node \( i\) and destination node \(j\), there is a set \(L\) made by all possible routing, if \(L\ne \phi \), this paper will choose the \({min}_{l\in L} M_l \) to be the routing from \(v_i \) to \(v_j \), that is the minimum value of the accumulating routing between two nodes.

The additivity of the metric is the sufficient and necessary condition in which the routing algorithm can successfully run (Sobrinho 2002; Li et al. 2011). So to ensure the feasibility of EAODV routing protocol, we need to prove the proposed integrated metric meet additivity.

Property 1

The integrated metric meet additivity under the Lemma 1 and Lemma 2, that is to say the metric \(M\) meeting: for any routing link of network \(a, b, c\) and \(c'\), if \(M_a \le M_b \) is established, we can deduce the \(M_{a\oplus c} \le M_{b\oplus c} \) and \(M_{a\oplus c^{'}} \le M_{b\oplus c^{'}} \) established, in which \(a\oplus c\) can be regarded as a new routing link composed of the sequential series up link by \(a\) and \(c\). Other similarly can be proved.

Proof

suppose the routing link \(a\) and \(b\) meeting \(M_a \le M_b \), so apparently we can deduce

$$\begin{aligned} M_a +M_c \le M_b +M_c \end{aligned}$$
(13)

From the formula (1) \(M_L =\sum _{l=0}^{k-1} {M_{l(i,j)} } \), we can get that the value of integrated metric for routing link weights all the links of the integrated metric, and then deduce

$$\begin{aligned} M_{a\oplus c} =M_a +M_c \end{aligned}$$
(14)
$$\begin{aligned} M_{b\oplus c} =M_b +M_c \end{aligned}$$
(15)

After formula (14), (15) substituting into (13), we can get

$$\begin{aligned} M_{a\oplus c} \le M_{b\oplus c} \end{aligned}$$
(16)

Similarly introduce \(M_{a\oplus c^{'}} \le M_{a\oplus c^{'}} \)

To sum up above, the integrated metric meet: if \(M_a \le M_b \) is established, \(M_{a\oplus c} \le M_{b\oplus c} \) and \(M_{a\oplus c{'}} \le M_{b\oplus c{'}} \) are established, so the proposed criteria meet additivity. Property 1 is proved.

figure a

4 Simulation and performance analysis

In this paper, we use the NS2 and TOSSIM simulation tool for WSN to compare DODMRP, ODMRP and the algorithm adopting link handover scheme, thus assess the performance of the minimum transmission multicast routing protocol of industrial application (Li et al. 2011; Zhang and Liang 2013; Mao and Anderson 2013; Lin et al. 2010), and we have done a fairer comparison with the simulations including the one described in reference (Ruiz and Gomez-Skarmeta 2005). By these two simulation tools, we have gained the same results.

4.1 The establishment of simulation

To assess the minimum transmission multicast routing algorithm comprehensively, this paper, respectively, carries out grid topology test and random topology test in the square area of 200 \(\times \) 200 m for WSN of cloud computing service. The scenario is as Fig. 3. In the grid topology, 100 sensor nodes are uniformly deployed in the area, which forms a two-dimensional grid of cloud computing service. In the random topology of cloud computing service, we use the setdest tool of NS2 to generate 200 sensor nodes.

Fig. 3
figure 3

The scenario of WSN

We suppose sensor nodes are randomly distributed in a \(W\times H\) rectangular sensing field as Fig. 4. Data are sent to the regional central node (cluster head), then transferred to the sink node (Sink). All sensor nodes are isomorphic, they have limited capabilities to compute, communicate and store data. The energy of sensor nodes is limited. Nodes die after exhausting energy entirely. But the energy of the sink node can be added. Nodes can vary transmission power according to the distance to its receiver. The sink node can broadcast message to all sensor nodes in sensing field. Distance between signal source and receiver can be computed based on the received signal strength. The multicast source node is located in the lower left corner (0, 0 m), and the multicast receiving nodes are randomly generated in each round of experiments. Here, the transmission distance \(r\) of sensor nodes is selected as 40/60/80/100 m, \(\tau \) = 0.001/0.0015/0.002/0.0025 s, \(N=4/6/8/10\). The MAC layer protocol is IEEE 802.11 MAC.

Fig. 4
figure 4

Distribution map of sink and sensor node

We apply the channel two-ray model as the signal propagation model, and the factor of shadowing fading is ignored in this model. Therefore, for a single distance, given the transmission power \(P_{t}\), the received power \(P_{r}\) is represented by formula (17).

$$\begin{aligned} P_r (d)=\frac{P_t G_t G_r h_t^2 h_r^2 }{d^nL} \end{aligned}$$
(17)

where \(d\) is the distance between the sender and the receiver, \(G_t\) and \(G_r \)are antenna gains, \(h_{t}\) and \(h_{r}\) are antenna heights, \(L\) is the factor of power consumption, and \(n\) is the link loss exponent. In the simulation of this paper, we set \(G_{t}=G_{r}=1\), \(h_{t}=h_{r}=1.5\) m, \(L=1\), \(n=4\); \(G_{t}=G_{r}=1.5\), \(h_{t}=h_{r}=2\) m, \(L=1\), \(n=4\); we set \(G_{t}=G_{r}=1\), \(h_{t}=h_{r}=1.5\) m, \(L=2\), \(n=6\); we set \(G_{t}=G_{r}=1\), \(h_{t}=h_{r}=1.5\) m, \(L=2\), \(n=8\).

We select three evaluation indexes of cloud computing service:

  1. 1.

    The normalized transmission overhead: this index is used to measure communication costs and energy efficiency. This paper defines the normalized transmission overhead as the times of propagation required when the data packets transfer from the source node to all the multicast receiving nodes.

  2. 2.

    The number of extra nodes: this index is defined as the number of extra nodes contained in the multicast tree. Under the premise of reducing the transmission consumption, the minimum transmission multicast routing protocol tends to include fewer extra nodes.

  3. 3.

    Average access profit: this index is defined as the mean value of access_Profit forwarded each time in the multicast tree. In a sense, it also reflects the energy efficiency of the multicast routing protocol.

4.2 The simulation results

  1. 1.

    Grid topology test of cloud computing service: before conducting tests on other more general topologies, we first use grid topology to simulate the performance of the minimum transmission routing protocol. Figure 5 shows the output results when the size of the multicast group (namely, the number of multicast receivers) is changed.

Fig. 5
figure 5

The performance test under grid topology: a DMTMRA; b DMTMRA phs; c DODMRP; d ODMRP. a Normalized transmission overhead changes. b Average access profit under different multicast group

Figure 5a explains how the normalized transmission overhead changes with the increase of the size of the multicast group. It can be seen obviously from the figure that the minimum transmission multicast routing protocol is better than the other two protocols in terms of energy consumption. When the size of the multicast group is small, the difference between the minimum transmission multicast routing protocol and DODMRP is not obvious, the reason for which is the multicast receiving nodes are very sparsely distributed in the network. However, with the increase of the size of the multicast group, we can observe that the minimum multicast routing protocol is significantly better than the other two protocols, and it can save 3 times of transmission on average. It can also be seen from the figure that DODMRP is close to ODMRP protocol as the size of the multicast group becomes larger.

Figure 5b shows the average access profit under different sizes of the multicast group. As the size of the multicast group increases, the access profits of different protocols also increase. The minimum transmission multicast routing protocol provides the highest average access profit. Though the difference is not obvious, it can still reflect the energy efficiency of the multicast routing protocol. This is because all the results are obtained by averaging.

Based on these parameters mentioned above in Fig. 5, we can know the output results when the size of the multicast group (namely the number of multicast receivers) is changed, and the minimum transmission multicast routing algorithm to be used comprehensively is no problem in grid topology test.

  1. 2.

    Random topology test of cloud computing service: in this test, 15 multicast receiving nodes are randomly selected in each round. The simulation results are shown in Fig. 6.

    Fig. 6
    figure 6

    The performance test under random topology: a DMTMRA; b DMTMRA phs; c DODMRP; d ODMRP. a Performance comparison of normalized transmission. b Average access profit changes

Figure 6a describes the comparison of the performance of the normalized transmission overhead. When the size of the multicast group is between 10 and 40, the reduction of the transmission overhead of the minimum transmission multicast routing protocol is highly visible. Although the performance is affected by the uncertainty of random topology, the minimum transmission multicast routing protocol has an advantage over the other two protocols in general.

Figure 6b illustrates how the average access profit changes with the size of the multicast group. Similar to grid topology test, the average access profits of different protocols increase with the increase of the size of the multicast group, and the minimum transmission multicast routing protocol provides the highest average access profit.

Based on these parameters mentioned above in Fig. 6, we can know the comparison results of the performance of the normalized transmission with the size of the multicast group, and the minimum transmission multicast routing algorithm to be used comprehensively is no problem in random topology test.

It can also be seen from Figs. 5 and 6 that all the indexes of the minimum transmission multicast routing protocol are improved after utilizing link handover scheme, which benefits from the conversion from longer links to shorter links in link handover scheme (phs).

5 Conclusions and future works

We analyze the causes of the generation of uncertain information in wireless sensor networks of cloud computing service, for example, information fusion, random load or other factors. According to these random reasons, this paper proposes a new DMTMRA and establishes the transmission model of cloud computing service. By defining the offset back-off scheme and taking advantage of the broadcast characteristic of wireless communication, this protocol selects the forwarding routes which can connect more multicast receivers. At last, we compare the minimum transmission multicast routing protocol and the existing protocols in performance from the two aspects of grid topology and random topology of cloud computing service, respectively. Through comparison, it proves that the protocol proposed in this paper has an advantage in saving energy by minimizing bandwidth, delay and the number of transmissions. The future work mainly concentrates on topological constructing of wireless sensor networks of cloud computing service and its design of routing algorithm based on local information. Ant colony optimization (ACO) algorithm will be used to design topological constructing routing protocol of cloud computing service in which the newly defined edge weight of links acts as pheromone.