Improvements in wireless sensor network (WSN) technology have resulted in a large number of applications. WSNs have been mainly used for monitoring applications, but they are also applicable to target tracking, health care, and monitoring with multimedia data. Nodes are generally deployed in environments where the exhausted batteries of sensor nodes are difficult to charge or replace. The primary goal of communication protocols in WSNs is to maximize energy efficiency in order to prolong network lifetime. In this paper, various medium access control (MAC) protocols for synchronous/asynchronous and single/multi-channel WSNs are investigated. Single-channel MAC protocols are categorized into synchronous and asynchronous approaches, and the advantages and disadvantages of each protocol are presented. The different features required in multi-channel WSNs compared to single-channel WSNs are also investigated, and surveys on multi-channel MAC protocols proposed for WSNs are provided. Then, existing broadcast schemes in such MAC protocols and efficient multi-hop broadcast protocols proposed for WSNs are provided. The limitations and challenges in many communication protocols according to this survey are pointed out, which will help future researches on the design of communication protocols for WSNs.
Developments in hardware technologies have enabled smaller sensor nodes with lower cost, which are composed of a processor, memory, and a radio transceiver. Untethered and unattended operation of wireless sensor networks (WSNs) is very attractive for a large number of applications due to the lack of human intervention. Traditionally, WSNs have been deployed for surveillance and monitoring applications. In these applications, WSNs should include a large number of sensor nodes with low data rate to successfully cover a wide area. However, as the computational and communicational capabilities of sensor devices are improved, WSNs can support more complicated applications, such as target tracking, health care [1], and monitoring with multimedia data.
Nodes in such WSN applications generally operate with limited battery capacity for a long time [2]. Unlike other wireless networks [3-5], it is difficult to charge or replace the exhausted batteries of deployed sensor nodes. In WSNs, communication between sensor nodes is the most energy consuming operation. Therefore, the primary objective of communication protocols in WSNs is to maximize energy efficiency in order to prolong network lifetime. To design a communication protocol for WSNs, it is a primary concern to minimize energy consumption for communication.
To efficiently communicate between sensor nodes, medium access control (MAC) should be designed to minimize energy consumption. Most MAC protocols in current WSNs adopt a duty-cycling technique that enables sensor nodes to alternately switch between active and sleep states in order to improve energy efficiency. The duty-cycled MAC protocols substantially reduce the potential energy dissipation mainly caused by idle listening and overhearing. The duty-cycled MAC protocols generally can be divided into two categories: synchronous and asynchronous. The difference between two classes and key MAC protocols for each class will be introduced in Section Ⅱ.
One of the major communication methods in WSNs is broadcasting. Broadcasting is a vital service to re-program sensor nodes in a network or to query specific data from all nodes. Since broadcast is a communication service in which every node in a network participates, the energy consumed for broadcasting is substantial. Therefore, a broadcast protocol for WSNs must be designed to minimize the factors of energy waste, such as redundant transmissions of identical broadcast packets and collisions.
In this paper, various MAC protocols for synchronous/ asynchronous and single/multi-channel WSNs are introduced. In addition, existing broadcast schemes are also presented in detail. The following shows key contributions and highlights of this paper:
● Single-channel MAC protocols are categorized into synchronous and asynchronous approaches, and the advantages and disadvantages of each protocol are introduced.● The different features required in multi-channel WSNs compared to single-channel WSNs are investigated, and a survey on multi-channel MAC protocols for WSNs is provided.● Existing broadcast schemes in various MAC protocols and efficient multi-hop broadcast protocols proposed for WSNs are introduced.
The rest of the paper is organized as follows: Section Ⅱ introduces MAC protocols for WSNs, and broadcast protocols for WSNs are presented in Section Ⅲ. The conclusion is presented in Section Ⅳ.
Ⅱ. MEDIUM ACCESS CONTROL IN WIRELESS SENSOR NETWORKS
>
A. Single-Channel MAC Protocols
Single-channel MAC protocols for WSNs can be divided into two categories.
The first approach is based on synchronization between sensor nodes. MAC protocols using this approach are referred to
In contrast with the synchronous approach, each sensor node in
1) Synchronous Single-Channel MAC Protocols
Sensor-MAC (S-MAC) [6] is based on local synchronization and utilizes a periodically scheduled sleep-listen scheme. Each node in S-MAC wakes up according to predetermined periodic wake-up schedules and periodically alternates listen and sleep states. In sleep states, a node turns off its radio transceiver to minimize energy consumption if it is not involved in any communications. Each node exchanges its schedule with neighbor nodes through broadcasting SYNC packets periodically in listen states. Fig. 1 shows the operation of S-MAC. In S-MAC, an
Timeout-MAC (T-MAC) [7] improves the adaptability in order to overcome the limitations of S-MAC. T-MAC is adaptable to various network traffic patterns. To handle traffic variations, T-MAC proposes an adaptive duty cycle technique by dynamically finishing active states. TMAC flexibly adapts active/sleep duty cycles with finegrained timeouts. T-MAC outperforms S-MAC in terms of energy efficiency in networks with variable traffic load.
In duty cycling WSNs, the delivery latency can be increased because nodes periodically turn off their radio interfaces. A routing-enhanced MAC (RMAC) [8] was proposed to solve this problem. RMAC utilizes crosslayer routing information in order to forward a packet through multiple hops in a single cycle. RMAC uses a
In RMAC the present operation cycle becomes revoked if data or an ACK packet loss occurs. To retransmit the packet, the sender should wait until the next operation cycle. To solve this problem, a retransmission-enhanced duty-cycle MAC (RE-MAC) [9] estimates the link quality between two adjacent nodes and reserves the wireless medium to retransmit the packet in the current operation cycle. RE-MAC predicts the traffic of the wireless medium by using physical layer information and supports fast retransmission in a single operation cycle. RE-MAC significantly reduces end-to-end delivery latency in environments with high packet loss.
2) Asynchronous Single-Channel MAC Protocols
Each sensor node in a network periodically samples the wireless medium according to its own schedule. If the medium is busy, it continuously waits until the medium becomes idle or a data packet arrives from a sender. In this case, a receiver node may not be ready to receive data after receiving the long preamble, due to interference or network errors. This problem leads to more energy consumption. To solve this problem, WiseMAC utilizes preamble sampling and provides a method of dynamic-length preambles to decrease idle listening. For a dynamic-length preamble, every node should have the knowledge of the schedules of neighbor nodes. Each node learns neighbor's sleep-listen schedules through acknowledgement packets while transmitting and receiving data packets to dynamically adjust the length of the preamble. Fig. 2 shows the operation of WiseMAC. However, WiseMAC has some drawbacks. Since this protocol operates based on independent sleep-listen scheduling of each node, a broadcast packet can be buffered in a sender for a long time. For broadcasting, the sender transmits a broadcast packet as many times as each of its neighbor nodes wakes up. These unnecessary transmissions cause additional energy waste and network congestion. In addition, WiseMAC does not provide any method to avoid or mitigate the hidden terminal problem [10].
RI-MAC [11] is a receiver-initiated asynchronous MAC protocol, and is shown in Fig. 3. Every node periodically wakes up according to its own schedule. If the wireless medium is idle after a node wakes up, it sends a beacon message to potential senders. After a sender receives the beacon, it immediately transmits a data packet to the intended receiver. Since RI-MAC uses a short beacon message, RI-MAC minimizes the time occupied by pairs of senders and receivers in the wireless medium for data transmissions. RI-MAC reduces energy consumption caused by overhearing and collisions. In addition, RI-MAC transmits data packets immediately after receiving beacon messages, so it leads to improvement of energy efficiency. However, in this protocol, a sender can suffer from long idle listening because it should stay active until an intended receiver wakes up and sends a beacon.
The pseudorandom asynchronous MAC protocol [12] was proposed in order to reduce the energy consumption caused by long idle listening of senders. Pseudorandom asynchronous MAC protocol uses a hash function to decide the next wake-up time of a receiver. The hash function determines the next wake-up time, which should be non-periodic. This novel mechanism significantly reduces idle listening of senders and also reduces repeated collisions. This protocol considerably improves energy efficiency with only slight overhead.
Asynchronous WSNs are inherently weak for end-toend delivery latency because each sender should wait to transmit a data packet until a receiver wakes up. A medium reservation MAC (MRMAC) [13] uses a beacon message with additional information composed of next packet arrival time (
>
B. Multi-Channel MAC Protocols
Numerous previous MAC protocols have been proposed based on single-channel communication. Each node in wireless networks shares the wireless medium with its adjacent nodes, so it is hard to eliminate contention and collisions in single-channel wireless networks [10]. Since single-channel-based communication uses only one channel, network throughput and capacity are limited. In networks with heavy traffic, sensor nodes may suffer from a large number of collisions, interference, low delivery ratio, and long delivery latency. In contrast, a multi-channel radio divides an available frequency into several orthogonal channels. Adjacent nodes can simultaneously transmit their packets through different channels because these channels do not interfere with each other. This not only helps to improve network throughput and capacity, but also to reduce collisions and interference. To efficiently design a multi-channel MAC protocol for WSNs, the following should be considered.
1) Concepts of Multi-Channel MAC Protocols
The channels in multi-channel networks are orthogonal and do not interfere with each other. Since nodes cannot communicate with each other when they operate on different channels, they should rendezvous on the same channel for communication.
Multi-channel MAC protocols can be classified according to channel assignment and the use of a control channel. There are three methods of channel assignment:
In the semi-dynamic channel assignment approach, each node is assigned to a channel for transmitting and receiving data [14-16]. In contrast, each node in the dynamic approach switches to a new channel in every wake-up schedule [17, 18]. Generally, in these two approaches, a node switches its channel to a neighbor node's channel for communication. This helps to utilize the multi-channel radio more efficiently, but these approaches require frequent channel switching. In addition, exchanging and maintaining the assigned channel information increase the overhead. Some protocols use a common control channel for channel rendezvous. The rendezvous channel and time for packet transmission can easily be negotiated, but the control channel is prone to bottleneck because all nodes transmit and receive control packets through the control channel for the start of data transmission. In addition, these protocols cannot transmit any packets when interference or jamming occurs on the control channel.
To utilize a multi-channel radio more effectively, it is beneficial for nodes to switch to channels which have good channel conditions. Channels with bad conditions can be produced due to concentrated traffic, interference, and jamming. Unlike single-channel protocols, multichannel protocols can avoid these problems by using multiple orthogonal channels. However, control-channelbased protocols face a serious problem when the control channel is in bad conditions. Fixed and semi-dynamic approaches can also suffer from the same problem if the assigned channels are in poor conditions. One of the solutions is to re-assign the radio to a channel with better conditions. In contrast, the dynamic-based protocols more effectively utilize the multi-channel radio than the other two approaches, because of frequent channel switching.
The main advantage of multi-channel protocols is that a node can transmit and receive data under less interference and collisions. Except for the fixed approach, semidynamic and dynamic approaches allow nodes to fully utilize orthogonal channels. However, a number of channel switching leads to more energy consumption and longer end-to-end delay [14], because a radio chip needs time and energy for channel switching, and it cannot transmit or receive data during channel switching. For this reason, multi-channel protocols should reduce the number of unnecessary channel switching. Each node in the dynamic approach switches its channel in every wakeup schedule. This problem causes an increase in unnecessary channel switching. In contrast, the semi-dynamic approach operates with less channel switching because nodes switch their channels only for communication.
2) Existing Works of Multi-Channel MAC Protocols
Le et al. [14] proposed a protocol to reduce the number of channel switching by considering channel conditions. The protocol utilizes the clustering-based approach, where all nodes in each cluster communicate on an identical channel. Initially, all nodes in a network communicate on an initial channel. They gradually switch to other channels when the initial channel becomes overloaded [5]. Each node periodically broadcasts information to measure the load of the channel on which it operates. Using this information, each node computes the probability that its neighbor nodes are able to successfully acquire the channel. If the probability is lower than a threshold, the node switches its radio to a new channel. This protocol reduces the number of unnecessary channel switching. Additionally, the protocol can avoid switching to overloaded channels by migrating to new channels. However, exchanging information increases the overhead, and nodes which are placed at the boundaries of clusters exchange control messages every second. The control message includes information, such as the channel status, the notification of channel switching, and the current channels of neighbor nodes.
MMSN and MC-LMAC are based on the semi-dynamic approach. These protocols collect 2-hop neighbor information for channel assignment. Only one channel is assigned to each node by using the collected information. This ensures that the channel assigned for each node is different from the channels assigned for other nodes within 2-hop distance. MMSN [15] is based on slotted carrier sensed multiple access (CSMA) and is composed of two parts:
In addition, MMSN enables adjacent nodes to avoid duplicated channel assignment. However, MMSN requires a number of channel switching because every node should switch its channel for every transmission. In addition, since channels are assigned to nodes when the network starts, it is hard for new nodes to join the network.
Multi-channel LMAC (MC-LMAC) [16] is based on single-channel LMAC [19]. LMAC assigns timeslots to nodes for medium access in single-channel WSNs. In MCLMAC, channels are also assigned together with timeslots. Each node maintains assignment information of its neighbor nodes. Fig. 4 shows channel and timeslot selection in a simple example. Each node maintains the neighbor nodes' information, where each row is a channel and each column is a timeslot. The gray cells indicate the channels and timeslots used by neighbor nodes. If a new node joins the network, it is informed of the assignment information by its neighbor nodes, and it selects an empty cell. In this example, the new node selects a cell that is not used within the 2-hop neighborhood. Each timeslot is composed of a
Y-MAC [17] was recently proposed for dense WSNs and is based on scheduling. Unlike MC-LMAC, each timeslot is assigned for only one node, and each node dynamically selects a channel for receiving data.
A sender wakes up on a receiver's base channel and transmits a packet to the receiver. If multiple senders want to transmit packets to the receiver, they contend for the medium. Finally, one of them acquires the opportunity to transmit data to the receiver. After the transmission is finished, the rest of the senders and the receiver switch to the next channel, and the senders contend again for the next transmission. The next channel is determined by a predefined channel sequence. The channel sequence should guarantee that only one node uses a channel among its neighbor nodes. This is the first dynamic channel assignment protocol which fully utilizes the multichannel radio. The predefined channel sequence helps to avoid potential collisions and contention with other adjacent nodes. However, nodes in Y-MAC switch their channel for every transmission. In addition, Y-MAC does not consider channel conditions. If interference or jamming occurs on the first channel of the channel sequence, it is hard for nodes to transmit or receive any packets. Furthermore, the contention and interference are increased in heavy traffic or dense networks [1], especially on nodes around a sink node.
MuChMAC [18] is a scheduling-based protocol using the dynamic approach, and adopts a parallel rendezvous scheme. Each node determines a channel to use at the next timeslot, as shown in Fig. 5a. The next channel is determined by a pseudorandom number generator by using the current timeslot number and node ID. Several nodes may choose the same channel at the same timeslot in dense networks. To avoid this problem, MuChMAC splits the timeslot into several sub-slots, and each node selects one of them. Most synchronized protocols require tight synchronization because the wake-up time may drift away from the ideal wake-up time due to clock-drift. In contrast, MuChMAC sends short preambles before a transmission, like WiseMAC, as shown in Fig. 5b. A sender wakes up at the estimated time and transmits a bunch of short preambles before transmitting data. MuChMAC fully utilizes the multi-channel radio by using dynamic channel selection. However, MuChMAC requires frequent channel switching because each node should switch its channel at every wake-up time. In addition, MuChMAC does not provide any method to avoid switching to channels with poor conditions.
Ⅲ. BROADCAST IN WIRELESS SENSOR NETWORKS
The common goal of broadcast in WSNs is to deliver data to every node in a network. Broadcast can be divided into two types:
Single-hop broadcast is quite simple in synchronous MAC protocols. Synchronized nodes easily exchange broadcast messages on their common schedules. Moreover, one broadcast message can reach multiple neighbor nodes. However, asynchronous MAC protocols are inherently weak for supporting single-hop broadcast, since nodes wake up independently. In asynchronous WSNs, nodes wake up according to their own duty cycle schedules. Therefore, it is challenging to efficiently support single-hop broadcast for asynchronous WSNs.
1) Single-Hop Broadcast in Single-Channel
The goal of single-hop broadcast for WSNs is to efficiently and reliably deliver a message to neighbor nodes within 1-hop distance. DW-MAC [20] is one synchronous MAC protocol. This protocol supports single-hop broadcast. A cycle in DW-MAC is composed of three parts: SYNC, DATA, and SLEEP. A node synchronizes with its neighbor nodes during the period of SYNC. A sender that has a broadcast message sends a
Single-hop broadcast in asynchronous MAC protocols is considerably complicated due to the independent wakeup schedule of each node. X-MAC is one of the asynchronous single-channel MAC protocols, and X-MACUPMA [21] is the implementation for the unified power management architecture (UPMA) for WSNs for TinyOS [22]. This implementation supports single-hop broadcast by repeatedly sending duplicate copies of a broadcast message at least as long as a sleep interval of nodes.
In RI-MAC [11], a sender waits for a
2) Single-Hop Broadcast in Multi-Channel
In synchronous multi-channel MAC protocols, singlehop broadcast can be easily implemented due to synchronization. Nodes in MC-LMAC [16], MuChMAC [23] and Y-MAC [17] simply broadcast the packet to their neighbor nodes. MC-LMAC supports single-hop broadcast without the requirement of some broadcast channels. In contrast, MuChMAC requires special broadcast slots to support broadcast.
IMMAC [24] is an asynchronous multi-channel MAC protocol with a receiver-based channel selection. To transmit a packet, a sender switches its interface to the channel of the intended receiver. In IMMAC, when a sender has a broadcast packet, it duplicates the packet in order to send out each copy on every channel. This mechanism causes degraded performance in multi-hop broadcast due to a large number of redundant transmissions.
EM-MAC [25] presents a receiver-initiated multi-channel MAC protocol that utilizes multi-channel rendezvous and dynamic channel selection. In EM-MAC, every node dynamically selects a channel among multiple orthogonal wireless channels. To communicate, senders predict wakeup times of receivers by using pseudorandom wake-up scheduling. EM-MAC provides a simple broadcast mechanism that allows a sender to transmit a broadcast message to neighbor nodes one-by-one. EM-MAC, however, does not provide any mechanism to reduce the redundant transmissions of the same message or collisions. A large number of redundant transmissions and collisions increase energy consumption and reduce network lifetime rapidly.
SMC MAC [26] and ARM [27] are control-channelbased asynchronous multi-channel MAC protocols. They provide a channel rendezvous scheme by using RTS/CTS transmission via the dedicated control channel. In SMC MAC, a sender that wants to broadcast transmits the packet through the control channel. Alternatively, nodes in ARM use an independent broadcast channel. Every node switches its radio interface to the broadcast channel for periodic intervals. When a sender wants to broadcast a packet, it sends the packet for a certain period that is long enough for neighbor nodes to switch their radio to the broadcast channel. Since SMC MAC and ARM support broadcast through only one channel (i.e., the control channel and the special broadcast channel, respectively), this causes a channel bottleneck problem if redundant transmissions occur frequently. To mitigate this problem, the multi-hop broadcast protocol should provide a mechanism for minimizing redundant transmissions of the same broadcast messages.
Multi-hop broadcast is a crucial service for higher-level operations in WSNs. The goal of multi-hop broadcast is to deliver a broadcast message to all nodes in a network. For data collection, nodes propagate queries across the whole network. Multi-hop broadcast is also used for network maintenance services such as network configuration and network reprogramming. Broadcast is comparatively simple in single-channel communication protocols, because only one channel is employed for data transmission. However, broadcast in multi-channel communication protocols is more complicated due to channel coordination and channel rendezvous.
>
C. Multi-Hop Broadcast Protocols
ADB [28] was proposed to support multi-hop broadcast in asynchronous WSNs with duty-cycling. ADB is based on RI-MAC and uses unicast. ADB updates the progress information of broadcast, which enables nodes to avoid unnecessary transmissions by delegating broadcast transmission to other nodes with good links. Then, this information is piggybacked on the broadcast messages, which is called an
However, ADB can only support multi-hop broadcast in triangle shapes. For example, suppose a quadrangular topology formed by four nodes where diagonal nodes (lying on the opposite corners of the quadrangular topology) are located out of mutual communication range. Node
EMBA [29] supports multi-hop broadcast while considering link quality over asynchronous single-channel MAC protocols. Wireless nodes in EMBA periodically measure the link quality of the wireless medium.
A node maintains a table which stores the link quality from itself to each of its neighbor nodes and periodically sends the link quality information to neighbor nodes. This is called an
In multi-hop broadcast, a forwarder that has the broadcast message sends it to each of its neighbor nodes. Then, nodes that receive the broadcast message prepare to operate as new forwarders. To reduce redundant transmissions, a forwarder offers guidance to its neighbor nodes by using the link quality information obtained through the advertisement procedure. The
Three types of guidance are used:
Fig. 7 shows the operation of EMBA in a topology formed by three nodes
A survey of the state-of-the-art communication protocols for WSNs with both single-channel and multi-channel approaches has been introduced. A brief survey of research on single-channel MAC protocols has been presented by categorizing them into synchronous and asynchronous approaches, and the advantages and disadvantages of each protocol have been addressed. The differences in multi-channel communication from single-channel communication have also been investigated, and a survey of multi-channel MAC protocols proposed for WSNs has been provided. Single-hop broadcast schemes and multihop broadcast protocols proposed for WSNs have also been provided. The limitations and challenges in many communication protocols for WSNs have been listed. It is hoped that this study will help the future research on the design of communication protocols for WSNs.