# Energy-Efficient Broadcasting Scheme for Smart Industrial Wireless Sensor Networks

Authors: Zhuangbin Chen; Anfeng Liu; Zhetao Li; Young-June Choi; Hiroo Sekiya; Jie Li
Journal: Mobile Information Systems
 (2017)

---

## Abstract

In smart Industrial Wireless Sensor Networks (IWSNs), sensor nodes usually adopt a programmable technology. These smart devices can obtain new or special functions by reprogramming: they upgrade their soft systems through receiving new version of program codes. If sensor nodes need to be upgraded, the sink node will propagate program code packets to them through “one-to-many” broadcasting, and therefore new capabilities can be obtained, forming the so-called Software Defined Network (SDN). However, due to the high volume of code packet, the constraint energy of sensor node, and the unreliable link quality of wireless network, rapidly broadcasting the code packets to all nodes in network can be a challenge issue. In this paper, a novel Energy-efficient Broadcast scheme with adjustable broadcasting radius is proposed aiming to improve the performance of network upgrade. In our scheme, the nonhotspots sensor nodes take full advantage of their residual energy caused in data collection period to improve the packet reception probability and reduce the broadcasting delay of code packet transmission by enlarging the broadcasting radius, that is, the transmitting power. The theoretical analyses and experimental results show that, compared with previous work, our approach can averagely reduce the Network Upgrade Delay (NUD) by 14.8%–45.2% and simultaneously increase the reliability without harming the lifetime of network.


---

## Body

## 1. Introduction

As one of the key components of Cyber-Physical Systems [1–4], Wireless Sensor Networks (WSNs) are emerging as a promising platform which enable a wide range of applications in both military and civilian domains [5–11]. Specifically, Industrial Wireless Sensor Networks (IWSNs) are regarded as a promising paradigm for smart industrial automation [12, 13]. In smart IWSNs, a large number of sensor nodes are deployed to detect environment events, measure the physical or chemical parameters of surroundings, and report the sensed data to the remote control center wirelessly. Based on the collected data from all these sensors, the control center can send commands to machinery actuators and trigger necessary actions [12]. Comparing with traditional industrial automation systems using wired communications, IWSN brings notable advantages including lower cost, higher flexibility, and self-organizing capability, which significantly improves the industrial efficiency and productivity [12, 14, 15].Due to the ever increasing demand for network resources, network operators and Internet Service Providers are under constant pressure to accommodate more network bandwidth and offer better service quality via periodic network upgrade [16, 17]. With the development of smart industrial as well as Software Defined Network (SDN), today the software of sensor nodes is able to be reconfigured, which adds new features to IWSNs. The flexibility of software reconfiguration and upgrade of nodes has drawn wide attention from researchers in many application fields, like monitoring traffic information, detecting real-time conditions of petroleum pipeline. In IWSNs, if the network needs to be upgraded, the sink node will generate code packets to be broadcasted to all sensor nodes [16, 18]. After receiving the code packet, each node compiles and executes it to gain new functions, forming a more advanced IWSN. Broadcast is a very fundamental form of communication in which nodes disseminate the same information simultaneously to all of their neighbors [19]. Given a base node with a code packet to broadcast, the aim is to propagate the packet to all nodes with a high reliability while incurring minimum latency. This problem, called minimum latency broadcast scheduling (MLBS), has been studied extensively and has been shown to be NP-hard [20]. Applications for industrial automation often have very stringent requirements on communication reliability and transmission delay [12]. Nevertheless, the harshness of industrial environments poses severe challenges on the design of energy-efficient IWSN upgrade code propagation. First, wireless channels are subject to multipath fading and interuser interference, which makes it extremely difficult to satisfy the Quality-of-Service (QoS) requirements of broadcast. Second, in realistic industrial environments, the machinery obstacles, metallic frictions, engine vibrations, and equipment noise as well as the humidity and temperature fluctuations also have adversary impacts on the reliability of end-to-end transmissions [12]. Third, in IWSNs, the program code packet needed to be broadcasted is usually of high volume, making designing an Energy-Efficient Broadcast protocol an extremely difficult problem.Although the process of code broadcast in WSNs has been deeply studied, the broadcasting reliability and delay and energy efficiency still need to be improved. We observed a special phenomenon called “energy hole” in sensor networks [11] which leads to a very low efficiency of energy utility. To be more specific, all the nodes send data to the sink node which is situated in one side of the linear network shown as Figure 1, but the “many-to-one” data collection mode causes such imbalance: the data loads of nodes in near-sink region (hotspots) are much heavier than those in far-sink region (nonhotspots). That is because they help transmit the packets generated by the outside nodes. The operation of transmitting data is the main source of energy consumption resulting in premature death of the nodes in hotspots as well as the network [21]. Some related studies have shown that, due to the impact of energy hole, there still remains up to 90% energy in the network when it dies [11]. For broadcast operation, a large broadcasting radius can improve the link quality between nodes [16]; however, it brings about a high energy consumption because of the increased data transmitting power. Since the far-sink nodes have much energy left, we believe this part of energy can be used to enlarge their broadcasting radius. Based on the above observations, in this paper, we propose a novel code packet broadcast scheme, called Energy-efficient Broadcast (EeB) which reduces the broadcasting delay and simultaneously improves the packet transmission reliability without harming the network lifetime.Figure 1
Linear Network Topology.The main contributions of this paper can be listed as follows.(1)
We propose an Energy-efficient Broadcasting (EeB) scheme that synthetically improves the performance of packet broadcast for network upgrade which generally has three obstacles: the high volume of code packet, the constraint energy of sensor node, and the unreliable link quality between nodes. When designing the scheme, both the energy consumption in data collection stage and network upgrade stage are considered.(2)
We studied the so-called “energy hole” phenomenon [4] which causes the unbalanced utility of energy in network and then develop an algorithm that addresses the selection of code packet broadcasting radius of sensor nodes according to their residual energy. The adjustable radius allows sensor node to consume its energy more flexibly, and therefore the energy can be used to the greatest extent.(3)
The effectiveness of our scheme is evaluated in terms of Network Upgrade Delay (NUD) and packet reception probability. And the performance of the EeB comparing with a previous broadcast scheme in which all sensor nodes adopt the Same Broadcast Radius (SBR) is given in both theory and simulation.Through our theoretical studies and a series of simulations, we demonstrate that, for the scheme proposed in this paper, packet broadcasting delay, packet transmission reliability, and energy utilization radio can be improved simultaneously. Compared with the former approach, the broadcasting delay can be averagely reduced by as much as 14.8% to 45.2%. More importantly, it improves the above performances without harming the network lifetime, which is difficult to achieve in the studies of the past.The rest of this paper is organized as follows. In Section2, the related works are reviewed. The system model is described in Section 3. Section 4 elaborates the design of the novel Energy-efficient Broadcast (EeB) scheme for IWSNs. The performance analyses for EeB are provided in Section 5. Section 6 is experimental results and comparisons. Finally, we conclude in Section 7.


## 2. Related Works

The packet broadcast of WSNs has been formulated and investigated in the literatures [20, 22, 23]. According to different applications, the existing studies can be briefly classified into the following two categories.(1) The minimum-transmission broadcast (MTB) problem: in this kind of research, the target is to reduce the packet broadcast/transmission times of nodes. In previous studies, nodes are assumed to be active all the time, so reducing the transmission times is to find a Minimum Connected Dominating Set (MCDS) of the network [22, 23]. The nodes in MCDS can cover the entire network, so all nodes in network can receive packet as long as the MCDS nodes broadcast packets once. In [24], the authors proved that building a minimum flooding tree is identical to finding an MCDS.The purpose of decreasing the broadcast times of node is to reduce its energy cost, which also had been intensively studied. [25] proposed a heuristic broadcast algorithm called Broadcast Incremental Power (BIP), which constructs a broadcast tree with the broadcast source node, the root of the tree. In the process of constructing the tree, a new uncovered node will be joined into the broadcast tree at the lowest energy cost. [26] further optimized BIP algorithm and proposed a more efficient search algorithm, r-shrink, which could reduce the total broadcast energy cost by rescheduling the nonleaf nodes of the constructed broadcast tree.In most of the WSNs, a node alternates between dormant and active states which is developed and applied to WSNs for energy conservation [7]. In broadcast mechanism, a node is required to transmit a message for multiple times to propagate the message to all of its neighbor nodes at different moments. As a result, the MTB problem in duty-cycled networks (MTB-DC problem) needs to be investigated for solutions in which both the set of forwarding nodes and their broadcast schedules are identified. Related works include Level-Based Approximation Scheme proposed by Le Duc et al. [27]. They first identified the forwarding nodes and their corresponding receivers for all time slots and then constructed a broadcast backbone by connecting these forwarding nodes to the broadcast source.(2) The minimum latency broadcast scheduling (MLBS): in this kind of research, both decreasing the broadcasting delay and energy consumption of nodes are studied [20, 28].Zhao et al. [20] considered MLBS in duty-cycled WSNs and presented two approximation algorithms, BS-1 and BS-2, that produce a maximum latency of at most ((Δ-1)TH) and (13TH), respectively. Here, Δ is the maximum degree of nodes, T denotes the number of time slots in a scheduling period, and H is the broadcast latency lower bound obtained from the shortest path algorithm. Khiati and Djenouri [28] proposed a Broadcast over Duty-Cycle and LEACH (BOD-LEACH) protocol, which takes advantage of LEACH’s energy-efficient clustering. The proposed protocol adds new common static and dynamic broadcast periods to support and accelerate broadcasting. The dynamic periods are scheduled following the past arrivals of messages and using a Markov chain model.Another application scenario that requires demanding broadcasting delay is Vehicular ad hoc networks (VANETs) where broadcasting must be fast and reliable such that all the vehicles in a certain area can receive the message as quickly as possible to implement series applications, for instance, constructing routes to reach a given destination, cooperating for traffic management, or preventing the driver of dangers on the road [29, 30]. In [29] Gonzalez and Ramos proposed PDB, a Preset Delay Broadcast protocol with a fixed delay for vehicles attempting to retransmit a warning message, which provides a fast and reliable dissemination. They showed that, by adequately setting the waiting time for the relay candidates, the delay to cover a given area can be significantly reduced, while at the same time preserving a good reliability.


## 3. System Model and Problem Statements

### 3.1. Network Model

In this paper, linear sensor network is adopted which has been studied by He et al. [9]. The linear network is a network that consists of k+1 homogenous static sensor nodes and 1 sink node; that is, node set Θ=Θ0,Θ1,Θ2,…,Θk,vs is randomly deployed on a line, as shown in Figure 1. The subscript also represents the ID number of a node; for example, the ID of node Θi is i. vs represents the base station (called sink node) and is located in one side of the linear network; other nodes are common nodes, among which Θ0 represents the first node of the network, called source node. The distance between any two adjacent nodes, say Θi and Θi+1, 0≤i≤k-1, is denoted as di m. For the convenience of calculation, the distance between any two adjacent nodes will be set to a common value, r m, that is, d1=d2=⋯=dk=r. The data packet generated by any node Θi, 0≤i≤k should be sent to the sink node by multihop route [31]. Linear sensor network is generally applied in linear application environment such as industrial production line, monitor of traffic information, surveillance of boundary line, and detection of petroleum pipeline [9].A real-world project which applied linear topology is provided. In the mines of the Nanyang Coal Industry Co., Ltd., Hengyang, China, the main haulage roadway is approximately 12,000 m long, and most return airways have lengths of more than 1000 m [32]. This kind of underground coalmine tunnels is usually very long and narrow, and some tunnels are approximately thousands of kilometers in length but only several meters in width, as shown in Figure 2. Therefore, data transmission suffers from large delay, unbalanced energy consumption, and number of retransmission because of the unreliability of wireless links.Figure 2
The haulage roadway.Figure3 shows the architecture of line topology used in the haulage roadway which contains many sensor nodes, one sink node, and one mine communication switch in the underground coalmine. In the data collection stage, the sensor node transfers sensed data (e.g., Gas concentration and CO concentration) to the sink node through multihop. All of the data are sent to the mine communication switch and are then transferred to the switch, certain types of servers, and routers on the ground. Finally, the relevant department obtains production information. On the contrary, code packets are transmitted from sink node to sensor nodes through broadcasting in the network upgrade stage.Figure 3
Architecture of line topology in the haulage roadway.The operation of network system is broken into rounds, and each node in network has a probability ofλ to generate a packet in each data collection round. We consider a static wireless sensor network where sensor nodes do not move once deployed. The energy of common node is limited, while the energy of the sink node is infinite. Since the event production rate of node that we considered is sparse, congestions will not occur during the process of packets’ routing to the sink node. Therefore, we do not take account of the queue waiting delay of packets within nodes [33].Once the network needs to be upgraded, sink node will send program code packets to its nearby nodes through broadcasting. If the nearby nodes can successfully receive the code packet, they will also broadcast the packet to their nearby sensor nodes and forth until all nodes in network receive the code packet to carry out the upgrade process. In order to save energy, nodes will broadcast its received packet only once for avoiding too much duplicate packet retransmission. And in order to avoid the back-transmission of code packet, every node will add its ID number to the header of the code packet before broadcasting, and every time a node receives a packet, it will determine whether to broadcast it or not by comparing its own ID to the ID stored in the header of the packet. If its own ID is bigger, then this code packet will be discarded. As the radio links between nodes are imperfect, failures of transmissions always exist in the process of code packet broadcast, which will be studied in later Section4.1. However, as EeB lays special stress on designing a better broadcast algorithm, in data collection period, the packet transmission between any two nodes will be assumed as failure-free for the convenience of calculating the residual energy of sensor nodes.


### 3.2. Energy Consumption Model

In this paper, we adopt the topical energy consumption model [4, 8]; that is, in wireless communications, the energy consumption of packet transmission is divided into two parts, the power consumption of the power amplifier, which can be controlled, and other circuits power consumption, while the energy used for reception is mainly the circuits power consumption. The realistic node energy model obtained from measurement results can be found in [34]. The transmission energy consumption, ωt, follows (1) and energy consumption for reception, ωr, follows (2).(1)ωt,1d=lEelec+lεfsd2,ifd<d0ωt,2d=lEelec+lεampd4,ifd≥d0,(2)ωr=lEelec,where Eelec represents the transmitting circuit loss; both the free-space (d2 power loss) and the multipath fading (d4 power loss) channel models are used; if the transmission distance is less than the threshold d0, the power amplifier loss is based on free-space model, while if the transmission distance is larger than or equal to the threshold d0, then the multipath attenuation model is used; εfs and εamp are the energy required by power amplification in the two models; l is the number of bits in a packet. The above parameter settings are given in Table 1, as adopted in [1, 4, 6, 8]. And for the convenience of readers to understand this paper, Notations Section summarizes the notations used in this paper.Table 1
Network parameters.
Symbol Description Value d 0 Threshold distance (m) 87 r s Sensing range (m) 15 E e l e c Transmitting circuit loss (nJ/bit) 50 e f s Power amplification for the free space (pJ/bit/m2) 10 e a m p Power amplification for the multipath fading (pJ/bit/m4) 0.0013 E i n i Initial energy (J) 0.5


### 3.3. Problem Statements

Improving the QoS of broadcast is a problem of multiple targets optimization. Some definitions are given to clearly describe the study objects of network we are trying to improve in this paper.Definition 1.
Network Upgrade Delay is denoted asDNUD. DNUD refers to the time duration between the generation of program code packet in the sink node and the packet to be transmitted to all nodes in network through broadcasting. Let Tsink stand for the time instant that code packet is generated in the sink node and Tlast present the time instant when the last node receives the code packet; then the Network Upgrade Delay minimization can be expressed as(3)min⁡DNUD=min⁡Tlast-Tsink.Definition 2.
Network upgrade reliability is denoted asϕNUR. It should be guaranteed, which means it should be higher than or at least equal to the minimum reliability, ℘, required by applications. Let βi stand for the broadcasting reliability of the packet at the ith hop of multihop routing from sink node to source node; then network upgrade reliability can be expressed as(4)ϕNUR=∏i∈route  pathβi≥℘.Definition 3.
Network lifetime is denoted asl. l depends on the energy consumption speed of nodes. The energy consumption of node ςi consists of (a) communication energy; for instance, Etc and Erc are used for transmitting and receiving data packets in data collection period, (b) upgrade energy consumption, Etu and Eru, which are used for transmitting and receiving program code packets in network upgrade period. Since the death time of the first node is defined as the lifetime [11], maximizing the lifetime is to minimize the energy consumption speed of the first node, which is expressed as the following formula, where Eini represents the initial energy of node Θi:(5)max⁡l=max⁡min1≤i≤nEiniEtc+Erc+Etu+Eru.Definition 4.
Effective energy utilization rate is denoted asξe. ξe refers to the ratio of energy efficiently utilized and the total energy in the network which can be expressed as a formula below. Our target is to maximize the energy utilization of the whole network. ei in the formula stands for the energy consumption of node Θi:(6)maxξe=max⁡∑1≤i≤nei∑1≤i≤nEini.Obviously, the goal of EeB is to minimize the Network Upgrade Delay (NUD) and maximize the network upgrade reliability,ϕNUR, network life, l, and effective energy utilization, ξe, which can be summarized as follows:(7)MinimizeDNUD,MaxmizeϕNUR,l,ξe,min⁡DNUD=min⁡Tlast-TsinkϕNUR=∏i∈route  pathβi≥℘max⁡l=max⁡min1≤i≤n⁡EiniEtc+Erc+Etu+Erumax⁡ξe=max⁡∑1≤i≤nei∑1≤i≤nEini.In addition, the optimization goal is transformed into an optimization problem of energy consumption and the quality of broadcasting code packets during network upgrade stage in the case of constraint lifetime. The problem is characterized as a trade-off between energy consumption and the nodes’ broadcasting radius [35].


## 3.1. Network Model

In this paper, linear sensor network is adopted which has been studied by He et al. [9]. The linear network is a network that consists of k+1 homogenous static sensor nodes and 1 sink node; that is, node set Θ=Θ0,Θ1,Θ2,…,Θk,vs is randomly deployed on a line, as shown in Figure 1. The subscript also represents the ID number of a node; for example, the ID of node Θi is i. vs represents the base station (called sink node) and is located in one side of the linear network; other nodes are common nodes, among which Θ0 represents the first node of the network, called source node. The distance between any two adjacent nodes, say Θi and Θi+1, 0≤i≤k-1, is denoted as di m. For the convenience of calculation, the distance between any two adjacent nodes will be set to a common value, r m, that is, d1=d2=⋯=dk=r. The data packet generated by any node Θi, 0≤i≤k should be sent to the sink node by multihop route [31]. Linear sensor network is generally applied in linear application environment such as industrial production line, monitor of traffic information, surveillance of boundary line, and detection of petroleum pipeline [9].A real-world project which applied linear topology is provided. In the mines of the Nanyang Coal Industry Co., Ltd., Hengyang, China, the main haulage roadway is approximately 12,000 m long, and most return airways have lengths of more than 1000 m [32]. This kind of underground coalmine tunnels is usually very long and narrow, and some tunnels are approximately thousands of kilometers in length but only several meters in width, as shown in Figure 2. Therefore, data transmission suffers from large delay, unbalanced energy consumption, and number of retransmission because of the unreliability of wireless links.Figure 2
The haulage roadway.Figure3 shows the architecture of line topology used in the haulage roadway which contains many sensor nodes, one sink node, and one mine communication switch in the underground coalmine. In the data collection stage, the sensor node transfers sensed data (e.g., Gas concentration and CO concentration) to the sink node through multihop. All of the data are sent to the mine communication switch and are then transferred to the switch, certain types of servers, and routers on the ground. Finally, the relevant department obtains production information. On the contrary, code packets are transmitted from sink node to sensor nodes through broadcasting in the network upgrade stage.Figure 3
Architecture of line topology in the haulage roadway.The operation of network system is broken into rounds, and each node in network has a probability ofλ to generate a packet in each data collection round. We consider a static wireless sensor network where sensor nodes do not move once deployed. The energy of common node is limited, while the energy of the sink node is infinite. Since the event production rate of node that we considered is sparse, congestions will not occur during the process of packets’ routing to the sink node. Therefore, we do not take account of the queue waiting delay of packets within nodes [33].Once the network needs to be upgraded, sink node will send program code packets to its nearby nodes through broadcasting. If the nearby nodes can successfully receive the code packet, they will also broadcast the packet to their nearby sensor nodes and forth until all nodes in network receive the code packet to carry out the upgrade process. In order to save energy, nodes will broadcast its received packet only once for avoiding too much duplicate packet retransmission. And in order to avoid the back-transmission of code packet, every node will add its ID number to the header of the code packet before broadcasting, and every time a node receives a packet, it will determine whether to broadcast it or not by comparing its own ID to the ID stored in the header of the packet. If its own ID is bigger, then this code packet will be discarded. As the radio links between nodes are imperfect, failures of transmissions always exist in the process of code packet broadcast, which will be studied in later Section4.1. However, as EeB lays special stress on designing a better broadcast algorithm, in data collection period, the packet transmission between any two nodes will be assumed as failure-free for the convenience of calculating the residual energy of sensor nodes.


## 3.2. Energy Consumption Model

In this paper, we adopt the topical energy consumption model [4, 8]; that is, in wireless communications, the energy consumption of packet transmission is divided into two parts, the power consumption of the power amplifier, which can be controlled, and other circuits power consumption, while the energy used for reception is mainly the circuits power consumption. The realistic node energy model obtained from measurement results can be found in [34]. The transmission energy consumption, ωt, follows (1) and energy consumption for reception, ωr, follows (2).(1)ωt,1d=lEelec+lεfsd2,ifd<d0ωt,2d=lEelec+lεampd4,ifd≥d0,(2)ωr=lEelec,where Eelec represents the transmitting circuit loss; both the free-space (d2 power loss) and the multipath fading (d4 power loss) channel models are used; if the transmission distance is less than the threshold d0, the power amplifier loss is based on free-space model, while if the transmission distance is larger than or equal to the threshold d0, then the multipath attenuation model is used; εfs and εamp are the energy required by power amplification in the two models; l is the number of bits in a packet. The above parameter settings are given in Table 1, as adopted in [1, 4, 6, 8]. And for the convenience of readers to understand this paper, Notations Section summarizes the notations used in this paper.Table 1
Network parameters.
Symbol Description Value d 0 Threshold distance (m) 87 r s Sensing range (m) 15 E e l e c Transmitting circuit loss (nJ/bit) 50 e f s Power amplification for the free space (pJ/bit/m2) 10 e a m p Power amplification for the multipath fading (pJ/bit/m4) 0.0013 E i n i Initial energy (J) 0.5


## 3.3. Problem Statements

Improving the QoS of broadcast is a problem of multiple targets optimization. Some definitions are given to clearly describe the study objects of network we are trying to improve in this paper.Definition 1.
Network Upgrade Delay is denoted asDNUD. DNUD refers to the time duration between the generation of program code packet in the sink node and the packet to be transmitted to all nodes in network through broadcasting. Let Tsink stand for the time instant that code packet is generated in the sink node and Tlast present the time instant when the last node receives the code packet; then the Network Upgrade Delay minimization can be expressed as(3)min⁡DNUD=min⁡Tlast-Tsink.Definition 2.
Network upgrade reliability is denoted asϕNUR. It should be guaranteed, which means it should be higher than or at least equal to the minimum reliability, ℘, required by applications. Let βi stand for the broadcasting reliability of the packet at the ith hop of multihop routing from sink node to source node; then network upgrade reliability can be expressed as(4)ϕNUR=∏i∈route  pathβi≥℘.Definition 3.
Network lifetime is denoted asl. l depends on the energy consumption speed of nodes. The energy consumption of node ςi consists of (a) communication energy; for instance, Etc and Erc are used for transmitting and receiving data packets in data collection period, (b) upgrade energy consumption, Etu and Eru, which are used for transmitting and receiving program code packets in network upgrade period. Since the death time of the first node is defined as the lifetime [11], maximizing the lifetime is to minimize the energy consumption speed of the first node, which is expressed as the following formula, where Eini represents the initial energy of node Θi:(5)max⁡l=max⁡min1≤i≤nEiniEtc+Erc+Etu+Eru.Definition 4.
Effective energy utilization rate is denoted asξe. ξe refers to the ratio of energy efficiently utilized and the total energy in the network which can be expressed as a formula below. Our target is to maximize the energy utilization of the whole network. ei in the formula stands for the energy consumption of node Θi:(6)maxξe=max⁡∑1≤i≤nei∑1≤i≤nEini.Obviously, the goal of EeB is to minimize the Network Upgrade Delay (NUD) and maximize the network upgrade reliability,ϕNUR, network life, l, and effective energy utilization, ξe, which can be summarized as follows:(7)MinimizeDNUD,MaxmizeϕNUR,l,ξe,min⁡DNUD=min⁡Tlast-TsinkϕNUR=∏i∈route  pathβi≥℘max⁡l=max⁡min1≤i≤n⁡EiniEtc+Erc+Etu+Erumax⁡ξe=max⁡∑1≤i≤nei∑1≤i≤nEini.In addition, the optimization goal is transformed into an optimization problem of energy consumption and the quality of broadcasting code packets during network upgrade stage in the case of constraint lifetime. The problem is characterized as a trade-off between energy consumption and the nodes’ broadcasting radius [35].


## 4. Main Design of EeB

In this section, Energy-efficient Broadcast (EeB) scheme will be proposed. Firstly, the packet reception probability model of EeB scheme will be introduced and then the algorithm details will be described.


### 4.1. Packet Reception Probability Model

The signal propagation in wireless communication is affected by various environment factors, such as obstacles, signal reflecting surface, and scatterers, which cause uncertainty in the quantification of the reception signal strength. Stojmenovic et al. [36] drove an approximate and accurate probability ϕd for receiving a packet successfully as a function of distance d between two nodes by applying the log normal shadow fading model to represent a realistic physical layer. They provided a general relationship between the packet reception probability of receiver, ϕd, and communication distance, d, and path loss coefficient, Lr, which can be summarized as the following equation:(8)ϕd=1-0.5dRqLr,d<R0.52-dRqLr,R≤d<2R0,d≥2R,where q is a coefficient which depends on the length of the packet [36].They pointed out that the packet reception probability remainsϕd=0.5 constantly when the communication distance is equivalent to the transmission radius. Meanwhile, Stojmenovic et al. confirmed the correction of the above probability model through series of experiments and drew such conclusion: when the length of the packet l=120bits, Lr∈2,6, and q=2, the error of the packet reception probability calculated by the above model is within 4% compared with the actual probability.The above model is adopted in this paper to quantify the packet reception probability of receiver, and some parameters are set asq=2 and Lr∈2,6. Suppose the transmission radius ratio δ=R/d. The relation between ϕd, Lr, and δ is depicted in Figure 4. For any Lr, ϕd=0 when δ≤0.5, and we have ϕd=0.5 when δ=1. That is, the probability that a sensor node can successfully receive a packet is 0.5 when the transmission radius of node is equivalent to the distance between the sender and receiver node. When the distance is larger or equal to two times transmission radius, the reception probability becomes 0.Figure 4
The expected packet reception probability versus transmission radius ratios.


### 4.2. EeB Algorithm

In this subsection, we propose EeB algorithm which addresses the selection of broadcasting radius of nodes according to their residual energy, as shown in Algorithm1.Algorithm 1:EeB for enlarging broadcasting radius of nodes.
(1) Initialize: (1) Network performs data collection for G rounds. (1)      (2) Network upgrades, i.e., the sink node broadcasts program code packets, so do other common nodes. (3)      (3) Each node stores its energy consumption for data collection, ΔEc, and code packet broadcast, Eoldu, respectively. (4) For node Θk-1 to node Θ0  Do (5)  Calculate node’s residual energy, ΔEc, using Eq. (26). (6)  Set node’s new broadcast energy consumption Enewu at 0. (7)  While node’s Enewu is less than ΔEc+Eoldu  Do (8)   Enlarge node’s broadcast radius by ΔR. (9)   Calculate node’s Enewu using Eq. (14). (10)  End while (11)  Reduce node’s broadcast radius by ΔR. // Make sure the broadcast energy cost is less than the residual energy. (12) End for (13) Output the broadcasting radius of every node, which can improve the network upgrade delay and reliability while the network lifetime can be guaranteed.First, network performs data collection forG rounds, where G may vary in different situations to finish an event detection task. In each round, all nodes have the probability of λ to generate an event which should be delivered to the sink node by one node each hop. After that, the network upgrade will be conducted using SBR, where all nodes use the same broadcasting radius to transmit the code packets. The broadcasting radius used in SBR is big enough to just meet the minimum reliability constraint of applications, based on which we enlarge the broadcasting radius of nodes in far-sink region to further improve the reliability. The original energy consumption for the above two steps (denoted as Ec and Eoldu, resp.) will be stored in each node. Finally, every node tries to enlarge its broadcasting radius by ΔR each time and calculate its new energy consumption for broadcasting; if the increased broadcast energy exceeds its residual energy, which causes a decline in network lifetime, then the radius will be reduced by ΔR; if not, the above process will be performed again. The increment ΔR actually determines how fast the radius increases. The bigger of the ΔR, the faster of the algorithm, but more residual energy will remain unused. Whereas a small ΔR can achieve a better energy utilization efficiency, the running time of the algorithm is more.


## 4.1. Packet Reception Probability Model

The signal propagation in wireless communication is affected by various environment factors, such as obstacles, signal reflecting surface, and scatterers, which cause uncertainty in the quantification of the reception signal strength. Stojmenovic et al. [36] drove an approximate and accurate probability ϕd for receiving a packet successfully as a function of distance d between two nodes by applying the log normal shadow fading model to represent a realistic physical layer. They provided a general relationship between the packet reception probability of receiver, ϕd, and communication distance, d, and path loss coefficient, Lr, which can be summarized as the following equation:(8)ϕd=1-0.5dRqLr,d<R0.52-dRqLr,R≤d<2R0,d≥2R,where q is a coefficient which depends on the length of the packet [36].They pointed out that the packet reception probability remainsϕd=0.5 constantly when the communication distance is equivalent to the transmission radius. Meanwhile, Stojmenovic et al. confirmed the correction of the above probability model through series of experiments and drew such conclusion: when the length of the packet l=120bits, Lr∈2,6, and q=2, the error of the packet reception probability calculated by the above model is within 4% compared with the actual probability.The above model is adopted in this paper to quantify the packet reception probability of receiver, and some parameters are set asq=2 and Lr∈2,6. Suppose the transmission radius ratio δ=R/d. The relation between ϕd, Lr, and δ is depicted in Figure 4. For any Lr, ϕd=0 when δ≤0.5, and we have ϕd=0.5 when δ=1. That is, the probability that a sensor node can successfully receive a packet is 0.5 when the transmission radius of node is equivalent to the distance between the sender and receiver node. When the distance is larger or equal to two times transmission radius, the reception probability becomes 0.Figure 4
The expected packet reception probability versus transmission radius ratios.


## 4.2. EeB Algorithm

In this subsection, we propose EeB algorithm which addresses the selection of broadcasting radius of nodes according to their residual energy, as shown in Algorithm1.Algorithm 1:EeB for enlarging broadcasting radius of nodes.
(1) Initialize: (1) Network performs data collection for G rounds. (1)      (2) Network upgrades, i.e., the sink node broadcasts program code packets, so do other common nodes. (3)      (3) Each node stores its energy consumption for data collection, ΔEc, and code packet broadcast, Eoldu, respectively. (4) For node Θk-1 to node Θ0  Do (5)  Calculate node’s residual energy, ΔEc, using Eq. (26). (6)  Set node’s new broadcast energy consumption Enewu at 0. (7)  While node’s Enewu is less than ΔEc+Eoldu  Do (8)   Enlarge node’s broadcast radius by ΔR. (9)   Calculate node’s Enewu using Eq. (14). (10)  End while (11)  Reduce node’s broadcast radius by ΔR. // Make sure the broadcast energy cost is less than the residual energy. (12) End for (13) Output the broadcasting radius of every node, which can improve the network upgrade delay and reliability while the network lifetime can be guaranteed.First, network performs data collection forG rounds, where G may vary in different situations to finish an event detection task. In each round, all nodes have the probability of λ to generate an event which should be delivered to the sink node by one node each hop. After that, the network upgrade will be conducted using SBR, where all nodes use the same broadcasting radius to transmit the code packets. The broadcasting radius used in SBR is big enough to just meet the minimum reliability constraint of applications, based on which we enlarge the broadcasting radius of nodes in far-sink region to further improve the reliability. The original energy consumption for the above two steps (denoted as Ec and Eoldu, resp.) will be stored in each node. Finally, every node tries to enlarge its broadcasting radius by ΔR each time and calculate its new energy consumption for broadcasting; if the increased broadcast energy exceeds its residual energy, which causes a decline in network lifetime, then the radius will be reduced by ΔR; if not, the above process will be performed again. The increment ΔR actually determines how fast the radius increases. The bigger of the ΔR, the faster of the algorithm, but more residual energy will remain unused. Whereas a small ΔR can achieve a better energy utilization efficiency, the running time of the algorithm is more.


## 5. Theoretical Evaluation of EeB

### 5.1. Energy Consumption in Data Collection Stage

In this subsection, we first calculate the data load of nodes at different distances from the sink node and then provide the nodes with definite energy consumption in one round of data collection.From Figure1 we can see that for the node whose ID equals i, it has to receive the data packets generated by the nodes whose ID are less than i and transmit the data packets generated by nodes whose ID are less than or equal to i, that is, plus the packet generated by itself. Therefore, the total amount of packets that node Θi needs to receive and transmit in one data collection round is i and i+1. Since the data generation rate is λ, the data loads should be multiplied by λ; that is,(9)ζri=iλ,ζti=i+1λ.Corollary 5.
In EeB, for the node whose ID equalsi, its total energy consumption, denoted as Eic, in one round of data collection can be calculated as(10)Eic=Ei,1c+Ei,2cEi,1c=ζriωr+ζtiωt,1,ifr≤d0Ei,2c=ζriωr+ζtiωt,2,ifr>d0ωt,1=lEelec+lεfsr2,ωt,2=lEelec+lεampr4ωr=lEelec.Proof.
For the node whose ID isi, the data load it undertakes is ζti. Once a node receives a data packet, it will transmit the packet to its next node, so if the distance between two adjacent nodes is r≤d0, the energy consumed for transmitting one packet is ωt,1=lEelec+lεfsr2, while if r>d0, the energy will be ωt,2=lEelec+lεampr4. Hence, the total energy used for a node to transmit data packets in data collection period is(11)Et,1i=ζtiωt,1,ifr≤d0Et,2i=ζtiωt,2,ifr>d0.
The energy spent for a node to receive one packet is constantlyωr=lEelec, and a node does not need to receive its own data packet, so the receiving data load is ζri=ζti-1. Therefore, the total energy consumed for a node to receive data packets in a data collection round is(12)Eri=ζriωr.Figure5 is given to show the energy consumption of nodes for data collection versus different distances between two adjacent nodes. Obviously, the node with bigger ID consumes more energy for undertaking packets generated by nodes with smaller ID, which causes unbalance on the energy utility. And it is more uneven when r is bigger.Figure 5
Data collection energy consumption of node.


### 5.2. Energy Consumption in Nodes Upgrade Stage

In this subsection, we analyse the energy usage conditions of nodes in network upgrade stage.Theorem 6.
In network upgrade stage, nodes will broadcast their received code packet only once; therefore, all nodes have the same receiving and transmitting packet load except for nodes in the front and tail of the linear network. We give the calculation of data load of the middle nodes, which take up almost the entire network, and several front and tail nodes can be computed in the same manner.(13)ξrR=2∑k=1R/r1-0.5krRqLr+2∑k=R/r+12R/r0.52-krRqLr,ξtR=2·2Rr,if  node  receives  a  packet0,if  node  fails  to  receive  a  packet,where R is the broadcasting radius of nodes.Proof.
In Section4.2, we know that it is possible for a node, vi, to receive a code packet from another node, vj, if the distance between node vi and node vj is less than 2R. Hence, the total amount of nearby nodes that node vi can receive packet from is 2·2R/r. However, the reception probability from these 2·2R/r nodes should be divided into two kinds, specifically, for nodes whose distance, x, to node vi is less than R, the probability is 1-0.5x/RqLr, while if the distance is within R,2R, then the probability becomes 0.52-x/RqLr.
For the transmitting data load, if nodevi can successfully receive a code packet, it will broadcast the packet to its 2·2R/r nearby nodes, and as node vi will broadcast the packet only once, the data load should be 2·2R/r, while if node vi fails to receive a code packet, the transmitting data load is 0.Corollary 7.
For a node whose packet transmission radius isR m, the energy consumption, denoted as ERu, of it in network upgrade stage can be calculated as(14)ERu=ER,1u+ER,2uER,1u=ξrRωr+∑k=1zωt,1kr,zr≤d0≤z+1rER,2u=ξrRωr+∑k=z+1ξtωt,2kr,ifkr>d0ωt,1kr=lEelec+lεfskr2ωt,2kr=lEelec+lεampkr4ωr=lEelec.The proof of Corollary7 is the same as Corollary 5.As shown in Figure6, the simulative results of broadcast energy consumption fit the numerical results well, and several nodes in the front and tail of network have lower energy consumption because the number of their neighbor nodes is less than 2·2R/r.Figure 6
Upgrade energy consumption of node whenr=40m.


### 5.3. Network Upgrade Reliability

To clearly show how the network upgrades, Figure7 depicts the process of broadcasting program code packets in linear network. Each node broadcasts its received code packet to the nearby nodes within its communication range (<2R). In order to easily study the delay and reliability of code packet propagation, we divide all nodes in linear network into 2R/r-τ classes, where τ is a small enough decimal number. If the ID of a node satisfies mod(ID/x)=0, where 1≤x≤2R/r-τ, then we say this node belongs to the node set of class x. The class set of nodes can be expressed as x∣mod(ID/2R/r-τ)+1=x. The practical meaning of x is the number of nodes that a packet will go through by one hop in broadcast stage, which is called one-hop forwarding distance. For instance, x=1 means the code packet is transmitted from sink node to source node one by one, x=2 means two by two, and so forth. Note that a node can simultaneously belong to more than one class set; for example, a node whose ID is an even number belongs to class 2 set, while it also belongs to the class 1 nodes set.Figure 7
The process of broadcasting program code packets.Theorem 8.
The probability that a code packet can be transmitted successfully between two nodes of the same class, sayx, can be calculated as(15)px=1-∏i=12R/r-x1-ϕ2Rr-ir1≤x=modIDx2R/r-τ+1≤2Rr-τ,where τ is a decimal which is small enough. Subtracting τ is because when 2R is exactly an integral multiple of r, the packet reception probability of number 2R/r node is 0; see Section 4.1, which results in that infinite hops are needed to transmit a code packet from the sink node to the source node, so this case should be excluded.Proof.
All nodes in network are divided into2R/r-τ classes. During the code packets broadcast stage, nodes of different classes have different packet reception probabilities in each broadcast hop. For a class x node, say Θx, it can receive the code packets from another node Θi whose distance to it is less than or equal to 2R/r-xr; thus, its final packet reception probability should be(16)px=1-∏i=12R/r-x1-ϕ2Rr-ir,where the packets received from the nodes of smaller ID are excluded.
An example for better explaining the above idea is given in Figure7. When 2R/r=4, nodes are divided into 3 classes. Suppose Θi+4, Θi+5, and Θi+6 are classes 3, 2, and 1 node, respectively, and they simultaneously broadcast their received packets. Packets from Θi+4 can reach Θi+1, which is also a class 3 node, and similarly, the farthest node that the other two nodes can reach is the one with the same class. In this broadcast hop, node Θi+3 (x=1) has three chances to receive packets from three nodes with larger ID, that is, Θi+4, Θi+5, and Θi+6. While Θi+2x=2 can only receive packets from two nodes, that is, Θi+4 and Θi+5, and so on. In the next broadcasting hop, node Θi+2 will have a new chance to receive code packet from node Θi+3, making it become a class 1 node. Similarly, node Θi+1x=3 becomes a class 2 node, and a new node Θi-2 will become a class 3 node for having one chance to receive packet from node Θi+1.The packet reception probability of packet delivered by nodes of the same class is shown in Figure8 indicating that nodes have higher reception probabilities with the increment of broadcasting radius. And the small-class nodes have relatively high reliabilities for having short transmission distances.Figure 8
Packet reception probability of different-class nodes whenr=30m.


### 5.4. Network Upgrade Delay

We define the average transmission hops needed to transmit the program code packets from sink node to source node through nodes of the same classes as Network Upgrade Delay (NUD). Obviously, the NUD describes how fast the network can be thoroughly upgraded by a certain class of nodes.Theorem 9.
For the classx nodes, their Network Upgrade Delay (NUD) can be calculated as(17)NUDx=L/xrpx,where px can be calculated by (15).Proof.
For nodes of classx, L/xr broadcast hops are needed to transmit code packets from sink node to source node if they do not take the reception failure into consideration. And one-hop reception reliability of px yields the average broadcast hops as(18)NUDx=L/xrpx.Figure9 is given to show the NUD of nodes with different r and R settings. After eliminating some classes of extreme large NUD, we can see that middle-class nodes have relative small NUD compared with nodes of smaller and bigger classes. And it is easy to explain the above phenomenon: although small-class nodes have high packet reception reliability, their one-hop forwarding distance is too short, so more hops are needed; while big-class nodes have long one-hop forwarding distance, failure of packet reception always exists, so more hops are also needed. Therefore, there must be a trade-off between them.Figure 9
NUD of different-class nodes whenr=30m.In addition, to clearly show the exact value of NUD of different-class nodes, we give Figure10 by zooming in Figure 9, where the shortest NUD of different-class nodes are circled. The larger the broadcasting radius is, the less the broadcast hops are needed for all nodes in network to receive code packets, which means the Network Upgrade Delay is shorter.Figure 10
NUD of different-class nodes whenr=30m.In our scheme, we try to enlarge the broadcasting radius of the far-sink nodes, and generally, the further a node is from the sink node, the larger the radius it has. Since different nodes have different broadcasting radii, all nodes in network cannot be simply divided into2R/r-τ classes. To obtain the actual value of NUD of EeB, we need to calculate the one-hop broadcasting delay.Theorem 10.
For a nodeΘi, suppose its broadcasting radius is Rm, then its average one-hop broadcasting delay can be obtained as follows:(19)dbR=1pxsubject  tomin⁡1x·px1≤x≤2Rr-τ,where px can be calculated by (15), and x is the one-hop forwarding distance, which equals the difference of the ID between node Θi and Θj whose ID meets i-j=x.Proof.
The code packets broadcasted from nodeΘi can be received by 2R/r-τ nodes on its left side, and these nodes have different packet reception probabilities which can be calculated by (15). The average one-hop broadcasting delay is the hops needed for node Θj to successfully receive a code packet from node Θi, where node Θj is supposed to be the node which can deliver the code packet to the source node as quick as possible making a minimal NUD. Therefore the one-hop broadcasting delay should balance the one-hop forwarding distance and packet reception probability. Since the reception probability is px, the hop count is 1/px.Figure11 is given to show the average one-hop broadcasting delay, from which we can see nodes with different broadcasting radii having very similar one-hop delay. Note that a low one-hop broadcasting delay does not mean a low NUD because the number of broadcasting hops is another important factor of NUD. Since in EeB nodes of different distances to the sink node have different broadcasting radii, combining them, we can get the actual value of NUD of EeB, so the following theorem is deduced.Figure 11
Average one-hop broadcasting delay.Theorem 11.
Suppose a linear network is composed ofk+1 sensor noses and the distance between any two adjacent nodes is rm, then in EeB, the Network Upgrade Delay (NUD) can be calculated as(20)NUDQIBk+1=∑i=xskdbRk+1-i,i=i+xk+1-i,where dbRk stands for the expectation one-hop delay of the packet at the node with ID = k, whose broadcasting radius is Rk, xk denotes the selected x by the node with ID = k using (19), and s denotes the sink node vs especially.Proof.
Since nodes have different packet broadcasting radii, the actual value of NUD of EeB is the sum of each different one-hop delay, and each one-hop forwarding distance is also different but can be determined by (19). In broadcast operation, packets pass through several nodes each hop instead of one by one, so we use i=i+xk+1-i to show the route path of packets.Figure12 shows the Network Upgrade Delay. The index of x-axis (original broadcasting radius) means the common radius adopted by all nodes in SBQ, which is also the start point for EeB to increase.Figure 12
Network Upgrade Delay.Theorem 12.
In linear network, the weighted one-hop broadcasting delay (denoted asDwk+1), which reflects the universality of the reduced delay with EeB approach, can be calculated as(21)Dwk+1=1k+1·∑n=0kdbRk,where the variables are the same as the corresponding items in Theorem 11.Proof.
The total number of nodes in linear network isk+1; therefore for a node Θi, the one-hop broadcasting delay of the network upgrade can be expressed as 1/k+1dbRi. Integrally, to the entire linear network, the weighted delay of one-hop code packet broadcast is as follows:(22)Dwk=1k+1·∑n=0kdbRk.Figure13 is given to show the weighted one-hop broadcasting delay of network.Figure 13
Weighted one-hop broadcasting delay.


### 5.5. Energy Utilization Rate of Network

The innovation of EeB protocol is using the residual energy of far-sink nodes to enlarge their code packet broadcasting radius, by which the QoS of network update is improved as well as the energy utilization rate. In this subsection, we evaluate the performance of EeB in terms of the enhanced energy usage rate.Theorem 13.
In EeB protocol, the energy utilization rate of network containingk+1 sensor nodes can be calculated as(23)ξe=∑i=0kEic+Eiu∑i=0kEinii×100%,where Eic is the energy used for collecting sensed data and Eiu is spent in broadcasting code packets by node Θi whose initial energy is Einii.Proof.
According to Definition4 in Section 3.3, the energy utilization rate of network is the ratio of energy efficiently utilized and the total energy in the network. Each node has two parts of energy consumption, that is, collecting data and broadcasting code packets, respectively, so the above equation is obtained.Figure14 displays the situations of energy utilization rate when the network dies. It can be seen that, in EeB, at least 50% energy has been effectively utilized by sensor nodes, illustrating that a great energy efficiency has been made by EeB compared with SBR.Figure 14
Energy utilization rate of network.


### 5.6. Network Lifetime

In this subsection, we provide the calculation of network lifetime which can be maintained in EeB protocol because the increased energy for broadcasting code packets is always kept below or equal to the residual energy of nodes.Theorem 14.
Consider that the initial energy of each node in network isEini; in EeB, the lifetime (denoted as l) of network can be obtained as(24)l=EiniEmaxc+Emaxu,where Emaxc, Emaxu are the energy consumption of the node consuming the most energy in data collection stage and network update stage, respectively.Proof.
The node consuming the most energy dies first, and its energy consumption can be calculated asEmaxc+Emaxu. Since the death time of the first node is defined as the lifetime of network [11], the lifetime of network can be obtained by(25)l=EiniEmaxc+Emaxu.


## 5.1. Energy Consumption in Data Collection Stage

In this subsection, we first calculate the data load of nodes at different distances from the sink node and then provide the nodes with definite energy consumption in one round of data collection.From Figure1 we can see that for the node whose ID equals i, it has to receive the data packets generated by the nodes whose ID are less than i and transmit the data packets generated by nodes whose ID are less than or equal to i, that is, plus the packet generated by itself. Therefore, the total amount of packets that node Θi needs to receive and transmit in one data collection round is i and i+1. Since the data generation rate is λ, the data loads should be multiplied by λ; that is,(9)ζri=iλ,ζti=i+1λ.Corollary 5.
In EeB, for the node whose ID equalsi, its total energy consumption, denoted as Eic, in one round of data collection can be calculated as(10)Eic=Ei,1c+Ei,2cEi,1c=ζriωr+ζtiωt,1,ifr≤d0Ei,2c=ζriωr+ζtiωt,2,ifr>d0ωt,1=lEelec+lεfsr2,ωt,2=lEelec+lεampr4ωr=lEelec.Proof.
For the node whose ID isi, the data load it undertakes is ζti. Once a node receives a data packet, it will transmit the packet to its next node, so if the distance between two adjacent nodes is r≤d0, the energy consumed for transmitting one packet is ωt,1=lEelec+lεfsr2, while if r>d0, the energy will be ωt,2=lEelec+lεampr4. Hence, the total energy used for a node to transmit data packets in data collection period is(11)Et,1i=ζtiωt,1,ifr≤d0Et,2i=ζtiωt,2,ifr>d0.
The energy spent for a node to receive one packet is constantlyωr=lEelec, and a node does not need to receive its own data packet, so the receiving data load is ζri=ζti-1. Therefore, the total energy consumed for a node to receive data packets in a data collection round is(12)Eri=ζriωr.Figure5 is given to show the energy consumption of nodes for data collection versus different distances between two adjacent nodes. Obviously, the node with bigger ID consumes more energy for undertaking packets generated by nodes with smaller ID, which causes unbalance on the energy utility. And it is more uneven when r is bigger.Figure 5
Data collection energy consumption of node.


## 5.2. Energy Consumption in Nodes Upgrade Stage

In this subsection, we analyse the energy usage conditions of nodes in network upgrade stage.Theorem 6.
In network upgrade stage, nodes will broadcast their received code packet only once; therefore, all nodes have the same receiving and transmitting packet load except for nodes in the front and tail of the linear network. We give the calculation of data load of the middle nodes, which take up almost the entire network, and several front and tail nodes can be computed in the same manner.(13)ξrR=2∑k=1R/r1-0.5krRqLr+2∑k=R/r+12R/r0.52-krRqLr,ξtR=2·2Rr,if  node  receives  a  packet0,if  node  fails  to  receive  a  packet,where R is the broadcasting radius of nodes.Proof.
In Section4.2, we know that it is possible for a node, vi, to receive a code packet from another node, vj, if the distance between node vi and node vj is less than 2R. Hence, the total amount of nearby nodes that node vi can receive packet from is 2·2R/r. However, the reception probability from these 2·2R/r nodes should be divided into two kinds, specifically, for nodes whose distance, x, to node vi is less than R, the probability is 1-0.5x/RqLr, while if the distance is within R,2R, then the probability becomes 0.52-x/RqLr.
For the transmitting data load, if nodevi can successfully receive a code packet, it will broadcast the packet to its 2·2R/r nearby nodes, and as node vi will broadcast the packet only once, the data load should be 2·2R/r, while if node vi fails to receive a code packet, the transmitting data load is 0.Corollary 7.
For a node whose packet transmission radius isR m, the energy consumption, denoted as ERu, of it in network upgrade stage can be calculated as(14)ERu=ER,1u+ER,2uER,1u=ξrRωr+∑k=1zωt,1kr,zr≤d0≤z+1rER,2u=ξrRωr+∑k=z+1ξtωt,2kr,ifkr>d0ωt,1kr=lEelec+lεfskr2ωt,2kr=lEelec+lεampkr4ωr=lEelec.The proof of Corollary7 is the same as Corollary 5.As shown in Figure6, the simulative results of broadcast energy consumption fit the numerical results well, and several nodes in the front and tail of network have lower energy consumption because the number of their neighbor nodes is less than 2·2R/r.Figure 6
Upgrade energy consumption of node whenr=40m.


## 5.3. Network Upgrade Reliability

To clearly show how the network upgrades, Figure7 depicts the process of broadcasting program code packets in linear network. Each node broadcasts its received code packet to the nearby nodes within its communication range (<2R). In order to easily study the delay and reliability of code packet propagation, we divide all nodes in linear network into 2R/r-τ classes, where τ is a small enough decimal number. If the ID of a node satisfies mod(ID/x)=0, where 1≤x≤2R/r-τ, then we say this node belongs to the node set of class x. The class set of nodes can be expressed as x∣mod(ID/2R/r-τ)+1=x. The practical meaning of x is the number of nodes that a packet will go through by one hop in broadcast stage, which is called one-hop forwarding distance. For instance, x=1 means the code packet is transmitted from sink node to source node one by one, x=2 means two by two, and so forth. Note that a node can simultaneously belong to more than one class set; for example, a node whose ID is an even number belongs to class 2 set, while it also belongs to the class 1 nodes set.Figure 7
The process of broadcasting program code packets.Theorem 8.
The probability that a code packet can be transmitted successfully between two nodes of the same class, sayx, can be calculated as(15)px=1-∏i=12R/r-x1-ϕ2Rr-ir1≤x=modIDx2R/r-τ+1≤2Rr-τ,where τ is a decimal which is small enough. Subtracting τ is because when 2R is exactly an integral multiple of r, the packet reception probability of number 2R/r node is 0; see Section 4.1, which results in that infinite hops are needed to transmit a code packet from the sink node to the source node, so this case should be excluded.Proof.
All nodes in network are divided into2R/r-τ classes. During the code packets broadcast stage, nodes of different classes have different packet reception probabilities in each broadcast hop. For a class x node, say Θx, it can receive the code packets from another node Θi whose distance to it is less than or equal to 2R/r-xr; thus, its final packet reception probability should be(16)px=1-∏i=12R/r-x1-ϕ2Rr-ir,where the packets received from the nodes of smaller ID are excluded.
An example for better explaining the above idea is given in Figure7. When 2R/r=4, nodes are divided into 3 classes. Suppose Θi+4, Θi+5, and Θi+6 are classes 3, 2, and 1 node, respectively, and they simultaneously broadcast their received packets. Packets from Θi+4 can reach Θi+1, which is also a class 3 node, and similarly, the farthest node that the other two nodes can reach is the one with the same class. In this broadcast hop, node Θi+3 (x=1) has three chances to receive packets from three nodes with larger ID, that is, Θi+4, Θi+5, and Θi+6. While Θi+2x=2 can only receive packets from two nodes, that is, Θi+4 and Θi+5, and so on. In the next broadcasting hop, node Θi+2 will have a new chance to receive code packet from node Θi+3, making it become a class 1 node. Similarly, node Θi+1x=3 becomes a class 2 node, and a new node Θi-2 will become a class 3 node for having one chance to receive packet from node Θi+1.The packet reception probability of packet delivered by nodes of the same class is shown in Figure8 indicating that nodes have higher reception probabilities with the increment of broadcasting radius. And the small-class nodes have relatively high reliabilities for having short transmission distances.Figure 8
Packet reception probability of different-class nodes whenr=30m.


## 5.4. Network Upgrade Delay

We define the average transmission hops needed to transmit the program code packets from sink node to source node through nodes of the same classes as Network Upgrade Delay (NUD). Obviously, the NUD describes how fast the network can be thoroughly upgraded by a certain class of nodes.Theorem 9.
For the classx nodes, their Network Upgrade Delay (NUD) can be calculated as(17)NUDx=L/xrpx,where px can be calculated by (15).Proof.
For nodes of classx, L/xr broadcast hops are needed to transmit code packets from sink node to source node if they do not take the reception failure into consideration. And one-hop reception reliability of px yields the average broadcast hops as(18)NUDx=L/xrpx.Figure9 is given to show the NUD of nodes with different r and R settings. After eliminating some classes of extreme large NUD, we can see that middle-class nodes have relative small NUD compared with nodes of smaller and bigger classes. And it is easy to explain the above phenomenon: although small-class nodes have high packet reception reliability, their one-hop forwarding distance is too short, so more hops are needed; while big-class nodes have long one-hop forwarding distance, failure of packet reception always exists, so more hops are also needed. Therefore, there must be a trade-off between them.Figure 9
NUD of different-class nodes whenr=30m.In addition, to clearly show the exact value of NUD of different-class nodes, we give Figure10 by zooming in Figure 9, where the shortest NUD of different-class nodes are circled. The larger the broadcasting radius is, the less the broadcast hops are needed for all nodes in network to receive code packets, which means the Network Upgrade Delay is shorter.Figure 10
NUD of different-class nodes whenr=30m.In our scheme, we try to enlarge the broadcasting radius of the far-sink nodes, and generally, the further a node is from the sink node, the larger the radius it has. Since different nodes have different broadcasting radii, all nodes in network cannot be simply divided into2R/r-τ classes. To obtain the actual value of NUD of EeB, we need to calculate the one-hop broadcasting delay.Theorem 10.
For a nodeΘi, suppose its broadcasting radius is Rm, then its average one-hop broadcasting delay can be obtained as follows:(19)dbR=1pxsubject  tomin⁡1x·px1≤x≤2Rr-τ,where px can be calculated by (15), and x is the one-hop forwarding distance, which equals the difference of the ID between node Θi and Θj whose ID meets i-j=x.Proof.
The code packets broadcasted from nodeΘi can be received by 2R/r-τ nodes on its left side, and these nodes have different packet reception probabilities which can be calculated by (15). The average one-hop broadcasting delay is the hops needed for node Θj to successfully receive a code packet from node Θi, where node Θj is supposed to be the node which can deliver the code packet to the source node as quick as possible making a minimal NUD. Therefore the one-hop broadcasting delay should balance the one-hop forwarding distance and packet reception probability. Since the reception probability is px, the hop count is 1/px.Figure11 is given to show the average one-hop broadcasting delay, from which we can see nodes with different broadcasting radii having very similar one-hop delay. Note that a low one-hop broadcasting delay does not mean a low NUD because the number of broadcasting hops is another important factor of NUD. Since in EeB nodes of different distances to the sink node have different broadcasting radii, combining them, we can get the actual value of NUD of EeB, so the following theorem is deduced.Figure 11
Average one-hop broadcasting delay.Theorem 11.
Suppose a linear network is composed ofk+1 sensor noses and the distance between any two adjacent nodes is rm, then in EeB, the Network Upgrade Delay (NUD) can be calculated as(20)NUDQIBk+1=∑i=xskdbRk+1-i,i=i+xk+1-i,where dbRk stands for the expectation one-hop delay of the packet at the node with ID = k, whose broadcasting radius is Rk, xk denotes the selected x by the node with ID = k using (19), and s denotes the sink node vs especially.Proof.
Since nodes have different packet broadcasting radii, the actual value of NUD of EeB is the sum of each different one-hop delay, and each one-hop forwarding distance is also different but can be determined by (19). In broadcast operation, packets pass through several nodes each hop instead of one by one, so we use i=i+xk+1-i to show the route path of packets.Figure12 shows the Network Upgrade Delay. The index of x-axis (original broadcasting radius) means the common radius adopted by all nodes in SBQ, which is also the start point for EeB to increase.Figure 12
Network Upgrade Delay.Theorem 12.
In linear network, the weighted one-hop broadcasting delay (denoted asDwk+1), which reflects the universality of the reduced delay with EeB approach, can be calculated as(21)Dwk+1=1k+1·∑n=0kdbRk,where the variables are the same as the corresponding items in Theorem 11.Proof.
The total number of nodes in linear network isk+1; therefore for a node Θi, the one-hop broadcasting delay of the network upgrade can be expressed as 1/k+1dbRi. Integrally, to the entire linear network, the weighted delay of one-hop code packet broadcast is as follows:(22)Dwk=1k+1·∑n=0kdbRk.Figure13 is given to show the weighted one-hop broadcasting delay of network.Figure 13
Weighted one-hop broadcasting delay.


## 5.5. Energy Utilization Rate of Network

The innovation of EeB protocol is using the residual energy of far-sink nodes to enlarge their code packet broadcasting radius, by which the QoS of network update is improved as well as the energy utilization rate. In this subsection, we evaluate the performance of EeB in terms of the enhanced energy usage rate.Theorem 13.
In EeB protocol, the energy utilization rate of network containingk+1 sensor nodes can be calculated as(23)ξe=∑i=0kEic+Eiu∑i=0kEinii×100%,where Eic is the energy used for collecting sensed data and Eiu is spent in broadcasting code packets by node Θi whose initial energy is Einii.Proof.
According to Definition4 in Section 3.3, the energy utilization rate of network is the ratio of energy efficiently utilized and the total energy in the network. Each node has two parts of energy consumption, that is, collecting data and broadcasting code packets, respectively, so the above equation is obtained.Figure14 displays the situations of energy utilization rate when the network dies. It can be seen that, in EeB, at least 50% energy has been effectively utilized by sensor nodes, illustrating that a great energy efficiency has been made by EeB compared with SBR.Figure 14
Energy utilization rate of network.


## 5.6. Network Lifetime

In this subsection, we provide the calculation of network lifetime which can be maintained in EeB protocol because the increased energy for broadcasting code packets is always kept below or equal to the residual energy of nodes.Theorem 14.
Consider that the initial energy of each node in network isEini; in EeB, the lifetime (denoted as l) of network can be obtained as(24)l=EiniEmaxc+Emaxu,where Emaxc, Emaxu are the energy consumption of the node consuming the most energy in data collection stage and network update stage, respectively.Proof.
The node consuming the most energy dies first, and its energy consumption can be calculated asEmaxc+Emaxu. Since the death time of the first node is defined as the lifetime of network [11], the lifetime of network can be obtained by(25)l=EiniEmaxc+Emaxu.


## 6. Experimental Evaluation of EeB

In this section, we evaluate the experimental performance of Energy-efficient Broadcast (EeB) scheme in terms of energy consumption and NUD compared with SBR in which all nodes in network adopt the same broadcasting radius. OMNET++ is employed for simulative verification [37]. Without loss of generality, the network parameters are as follows: event generation probability of node in data collection period is λ = 0.1 and 40 nodes are randomly deployed in line with 1 sink node at one side; after G = 10 rounds of data collections the network upgrade will be conducted, and the increment of broadcasting radius is ΔR = 1 m. Other parameter settings will be particularly indicated.


### 6.1. Energy Consumption of EeB

Since the close-sink nodes have to undertake the packets generated by far-sink nodes, the close-sink nodes consume more energy, which causes unbalance of energy usage in network. The remaining energy of far-sink nodes is called residual energy, and the residual energy of node with ID =i, that is, Θi, can be calculated as(26)ΔEic=Emaxc-Eic,where Emaxc is the energy consumption of the node which consumes the most energy and Eic is the energy consumption of node Θi; both are during the data collection period.After enlarging the broadcasting radius, a node will have a new energy cost for broadcasting packets, and this increased broadcasting energy can be computed as(27)ΔEiu=Enew,iu-Eold,iu,where Enew,iu and Eold,iu are the new and old broadcasting energy cost of node Θi, respectively.Figures15 and 16 are given to show the simulative and theoretical energy consumption of nodes. We can see that the further the node is from the sink node, the more the residual energy it has, which can be used to enlarge its broadcasting radius. In EeB, node’s ΔEu always remains lower than its ΔEc, so the lifetime of network can be maintained. The corresponding enlarged broadcasting radius of nodes is shown in Figures 17 and 18, respectively.Figure 15
The increased energy used for enlarging broadcasting radius of node whenr=30m and R=60m.Figure 16
The increased energy used for enlarging broadcasting radius of node whenr=40m and R=60m.Figure 17
Broadcasting radius of node whenr=30m and R=60m.Figure 18
Broadcasting radius of node whenr=40m and R=60m.


### 6.2. Energy Utilization Rate of Network

Figure19 shows the simulative results of energy utilizations of network which are consistent with the previous theoretical analyses shown in Figure 14. The corresponding reduced ratio of energy usage rate is presented in Figure 20 illustrating that at least 20% of improvement has been made.Figure 19
Energy utilization rate of network.Figure 20
The average ratio of enhancing energy utilization rate.


### 6.3. Network Upgrade Delay

Figure21 presents the simulative results of the average one-hop broadcasting delay. Generally, the delay of EeB is lower than SBR which indicates the great efficiency of EeB in improving the network upgrade speed. The delays of middle nodes are relatively larger and vary a lot.Figure 21
Average one-hop broadcasting delay of node whenr=30m and R=60m.We also simulated the actual hops needed for the entire network to be upgraded, that is, the time duration from the generation of program code packet in sink node to all sensor nodes in network receiving code packets as shown in Figure22. The one hop of broadcast is defined as all sensor nodes owning code packets broadcast the packet to their nearby nodes. The delay of network upgrade is measured by the number of broadcasting hops. Specifically, the Network Upgrade Delay is enhanced by 14.8%–45.2% as shown in Figure 23. The bigger the transmission radius ratio (r/R), the larger the reducing rate.Figure 22
Simulative Network Upgrade Delay.Figure 23
The average ratio of reducing NUD.


### 6.4. Network Upgrade Reliability

The packet reception reliability is evaluated in this subsection. In the simulation, we recorded the average amount of code packets received by nodes in the network upgrade stage, and two experimental results are given in Figure24. In the first experiment, the average distance between two adjacent nodes was set to be 30 m and the broadcasting radius used in SBR was 60 m. Significantly more packets were successfully received, which demonstrates a higher reliability of EeB. Similar situation can be seen in the second experiment, where the average distance between two nodes was 40 m and the broadcasting radius remained the same. In case 2, many nodes failed to receive a packet, while EeB had a better performance.Figure 24
Average amount of packets received by node.


### 6.5. The Effect of Parameters

Parameterλ represents the probability of generating an event in every data collection round. It is determined by the number of nodes and detection targets of the network. In general, the bigger λ is, the more the energy the nodes consume for delivering more data packets in data collection stage, as shown in Figure 25. In this way, the parameter λ will affect the network lifetime. Figure 26 shows the different lifetime under different λ (0.08, 0.10, 0.12, and 0.15). The simulative results show that the greater λ, the shorter the network lifetime, which are consistent with the theoretical analyses. In addition, the lifetimes of EeB are almost the same as that of SBR, which indicates the original lifetime can be guaranteed in EeB.Figure 25
Data collection energy consumption versus differentλ.Figure 26
Network lifetime versus differentλ.


## 6.1. Energy Consumption of EeB

Since the close-sink nodes have to undertake the packets generated by far-sink nodes, the close-sink nodes consume more energy, which causes unbalance of energy usage in network. The remaining energy of far-sink nodes is called residual energy, and the residual energy of node with ID =i, that is, Θi, can be calculated as(26)ΔEic=Emaxc-Eic,where Emaxc is the energy consumption of the node which consumes the most energy and Eic is the energy consumption of node Θi; both are during the data collection period.After enlarging the broadcasting radius, a node will have a new energy cost for broadcasting packets, and this increased broadcasting energy can be computed as(27)ΔEiu=Enew,iu-Eold,iu,where Enew,iu and Eold,iu are the new and old broadcasting energy cost of node Θi, respectively.Figures15 and 16 are given to show the simulative and theoretical energy consumption of nodes. We can see that the further the node is from the sink node, the more the residual energy it has, which can be used to enlarge its broadcasting radius. In EeB, node’s ΔEu always remains lower than its ΔEc, so the lifetime of network can be maintained. The corresponding enlarged broadcasting radius of nodes is shown in Figures 17 and 18, respectively.Figure 15
The increased energy used for enlarging broadcasting radius of node whenr=30m and R=60m.Figure 16
The increased energy used for enlarging broadcasting radius of node whenr=40m and R=60m.Figure 17
Broadcasting radius of node whenr=30m and R=60m.Figure 18
Broadcasting radius of node whenr=40m and R=60m.


## 6.2. Energy Utilization Rate of Network

Figure19 shows the simulative results of energy utilizations of network which are consistent with the previous theoretical analyses shown in Figure 14. The corresponding reduced ratio of energy usage rate is presented in Figure 20 illustrating that at least 20% of improvement has been made.Figure 19
Energy utilization rate of network.Figure 20
The average ratio of enhancing energy utilization rate.


## 6.3. Network Upgrade Delay

Figure21 presents the simulative results of the average one-hop broadcasting delay. Generally, the delay of EeB is lower than SBR which indicates the great efficiency of EeB in improving the network upgrade speed. The delays of middle nodes are relatively larger and vary a lot.Figure 21
Average one-hop broadcasting delay of node whenr=30m and R=60m.We also simulated the actual hops needed for the entire network to be upgraded, that is, the time duration from the generation of program code packet in sink node to all sensor nodes in network receiving code packets as shown in Figure22. The one hop of broadcast is defined as all sensor nodes owning code packets broadcast the packet to their nearby nodes. The delay of network upgrade is measured by the number of broadcasting hops. Specifically, the Network Upgrade Delay is enhanced by 14.8%–45.2% as shown in Figure 23. The bigger the transmission radius ratio (r/R), the larger the reducing rate.Figure 22
Simulative Network Upgrade Delay.Figure 23
The average ratio of reducing NUD.


## 6.4. Network Upgrade Reliability

The packet reception reliability is evaluated in this subsection. In the simulation, we recorded the average amount of code packets received by nodes in the network upgrade stage, and two experimental results are given in Figure24. In the first experiment, the average distance between two adjacent nodes was set to be 30 m and the broadcasting radius used in SBR was 60 m. Significantly more packets were successfully received, which demonstrates a higher reliability of EeB. Similar situation can be seen in the second experiment, where the average distance between two nodes was 40 m and the broadcasting radius remained the same. In case 2, many nodes failed to receive a packet, while EeB had a better performance.Figure 24
Average amount of packets received by node.


## 6.5. The Effect of Parameters

Parameterλ represents the probability of generating an event in every data collection round. It is determined by the number of nodes and detection targets of the network. In general, the bigger λ is, the more the energy the nodes consume for delivering more data packets in data collection stage, as shown in Figure 25. In this way, the parameter λ will affect the network lifetime. Figure 26 shows the different lifetime under different λ (0.08, 0.10, 0.12, and 0.15). The simulative results show that the greater λ, the shorter the network lifetime, which are consistent with the theoretical analyses. In addition, the lifetimes of EeB are almost the same as that of SBR, which indicates the original lifetime can be guaranteed in EeB.Figure 25
Data collection energy consumption versus differentλ.Figure 26
Network lifetime versus differentλ.


## 7. Conclusion

In smart Industrial Wireless Sensor Networks (IWSNs) in which sensor nodes adopt a programmable technology, it is an important issue to upgrade the software of sensor nodes with high reliability and low latency. Generally, the network upgrade process starts when sink node propagates program code packets to its nearby nodes, and most of the existing studies focused on constructing spinning tree and reasonable dispatching time slot to reduce packet broadcasting delay and energy consumption of nodes. Different from them, the Energy-efficient Broadcast (EeB) scheme proposed in this paper adopts a novel strategy to enlarge the packet transmission radius of nodes in far-sink region using their residual energy caused in data collection period. Hence, the packet broadcasting reliability and delay can be simultaneously improved.The EeB scheme addresses efficiently using the residual energy; however, the broadcasting behaviour of sensor nodes is too naive. We simply assume that nodes broadcast their packets only once for avoiding too much duplicate packet retransmission. However, some redundant packets retransmissions still exist because nodes are unable to know whether or not their nearby nodes have received the codes packets, so they will do the unnecessary packet transmission. In further work, we are trying to fill this gap by redesigning the behaviour of nodes to make them appreciable.



---

*Source: 7538190-2017-01-23.xml*