1. Introduction
Wireless sensor networks (WSNs) are widely used in many applications, such as environmental monitoring, traffic control, product quality monitoring, mineral survey and disaster relief [
1]. One of its typical features is that each node can continuously work for a few months or up to a few years and its battery cannot be replaced after the exhaustion of battery energy. Therefore, how to prolong network lifetime in the case of constrained power and limited energy is one of key issues in WSNs. Most energy consumption of nodes in WSNs is in the process of communication, i.e., mainly in the aspects of multiple access for nodes to access and use channel, and their corresponding packet transmissions [
2]. Therefore, the design of energy-efficient medium access control (MAC) protocols has become a research hotspot in WSNs [
3,
4,
5].
To reduce the energy consumption and improve energy efficiency on multiple access, most MAC protocols use duty cycle mechanism [
3]. Duty cycle can be adjusted to adapt to variable traffic load. In the variable load adaptive MAC (VLA-MAC) protocol [
4], each node can estimate its traffic load through previous packet inter-arrival time and adaptively adjust its duty cycle. At high traffic load, each sender can transmit multiple data packets to its recipient without sleeping after the successful exchange of request-to-send (RTS) and clear-to-send (CTS) packets. Other nodes go to sleep period after sensing the control packets or data packets. This mechanism reduces delay and unnecessary overhead on overhearing and reservation. At low traffic load, the sender can reserve channel in sync phase, and after successful reservation other unrelated nodes can go to sleep period early, which can adapt to dynamic traffic load and improve energy efficiency. To reduce energy consumption on packet transmissions, in the rate adaptive MAC (RA-MAC) protocol [
5], each node estimates the channel gain and successful transmission probability of data packets by overhearing other nodes’ packet transmissions, and sends data packets using the data rate with the minimum energy consumption, thus improving network energy efficiency. Meanwhile, in order to adapt to channel state and improve energy efficiency, the protocol reduces the data rate after a data packet transmission failure and increases the data rate after successful data packet transmission for a certain times. To achieve good energy efficiency and obtain low delivery latency for both normal and emergency packets, a TDMA-based quasi-sleep-preempt-supported (QS-PS) MAC protocol is proposed [
6]. In the protocol, a tree structure is built for slot allocation in the starting phase. All nodes transmit their packets in the allocated slots, while entering the Q-Sleep mode in the other slots, which can reduce the clock rate of circuit for preserving some detecting ability. The node with emergency packets can broadcast a special designed m-sequence-based awakening message to wake up the whole network and preempts the right to use the current slot to transmit the packets without interference from other nodes by using a slot preemption strategy. This process continues until the emergency packets reach the root, thus fulfilling the fast delivery of the emergency packets.
In recent years, both multi-input multi-output (MIMO) and cooperative communication techniques can efficiently improve energy efficiency at a certain throughput and bit error rate (BER), by taking advantage of the broadcasting nature of wireless communication and independent fading characteristic of wireless channel to obtain spatial diversity. The MIMO technique employs multiple transmitting and receiving antennas to achieve spatial diversity and thus improves the system capacity and reduces energy consumption. However, in WSNs, due to the limitation of size and cost, it is difficult to install multiple antennas on each node. Therefore, it cannot be widely used in WSNs. In this case, the cooperative communication technique can transform the direct transmission link to the cooperative transmission link with better channel quality by exploiting cooperative nodes to help the sender forward data packets to its recipient, which constructs a virtual MIMO system and reduces energy consumption of data packet transmissions. Moreover, it can optimize local nodes’ transmission power and energy consumption as a whole and reasonably allocate transmission energy consumption among the sender and its cooperative node(s), thereby balancing local nodes’ energy consumption. Therefore, the cooperative communication technique can be used in WSNs to improve energy efficiency and extend network lifetime.
Early research work on cooperative communication techniques primarily focuses on the physical (PHY) layer [
7,
8]. In order to improve system capacity, decrease BER or reduce energy consumption, cooperative nodes can relay the data packet from the sender to its recipient through amplify-and-forward or decode-and-forward schemes [
7], or collaborate with the sender to transmit the data packets to the recipient with the help of distributed space-time coding (DSTC) scheme [
9]. Recently, more and more research work has applied cooperative communication techniques to high layers, such as MAC layer [
10,
11,
12,
13] and network layer [
1,
13,
14], thereby transforming the diversity gain obtained by the PHY layer to the higher layers. The MAC layer is close to PHY layer and its related protocol is adopted to coordinate multiple nodes sharing the channel, exchanging information and realizing cooperative transmissions, and thus avoiding packet collisions, improving throughput and energy efficiency and reducing delay [
15]. Therefore, the design of cooperative MAC protocols has significant influence on the effect of transforming diversity gain to the higher layers. Cooperative MAC protocols for wireless local area networks and mobile ad hoc networks are well studied. However, only a few cooperative MAC protocols are designed for WSNs to improve energy efficiency and extend network lifetime.
Motivated by this, we proposed a power-optimized cooperative MAC (PO-CMAC) protocol for WSNs in this paper. The main work includes two aspects. First, to prolong the lifetime of the WSNs with limited energy, we propose the lifetime-extended transmission power optimization (LETPO) algorithm based on the greedy algorithm and linear programming algorithm. This algorithm balances the energy consumption of the local network by maximizing the minimum residual energy of all the nodes participating in each data packet transmission. Second, based on the algorithm, we propose the PO-CMAC protocol resolving the problem that coordinates multiple nodes to access and use the wireless channel. With the help of a proposed cooperative node selection mechanism, the protocol can choose the nodes with the best channel quality to take part in the cooperative transmissions, thereby reducing the energy consumption of data packet transmissions and improving the nodes’ energy efficiency.
The main contributions of this paper are summarized as follows:
We consider both energy efficiency (i.e., the average consumed energy during each data packet transmission and the average number of data packets transmitted by each node) and energy utilization (i.e., the ratio of consumed network energy during network lifetime to the total network energy) to extend network lifetime and transmit more data packets in our proposed PO-CMAC protocol. With the help of the proposed LETPO algorithm, the protocol can balance the energy consumption of different nodes and improve the network energy utilization. Additionally, by using the proposed cooperative node selection mechanism, the protocol can select the cooperative nodes with the highest channel gain to participate in each cooperative transmission to reduce the average energy consumption of data packet transmissions and improve the energy efficiency of every node.
Compared to the single node cooperation mode which is widely used in the current cooperative MAC protocols, we consider the node cooperation mode with multiple optimal cooperative nodes. The number of cooperative nodes taking part in the node cooperation can be changed in this protocol according to the actual optimization results of the proposed LETPO algorithm, thereby taking full advantage of the multiple best cooperative nodes in the network to achieve better effect than the single node cooperation mode.
We propose a cooperative node selection mechanism to guarantee multiple cooperative nodes to access wireless channel orderly according to their channel gains, which can avoid contention collisions and reduce extra cooperation overhead. According to the contention results, it can also optimize the transmission powers of the cooperative nodes to balance the energy consumption of the local network, which further transfers the cooperative gain and energy utility improved by the LETPO algorithm from the PHY layer to the MAC layer.
The remainder of the paper is organized as follows. In
Section 2, we introduce the related work of current cooperative MAC protocols. In
Section 3, the network model used in this paper is described. The proposed transmission power optimization algorithm is given in
Section 4, and the PO-CMAC protocol is presented in
Section 5, followed by performance evaluation in
Section 6. Conclusions are summarized in
Section 7.
2. Related Work
Cooperative MAC protocols tackle two key problems based on MAC protocols, i.e., when to cooperate and how to select the cooperative node(s). To resolve the first problem, it is critical to assess whether the node cooperation could improve the network performance and which kind of network performance is improved. The existing research work mainly focuses on two aspects of network performance, i.e., the network throughput and the transmission reliability [
15]. According to different opportunities of selecting cooperation, cooperative MAC protocols can be divided into two categories. The first category decides whether node cooperation is needed during reservation phase of MAC protocols according to whether the node cooperation can obtain cooperative gain. The second category adopts cooperative retransmission after the failure of direct transmission.
In the former cooperative MAC protocols, the sender or the cooperative nodes need to determine whether the cooperative transmission is adopted before the transmission of data packet. If at least one cooperative node can improve throughput or decrease the transmission delay, the cooperative transmission is initiated. Otherwise, the data packet is directly transmitted from the sender to the recipient. Typical protocols include the cooperative MAC (CoopMAC) protocol [
16] and the two-relay-based cooperative MAC (2rcMAC) protocol [
17]. Furthermore, a packet piggyback mechanism is used in the cooperative MAC-aggregation (CoopMACA) protocol [
18] and the active relay-based cooperative MAC (AR-CMAC) protocol [
15] to allow the cooperative node to send its own data packet without reservation, thus avoiding reservation collision and further improving throughput. Based on the traditional cooperative node selection criterion (i.e., throughput improvement), the optimal relay selection MAC (ORS-MAC) protocol [
19] also takes into account the transmission error probability, thus guaranteeing the reliability while improving the throughput.
The latter cooperative MAC protocols adopt the concept of cooperative automatic repeat request (ARQ). If the direct transmission failed and there existed cooperative nodes to successfully receive the data packets, the cooperative transmission is employed to improve successful transmission probability. Typical protocols are the cooperative diversity MAC (CD-MAC) protocol [
20], the differentiated cooperative MAC (DC-MAC) protocol [
21], the cooperative MAC protocols used in time division multiple access (TDMA) systems [
22,
23], the persistent relay carrier sensingmultiple access (PRCSMA) protocol [
24] and the network coding-based cooperative ARQ MAC (NCCARQ-MAC) protocol [
25]. In CD-MAC protocol, each sender selects its cooperative node by overhearing packet transmissions of its neighbors with respect to link quality, and retransmits the data packet using DSTC with the cooperative node if the direct transmission fails. In the cooperative TDMA protocols [
22,
23], the idle cooperative node of the sender retransmits the failed data packets in its timeslot, which guarantees the transmission reliability and avoids the throughput reduction. The PRCSMA and NCCARQ-MAC protocols modify the basic rules of the IEEE 802.11 MAC protocol to execute a distributed cooperative ARQ scheme in wireless networks in order to enhance their performance [
24,
25]. Network coding techniques are employed to benefit the energy efficiency of the NCCARQ-MAC protocol, as the number of the delivered bits increases by combining multiple data packets [
25].
According to the method to select cooperative nodes, cooperative MAC protocols can be divided into three categories: the sender-specified method, the recipient-specified method, and the cooperative node contention method. In early cooperative MAC protocols, such as the CoopMAC protocol [
16] and the relay-enabled distributed coordination function (rDCF) protocol [
26], the sender is responsible for the selection of the cooperative nodes based on a best cooperative node table (i.e., CoopTable) maintained by overhearing the packet transmissions of its neighbor nodes. Before the beginning of data packet transmissions, the sender looks up the CoopTable and applies the preselected best cooperative node to the cooperative transmission. In the recipient-specified cooperative MAC protocols, the recipient is responsible for selecting the best cooperative node for cooperative transmissions, like the on-demand cooperation with a selection of relays initiated by the destination equipment (OXIDE) protocol [
27]. In this protocol, each recipient maintains a best cooperative node table based on its overhearing of packet transmissions. If the direct transmission failed, the recipient selects the best cooperative node from the table and informs it to retransmit the data packet. The drawback of using the best cooperative node table is that constructing the table consumes the extra computing and storage resources, and the information of the best cooperative nodes is possibly out of date. In recent cooperative MAC protocols, such as 2rcMAC protocol [
17], CoopMACA protocol [
18], the rapid cooperation-differentiated MAC (RCD-MAC) protocol [
28], the priority-differentiated cooperative MAC protocol with contention resolution (CRP-CMAC) [
29] and the cooperative MAC protocol with rapid relay selection (RRS-CMAC) [
30], each potential cooperative node contends to participate in the cooperative transmission based on the instantaneous channel information. The better the channel quality is, the more possible it becomes the final cooperative node. This method is easy to operate and the information of the best cooperative node is not out-of-date. To avoid the packet collisions in the process of cooperative node contention and improve the MAC performance of cooperative transmissions, collision resolution schemes [
28,
29,
30] are used in this method.
From the above, we can see that most current cooperative MAC protocols mainly focus on improving the throughput and transmission reliability other than improving the energy efficiency. Considering that saving energy is the main challenge in WSNs, the cooperative MAC protocols for the purpose of improving the energy efficiency and extending the network lifetime are more and more proposed.
The objective of energy-efficient cooperative MAC protocols is twofold: optimize energy consumption for each data packet transmission and optimize the entire network lifetime. The first takes advantage of diversity gain generated by node cooperation to reduce the energy consumption for each data packet transmission by choosing the best cooperative node and thus improves the energy efficiency of entire network at a certain throughput and packet error rate (PER) [
31,
32,
33,
34]. Opportunistic energy-efficient (OEE) relay selection cooperative communication scheme [
31] defines the energy efficiency of data packet transmissions as the ratio of the channel capacity to the transmission power, and selects the nodes with the highest energy efficiency for cooperative transmissions to achieve the objective of improving the energy efficiency. Yang et al. [
32] select two groups of neighboring nodes near the sender and the recipient, respectively, to construct a virtual MIMO system. In this process, there may be several different groups of nodes satisfying the PER requirement. The protocol can select the two cooperative groups with the least energy consumption for cooperative transmissions to improve energy efficiency. The link-utility-based cooperative MAC (LC-MAC) protocol [
33] considers both throughput and energy efficiency. It calculates the weighted sum of the achieved throughput and needed energy by cooperating with a certain cooperative node and defines it as the link-utility of this cooperative link. Each candidate calculates the optimal transmission power and data rate for participating in cooperation to make its link-utility the largest. The node with the largest link-utility among all candidates will access channel firstly and take part in cooperation after contention, which results in the optimum throughput and energy efficiency of the entire network. The authors in [
34] adopt the model of cooperative retransmission and random network coding. The sender repeatedly transmits its data packet until its recipient or one of its cooperative nodes successfully receives it. If the recipient receives the data packet firstly, the data packet transmission ends. Otherwise, the cooperative node repeatedly transmits the data packet until the recipient successfully receives it. The protocol can obtain the average energy consumption based on the successful transmission probability of data packets among the sender, recipient and cooperative node, and minimize it by optimizing the transmission power of the sender and cooperative node. Thus, it can achieve the objective of energy efficiency improvement. However, in this type of cooperative MAC protocols, residual energy information (REI) of nodes is not considered and part nodes in the network drain out their energy more quickly than the others because of more frequent cooperative transmissions, thus decreasing the network lifetime.
The second category of cooperative MAC protocols takes advantage of cooperation among nodes to balance local network energy consumption, avoids some nodes consuming their energy too quickly and makes full use of each node’s energy in the whole network, thereby improving network energy utilization and extending network lifetime [
35,
36,
37]. Given that the nodes with higher transmission rate consume more energy than those with lower transmission rate due to more frequent cooperative transmissions, the lifetime extended cooperative MAC (LECMAC) protocol [
35] reduces the opportunity of a node to participate in cooperation transmissions when its residual energy is low by increasing its cost function to extend the network lifetime. However, this protocol balances the local network energy consumption only when the residual energy is very little. Therefore, its effect to extend the network lifetime is limited. The authors in [
36] employ the greedy algorithm to optimize transmission power of the sender and a single cooperative node in order to balance the energy consumption of the local network, improve energy utilization and extend network lifetime. However, this protocol only considers the residual energy of nodes and does not consider the average energy consumption on each data packet transmission. Therefore, it cannot guarantee that the entire network can transmit more data packets in the presence of the same initial energy. That is to say, the protocol does not consider the energy efficiency of data packet transmissions. The delay- and energy-aware cooperative MAC (DEC-MAC) protocol [
37] does not adopt transmission power optimization and attempts to balance the energy consumption of the sensor nodes by taking into account a node’s residual energy and packet delivery delay as part of the relay selection metric, thus increasing the network lifetime. Its relay selection algorithm exploits the process of elimination and the complementary cumulative distribution function for determining the most optimal relay within the shortest time period.
Both the wireless sensor network cooperative MAC (WcoopMAC) protocol [
38] and the total power control MAC (TPC-MAC) protocol [
39] consider both the energy efficiency of each node and the energy utilization of the entire network. In these distributed cooperative MAC protocols, the transmission powers are optimally allocated to source and relay nodes with the objective of minimizing the total transmission power under the average BER constraint. Based on this, both channel state information (CSI) and residual energy information (REI) of sensor nodes are considered to choose one cooperative node for cooperative transmission, which can significantly prolong network lifetime compared with non-cooperative MAC protocols.
In summary, the existing research work on improving energy efficiency and extending network lifetime can be improved in the following aspects. Firstly, the existing cooperative MAC protocols mainly use single cooperative node and do not consider the cooperation of multiple cooperative nodes. By exploiting the potential multiple cooperative nodes, the cooperative transmissions can improve the energy efficiency and extend network lifetime more effectively. Furthermore, with the application of randomized DSTC (RDSTC) technique [
40] to cooperative communication, the cooperative MAC protocols using multiple cooperative nodes are feasible [
41,
42]. Secondly, most of existing cooperative MAC protocols consider either the energy efficiency of each node or the energy utilization of the entire network, and lack a comprehensive consideration of both factors. In general, in order to optimize energy consumption for each data packet transmission, transmission power optimization should be adopted in the cooperative MAC protocols and channel quality (or channel state information) should be considered in the process of relay selection, and in order to optimize the entire network lifetime, the residual energy information should be considered.
Therefore, this paper proposes a power-optimized cooperative MAC (PO-CMAC) protocol based on multiple cooperative nodes and considering both the energy consumption of each data packet transmission and network energy utilization. Each node located in one-hop transmission range of both the sender and its recipient contends to become a cooperative node and participate in cooperative transmission according to the instantaneous channel quality between itself and the sender/recipient, thus reducing the transmission energy consumption and improving energy efficiency. Meanwhile, the sender can optimize its transmission power and each cooperative node’s transmission power according to the proposed LETPO algorithm, thus balancing the energy consumption of the local nodes. Through the above two points, the PO-CMAC protocol can efficiently extend entire network lifetime.
3. Network Model
In WSNs, all nodes share a wireless channel to exchange control packets and data packets. Each node can estimate the channel gain between itself and other nodes based on the signal-to-noise ratio (SNR) of received control packets. For simplicity, we assume that the communication channels between any two nodes are bidirectionally symmetrical, i.e., they have the same channel gain, and the channel is invariant during the transmission session of each data packet. The recipient can decode data packets sent from the sender and its cooperative nodes by maximum ratio combining (MRC) technique.
Each node in WSNs has a half-duplex transceiver with the maximum transmission power Pmax. Its transmission power can be continuously adjusted within the range of Pmax according to the actual requirement. All nodes have the same initial energy, and their batteries cannot be charged if exhausted. If the residual battery energy of a node is insufficient to send the current packet, we consider that its battery energy is exhausted. For simplicity, this paper only considers the energy efficiency of WSNs in the transmission of information, and ignores the energy consumed in sensing and data processing.
Figure 1 shows the cooperative transmission model adopted in this paper. During the current data packet transmission, there are several one-hop neighbor nodes (i.e., R
1, R
2 and R
3) of both the sender S and its recipient D, and the current energy of these nodes are
ES,
ED,
,
and
, respectively. In traditional direct transmission model, the sender S transmits its data packets to its recipient D directly. The corresponding channel gain is
hSD, and can be obtained by the recipient from receiving cooperative RTS (CRTS) packet and specified in its cooperative CTS (CCTS) packet for the sender and cooperative nodes. In the cooperative transmission model, the sender S transmits its data packets with a lower transmission power than that in the direct transmission model, and the recipient cannot decode the data packets but receive and save the data packets. Some common neighbor nodes of S and D (such as R
1, R
2 and R
3 in
Figure 1) can decode the data packets successfully, and forward them to the recipient. The corresponding channel gains are
and
(
i = 1, 2, 3), respectively. Channel gain
hSR can be obtained by the cooperative node from receiving CRTS packet and specified in its help-to-send (HTS) packet for the sender and recipient. Channel gain
hRD is assumed to be equal to channel gain
hDR, which can be obtained by the cooperative node from receiving CCTS packet. For asymmetric wireless channels, the sender and cooperative node can obtain channel gain
hRD by this way: the recipient obtained channel gain
hRD from recently received control packets or data packets from the cooperative node and specifies this value in its CCTS packet. The recipient can use the MRC technique to decode the data packets from the sender and these cooperative nodes. This two-hop transmission method is the cooperative transmission model of multiple nodes used in this paper.
In order to guarantee the recipient successfully decoding the data packets, improve the node energy efficiency and extend the network lifetime, the key issues in this cooperative transmission model include how much transmission power the sender should use to transmit data packets, which common neighbor nodes should take part in the cooperative transmission, and how much transmission power each cooperative node should use to forward the data packets. To resolve these issues, we propose the LETPO algorithm and PO-CMAC protocol.
5. Power-Optimized Cooperative MAC Protocol
The above LETPO algorithm achieves the objective of optimizing the transmission powers of both the sender and its multiple cooperative nodes theoretically. However, during the execution of the algorithm, each node should transmit its channel gain and residual energy to the sender through a control packet. Then the sender performs the transmission power optimization algorithm with these parameters and declares the optimization results to the cooperative nodes with another control packet. Finally, the sender and cooperative nodes transmit the data packets by using their optimized transmission powers, i.e., the sender transmits the data packets using the optimized transmission power PS and each cooperative node Ri relays the data packets using the optimized transmission power .
To perform the LETPO algorithm efficiently, there are still two issues to be addressed. Firstly, if there are many potential cooperative nodes satisfying the constraint condition shown in Equations (9), (12), (13) and (16), how to select parts of them to transmit control packets to the sender, thus avoiding too much delay and energy overhead. Secondly, we should determine the transmission sequence of these control packets to avoid packet collisions.
To address the above issues, execute the LETPO algorithm more efficiently and extend the network lifetime for WSNs, we propose the PO-CMAC protocol. As shown in
Figure 2, the protocol includes three phases, namely, the channel reservation phase, the cooperative node selection phase, and the data packet transmission phase.
5.1. Channel Reservation Phase
When the sender S has a data packet to send and senses the channel idle, it sends the cooperative RTS (CRTS) packet to its recipient D like IEEE 802.11 distributed coordination function (DCF) protocol. On receiving the CRTS packet correctly, the recipient replies with a cooperative CTS (CCTS) packet if the channel is available from its perspective. With the help of the CRTS/CCTS handshake, other nodes in the network know the data packet transmission between S and D and set their own network allocation vectors (NAVs) to avoid packet transmission collisions. Meanwhile, S and D can estimate the channel gain hSD by the received SNR of the CRTS and CCTS. The node Ri receiving both CRTS and CCTS knows that it is the common neighbor node of S and D and estimates the channel gain and . The CRTS packet contains the residual energy of the sender ES, and the CCTS packet contains the channel gain hSD. With the information in control packets, the common neighbor nodes Ri of S and D can determine whether its corresponding parameters satisfy Equations (9), (12), (13) and (16). If satisfied, the node Ri can take part in the process of cooperative node contention.
5.2. Cooperative Node Selection Phase
In the cooperative node selection phase, the nodes satisfying the constraint conditions of cooperation contend to be cooperative nodes by sending help-to-send (HTS) packet to the sender. There are two issues to be addressed in this process, i.e., the contention access delay of the HTS packet transmission and the method to determine the optimal group of cooperative nodes.
5.2.1. Contention Access Delay of HTS Packet Transmission
If all the common neighbor nodes Ri satisfying the constraint conditions of cooperation send their HTS packets to the sender, there will be too much unnecessary delay, energy overhead and HTS packet collisions. To avoid this case, the maximum number of HTS packets sent to the sender during the cooperative node selection phase is set to be M in the PO-CMAC protocol. The value of M can be set in advance based on the network scale, the node density and the traffic load distribution of the network.
Moreover, a mechanism is needed to evaluate the ability of all common neighbor nodes to take part in the cooperative transmissions, in order to guarantee the nodes with higher cooperative gain to access the channel and send the HTS packet earlier to participate in the cooperative transmissions, thus extending the network lifetime.
The length of the network lifetime can be reflected by the total number of transmitted data packets
n during the whole network lifetime. For simplicity, it can be formulated as follows:
where
E0 is the initial energy of the network,
η is the energy utilization of the network, and
EPKT is the average energy consumption of each data packet transmission.
Equation (17) shows that, with a certain initial energy, the total number of data packet transmissions is proportional to the energy utilization of the network and inversely proportional to the energy consumption of each data packet transmission. The LETPO algorithm balances the local network energy consumption by maximizing the minimum residual energy of all related nodes according to the greedy algorithm. In this process, the energy utilization is fully considered and all nodes in the network drain out their residual energy as evenly as possible, thus extending the network lifetime. However, it overlooks the energy consumption during each data packet transmission. In other words, the LETPO algorithm concerns the energy utilization more than the energy efficiency. Therefore, in the cooperative node selection phase, we should focus on the energy consumption of each data packet transmission cooperated by the selected cooperative nodes through the corresponding cooperative links. That is to say, we also consider the energy efficiency improvement in the cooperative node selection phase.
The energy consumption of each data packet transmission cooperated by a single cooperative node R
i can be expressed as:
where
PSRi need to satisfy Equation (3), and the transmission power
PRiD of the cooperative node
Ri needs to satisfy the following condition:
Considering the constraint conditions of the channel gain
hSRi and
hRiD in Equations (12), (13) and (16), to minimize
EPKT-Ri in Equation (18),
PSRi and
PRiD should be set to the following value:
Substituting Equations (20) and (21) into Equation (18), we get:
The above equation shows the minimum energy consumption of one data packet transmission cooperated by single cooperative node Ri through its cooperative link is . Its value is related to the channel gain between the cooperative node Ri and the corresponding sender/recipient. Namely, represents the comprehensive channel quality of cooperative link. The smaller it is, the more energy efficientthis cooperative link is, i.e., the higher cooperative gain this cooperative node has to participate in the cooperative transmission, and thus the sooner the cooperative node should transmit its HTS packet to the sender to contend for cooperative transmission.
For this reason, in the cooperative node selection phase, each node needs to wait a certain access delay
tRi as follows:
where
TW is the maximum waiting time allowed for cooperative nodes to contend to access the channel. Each cooperative node calculates its access delay
at the beginning of the contention and start to wait an interval of
. At the same time, each cooperative node senses the channel. When it senses the HTS packet transmission from other nodes, it stops counting the access delay and continues as soon as the HTS packet transmission ends. When the counting of a node’s access delay ends and the contention phase does not finish, the node transmits its HTS packet to the sender. As shown in
Figure 2, if the access delays of all potential cooperative nodes in an order from small to large are
t1,
t2, …,
ti, …, and
tM, the first HTS packet is transmitted at
t1 after the beginning of contention phase, and the second HTS packet is transmitted at
t2 −
t1 after the end of the first HTS packet transmission. In the same way, the
M-th HTS packet is transmitted at
tM −
tM-1 after the end of the (
M − 1)-th HTS packet. This method can avoid the HTS packet collisions from different cooperative nodes.
5.2.2. Optimal Cooperative Node Group
All the cooperative nodes that transmit their HTS packet successfully to the sender from the beginning of the cooperative node contention phase to its end form the optimalcooperative node group to participate in the power-optimized cooperative transmission. According to different ending manners of the cooperative contention phase, there are three cases to determine the optimal cooperative node group.
- (1)
The first case is that the number of HTS packets transmitted to the sender reaches the predefined maximum number of selected cooperative nodes
M. As shown in
Figure 3, on receiving the
M-th HTS packet, the sender calculates the optimal transmission powers of itself and all the cooperative nodes based on the information of
M HTS packets (including the corresponding cooperative nodes’ residual energy and channel gain) and the channel gain estimated by itself. Then it broadcasts the optimization results to the cooperative nodes through an optimized-power-declaration (OPD) packet. Meanwhile, all the other cooperative nodes that have not transmitted their HTS packets stop their predefined HTS packet transmissions because they sensed
M HTS packet transmissions and received the OPD packet.
- (2)
As shown in
Figure 4, the second case lies in that there are no HTS packet transmissions during the time interval of
TE after a certain HTS packet transmission. When the cooperative nodes that prepare to transmit their HTS packets sense this phenomenon, they will not transmit their HTS packets anymore. Because the sequence of HTS packet transmissions reflects the cooperative gains of the nodes to take part in the cooperative transmission, if the sender has received a few HTS packets, it indicates that some cooperative nodes with higher cooperative gain can participate in the cooperative transmission. In this case, the waiting time for the subsequent HTS packet transmissions should decrease gradually in order to avoid wasting too much time on waiting for the HTS packets of the cooperative nodes with lower cooperative gain and thus leading to more overhead than their incurred cooperative gain.
TE can be set as follows:
where
k is the number of already-transmitted HTS packets in the network. The value of
TE decreases as
k increases, which illustrates that the more HTS packets have been received by the sender, the shorter the time of waiting for the subsequent HTS packet transmissions is. If there are no HTS packet transmissions during an interval of
TE, the cooperative contention phase prematurely ends. Furthermore, based on
k HTS packets, the sender calculates the optimal transmission powers of itself and its
k selected cooperative nodes, and declares the results through an OPD packet.
- (3)
Figure 5 shows the third case that the HTS packets transmitted by different nodes collide with each other. In this case, other cooperative nodes sense the collisions and give up transmitting their own HTS packets. When the sender senses the collisions, it transmits a negative RTS (NRTS) packet, which includes the addresses of the nodes whose HTS packets have been received correctly. After the nodes that lead to the HTS packet collisions receive the NRTS packet, they realize that their HTS packets are not received correctly. On receiving the NRTS packet, these nodes select a random time from (0,
TR) as the new access delay of the HTS packets and begin counting. Meanwhile, these cooperative nodes keep sensing the channel. When a cooperative node senses the HTS packet transmission from another cooperative node, it pauses the counting and continues the counting after the current HTS transmission. It transmits its HTS packet at the end of its access delay counting. If the waiting time exceeds
TR, the cooperative contention phase ends because there will be no more HTS packet transmissions. The sender calculates the optimal transmission powers based on the received HTS packets and declares the results through an OPD packet. The reason for this HTS retransmission strategy is that the nodes with higher cooperative gain should always have priority to be employed than the nodes with lower cooperative gain.
On receiving the OPD packet, each cooperative node knows whether it will take part in the following data packet transmission phase and the value of its corresponding transmission power. Then the PO-CMAC protocol enters into the data packet transmission phase.
Combining this cooperative node selection strategy with the LETPO algorithm, we can consider both the average energy consumption of each data packet transmission (i.e., the nodes’ energy efficiency) and the energy utilization of the network, thus extending the network lifetime efficiently.
5.3. Data Packet Transmission Phase
In the data packet transmission phase, the data packets are transmitted from the sender to its recipient through two-hop manner, i.e., from the sender to the cooperative nodes and then from the cooperative nodes to the recipient. As shown in
Figure 6, at the beginning of the data packet transmission phase, the sender broadcasts its data packet to its cooperative nodes and recipient using the optimal transmission power
PS calculated during the cooperative node selection phase. Since the optimal transmission power
PS is lower than
PD, which is a threshold of correctly decoding in direct transmission, the recipient cannot decode the data packet except receiving and saving it. The cooperative nodes forward the data packet to the recipient using the optimal transmission powers declared in the OPD packet. Then the recipient decodes the data packet based on the data packet sent from the sender and those forwarded from the cooperative nodes by using MRC technique. If the recipient successfully decodes the data packet, it will reply with an acknowledgment (ACK) packet to the sender to confirm its successful data packet reception.
If the recipient cannot decode the data packet successfully, the data packet needs to be retransmitted. Because the recipient has saved the data packets from the sender and the cooperative nodes, it only needs an extra data packet transmission in a certain power in order to correctly decode the packet without wasting too much energy. In the cooperative node selection phase, the cooperative nodes transmit their HTS packets to the sender in an order of their cooperative ability to participate in the cooperative transmission. Therefore, we should choose the cooperative node with the highest cooperative gain to retransmit the data packet.
As shown in
Figure 7, if a data packet is not correctly decoded, a negative ACK (NACK) packet is transmitted by the recipient. On receiving this packet, all nodes that participate in the current data packet transmission record that this is the first NACK packet transmitted by the recipient. Then, the first cooperative node to transmit its HTS packet during the cooperative node selection phase retransmits the data packet. Furthermore, the recipient decodes the data packet combined with the previously-received data packets by MRC technique. If succeeded, the recipient replies with an ACK packet. Otherwise, as shown in
Figure 8, the recipient continues to transmit a NACK packet, and the second cooperative node to transmit its HTS packet during the cooperative node selection phase retransmits the data packet. This retransmission process repeats until the data packet is successfully decoded. If all selected cooperative nodes have retransmitted the data packet and the recipient still fails to decode the packet, the current data packet transmission fails and the sender will directly transmit the data packet to its recipient using the transmission power
PD.