1. Introduction
Wireless Sensor Networks (WSNs) are one of the most promising technologies in decades. WSNs are frequently utilized in applications such as medical, autonomous vehicles, networking, smart homes, environmental areas and other emergency applications [
1,
2,
3,
4,
5,
6,
7,
8]. They are composed of huge quantities of sensor nodes capable of sensing, communication, processing, and storage [
9,
10]. Transferring sensing data between these nodes faces several challenges due to the node’s constraints, e.g., energy limitation [
11], low computational capability, and low memory. Without the proper solution to these challenges, the current situation of WSNs cannot meet the requirements of Internet of Things (IoT) [
12]. Since these nodes operate with little battery power, an important focus in research is making the sensor nodes live as long as possible. The majority of works, however, assume the link connecting two nodes to be fully symmetric. Asymmetric links, however, create possibilities where the same data is resent, wasting valuable energy. Link asymmetry is considered to be one of the most important characteristics of radio links, which can significantly affect the medium access layer’s performance. In low power WSNs, many of the wireless links are asymmetric [
13].
Figure 1 gives scenarios where the links can be asymmetric.
Figure 1a shows the scenario in which the sender is able to send data but the receiver cannot. In
Figure 1b, the receiver is able to send the beacon and the sender cannot. Finally, in
Figure 1c, neither side is able to send data and control information. In this research work, we consider a mixture of above three types whenever any link asymmetry occurs.
Several research works describe physical, logical, operational and legal reasons for link asymmetry [
14,
15]. Firstly, transmission range is the primary reasons for link asymmetry. D. Ganesan et al. found that the percentage of asymmetric links is negligible at short distances and increases significantly with higher distances [
16]. Maximum transmission range of a sensor node is determined by the hardware properties such as the antenna and RF circuits. In these cases, transmission range problem cannot be solved without changing the nodes’ hardware such as the antenna or RF circuit. Secondly, link asymmetry may arise due to power limitation, which is a major challenge for WSN. It is highly likely that different nodes in WSN have different level of residual energy. For instance, Node
A has enough energy to transmit data to Node
B; however, Node
B does not have enough energy to reach
A or may choose not to reach Node
A to save energy. Thus, non-uniform residual energy of sensor nodes is another major cause of link asymmetry. Thirdly, interference is another significant factor that causes asymmetric link. Suppose that Nodes
A and
B can reach each other, however, if Node
B transmits at a power level that suffices to reach Node
A, it may cause interfere with a Node
C that is a valid user of the same frequency spectrum. This unintended situation occurs due to the co-existence of of different wireless technologies using a same frequency band. Thus, Node
B is not allowed to transmit at a power level above a given threshold, which causes the link asymmetry. Finally, some environmental factors, obstacles, and even weather conditions may cause the link asymmetry [
17]. In this paper, we only consider the varying transmission range of the sensor nodes as the cause of link asymmetry.
The link quality of wireless nodes can be measured by Link Quality Estimator (LQE). Two types of LQE are described in [
18,
19]: hardware-based and software-based. Received Signal Strength Indicator (RSSI) and Link Quality Indicator (LQI) are two types of hardware-based approaches. Sensor nodes provide a RSSI register that estimates the signal strength of the received packet. A LQI is another hardware-based vendor specific indicator where the first eight symbols are considered for scoring from 50 to 110. The higher is the value, the better is the link quality and vice versa. Packet Reception Ratio (PRR) is a software-based technique that measures link quality by calculating the proportion of packets that were successfully received to the number of packets transmitted in total. The absolute difference between PRR of sender to receiver and PRR of receiver to sender is used to identify the link asymmetry [
20]. Several researchers analyze this difference to classify the wireless link. If this difference is greater than 1%, the link is asymmetric [
21]. According to K. Srinibasan et al. [
22], when the uplink and downlink PRR difference is greater than 40%, then the wireless link is considered asymmetric. L. Sang et al. transmitted 100 packets at different levels of power to analyze asymmetric links [
13].
Table 1 shows that, at high power levels, links are mostly symmetric, but, as power level decreases, link asymmetry sees an increase.
Link asymmetry has significant impact on the quality of connectivity [
23]. It degrades the overall network performance. In [
24], P. Misra et al. showed that protocols that do not consider link asymmetry may work fine in simulation but fail completely in real life deployments. Hence, link asymmetry is one major but challenging issue in designing a MAC protocol for WSNs. A significant portion of radio links, observed in recent studies, are asymmetric in typical WSN deployment. It is also observed from test-bed results that asymmetric links mostly occur due to low transmission power. In such cases, nodes fail to transmit data which eventually make the network almost non-functioning. Therefore, considering link asymmetry while designing a MAC protocol is indispensable.
Battery power limitation is another key challenging issue in WSNs. “Synchronous duty cycling” is a preliminary approach to reduce energy consumption [
25,
26]. However, it needs clock synchronization, which increases the system overhead. To overcome this problem, “asynchronous duty cycling” approach is introduced that saves more energy compared to the synchronous approach. Asynchronous protocols work in two modes: sender initiated mode and receiver initiated mode. In sender initiated mode, sender sends preamble [
27] and in receiver initiated mode, receiver sends beacon to seek attention of the transmitting node [
28]. Previous finding shows that receiver initiated mode is more energy efficient than sender initiated mode [
29]. Asynchronous MAC protocol in receiver initiated mode is therefore drawing much attention from the researcher community for its inherent capability of saving more energy. However, link asymmetry is a key factor that adversely affect receiver initiated asynchronous MAC protocols to a great extent where nodes mostly remain in sleep mode to save more energy. An extensive literature review presented in “
Section 2: Related Work” shows that ASYM-MAC [
30] works on an asynchronous mechanism that sufficiently takes the link asymmetry into consideration.
Nodes can keep a routing table that stores the link status of surrounding nodes. They can exchange a beacon message to find asymmetric links and update periodically. However, wireless sensor nodes are memory constrained. Moreover, extra periodic beacon exchange increases the possibility of collisions as well as energy consumption. To avoid the asymmetric link problem in low power asynchronous WSNs, we have been motivated to exploit cooperative communication without an extra control message exchange.
One of the apparent solutions to avoid the link asymmetry is maintaining and periodically updating the neighborhood table. Unlike our previous work reported in [
31], here we consider a tree-based protocol. None of the existing work has used cooperative communication with a tree-topology with consideration to the asymmetric link situation to the best of our knowledge. In the preliminary version of this work, we avoid link asymmetry through cooperative communication, but we do not select an efficient cooperative node. In this work, however, we enlarge our earlier work in several aspects. This work’s specific contributions are as follow:
We design a tree-based technique to solve link asymmetry between the sender to receiver, receiver to sender or both.
In addition to the tree formation information, we develop an efficient algorithm to select an efficient helper node. Unlike ASYM-MAC, this scheme can deal with the asymmetric link scenario more strictly in low power WSNs.
For effective helper selection, we propose a wake-up schedule algorithm for each node by which the most efficient node among sender’s neighbors wakes up early to send its beacon.
The performance of the proposed protocol was evaluated through a simulation model based on the OMNeT++ simulation framework.
Performance comparisons with state-of-the-art MAC protocol ASYM-MAC showed that the proposed protocol outperforms the ASYM-MAC protocol in terms of energy consumption, PRR, Packet Delivery Ratio (PDR), and end-to-end delay.
The organization of the remainder of this paper is as follows: In
Section 2, the related works are elaborated.
Section 3 discusses problem statements and network architectures.
Section 4 presents COASYM-MAC, this paper’s proposed protocol. The experimental results are described in
Section 5, and finally the conclusion and some future scope of this work are discussed in
Section 6.
2. Related Work
Many researchers have proposed different MAC protocols in recent years with an aim to reduce the sensor nodes’ energy consumption. The most common method is duty cycling [
25,
26], which involves turning off the transceiver intermittently to reduce the amount of energy used. Next, a sender-initiated protocol is introduced [
27] in which the sender sends a long preamble to seek the receiver’s attention. This method has advantages over the synchronous MAC protocol because nodes in sender-initiated protocols do not need clock synchronization to create a schedule. A long preamble does, however, cause additional overhead and introduce a higher chance of collision. Following this, the long preambles have been converted to packets. The most popular MAC protocol that packetizes the preamble is X-MAC [
32]. X-MAC has shorter preambles instead of one long one, allowing the receiver to send acknowledgements early between the preambles. However, the shorter preambles still cannot completely overcome the extra overhead. Following sender-initiated protocols, the receiver-initiated protocol has been introduced [
28]. In this protocol, the receiver initiates contact and sends a beacon to get the attention of the sender. This introduces significantly less overhead than the preambles sent in the sender-initiated protocols. However, our literature review presented in this section found that even state-of-the-art protocols have not taken link asymmetry into consideration, and therefore may not work properly whenever asymmetric link occurs in real life deployment. In ADP-MAC protocol [
33], the receiver uses polling mechanism to ensure the reception of the preamble packet sent by the sender node. However, it does not consider the link asymmetry situation at any side. As a result, receiver fails to know the ongoing preamble packet by the sender in the case of sender to receiver link asymmetry and sender fails to get the early acknowledge by the receiver in case of receiver to sender link asymmetry. PW-MAC [
34] works over RI-MAC, and it predicts the wake-up time of the receiver based on previous sending schedule of the intended receiver. It has reduced energy associated with the idle listening of sender node that avoids early wake up. However, if receiver to sender link asymmetry arises, the sender wakes up in time without finding any beacon from the receiver. In the case of link asymmetry, the PW-MAC completely fails to utilize the prediction of wake-up time. A-MAC [
35], another receiver initiated asynchronous MAC protocol, works similar to RI-MAC but differs in the way that sender sends an auto acknowledgement message to the receiver to indicate that it has data to send. However, in the case of link asymmetry, receiver cannot receive data even though sender sends data packet after sending an acknowledgement. In EnRI-MAC [
36], a notification message is sent by the sender before it receives beacon from the receiver. The goal of sending wake-up notification is to inform other senders within the range of the same intended receiver that it has data to send. Despite getting beacons from the intended receiver, other nodes refrain from sending data in the current cycle. In the case of link asymmetry, other senders cannot get the wake-up notification. In such case, multiple senders transmit their data to the receiver resulting in collision.
As already stated in
Section 1, we explored the benefit of cooperative communication to avoid the asymmetric link problem. This section reviews related works divided into two broad categories: The asymmetric link based protocol followed by cooperative based protocol.
2.1. Asymmetric Link Based Protocol
Asymmetric links can drastically degrade the performance of low power WSNs. That is why some researchers have dealt with this asymmetric link in the network layer. P. Mitra et al. introduced Asymmetric Geographic Forwarding (A-GF) [
37] where they discovered asymmetric links by broadcasting beacons in the network. They increased the stability of the asymmetry by maintaining neighbor tables. Finally, they proposed an efficient route for data delivery. AsymRp (Asymmetric convergecast Routing Protocol) was proposed by B. Romdhani et al. [
38], who used two-hop neighbor information to select the common and intermediate neighbors for data and explicit acknowledgement transfer. However, using two-hop information in routing table increases the complexity. Moreover, due to memory constraint, holding a large number of information in table in a dense network has been a challenging task.
ASYM-MAC [
30] works over RI-MAC considering duty cycling. ASYM-MAC combines sender and receiver initiated MAC protocol. By default, system operates on receiver initiated mode. When sender cannot get beacon from its receiver, it waits for `t’ time and then switches to sender initiated mode where it sends its data followed by a long preamble. However, when sender gets beacon from receiver but sender cannot send data due to link asymmetry, this protocol works very poorly.
Figure 2a,b shows the working mechanism of ASYM-MAC. ASYM-MAC has two modes of operation: R-mode and T-mode. R-mode is the default mode in which a receiver-initiated MAC is used. ASYM-MAC switches its mode to T-mode when it fails to receive a probing packet from the intended receiver. This switching is triggered by a timeout that occurs after a certain period of time elapses without receiving the probing packet. In T-mode, the transmitter sends a series of small preamble packets to notify the receiver of the pending data transmission. Once the receiver captures the signal of on-going transmission of preamble packets, it also receives data from the sender.
In [
39], K. Pengwon et al. tried to solve the asymmetric link problem by using LQI and a dual tree topology. They used link quality estimators to construct the dual tree, where one is a collection tree and another is a dissemination tree. ERPPro [
40] performs energy-efficient reverse path routing for an asymmetric link. This protocol uses residual energy and link quality information to select a legitimate reverse path. L. Vyas et al. proposed a Dynamic Hierarchical Agglomerative Clustering-based protocol by considering asymmetric links [
41]. Besides WSNs, some other researchers [
42,
43,
44] have dealt with asymmetric links in underwater sensor networks and wireless mesh networks. L. Shu et al. observed the link asymmetry problem in duty cycled Industrial Wireless Sensor Networks [
45]. They showed that, when the link asymmetry increases, the nodes sleep less, hence, lifetime decreases.
2.2. Cooperative Based Protocol
In this paper, we deal with asymmetric links. Moreover, we exploit the cooperative communication in asymmetric links. There are many cooperative-based protocols in wireless sensor networks. Among the various types of cooperative based protocol, some of them consider asynchronous communication. In this work, we also consider the asynchronous mechanism, thus, in this subsection, we discuss some prominent asynchronous cooperative based communication mechanisms.
A.B. Nacef et al. proposed CL-MAC [
46], which uses cooperative communication in low power sensor networks. In CL-MAC, a piece of a shorter preamble packet is sent to each of the sender’s relay and destination nodes. This small preamble notifies all relays and receivers to awaken at a universal rendezvous (RDV) point. The main disadvantage of CL-MAC is the need for time synchronization, and the preamble, even though it is small, creates additional overhead. ARQCRI [
47] works over CL-MAC and tries to disregard time synchronization. When receivers send beacons, the sender transmits a coop message to notify the receiver to wait a few moments for the selection of the relay. When the relay is selected, then the sender transmits the data to the receiver and the relay. This method successfully ignores time synchronization, but is unable to handle the situation in which the sender is unable to send the coop message. CPS-MAC [
48] uses a series of short preambles to seek the attention of the receiver and all the neighbor nodes, which creates extra overhead like in CL-MAC. It offers a tree-based mechanism with one sibling, but, if there is more than one sibling, then there may be a possibility to relay data to more than one neighbor, which may create a collision. There is no mechanism for effective relay selection. In RIC-MAC [
49], there is no need for an extra preamble to wake up the receiver and neighbor nodes at a common RDV Point, as it uses two different wake-up beacons for the receiver and relay. The main disadvantage is that it creates huge idle listening. Moreover, similar to CPS-MAC and ARQ-CRI, it does not offer effective relay selection.
Table 2 shows the comparative analysis of some prominent asynchronous cooperative MACs for WSNs. Upon finding their inappropriateness, this paper attempts to build a cooperative communication based protocol that not only avoids the asymmetric link situation, but also selects relay nodes efficiently without the extra control message exchange or other clock synchronization problems. Thus, in short, a protocol is designed to avoid the link asymmetry situation.