Low Overhead MAC Protocol for Low Data Rate Wireless Sensor Networks

We propose the low overhead media access control protocol (LO-MAC), a new low latency, energy efficient MAC protocol for low data rate wireless sensor networks. LO-MAC uses both duty cycling and multihop forwarding from the routing-enhanced MAC protocol (RMAC) to reduce idle listening and sleep latency, respectively. Besides that, LO-MAC introduces a traffic-adaptive mechanism, which is based on the fact that a node can sense a busy channel within its carrier sensing range. This mechanism uses carrier sensing as a binary signal, and effectively notifies nodes of the existence of a data packet. The nodes then either keep their radios on to take part in multihop data forwarding or turn them off to save energy. Moreover, LO-MAC takes full advantage of the broadcast nature of wireless communication and lets a packet have different meanings when it is in transmission range of different nodes. In LO-MAC, not only is a request-to-send/clear-to-send pair replaced with a Pioneer (PION) packet, as in RMAC, but also a data packet can play both data and acknowledgement functions. Therefore, control overhead and overhearing energy are significantly reduced. Our simulation results show that LO-MAC outperforms RMAC in terms of energy efficiency while achieving comparable end-to-end latency.


Introduction
Wireless sensor networks (WSNs) usually contain a large number of wireless battery-attached sensor nodes capable of sensing the environment and communicating in ad-hoc or structure fashion. However, replacing or recharging the batteries used in WSNs is often difficult, so network lifetime may be bound by limited battery capacity [1]. Reducing energy consumption is thus a challenge when designing a media access control (MAC) protocol for WSNs. A major source of energy consumption in a WSN is the idle listening mode in which a node remains awake for a long time when no actual data transmission is required by the network. Several MAC protocol design approaches have been proposed to reduce idle listening energy, the most successful one being MAC in which a duty cycling scheme is applied [2,3]. In this type of MAC protocol, the nodes periodically alternate between active and sleep states in operational cycles. When being in the active state, the nodes can transmit and receive packets; otherwise, each node turns off its radio.
The original duty cycling scheme, however, adds significant latency in multi-hop packet delivery, since it supports only single hop transmissions. Consequently, a packet that is received at an intermediate node must wait until the upcoming cycle to be forwarded to a neighbor node; the packet hence incurs the so-called sleep latency. The best way to shorten the latency is to increase the number of hops through which the packet can pass in a single cycle. The routing-enhanced MAC protocol (RMAC) [4] introduces a typical solution to reduce excessive end-to-end latency and commences a new class of MAC called multi-hop MAC. The multi-hop MAC preserves the energy-efficient advantage of duty cycling. Moreover, the MAC exploits cross-layer information to relay a data packet via multiple hops in an operational cycle, which contains Sync, Data, and Sleep periods. During the Sync period, the nodes are synchronized their clocks in order to together wake up at the beginning of next cycle. The Data period can be used to schedule multihop data transmissions in the subsequent Sleep period. The number of hops a packet can traverse in a cycle mainly 2 International Journal of Distributed Sensor Networks depends on the length of the Data period. The more hops the packet can pass, the longer the required Data period is. By using that long Data period, nodes likely waste energy by keeping their radios on, that is, the long Listening period problem when there is no data transmission in the network.
On the other hand, wireless MAC protocols often use control packets in order to achieve reliability and avoid the well-known hidden/terminal problems, for example, the request-to-send (RTS)/clear-to-send (CTS)/DATA/acknowledge (ACK) handshake in [2,5]. However, the control overhead, which is the energy consumed to transmit control packets, has been investigated as another large source of energy wastage in WSNs. For example, control packets induces high overheads in the range of 40 to 75% of the channel capacity [6]. Therefore, it is necessary to reduce the control overhead, and intuitively decreasing the number of packets transmitted is only one possible approach. Fortunately, wireless networks are substantially characterized by the broadcast nature, meaning that active nodes usually "overhear" packet content not intended for them when neighboring nodes participate in communication. By exploiting the nature, we can force a packet to play more than one role, as a result both the control overhead and packet overhearing overhead decrease. RMAC also follows this approach and replaces an RTS/CTS pair with a pioneer (PION) packet; however, the protocol still incurs large overhead in data packet transmissions.
We propose the low overhead MAC protocol (LO-MAC), a new duty cycling MAC protocol, which can solve the abovementioned problems. LO-MAC uses carrier sensing techniques to bypass the long Listening period problem, which occurs very frequently under low traffic load environments. After the Sync period, a short period called the carrier sensing period is introduced. In this period, we use the advantage of the carrier sensing technique to inform the nodes of the status of the network traffic. The nodes then decide to turn their radios off or keep them on to involve in a possible data transmission. LO-MAC is also able to transmit data packets over multiple hops in a single cycle and thoroughly use the broadcast nature to minimize the control overhead. In LO-MAC, not only a control packet replaces an RTS/CTS pair in the Data period, but also a data packet plays both acknowledge and data roles in the Sleep period.
The rest of this paper is organized as follows. Section 2 discusses related work regarding reduced energy consumption and latency MAC protocols. Section 3 gives a detailed description of LO-MAC. Section 4 presents results from the evaluation of LO-MAC. Finally, Section 5 concludes the paper.

Related Work
Due to the limitation in battery capacity, energy efficiency is the primary goal in MAC protocol design for WSNs. Initially, many proposed protocols focus on the energy efficiency at the expense of other parameters (e.g., throughput, latency, fairness). Ye et al. [2] have reported that the main source of energy wastage is idle listening energy and propose the sensor-MAC protocol (S-MAC). S-MAC contains the original duty cycling concept to reduce the overhead of idle listening. S-MAC is more energy efficient than the full wake IEEE 802.11 MAC protocol, but it introduces a very large end-to-end latency. Asynchronous MAC protocols such as B-MAC [7], X-MAC [8], RI-MAC [9], A-MAC [10], PW-MAC [11], and CyMAC [12] can free the synchronous overhead but still have the large latency. That is because a WSN is basically multi-hop, and a data packet needs several cycle to reach a multi-hop destination.
Several modified versions of S-MAC have been developed to shorten the latency. One is S-MAC with adaptive listening [3]. In this protocol, a node that "overhears" the control packet (e.g., RTS or CTS) of another node's transmission is going to wake up for a short time when the transmission finishes. If the waken node is the next-hop along a multihop path, it and its neighbor immediately receive/transmit the data packet rather than waiting until the next operational cycle. This protocol not only can deliver a packet at up to two hops per operational cycle, but can also significantly increase energy consumption when many neighboring nodes can "overhear" RTS or CTS and wake up, although only one is chosen as the next hop node. Another development is timeout MAC (T-MAC) [13]. T-MAC reduces latency by adaptively changing the ending time of an Active period when there is no traffic transmission near the node. T-MAC can conserve energy better than S-MAC and S-MAC with adaptive listening and can also deliver a packet at most two hops within an operational cycle. In T-MAC, when downstream nodes are unlikely to "overhear" upstream communication two hops away, they are not going to remain awake to receive a forwarded packet. Moreover, T-MAC may also increase energy consumption, since many nodes other than the intended next-hop node are going to remain awake.
Different to the previous approaches, Shu et al. [4] propose RMAC that can forward a data packet via multiple (more than two) hops in a cycle. To enable multi-hop data forwarding, RMAC's nodes relay a cross-layer control packet (i.e., PION) during a Data period in order to schedule a transmission in the subsequent Sleep period. By conveying the cross-layer information, a PION can replace a traditional RTS/CTS pair, hence reducing control overhead. The number of hops over which RMAC can forward a data packet during an operational cycle is limited by the duration of the Data period. That long Data period becomes a source of energy wastage in low data rate environments, that is, the long Listening period problem. Several improvements of RMAC have been introduced [14,15], but these protocols focused on supporting more data or more hops in a cycle rather than solving the problem. Another development of RMAC is demand wakeup MAC (DW-MAC) [16], which is designed to support dynamic traffic loads. Comparing to RMAC, DW-MAC outperforms RMAC under high traffic loads, but DW-MAC consumes same overhead and achieves higher latency under low traffic loads. That is because in DW-MAC a data transmission starts at a subsequent duration after the beginning of Sleep period which is the starting point of RMAC's data transmission. However, the two protocols share International Journal of Distributed Sensor Networks 3 the manner of relaying control packet during the Data period; hence the problem still remains in DW-MAC.
In our previous work, we have proposed two trafficadaptive mechanisms to solve the long Listening problem. The first mechanism, which is adopted by MAC 2 [17], uses the first bit of SYNC packet as an indicator of the status of network traffic. The status is then informed to the network by the exchange of SYNC packets. MAC 2 is based on DW-MAC, and outperforms DW-MAC in a wide range of traffic loads. However, under low traffic loads, MAC 2 also introduces longer latency than RMAC with the same reason as in DW-MAC. Being different with the first one, the second mechanism informs the traffic status by exploiting carrier sensing technique. We have applied the second mechanism to RMAC and introduced a new protocol RMAC with carrier sensing (RMAC-CS) [18]. RMAC-CS outperforms RMAC in terms of energy efficiency but has a slightly longer latency and the same control overhead. LO-MAC protocol also adopts the basis of multi-hop MAC and avoids the long Listening problem using carrier sensing technique. The unique characteristic of LO-MAC is that the protocol uses not only a control packet as an RTS/CTS pair, but also a data packet with two data/acknowledge functions. By so doing, LO-MAC can minimize the control overhead. Moreover, our extensive simulations reveal that with a larger value of duty cycle, LO-MAC achieves an even better performance in terms of both energy efficiency and latency under low data rate environments.

Overview.
LO-MAC is a duty cycling contention-based MAC protocol, which employs carrier sense multiple access with collision avoidance (CSMA/CA) for accessing channel task. In LO-MAC, the packet structure, short interframe space (SIFS) and distributed interframe space (DIFS) are inherited from IEEE 802.11 [5]. The protocol supports multihop transmissions in an operational cycle, which is divided into four periods: Sync, carrier sensing, Data, and Sleep. LO-MAC's nodes wake up together at the beginning of the Sync period, during which they exchange SYNC packets to synchronize their local clocks. In the carrier sensing period, an adaptive mechanism, which exploits the carrier sensing technique, is introduced. The mechanism notifies the nodes of the existence of traffic in the network and lets them keep the radios on or turn them off at the beginning of Data period. In the former case the nodes follow an idle cycle, and in the later case they involve in a busy cycle. In the busy cycle, the nodes may exchange cross-layer control packets during the Data period to schedule multi-hop data transmissions in the subsequent Sleep period.

Adaptive Mechanism Using Carrier Sensing.
As previously explained, the Data period is a key parameter of multi-hop MAC, since it is necessary to initialize multi-hop transmission to achieve a balance between energy efficiency and delivery latency. However, in low data rate environments, nodes may not have packets to be transmitted in most cycles. In this case, nodes needlessly waste energy during the Data period, that is, the long Listening problem. Multi-hop MAC is more efficient if it can let the nodes go to sleep when there is no data in the network; otherwise, it maintains multi-hop flow transmission. To accomplish this, we add a short period called carrier sensing (length cs ) right before the Data period of the multi-hop MAC protocol. During the carrier sensing period, the nodes without pending packets use clear channel assessment (CCA) to determine whether the channel is busy or idle. On the other hand, the nodes with pending data and the node sensing busy channel immediately broadcast busy tones. Thus, all nodes that carrier-sensed the channel as busy or transmitted a busy tone can recognize the existence of data packet and remain on during the Data period. Rather than every node waking up for the entire Data period, a node only wakes up for cs when there are no packets to be transmitted from its neighborhood nodes. The benefit of the carrier sensing period is that the total length of the carrier sensing process, even in multiple hops, is negligible if compared with the length of the Data period. This is possible when the CCA time for compliant radio is reported less than 15 in a typical sensor mote [19] as well as in the specification of IEEE 802.11 [5]. In our evaluation, we use a much larger cs which is designed to support a very large number of hops in the multi-hop flow. Additionally, busy tones do not contain any information that needs to be decoded. The only function of busy tones is to enable other nodes to detect the channel as busy. The advantage of not having information in a busy tone is that multiple nodes can transmit simultaneously, causing collisions at the receivers without hindering the protocol. If a collision occurs at a receiving node, the node can still detect the channel as busy and remain on for the Data period. We set the maximum number of busy tones a node can send in the carrier sensing period to one. The nodes those are sending the busy packets cannot sense the channel, but this case still works in LO-MAC because the nodes already know the channel as busy; therefore, they remain awake in the subsequent Data period. Figure 1 illustrates two types of operational cycles in LO-MAC. Two nodes I1 and I2 exchange SYNC packets during the Sync period. If these two nodes sense the channel as idle 4 International Journal of Distributed Sensor Networks during the carrier sensing period, they follow an idle cycle. Otherwise, they follow a busy cycle and take part in a multihop forwarding flow in the upcoming Sleep and Data periods.

Multihop Data Transmission in a Busy
Cycle. In wireless networks, an inherent characteristic is the broadcast nature, meaning that an active node usually "hears" a packet when it is within transmission range of nodes participating in a transmission. Depending on the content of the packet and the process of handling the received packet at the node, the broadcast nature may be advantageous or become a source of overhearing overhead (i.e., the node has to receive useless packets). We use this characteristic to enable multi-hop transmission and conserve energy in designing LO-MAC. Figure 2 gives an overview of multi-hop transmission in a LO-MAC's busy cycle. The scenario includes four nodes: source S, intermediate nodes (I1 and I2), and destination D. All nodes wake up together at the beginning of the Sync period. They keep their radios on at least until the beginning of the Data period, since the traffic-adaptive mechanism allows them to detect the existence of pending data at S. During the Data period, a multi-hop transmission is initiated as follows. S starts to transmit the first cross-layer control packet to I1, and I1 stores the cross-layer information then modifies and relays the control packet to I2. The process is repeated at I2, and the control packet reaches D. The crosslayer information is used to schedule the wake up time in the subsequent Sleep period. The nodes are woken up at the scheduled time and implement the multi-hop data packet transmission similar to relaying control packet.

Initiating Multihop Transmission.
Multi-hop transmission is initiated during the Data period by exchanging the PION packets. In LO-MAC, the construction of a PION packet and the exchange process are inherited from RMAC [4]. The PION packet is constructed by adding cross-layer fields to the original IEEE 802.11 RTS packet. The additional fields, which come from the routing layer, are hop count (the number of hops the PION has traveled) and the final destination. Hence, the new packet PION can play both RTS/CTS roles as well as provide a scheduling function.
A PION is initiated by S and relayed by I1 and I2 during the Data period. During its entire life cycle, a PION packet plays the RTS role regarding a downstream node and the CTS role regarding an upstream node. We describe the PION exchange progress for a 4-node scenario in the Data period shown in Figure 2. The source node has a data packet and starts its PION after a contention window (CW). Intermediate node 1 (I1) receives and relays the PION to its downstream node I2. The PION from I1 serves as both CTS to S and RTS to I2. However, in contrast to the traditional RTS/CTS exchange, the node has to wait at least until the subsequent Sleep period to implement actual data transmission after sending a PION packet. Upon receiving I1's PION, I2 performs the same steps as I1. This process of receiving a PION and immediately transmitting another PION continues until either the final destination has received the PION, or the end of the current Data period has been reached.
On the other hand, the PION packet also provides scheduling information for all nodes in its relay path. The hop count field of a PION packet is used to schedule the wake-up time of nodes in the Sleep period. Unlike in RMAC, the LO-MAC scheduling function works as follows. Suppose that a node is the th hop during the PION transmission in the current cycle. We denote the node's wake-up time in the upcoming Sleep period as wake up ( ), which is the subsequent time difference from the start of the Sleep period and calculated as wake up ( ) = ( − 1) ( DATA + SIFS ) . (1) Here, DATA is the time it takes to send a single data packet, and SIFS is the length of the short interframe space (SIFS) period. To simplify, we assume that all data packets in the sensor network are the same size, so DATA could be a preset value. Otherwise, the DATA information can be included in the PION packet, so every node can calculate the correct wake-up time.

Multihop Data Transmission. Similar to RMAC and other multi-hop MAC protocols, LO-MAC's multi-hop data
transmission is also implemented in the Sleep period. A source node immediately generates a data packet for a downstream node at the beginning of the Sleep period, and it stays awake for at least the SIFS period plus a small period to receive an acknowledge signal from its neighbor. The data packet needs the SIFS period for packet processing in each node. It is then relayed to a downstream node in the same way as for the PION packet. When the data packet is relayed by each intermediate node, it also plays the role of an ACK packet for the upstream node. If a downstream node fully receives the data packet, it may waste more energy than receiving an ACK. The reason is that the size of data packet is bigger than the size of ACK, for example, four times bigger in RMAC. Therefore the ack function of the data packet is achieved in a different way, as follows.
The node stays in the awake state for a short period ((SIFS + 1) ms in our simulations) after transmitting a data packet to "listen" to the channel. The node verifies the next hop transmission when it receives a peak signal (i.e., the first bit from a transmitting packet). The main idea of the verification is that the node receives only a part of data packet in a similar way as recognizing the Start Frame Delimiter as in [20]. If no packet arrives at the node during the awake time, that means it receives no acknowledge signal. The node then requests for a retransmission of the data packet. If the data packet cannot reach the destination in the current cycle, the last node in the relaying process sends back an ACK packet. On the other hand, when the data packet reaches the destination node, after the SIFS period, the destination node also sends an ACK to confirm the success of flow transmission. The node, which participates in a multi-hop flow and is at one hop before the destination, keeps radio on until it fully receives the ACK packet. In LO-MAC, nodes go International Journal of Distributed Sensor Networks to sleep when they receive either the acknowledge signals or receive the ACK packets.
In the above-mentioned scenario, as soon as the Sleep period starts S and I1 immediately start sending/receiving their data packet. Other nodes in a multi-hop path, which successfully transmits PION in the Data period, go to sleep to save energy. Each node later wakes up at the scheduled time to receive the data packet from the upstream node and relays the packet to the downstream node. For example, node I2 goes to sleep when the Sleep period begins, but it wakes up at the scheduled time when I1 is ready to forward the data packet to I2. This process is described in the Sleep period of Figure 2.
In LO-MAC, we also keep the network allocation vector and frame loss handling as in RMAC.

Performance Evaluation
We use the network simulator ns-2 [21] to evaluate LO-MAC's performance. Each sensor node has a single omni-directional antenna through which the combined free space and two-ray ground reflection radio propagation models are employed. Key networking parameters are shown in Table 1, where power consumption parameters are set to typical values for a Mica2 radio (CC1000) [22]. The 250 m transmission range and the 550 m carrier sensing range are modeled after the 914-MHz Lucent WaveLAN DSSS radio interface; although not typical for a sensor node, we use these parameters to make our results comparable to RMAC. In our evaluation of power efficiency, we focus on the energy consumed by radios but ignore the energy consumed by other components such as CPU and memory [23]. The transmission time and size of packets are listed in Table 2. All the duration parameters of an operational cycle of RMAC are presented in Table 3. We denote the length of a cycle and the durations for Sync, Data, and Sleep periods as cycle , and sync , data , sleep , respectively. These durations are calculated with two different duty cycles at 5 and 10%. Note that the duty cycle parameter  dc is calculated as follows: dc = ( sync + data )/ cycle , whereas cycle is fixed at 4465 ms. In the evaluation of LO-MAC, we use the same dc-related and duration-related parameters as in the RMAC's, except the sleep . Since we add a 5 ms carrier sensing period in LO-MAC, the length of Sleep period is shortened by an amount of cs .
To simplify our evaluations, we ensure that networks that we use are connected networks. In addition, we do not include routing traffic in the simulations. We also assume that there is a routing protocol deployed to provide the shortest path between any two nodes. We simulate two scenarios: a multi-hop chain and a network scenario. In the chain scenario, the nodes are arranged in a straight line, and their neighbors are placed 200 meters apart, as shown in

Multihop Chain Scenario.
We first evaluate LO-MAC in an 11-node chain scenario. In this evaluation, we use a single flow to send packets at a constant rate from node 0 at the beginning of the chain to the destination node 10, which is farthest node from the source. We vary the interval between two consecutive packets from 10 to 60 seconds. Each simulation lasts for a total of 3600 seconds, and the duty cycle is kept to 5% in all nodes. We compare the performance between LO-MAC and RMAC. Figure 5 shows the average energy consumption over all the sensors in the chain. The average energy consumption is calculated by dividing the total energy consumed in the simulation by the total number of sensors. The error bars show the minimum and maximum values for a single sensor's energy consumption. When the traffic load increases; that is,  There are two reasons for this. The first one is LO-MAC has the adaptive mechanism; the nodes save power by turning the radio off when no data packet exists in the idle cycles. The second is that during the busy cycles in LO-MAC, the nodes transmit fewer packets than in RMAC. For example, for an N-hop transmission in a cycle, the RMAC's nodes transmit (N − 1) more ACK packets than the LO-MAC nodes do. Moreover, the same amount of energy is consumed for receiving the ACK packets. Figure 6 shows the average delivery latency in the multihop chain scenario. The error bars show the minimum and maximum values of delivery latency. Using an additional period ( cs ), the starting point of data transmission (i.e., the beginning of Sleep period) in LO-MAC is later than in RMAC. However, in LO-MAC a node finishes the data transmission sooner than in RMAC, since LO-MAC's node does not send the ACK packets as mentioned above. That means the node just needs a SIFS to start its data relaying. Moreover, the transmission time of an ACK is even longer than cs , so the delivery latency in LO-MAC is shorter than in RMAC. The difference between those two values is negligible comparing with sleep . As shown in Figure 6, in this scenario almost the packets need more than one cycle to reach the destination, hence they incur the large sleep latency. In addition, the random process of selecting time slot in the contention window also affects the latency. The sooner the time slot is selected, the better the value of latency is achieved as proven in our previous work [24]. Then we conclude that LO-MAC and RMAC achieve comparable delivery latency in the multi-hop chain scenario.

Random Network Scenario.
In the evaluation of the network scenario, we adopt the same traffic generation method that is introduced in the original RMAC's paper. The traffic load is generated as follows. At a periodic interval of 50 seconds, a sensor node is randomly selected to send one   data packet to the sink at the top-right corner. If a node is selected to send a packet, it is taken out of the selection pool. The selecting order is similar in both LO-MAC and RMAC's evaluations. The number of packets is varied from 0 to 100; and the total time of each simulation is 5300 seconds. In this evaluation, we use two values of the duty cycle 5% and 10% to investigate the effect of duty cycle to the performance. We denote LO-MAC dc=5% , RMAC dc=5% and LO-MAC dc=10% , RMAC dc=10% as LO-MAC and RMAC in the cases of 5% and 10% duty cycle, respectively. The evaluation results for the random network scenario are shown in Figures 7 and 8.
In Figure 7, the middle point is the average value of energy consumption. The average energy consumption value is calculated by dividing the total energy consumption by the total number of nodes. The error bars express the maximum and minimum values of a node's energy consumption during the simulation time. When there is no traffic in the network, the nodes in LO-MAC dc=5% and LO-MAC dc=10% consume the same amount of energy, but less than those in RMAC. That shows the maximum effect of the adaptive method in  terms of energy saving. In this case, RMAC dc=10% 's nodes consume more energy than RMAC dc=5% 's nodes, since data in RMAC dc=10% is larger than the one in RMAC dc=5% . When the traffic load increases, the energy consumption in all four scenarios increases. Among them, LO-MAC dc=10% achieves the best performance in energy saving. Moreover, the LO-MAC's protocols have better performance comparing with those of RMAC regardless of duty cycle value. That is because 50 seconds is long enough for a packet to be successfully received at the sink, in most cases only one data flow is transmitted in the network. If there is no packet in the network, sensor nodes still consume energy because they have to exchange synchronized information during the Sync period and "listen" to the channel during the carrier sensing period. Another interesting observation from Figure 7 is that with the higher value of duty cycle, the RMAC's nodes consume more energy, but the LO-MAC's nodes do less. That shows the dominant benefit of multi-hop MAC; the longer the Data period is, the more hops the packet can traverse in a cycle. Therefore, a packet may need fewer cycles to reach the destination, then the number of idle cycle is increased, or the more energy is saved. Figure 8 shows the average value of delivery latency, and the error bar shows the maximum and minimum values. We have the same conclusion as in the chain scenario in the case of 5% duty cycle, since the difference between the average latency in RMAC dc=5% and LO-MAC dc=5% is negligible. However, the latency in LO-MAC dc=10% is slightly shorter than that in RMAC dc=10% . The reason is that all of the packets are transmitted from the random nodes to the sink in one operational cycle.
To furthermore investigate the performance of the protocols, we simulate in the same network scenario with the same traffic model, but the total number of generated packet is 200. The total simulation time is 10300 seconds. We measure the energy consumption of each node and track the delivery latency of all packets. The cumulative distribution function (CDF) of the energy consumption and the delivery latency is shown in Figures 9 and 10, respectively. The results in Figure 9   indicate that even with 5% duty cycle, LO-MAC outperforms the two cases of RMAC, and LO-MAC dc=10% achieves the best in terms of energy efficiency. Moreover, Figure 10 shows that in LO-MAC dc=10% the delivery latency is comparable with the one in RMAC dc=10% but outperforms the others.

Conclusion
We propose LO-MAC, which is an energy efficient, multi-hop MAC protocol for low data rate sensor networks. LO-MAC exploits the characteristics of wireless communication to achieve energy efficiency and low delivery latency. The trafficadaptive mechanism based on carrier sensing effectively controls the period of keeping the nodes' radios on in a cycle, hence, preventing the long Listening period problem. Moreover, LO-MAC relays a packet via multiple hops to reduce end-to-end latency. During the relaying path, a packet from one node often plays two roles to its upstream and downstream neighbors by exploiting the broadcast nature of wireless communication. By doing so, the number of transmissions is significantly reduced; therefore, the protocol can effectively prevent overhearing and control overhead. Our simulation results show that LO-MAC outperforms RMAC in terms of energy efficiency and achieves comparable delivery latency.