Abstract
In wireless sensor networks (WSNs), many applications require a high reliability for the sensing data forwarding to sink. Due to the lossy nature of wireless channels, achieving reliable communication through multihop forwarding can be very challenging. Broadcast technology is an effective way to improve the communication reliability so that the data can be received by multiple receiver nodes. As long as the data of any one of the receiver nodes is transmitted to the sink, the data can be transmitted successfully. In this paper, a crosslayer optimization protocol named Adaptive transmission Power control based Reliable data Forwarding (APRF) scheme by using broadcast technology is proposed to improve the reliability of network and reduce communication delay. The main contributions of this paper are as follows: (1) for general data aggregation sensor networks, through the theoretical analysis, the energy consumption characteristics of the network are obtained. (2) According to the case that the energy consumption of nearsink area is high and that in farsink area is low, a crosslayer optimization method is adopted, which can effectively improve the data communication by increasing the transmission power of the remaining energy nodes. (3) Since the reliability of communication is improved by increasing the transmission power of the node, the number of retransmissions of the data packet is reduced, so that the delay of the packet reaching the sink node is reduced. The theoretical and experimental results show that, applying APRF scheme under initial transmission power of 0 dBm, although the lifetime dropped by 13.77%, delay could be reduced by 40.37%, network reliability could be reduced by 10.08%, and volume of data arriving at sink increased by 10.08% compared with retransmissiononly mechanism.
1. Introduction
Wireless sensor networks (WSNs) are emerging as a promising platform that enable a wide range of applications in both military and civilian domains such as battlefield surveillance, medical monitoring, and biological detection [1–5]. There also exit some challenges due to unique characteristics of WSNs as well as their unique communication patterns [6, 7]. In WSNs, sensor nodes are usually powered by battery, and it would be very challenging or sometimes infeasible to replace or recharge them after being deployed [8, 9]. Obviously, it becomes important to reduce energy consumption in WSNs and maximize the network lifetime [10–12].
In addition to network lifetime, reliable data collection is another important performance metric [13–15]. Since the main goal of wireless sensor networks is to provide a wide variety of data for various applications in order to make decisions based on the resulting data, highly reliable data collection is of great importance to the network and applications [16, 17]. For example, in the monitoring of crop temperature and humidity, the volume of data collected can account for more than 95% of the total monitoring area to make scientific decisions and below the predetermined threshold may lead to errors in the decisionmaking and may affect agriculture production [18, 19]. This kind of WSNs that requires a certain data collection rate has a wide range of application [20–22]. For example, in the traffic information monitoring, it does not require that every vehicle’s sensing data is uploaded to the traffic information center, but it only needs to reach a certain percentage of data to infer the traffic information status of the entire city. However, because of the volatility of the wireless communication in network, the data packets in the wireless communication have a certain loss rate, which leads to the loss of each transmission of the data packets. This greatly reduces the probability of a node that is far from the sink node sending a packet to reach a sink node through multihop communication [23, 24]. Therefore, how to ensure reliable data collection in wireless sensor networks is also a challenging issue.
In addition, how to ensure that data is quickly transmitted to the sink node is also a field that deserves research [12, 19]. Since WSNs are often applied to occasions that require rapid response to events, there are certain requirements on the time taken by the sink to receive data from the sink, or delay. In general, the lower the delay, the better. However, the delay of data collection is determined by many aspects. First, the detriment of the wireless communication link, which results in the data packet being lost in the routing process, may cause a high delay [9, 25, 26]. In order to deal with the loss of the data packet, retransmission mechanism often is used to ensure that the data is collected to meet the reliability requirements of the application. But there are two deficiencies for data retransmission: First, with the packet loss, the retransmission of lost data packets takes more time, which will result in high delay [12]. Second, the retransmission of lost data packets will increase the energy consumption of nodes that will reduce the network lifetime [9]. Therefore, how to effectively ensure the reliability of data collection reach a certain degree and improve the speed of data collection is another important issue worth studying.
To sum up, it is a challenging issue to comprehensively improve the lifetime of networks, ensure the reliability of data collection, and reduce the data collection delay at the same time. Some studies have done some beneficial work in this field.
(1) First of all, research on how to improve the lifetime of a data collection network using data aggregation is one of the most effective ways to improve network lifetime [27]. Data aggregation refers to such a data collection method: due to the similarity of the environment sensed by the neighboring nodes, there are similarities in the data packets generated by the neighboring nodes. These data packets can be aggregated to generate smaller packets than before. This method can effectively reduce the volume of data the node needs to transmit, which can effectively improve the network lifetime. Thus, data aggregation methods are widely used in a variety of sensor network applications.
(2) Reliable data transmission [28–30]: due to the volatility of the wireless network, the probability of data being collected by the system will be low if no reliable transmission mechanism is adopted. For example, if the probability of a successful onehop data transmission is , then after hops reach the sink node, the probability of successful arrival to sink is only . It means that even if is up to 90%, the probability of data packet to successful reach sink node is only 43% after 8 hops’ transmission; that is, most of the data packets are lost. Therefore, there are many researches on how to ensure the reliability of data transmission, mainly in the following categories: (a) data retransmission mechanism [28–30]: this mechanism is as follows: sender node sends the packet, and you need to wait for the receiver node to return to confirm the message before starting the next packet transmission. If the sender node does not receive the confirmation message returned by the receiver within the expected time period, it considers that the data packet has been lost and resends the data packet. The advantage of this method is less energy consumption, and the biggest drawback is that data delay is high due to multiple retransmissions. (b) Collaborative communication method [5, 15, 16, 25, 31]: collaborative communication method is also an effective way to improve the reliability of network transmission. In this method, when the sender sends data to the destination node, the intermediate node also monitors the data, and if the destination node does not receive the data successfully, the intermediate node will retransmit the data. Since the intermediate node is closer to the sender node than the receiver node, it has a higher probability of receiving the packet sent by the sender. When the receiver node does not receive the data, the intermediate node sends the retransmitted data packet to the receiver node. Because the intermediate node is near the receiver node, the probability of successful data retransmission is higher. (c) Joo and Shroff [27] has proposed a broadcastbased approach to improve the reliability of data collection. Their approach is this: there is volatility in data transmission due to the noise. So Joo and Shroff’s [27] method has changed the past, the use of unicast data transmission method, in their method, each node sends a data packet by using the broadcast method. In this way, the same data packet will be received by multiple receiver node, and after that the packet is also transmitted by using broadcast until the sink node. In this way, even if part of data packets is lost during the data transmission, some nodes’ data can still reach the sink successfully, which improves the data collection success rate. (d) Improve the reliability of data transmission by using data encoding [32]: the mechanism of this method is that if a packet is encoded in a certain way, the receiver node can deduce the missing data based on the received information even if it does not collect all the data so that the reliability of data transmission is improved. For example, the Error Correcting Code (ECC) method is an effective way to guarantee the reliability of endtoend packets. However, this method has the price to pay because the encoded data is larger than the original data, which will increase the node’s energy consumption.
(3) There are also some studies that try to reduce the delay of data collection. In general, the data collection delay is closely related to the way that data is collected and the reliability requirements for data collection. For example, the data collection delay for data collection using data retransmission is generally relatively large, because data packets tend to undergo multiple retransmissions in this way, which leads to high delay. And the strategy for data collection using data encoding and broadcasting generally has lower delay but consumes more energy.
For the current research, there are still topics worth studying below.
(1) Although the data aggregation based on broadcasting is a better way, the existing research has not considered the following aspects: Existing methods of collecting broadcast data can only be directed to a special aggregation function. Their aggregation function is a case where the intermediate node is aggregated into a packet when the data of children nodes (or neighbor nodes) is sent to the intermediate node. Such a function is usually max, min, and average function. We call this aggregation method that the packet size does not increase with the number of input packets in aggregation process as a constant aggregation. Although the constant aggregate function is used in WSNs, there are functions that are more commonly used in WSNs compared to it. The most commonly used aggregation function is the aggregation that data packets are aggregated to data packets () and will increase if increases. We called this aggregation as Increasing Aggregation. For example, the sink node often needs to be queried in practice: What are the areas where the temperature (humidity) is higher than 30 degrees? Where did the event happen in the area? Where does the elephant appear? In such an application, all the information that satisfies the query needs to be sent to the sink node. Obviously, the number of packets that intermediate nodes aggregated is related to the number of packets to meet the conditions of the query. The more the amount of information items to query, the larger the number of the data packets; that is, the number of the data packets and the number of query information items have a linear relationship. Constant aggregation can also be a special case of Increasing Aggregation. It can be seen that the Increasing Aggregation is more important and widely used.
(2) In the reliability of transmission: previous strategies mainly used a single method to improve the reliability of data collection. For example, the broadcast method can effectively improve the reliability of data collection. However, a few studies have improved the reliability of data collection in a comprehensive way. In fact, one of the most effective ways to improve reliability of data collection is to increase the transmission power of the sender node. Because increasing the transmission power of sender node can increase the signaltonoise ratio of the receiving node, thereby improving the probability of successful data transmission. However, increasing the transmission power of nodes will increase the energy consumption of the nodes and decrease the lifetime of the nodes. Therefore, the method of simply increasing the power of the sender node is not very good.
For the shortcomings of the previous research, the Adaptive transmission Power control based Reliable data Forwarding (APRF) scheme using broadcast technology is proposed to improve network reliability and reduce the data collection delay in this paper. Comparing with previous research, the main contributions of our work are as follows.
(1) First, we analyzed the theoretical results of the volume of data considered by the nodes in the Increasing Aggregation network using broadcast data collection. We found that, unlike the constant data aggregation model, under the increasing data aggregation, the data volume of nodes in the nearsink area is much greater than that of nodes in farsink area in the wireless sensor network by using broadcast technology. For the first time, this paper obtains the load of network nodes under the increasing data aggregation model in broadcast data collection.
(2) Second, for the case of nodes in the nearsink area, the volume of data borne is greater than that in the farsink area. A crosslayer optimizing protocol named Adaptive transmission Power control based Reliable data Forwarding (APRF) scheme by using broadcast technology is proposed to improve network reliability and reduce communication delay. In APRF scheme, due to this case, there is a large amount of energy left over, so that the transmission power of these remaining energy nodes is increased, while, for the nodes in the nearsink area, the same transmission power as the past scheme is used. Improving the transmission power of node can effectively improve the successful receiving rate of receiver node. Therefore, using APRF scheme can effectively improve the reliability of data collection. At the same time, due to the increased reliability of data collection, on the one hand, the success rate of using sink routes in broadcast routing is increased, and, on the other hand, the delay can be effectively reduced.
(3) Through our extensive theoretical analysis, we demonstrate that, for APRF scheme, the goal of reducing delay and improving the data collection reliability can be achieved simultaneously. Comparing with the network only using the retransmission mechanism, the network using APRF scheme shows a significant improvement in data collection reliability and data collection delay, especially under dBm, with 15.96% energy consumption increase and 13.77% decrease in lifetime, in exchange for a 10.08% increase in reliability and a 40.37% reduction in data collection delay.
The rest of this paper is organized as follows: In Section 2, the related works are reviewed. The system model and problem statement are described in Section 3. In Section 4, the APRF scheme is presented. Performance analyses are provided in Section 5. We conclude in Section 6.
2. Related Work
With the improvement of the technology of electronic devices, smaller size, and larger battery capacity, the sensor devices that are more sensitive to the perception of the surrounding environment have been continuously developed [33]. These sensing devices are deployed in a variety of applications and form the basis of Internet of Things (IoT) [34]. Combined with the current new cloud network [35], the formation of largescale Social Networks by Fog computing [36] is rapidly changing all aspects of human production and life.
Data aggregation is a method of reducing data transmission that is closely related to the strategy of this paper [1, 3, 6, 27] and is an important type of operation in wireless sensor networks [37–41]. The basic principle is that there is a correlation between the data perceived among dense sensor network nodes. Therefore, when the correlation data come together, the data can be reduced through the data aggregation, thereby saving the energy required for node data transmission and prolonging the network lifetime. There are a lot of techniques involved in data aggregation and collection.
For the data correlation, in the constant data aggregation model proposed by Joo and Shroff [27], no matter how many data packets are input into the constant aggregation function, the size of the data packet of output will not increase. This data aggregation feature greatly reduces the energy consumption of the sensor network. However, designing an effective data aggregation approach is still a matter of challenge. This data aggregation issue is called convergecast [42–44] issue. In convergecast, each node generates only one data packet in a round. Node data operations are divided into two stages of receiving phase and sending phase. That is, node only receives data in data collection stage, and once data is sent in transmission stage, the node no longer receives data, and no matter how many data packets are received, they are aggregated into one. Several convergecast algorithms proposed for wireless networks can be used for WSNs [42–44]. In convergecast, generally adopt the TDMA way, and divide the time into the slot of equal length. And the length of a slot is the transmission time required for a packet. Therefore, the data collection operation is transformed into how to arrange the operation time slots of each node to minimize the number of slots required for data collection, that is, the minimum data collection delay. Huang et al. [42] proposed a centralized scheduling algorithm with the delay bound of time slots, where is the network radius and is the maximum node degree. Park et al. [43] proposed a distributed scheduling method for generating collisionfree schedules with delay at most time slots, where is the network diameter. Xu et al. [44] theoretically proved that the delay of the aggregation schedule generated by their algorithm is at most time slots.
Cluster based data aggregation strategy is also a commonly used method [1]. In this way, the network is divided into some clusters. And a cluster contains a cluster head node and other nodes called cluster member nodes. Member nodes send data to the head node, and the head node does the data aggregation operation and then sends the data packet to the sink node by onehop or multihop transmission by cluster head node.
Of course, data collection also has different performance in different applications; in some applications, the delay is more stringent. However, a node receiving packets and aggregating them and then transmitting data consumes less energy. Convergecast [42] is the method used when a node can no longer receive data before sending data. However, less data generated by this method will take longer to reach the sink, making it less suitable for delaysensitive applications. Therefore, for the applications with high realtime requirements, the data will be aggregated after the partial transfer forward, rather than waiting for all the data to arrive before sending forward. Such research can be referred to [45].
Although constant data aggregation can greatly reduce the volume of data that a node is to send, the data aggregation model often seen in sensor networks is still an increasing data model. In such a data aggregation model, as the input data continue to increase, the output data is also increased. Therefore, how to reduce the volume of data aggregation is an important research issue. There are also many studies in this area [45–47].
The above data aggregation studies generally believe that wireless transmission is lossless, but the actual wireless data transmission is lossy. Therefore, in multihop wireless data transmission, the data sent from the node to the sink node is possible to be lost. thus affecting the network performance. Therefore, how to ensure that reliable data arrive to the sink node is another important issue in data collection. There are also many studies to ensure the reliability of data transmission, mainly in the following categories.
(a) Data retransmission mechanism: such research can be referred to [30]. The core of this mechanism is that although the data transmission is volatile, the reliability of data transmission can be improved after applying the multiple transmissions. There are many retransmission strategies, for example, times retransmission mechanisms. In such a retransmission mechanism, when the sender node sends data, the data to be transmitted is repeatedly transmitted for times. The advantage of this mechanism is that the delay is small. The deficiency is that the same packet may reach the receiver node successfully more than one time, resulting in a larger energy consumption of sensor nodes. Therefore, most retransmission mechanisms use a feedbackbased retransmission mechanism. When the sender node sends data, the receiver node returns a confirmation message (ACK) to the sender after receiving the data successfully. The sender node will send the next data packet if it receives the ACK message. If not, the sender node will see that the receiver node fails to receive the data packet after waiting until timeout and it will retransmit the data packet until receiving the ACK message or reaching threshold time. The advantage of this method is saving the energy, but there is a high delay, especially when the data packet is lost, it needs to be retransmitted that will make the delay higher, and the multihop data transmission will also make the endtoend delay higher. The retransmission mechanism also has some other ways; see [30].
(b) Improve the reliability of data transmission by using crosslayer optimization [9]: the reliability of data transmission is determined by multiple layers such as the physical layer, the MAC layer, and the network layer. Therefore, the effect of the data transmission is limited only from a single level of optimization. Therefore, some researchers have proposed a method of improving the reliability of data transmission from multiple aspects. First, there is a direct relationship between the success of the data transmission and the SNR. In general, the higher that SNR of receiver node, the higher reliability of receiver node to receive a data packet. To improve the SNR of the receiver node there are mainly two methods, one is to reduce the distance between the sender and receiver node and the second is to increase the sending node sending power. Because the distance between nodes can not be changed after the node is deployed, the commonly used method to improve the reliability of data transmission is to increase the transmission power of the sender node and improve the reliability of data transmission [9]. However, increasing the transmission power of sender node can significantly reduce the lifetime of the node. In addition, there is not a linear relationship between sending power and data receiving rate of node, but there is a nonlinear optimization relationship. When the transmission power reaches a certain level, the quality of wireless communication between the nodes has already reached quite a high level, and the continuous improvement of the transmission power has caused just slight improvement on the communication quality. Therefore, researchers have tackled the study of the power of transmitting a unit of bit data so as to minimize the power consumption. It means that there is least energy for transmitting bits per bit. The research of energy efficient communications, data recovery, and security on sensor network can also be found in edge network D2D communications [48–51].
(c) Data collection using broadcast is a way to effectively improve the reliability of data transmission. Wireless networks make data broadcasting possible. Since packet broadcasts can be received by multiple receiving nodes, after such a data packet is received by multiple nodes, multiple replicas thereof are, respectively, routed to sink along different paths. Even if a copy of data is loss, the probability of the data successfully reaching the sink node will still be high, so that it can effectively improve the reliability of data transmission. And this data collection method has low delay (better than the retransmission mechanism). However, the disadvantage is that energy consumption is large. This research can be referred to [27]. Joo and Shroff [27] proposed a data collection method in the way of constant data aggregation. Based on this, this paper extends it to the network of growth data aggregation methods through careful analysis.
3. The System Model and Problem Statement
3.1. The Network Model
The network model adopted in this paper is a kind of periodic data collection wireless sensor networks. The whole network consists of sensor nodes which are uniformly distributed in a circular twodimensional area with a radius and a density . The center of the network is the sink node, which is responsible for collecting and processing the data generated by the sensor nodes in the entire network to achieve the specified function. All the sensor node has the same effective transmission radius . The same as most networks, the shortest routing protocol is used [23]. The nodes with the same number of hops from the sink node are in the same tier, so that the network can be divided into tiers of the same width . Let denote the node set of the th tier. Considering contains only one sink node, so the 0th tier can be seen as a point with radius 0. The node belonging to selects the node in as the relay node to send data to the sink node, and then node is called the parent node of , and the distance between node and node is not greater than the transmission radius .
Each sensor node senses the surrounding environment and generates a data packet in a sensing cycle. It uses the appropriate data collection method to transmit the data packet to the sink. The TDMA scheduling method is applied in the network. The basic time unit is a slot. The length of a slot ensures that the node can send or receive a complete data packet. The interference model of data transmission is the same as the most WSNs; that is, all the nodes in the network work on the same frequency, so that when nodes need to send data [27], the following conditions need to be guaranteed: (1) no other node sends data within its transmission distance when it is sending data; (2) the transmission range of its destination node should not have another node sending data at the same time. The nodes that can transmit data at the same time in the same tier are divided into a group. Let denote the th group in . Let denote the number of nodes that can be transmitted simultaneously. Obviously, all nodes in can be transmitted in slots.
3.2. The Reliability Model of Data Transmission
The same as most studies [27], the link between nodes in the network is lossy. In this paper, the Packet Reception Rate (PRR) proposed in [2] is used to measure the quality of the link. The PRR of the link between nodes is generally defined as follows: the ratio of the number of packets received by the receiver node by the number of packets sent by the sender node. The PRR can be calculated by the following equation:where is the sending rate in bits of a sensor node, is the frame size of a data packet, and is the noise bandwidth. The specific values of these parameters and other parameters used later are given collectively in Table 1. Substituting these specific values into (1), then the equation for the PRR on the isAssuming a given transmission power , the at a distance can be expressed aswhere is the loss values during data transmission.
The value of can be derived from the following equation: where is a reference distance, is the path loss exponent, and is a zeromean Gaussian RV (in dB) with standard deviation .
3.3. The Energy Consumption Model
The same as the most energy consumption model of the WSNs [27], the energy consumption of the sensor nodes is mainly used for the transmission and reception of data, and the other energy consumption of the nodes is relatively small and therefore can be negligible. Generally, the transmission power and receiving power of a node are given, so the energy consumption of a node to transmit data can be calculated by multiplying the transmission power of the current node by the transmission time. And the transmission time can be obtained by dividing the total volume of data transmitted by the transmission speed. Therefore, we can calculate the energy consumption formula of node sending data and receiving data
The equation of energy consumption of a node to send data is
The equation of energy consumption of a node to receive data is
The equation of total energy consumption of a node to send and receive data is where is the transmission power of the node and is the receiving power of the node. is the data volume of a node to send and is the data volume of a node to receive.
3.4. The Data Collection Model
As in most studies, each node in the network produces one packet per cycle, and the size of the packets is the same. Since the wireless transmission link is lossy, in order to ensure the reliability of the data to be transmitted to the sink, the data collection method of broadcasting is used in the same way as [2] to ensure the high reliability of data collection.
As shown in Figure 1, the data collection mechanism of the broadcast is as follows: The child node in needs to transmit data to the parent node in . By using the broadcast transmission method, the child node can send data once, and multiple parent nodes receive simultaneously. For this way, we say that it is a successful transmission if the data packet received successfully by any one of the parent nodes, so that the reliability of data collection using broadcast has been greatly improved compared with unicast.
In the data aggregation model, we use an aggregation function called Increasing Aggregation (IA) function, which can be widely used in various applications. In our data aggregation model, when the parent node received two packets from its child node, it can generate a smaller packet by using the IA function due to the correlation between the packets. Let denote Aggregation Rate, and the size of the data packet generated by two original data packets and being aggregated by the IA function is
In general, . It is noteworthy that aggregated packets can not be aggregated and compressed again. The data aggregation model proposed by Joo and Shroff [27] can be seen as a special case of our model, that is, the case of . Obviously, the data aggregation model used in this paper has more applicability.
The following example is used to explain the process of the data aggregation model in more detail. Figure 2 shows tree topology of a sample wireless sensor network with wireless broadcast of our example network. The parent node is on the upper level of the child node. When the network officially started working, all nodes first enter the sensing cycle to collect environmental data to generate an equalsized data packet and then enter the transmission cycle. The data transmission starts from the lowest child node to the upper parent node in turn. Let denote the original data packet generated by node in Figure 2, denote the part of data packet generated by with other packet using IA function, and denote the data packet generated by node using IA function after node received all the packets sent from its child node.
The node is a leaf node and does not receive packets, so it has only its own original packet:
The size of is
The node has child nodes , . It receives packets of all the child nodes and aggregate them to generate packet :
The size of is
The node has child nodes , , and it receives and aggregates the data packets of the child nodes in order. Firstly, it receives the data packet of node and aggregates it and then receives the data packet of node . When aggregating , since the existing data packet of node contains aggregated packet part , that are also contained in , node deletes , from and aggregates the remaining part of . Finally, generated by node is
And the size of is
3.5. Problem Statement
Our goal of wireless network optimization is to maximize network lifetime and data collection reliability, minimizing data collection delay. The performance of our wireless sensor networks can be characterized by the following performance parameters.
(1) Data Collection Delay . Data collection delay represents the length of the transmission cycle, which is the length of time in which all nodes have completed the data transmission and aggregation to reach the sink. , where is the start time of data collection and is the end time of data collection and is the number of slot from the start time of data collection to the end time. Obviously, the lower the data collection delay the better:
(2) Data Collection Reliability . The goal of data collection is to maximize the probability of data reaching the sink. However, due to the loss of the communication link, the reliability is reduced with each transmission. Therefore, the reliability of the network after the data reaches the sink after multihop data transmission will be the lowest. So, the reliability of data collection in this paper refers to the reliability of the node data sent to the sink node in the outermost tier of the network. Obviously, the larger , the better.where is the number of packets sent by the node in the outermost tier and is the number of packets that sink node successfully received from the node in the outermost tier.
(3) Network Lifetime . The network lifetime is defined as the lifetime of the first dead node in the network. Because it is a periodic data collection network, the network lifetime is expressed by the data collection cycle experienced by the network when the first node dies, so the network lifetime can be expressed by the following equation:
Obviously, our goal can be expressed by the following equation:
In (18), and represent the minimum standards that meet the user’s requirements, and the goal of (18) is to maximize the network performance while keeping both and meeting the user’s requirements. And try to extend the network lifetime.
4. The Design of APRF Scheme
4.1. Research Motivation
The research motivation of this paper mainly comes from the following two aspects. (1) If the transmission power of the node can increase, then the Packet Reception Rate (PRR) can be improved. However, this consumes more energy, which may affect network lifetime. (2) Increasing the PRR for data transfers increases the PRR for nodes far from the sender node even more. This means that the higher the probability of the sender node successfully transmitting data to the node closest to the sink during a broadcast, the fewer the times the node needs to retransmit to reduce the data transmission delay. Therefore, if the transmission power of the node can be increased without affecting the network lifetime, the PRR of the data transmission can be increased and the delay can be reduced without affecting the network lifetime. After a careful analysis of data transmission and energy consumption characteristics of wireless sensor networks, we found that our Adaptive Transmission Power control based Reliable data Forwarding (APRF) scheme improves the data collection rate and network delay without significantly reducing the network lifetime. The motivation of this paper can be concluded as follows.
(1) Increasing the transmission power of the node can effectively increase the PRR of the node and reduce the delay of data collection at the same time but increase the energy consumption.
According to the reliability model of data transmission in Section 3.2, Figure 4 shows the data reception rate (PRR) under different transmission powers. The result from Figure 4 shows the following: (a) In general, the higher the transmission power of sender node, the higher the PRR. Therefore, increasing the transmission power of node is beneficial to improve the network performance. (b) After increasing the transmission power of sender node, the improvement of PRR in different distance to receiver node is different. But there is a rule: For the nodes that are in a very close area (i.e., the reliable area) to the sender node, the PRR is not greatly increased, because the PRR has already reached a higher level. For the receiver node far away from the sender node (i.e., nonreliable area), the PRR is already very low, so the improvement of the PRR is also not obvious. But, for a node located in the transition region between these two regions, the increase of transmission power has a significant effect on the improvement of PRR. This feature of data transmission plays an important role in the performance optimization of wireless sensor networks. As shown in Figure 3, when the node in broadcasts its data packet, the receiver nodes are the nodes in . Because most of its receiver nodes are located in the transition region, increasing the transmission power of sender node improves its PRR significantly.
The advantages of increasing transmission power for network performance are as follows: (a) directly increasing the PRR of the receiver node. Since the receiver nodes mostly located in the transition region, the improvement of the transmission power of the sender node makes the PRR of the receiver node improve effectively (which can be seen from Figure 4). (b) Although the node can increase the reliability of transmission by using the broadcast method, when the node is located on the outermost of , the distance to the parent node in is the farthest, and the number of parent nodes within the transmission radius is the least. In this case, the advantages of broadcasting can not be realized due to the reduction in the number of parents. Therefore, in order to ensure the reliability in this case, we need to adopt the retransmission mechanism, which means that the data volume sent by the nodes multiplies and the delay of data collection will increase. The improvement of the PRR directly improves the worstcase transmission reliability and then reduces the number of retransmissions while ensuring the minimum required reliability, thereby reducing the data collection delay.
(2) The large amount of energy remaining in the farsink area of the sensor network can be used to increase the sender node’s transmission power so as to increase the transmission power of sender node without affecting the network lifetime significantly, improving the performance of network data collection, that is, increasing the reliability of data collection and reducing data collection delay.
Data collection in wireless sensor networks is a “manytoone” data collection mode, in which the volume of data borne by nodes far away from the sink node is much smaller than the data volume borne by the nodes near the sink node. Although the data aggregation model is used in the network, the number of data packets transmitted near the sink node will be larger and larger, resulting in that the energy consumption of nodes in the nearsink area is much greater than that of the nodes in the farsink area. As a whole, the energy consumption of the network is not in the same level. The following example is to illustrate this issue.
Considering that each node senses the environment and generates a packet of the same size , the radius of the entire network is 75 m, and a total of 360 sensor nodes are uniformly distributed throughout the network. The transmission distance of each node is 20 m, the transmission power of each node is dBm, and the receiving power is dBm. The whole network is divided into 5 tiers, the width of each tier is 15 m, and the aggregation ratio is . Since the nodes in the fifth tier have no child node, there are no data packets to receive and only one data packet broadcasts to the parent node. In the ideal case of a lossless link, we can get the volume of data received and sent by nodes of each tier.
Figure 5 shows the nodes receiving and sending and the total volume of data for each tier. As can be seen, the closer the nodes to the sink node, the more the nodes send and receive packets. The total volume of data of node in is about 146 times compared to the total volume of data of node in . Obviously, the gaps in the volume of data between the nodes in the nearsink area and the nodes in the farsink area is very large, which is the reason for the difference in energy consumption of nodes in each tier.
Figure 6 shows the energy consumption of nodes in each tier. Similar to Figure 5, the energy consumption of node in is 146 times higher than that of node in . When the first node in the network dies, the network dies, while the outer node still has a large amount of energy left over. Therefore, a large amount of energy in the whole wireless sensor network can not be fully utilized.
4.2. APRF Scheme
The main idea of the APRF scheme is to use the remaining energy of nodes compared with that of node in and to adjust the transmission power of each node so that the energy consumption of each node reaches the same level. The increase of transmission power can improve the PRR of node during node transmission, so as to improve the singlehop reliability of nodes in each tier and improve the reliability of data collection. On the other hand, the improvement of node singlehop reliability can reduce the number of retransmissions during node communication under the condition of meeting the reliability requirements of users. That is to say, reduce the volume of data sent by nodes, which in turn reduces the data collection delay. All in all, the APRF scheme improves network performance by leveraging the remaining energy in the network without significant impact on network lifetime.
We propose APRF algorithm in Algorithm 1.

4.3. Calculation of Energy Consumption
The most important part of the APRF scheme is to calculate and adjust the transmission power of nodes in each tier. Calculating the transmission power of each node depends on the maximum energy consumption in the entire network. This section describes how to calculate the node energy consumption.
For each node, the majority of energy consumption in the data packet is receiving data and sending data, so we can ignore other factors that affect the lifetime of the node and only consider the energy consumption of packet sending and receiving. In this way, in order to get the energy consumption of node in each tier, it is necessary to calculate according to the energy consumption model and the volume of data transmission of node in each tier. Before that, we should calculate the number of children nodes of node in each tier and the volume of data sent by each child node to estimate the volume of data received by the node.
In order to calculate the number of child nodes of node in , we need to calculate the average area of the node in covered in the th tier and then calculate the average number of children according to the density of the nodes.
In Figure 7, the node is located in the outermost side of the th tier. The node covers the largest area of the th tier. And the node is located in the innermost side of the th tier. The node covers the smallest area of the th tier. To simplify the calculation, we take the average of the maximum area and the minimum area to represent the average coverage area of node in .
Theorem 1. When the node located at the innermost side of the th tier covers the minimum area of the th tier, the area iswhere
Proof. As shown in Figure 8, , , and are the diagonal angles of the sides , , and of the triangle , respectively, is the sector area of which the node is the center, is the radius, and central angle is ; is the sector area of which the sink node is the center, is the radius, and central angle is ; is the area filled with vertical lines in Figure 8. Since is irregular in shape, it can not be directly calculated, and it can be calculated it by using , , and .
The shapes represented by and are sector, so the values can be obtained by using the sectorial area formula under the condition that the radius and the central angle are known. represents the sum of the area of two triangles of the same shape and three sides of the triangle, whose value can be calculated by Heron’s formula.Now, we get the values of , , and , so we can get the value of according to the relationship between and , , and :
Theorem 2. When the node located at the innermost side of the th tier covers the minimum area of the th tier, the area iswhere
The value of can be obtained by Theorem 1.
Proof. As shown in Figure 9, is the area filled with vertical lines in Figure 9, and is also shown in Figure 9. is the circle area of which node is the center and is the radius. where .
For , it can be seen as the node located in the innermost side of the th tier covers the minimum area of the th tier, so we can use Theorem 1 to get the value.
Now, , of node in each tier can be gotten by Theorems 1 and 2, and the average node coverage area is
Theorem 3. In a network with uniform distributed nodes, the number of nodes covered by node is
Proof. Let denote the total number of nodes deployed in the area, the number of nodes covered by node , and the area of node covered. Since the nodes in the network are uniformly distributed in the deployed circular area, the deployed areas have the same node density , and can be gotten by the equation: . If the value of is known, the value of can be calculated by the equation: .
The number of children nodes of node in can be gotten by Theorems 1, 2, and 3. We used the example network in Section 4.1 to calculate and summarize the number of children in each tier in Table 2.
According to our data collection model, each node in the network senses the environment to generate a data packet of size . In the initial time of the network, each node in the network can know its own position, the number of the parent nodes, and the number of the child nodes through a series of communication operations. The volume of data received and transmitted by node can be derived from Theorems 4 and 5 given below.
Theorem 4. The volume of data received of node in is
Proof. Let denote the number of child nodes of node in , denote the volume of data sent by the th child node to node , denote the PRR of node in , and denote the retransmit times of node in . Since the link between nodes is lossy, node can not ensure that all the data packets be received successfully. So, the probability that node can receive a data packet successfully needs to be calculated by using the PRR of the node and retransmit times, that is, . The volume of data of node received from a child node is . The total volume of data received by node can be obtained by accumulating the volume of data sent by all child nodes received by node : .
Theorem 5. The volume of data sent by node in is
Proof. Let denote the data volume of node received from its th child node and denote the Aggregation Rate. In the process of receiving the data packet sent by the child node, the node does an aggregation process once it receives a data packet. As broadcast used in data transmission, the node can transmit data to multiple parents at the same time. Therefore, the data that the parent node received has a duplicate part; set a variable to represent the repetition rate, which is related to the number of parent nodes. Since the data packets of the child nodes received by the node are the data packets aggregation completed by the child nodes, according to our aggregation model, the data packet completed by the child node only contains the data packet generated by the child node itself as an uncompressed data packet, and compressed packets can not be compressed again. Therefore, the volume of data sent by node is .
The number of nodes receiving and sending data at each tier can be calculated according to Theorems 4 and 5, and the result is shown in Figure 10.
Theorem 6. The energy consumption of the node in to receive data in one cycle is
Proof. Let denote the receiving power of node in , denote the data volume that node received, and denote the receiving rate of node . All the nodes in the network have the same receiving power. For the example network in this paper, dBm, and can be gotten by Theorem 4. And, for , it is a specific value that can be gotten in Table 1. The energy consumption of node to receive data from child nodes can be calculated by (6) if , , and are known.
Theorem 7. The energy consumption of node in to send data in one cycle is
Proof. Let denote the transmission power of node , denote the data volume that node sent, and denote the sending rate of node . Before applying the APRF scheme, all nodes in the network have the same transmission power. For the example network in this paper, dBm, after applying APRF scheme, the value of can be calculated by Theorem 8, and can be calculated by Theorem 5. And, for , it is a specific value that can be gotten in Table 1. Finally, the energy consumption of node to send data to its parent nodes can be calculated by (5) if , , and are known.
Now, the energy consumption for node in each tier can be calculated according to Theorems 6 and 7. The result is shown in Figure 11.
It can be seen from Figure 11 that the closer the sink node, the more the energy the node consumes. The energy consumption of node in is about 142 times that of node in .
4.4. Adjust the Transmission Power
In Section 4.3, the calculation equation of energy consumption is given. And, in this section, we show how to determine the transmission power adjusted by each node based on the maximum value of energy consumption. This is the core of the APRF scheme. That is, by adjusting the transmission power to make full use of the remaining energy, the network performance is improved and the energy consumption of each tier is balanced.
Theorem 8. After an adjustment using the APRF scheme, the transmission power of the node v in iswhere
Proof. Let denote the total energy consumption of node in which consumes the most energy in one cycle. Let denote the energy consumption of node in to receive data in one cycle. Let denote the transmission energy that node can utilize in one cycle of data transmission compared to the node in .
According to the APRF scheme, the remaining energy compared to the node in is used to increase the transmission power. We obtain the energy consumption of node through a fixed transmission power data transmission and then calculate the transmission power according to the total energy consumed by the first node.
In general, the transmission power of the sensor node has a limitation. And, within a certain distance range, when the transmission power reaches a certain level, the quality of wireless communication between the nodes has already reached quite a high level, and the continuous improvement of the transmission power has caused just slight improvement on the communication quality. For example, at a distance of 20 m, the PRR reach 0.99984 with a transmission power of 10 dBm. That is already a fairly high level. Figure 12 shows the comparison of transmission power before and after applying the APRF scheme, where the maximum transmission power is limited to dBm.
4.5. Data Collection Reliability
For datacollecting WSNs, the reliability of data collection is an important performance metric because the function it performs depends on the data it collects.
Theorem 9. The reliability of data collection is defined as follows: the probability of a packet sent by the node of the outermost tier reaching the sink node successfully.
Proof. The node of outermost side has the largest hop distance from the sink, and the probability that the data packet sent by this node reaches the sink node is the smallest. It represents the lowest limit of the probability that the data packets sent by all the nodes in the network successfully reach the sink node. That is, if the reliability of data collection , then all the nodes in the network have the probability that the data packets sent by them reach the sink node being greater than .
The singlehop reliability of node in calculation method needs to be given first, in order to obtain the reliability of data collection .
Theorem 10. In the worst case, the reliability that the node in sends the data successfully to the node in through the broadcast transmission and retransmission mechanisms can be calculated as follows:
Proof. The worst case refers to the condition that the node is located in the outermost tier and has the minimum number of parent nodes and PRR. Let denote the min number of parent nodes of node in , denote the times the node need to retransmit, and denote the PRR of the node. The probability of packet loss in one data transmission is . Broadcasting the data to parent nodes is equivalent to transmitting the same data times. As long as there is one of the parent nodes that successfully received the packet this can be regarded as a successful transmission. The probability of data transmission in this way is . And the probability of packet loss after the retransmission of the same packet times is . Finally, the probability of packet loss using the broadcast transmission method and retransmission is as follows: . So the probability of successful transmission is as follows: . Most nodes in have more parent nodes than the min number of parent nodes in , so .
In Theorem 10, the calculation of node singlehop reliability needs to know the number of nodes in and the number of retransmissions in the worst case, which can be calculated by Theorems 11 and 12, respectively.
Theorem 11. The node located in the outermost side of th tier has the smallest coverage area in the th tier and its area iswhere
Proof. As shown in Figure 13, the shadow area can be divided into two parts: (1) the subtraction between the sector and the isosceles triangle and (2) the subtraction between the fanshaped and the isosceles triangle .
The angles of and can be calculated according to cosine theorem if the three sides of the triangle are known. And the areas of sector and sector also can be gotten according to the sector area formula if the central angle and radius are known. The area of isosceles triangle and isosceles triangle can be gotten if the angles of and and the length of the sides and are known. So, the shadow area is
Theorem 12. If is the number of its parent nodes, is the PRR of the node, and is the singlehop reliability required by the user and they are known, the minimum number of retransmissions is
Proof. According to Theorem 10, the onehop reliability that meets the user’s requirements can be expressed asSince , , and are known, the inequality of the number of retransmissions can be found by solving inequality (41):Take the minimum integer that satisfies the inequality condition:
The number of parent nodes in the worst case can be calculated by the number of parents using Theorems 11 and 3. The number of retransmissions in the worst case can be calculated using Theorem 12. The onehop reliability of node in can be obtained according to Theorem 10. The onehop reliability can be calculated by using these variables above. And the data collection can be calculated according to Theorem 13.
Theorem 13. The data collection reliability of Data Collection WSN is
Proof. The number of hops that the data packet of node in outermost tier needs to be transmitted to the sink node is . The onehop reliability of node in is . So, the reliability that the data sent by the outermost node reach sink is . And because the data sent by the node located in the outermost layer is not always in the worst case in every hop transmission, .
Table 3: in the example network of this paper, the PRR of nodes in each tier, the minimum number of parents , the number of retransmissions , and singlehop reliability are summarized in Table 3, where the singlehop reliability of node that the user required is .
According to the data of Table 3 and Theorem 13, we can obtain the data collection reliability of this example network .
4.6. Data Collection Delay
In the transmission cycle, due to the existence of data transmission interference, adjacent nodes can not simultaneously transmit data. We manually divide each layer into several subsets, and the nodes belonging to the subsets can be simultaneously transmitted, with each subset transmitted in sequence. As shown in Table 4, denotes the number of nodes in , denotes the number of subsets that can be transmitted simultaneously in , and denotes the maximum number of nodes in the subset.
Theorem 14. The time that all the nodes in the network need to complete the data transmission, that is, the time duration of a transmission cycle called data collection delay, is
Proof. Let denote the data volume of node in to send and denote the sending rate of node. The sending rate is equal to receiving rate of node in the network. Because the time required for the node to aggregate the data during the transmission and the transmission time of the electrical signal in the air over short distances are so short that they can be ignored, we only consider the time it takes for nodes to receive and send data. In this case, the child node at the th tier finishes sending data and the parent nodes in the th tier can finish receiving at the same time. Therefore, the time spent on sending and receiving data to and from the node can be calculated by the time required for the node to send the data, and it is . Due to the existence of data transmission interference, all nodes in can not transmit simultaneously and need to be divided into subsets that can be transmitted simultaneously. Therefore, all nodes in need slots to complete the transmission. The time required for all nodes in the network to complete the transmission is
4.7. Network Lifetime
Network lifetime is defined as the death time of the first dead node in the network. Therefore, the lifetime of a network depends on the node with the highest energy consumption in the network. In the network, the node that consumes the most energy is the node in . In addition, the function will be achieved only after a complete data transmission. Theorem 15 is given to measure the network lifetime.
Theorem 15. The maximum number of rounds that can complete a complete transmission before the death of a node with the largest energy consumption, called the network lifetime, is expressed as
Proof. Let denote the initial energy carried by node which is the same for each node, and , denote the energy consumption for sending and receiving of node that consumes the max energy in one cycle. Let denote the energy consumption of node in for sending data and denote the energy consumption of node in for receiving data. According to the analysis in Section 4.1, the energy consumption of the node in near sink is far greater than that of the node far from sink. Therefore, the nodes in will be the first to die, resulting in the destruction of the network structure, so that the entire network can not achieve a specific function, so the network can be seen as death. Because the majority of energy consumption of sensor nodes is used for data reception and transmission, the energy consumed by other functions can be negligible, so and . The network lifetime is the number of rounds that the node in can carry out under the initial carrying energy: , where is the largest integer not greater than .
5. Performance Analysis and Comparison
The performance of network is compared in this chapter before and after applying APRF scheme. The comparison was done under the receiving power of node dBm and the initial transmission power of dBm and dBm in our example network of this paper.
5.1. Transmission Power
After applying the APRF scheme, the transmission power of each node is adjusted accordingly. The transmission power changes of nodes at different layers before and after the APRF scheme are compared in Figures 14 and 15.
Obviously, it can be seen from Figures 14 and 15, after applying the APRF scheme, the transmission power of the nodes in all the tiers except the nodes in has been improved. Due to the power limitation, the nodes are adjusted to the maximum limited transmission power dBm.
5.2. Data Collection Reliability
After the APRF scheme is applied, the PRR, singlehop reliability, and data collection reliability have been significantly improved. The PRR of node, singlehop reliability of node, and data collection reliability are compared separately under the initial power of dBm and dBm.
As can be seen from Figures 16 and 17, after the APRF scheme is applied, the PRR of nodes in all tiers except reach over 0.999.
As can be seen from Figure 16, after applying the APRF scheme, the PRR of the nodes in , , , and are increased from 0.83311 to 0.99984, which is 20.01% higher than that before applying the APRF scheme.
As can be seen from Figure 17, with the APRF scheme, the PRR of nodes in increased from 0.67105 to 0.99984, which was 49.00% higher than that before applying the APRF scheme.
In Figures 18 and 19, the singlehop reliability of nodes is compared before and after using APRF under the initial transmission power of dBm and dBm, respectively.
As can be seen from Figure 18, after applying the APRF scheme, the singlehop reliability of nodes in , is improved from 0.97215 to 0.99984, which is 2.85% of increasing rate. The singlehop reliability of nodes in , increases from 0.97215 to 0.99999, which is 2.86% of increasing rate. The singlehop reliability of nodes is not greatly improved. The main reason is that before the APRF scheme is applied, the singlehop reliability of a node has already reached a high level in order to meet user requirements by using more retransmission times.
As can be seen from Figure 19, after applying the APRF scheme, the singlehop reliability of nodes in has been improved from 0.96440 to 0.99997 with an improvement of 3.69%. The singlehop reliability of nodes in has been raised from 0.96440 to 0.99999, increase by 3.69%. The singlehop reliability of node in and increased from 0.98829 to 0.99999, and the improvement was 1.18%. Obviously, the singlehop reliability improvement of nodes was still not as large as the case of dBm.
For the reliability of data collection , after APRF scheme is applied, is increased from 0.8682836 to 0.972095599 under dBm, increase by 11.96%. And is increased from 0.8977822 under dBm to 0.988255517 dBm, increase of 10.08%.
5.3. Transmission Time and Data Collection Delay
The reduction of node transmission time depends on the reduction of the volume of data received and transmitted by nodes. In Figures 20 and 21, the variation of the received data of node in each tier before and after using APRF is compared under dBm and dBm.
In addition, in Figures 20 and 21, the nodes in do not receive data, and the volume of data received by the nodes in other tiers is increased. In Figure 20, the volume of data received by nodes in increased by 20.43%. In Figure 21, that increased by 16.42%. This is because the increase of transmitting power of node makes the PRR improved. During the data transmission between nodes, the probability of packet loss is reduced.
In Figures 22 and 23, the changes of the volume of data transmitted before and after using APRF scheme are compared under dBm and dBm. There is an increase in the volume of data transmitted by nodes in , in Figure 22 and nodes in in Figure 23. This is because the nodes in these tiers receive an increased volume of data, and, because of the nature of Increasing Aggregation functions, the volume of data to send is also increased after aggregation. However, the data sent by nodes in , in Figure 22 and nodes in , , , and in Figure 23 have a significant decrease. This is because the number of retransmissions reduced after the node Packet Reception Rate is increased, so that the node to send the volume of data decreases.
In Figures 24 and 25, the change of transmission time of nodes in each tier is very similar to the change of transmitted data. The reduction of transmission time due to the decrease of retransmission times is much larger than that of some nodes due to the increase of node Packet Reception Rate increase. The network data collection delay decreased from 29.32 s to 22.10 s, and the decrease was 24.60% under dBm. And the network data collection delay decreased from 50.25 s to 29.96 s, decline of 40.37% under dBm.
5.4. Energy Consumption and Network Lifetime
As can be seen in Figures 26 and 27, the energy consumed by nodes receiving data increases because APRF increases the data received by nodes at all nodes due to the increase of the PRR of nodes.
As can be seen in Figures 28 and 29, the energy consumed by nodes in all tiers receiving data increases, and the nodes in , , , and have a very high increase rate. Because APRF scheme is applied, the transmission power of nodes has been greatly improved.
As can be seen from Figures 30 and 31, after the APRF scheme is applied, the energy consumption of nodes in each tier is improved. This is because the increase of transmission power enables a corresponding increase in the reception rate of node. This increases the volume of data sent by each node to the child node and eventually increases the energy consumption of the node in the first layer on the original basis. However, compared with the increase of energy consumption, the network using APRF scheme shows a significant improvement in data collection reliability and data collection delay, especially under dBm, with 15.96% energy consumption increase and 13.77% decrease in lifetime, in exchange for a 10.08% increase in reliability and a 40.37% reduction in data collection delay.
6. Conclusion
The limited energy resource of sensor node is one of the major constraints in wireless sensor networks, so that it is extremely vital task to design a data collection strategy for sensor networks that is optimized for data collection reliability, network lifetime and delay.
Although previous studies have proposed the use of broadcastbased data collection methods to improve the reliability of data collection for the constant data aggregation model, however, no research has proposed effective data collection strategies for the more general pattern of incremental data aggregation, given the concern that the volume of data that is being broadcasted by the general growth data aggregation model has increased dramatically. In this paper, we theoretically analyzed and revealed the energy consumption characteristics of WSN under the mode of general Increasing Aggregation under broadcast mode. We found that the energy consumption of sensor network nodes is still in a good range even in the broadcast data mode under the Increasing Aggregation mode.
Based on our analysis in this paper, a crosslayer optimizing protocol named Adaptive transmission Power control based Reliable data Forwarding (APRF) scheme by using broadcast is proposed to improve the reliability of network and reduce data collection delay. Different from the previous methods of collecting broadcast data, the scheme that adjusts to higher transmission power for a large number of nodes in energy remaining areas is used in this paper and nodes in a hotspots area near the sinks node are of the same transmission power as in the past based on the network energy consumption. This makes APRF scheme have better performance than ever before. The theoretical and experimental results show that, applying APRF scheme under initial transmission power of dBm, although the lifetime dropped by 13.77%, delay could be reduced by 40.37% and network reliability by 10.08% and volume of data arriving at sink increased by 10.08% compared with retransmissiononly mechanism.
Conflicts of Interest
The authors declare that there are no conflicts of interest regarding the publication of this article.
Acknowledgments
This work was supported in part by the National Natural Science Foundation of China (61772554, 61379110, 61370229, 61370178, 61572526, and 61572528), the National Basic Research Program of China (973 Program) (2014CB046305), the Science and Technology Projects of Guangdong Province, China (2016B010109008 and 2016B030305004), and the Science and Technology Projects of Guangzhou Municipality, China (201604010054, 201604016019).