A Survey on Communication Protocols for Wireless Sensor Networks
- Author: Jang Ingook, Pyeon Dohoo, Kim Sunwoo, Yoon Hyunsoo
- Organization: Jang Ingook; Pyeon Dohoo; Kim Sunwoo; Yoon Hyunsoo
- Publish: Journal of Computing Science and Engineering Volume 7, Issue4, p231~241, 30 Dec 2013
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.
Medium access control , Synchronous/asynchronous MAC protocols , Single-channel/Multi-channel communication , Multihop broadcast , Energy efficiency
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 , and monitoring with multimedia data.
Nodes in such WSN applications generally operate with limited battery capacity for a long time . 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 Ⅳ.
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
as synchronous MAC protocols. Various MAC protocols based on synchronization have been proposed, such as S-MAC, T-MAC, RMAC, and demand wakeup MAC (DW-MAC). They synchronize wireless nodes to efficiently schedule active/sleeping periods. Every node exchanges data only in synchronized active time. This approach decreases idle listening time, which is the most significant source of energy waste. However, the overhead and complexity of implementing synchronization are substantial.
In contrast with the synchronous approach, each sensor node in
asynchronous MAC protocolsindependently wakes up according to its own duty cycling schedule. In preamble-based asynchronous protocols, a sender transmits a preamblethat lasts as long as the sleep period of a receiver before transmitting data. If the receiver wakes up and detects the preamble, it stays active in order to receive data from the sender. In receiver-initiated asynchronous MAC protocols, a receiver starts a transmission with a sender by transmitting a control message, such as a beacon. These asynchronous MAC protocols improve energy efficiency without synchronization.
Sensor-MAC (S-MAC)  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
RTS/CTS mechanismis used to transmit and receive data. A sender and a receiver exchange request to send (RTS) and clear to send (CTS) to transmit/receive data in sleep periods. Since S-MAC uses predefined listen and sleep schedules, it reduces the overhead of time synchronization and energy dissipation by idle listening. However, S-MAC does not provide any adaptiveness, because it operates according to a fixed length of duty cycle. This can lead to additional energy waste in networks with a low traffic rate.
Timeout-MAC (T-MAC)  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)  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
PIONframe which includes RTS and routing information. Every node that receives a PION frame can change its duty cycling schedule effectively. RMAC significantly decreases end-to-end delivery latency. However, if a packet (data or an ACK) is dropped, a retransmission is impossible in a current operation cycle because a receiver is not scheduled to wake up for retransmission. The retransmission of the dropped packet will be executed in the next operational cycle. Consequently, in environments with frequent packet loss or network errors, the end-to-end delivery latency is increased.
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)  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.
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 .
RI-MAC  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  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)  uses a beacon message with additional information composed of next packet arrival time (
NPAT) and medium reservation information ( MRI) in order to reduce end-to-end delivery latency. By using this information, every node knows when the wireless medium is idle. Therefore, each node can flexibly determine transmitting/receiving schedules in order to reduce idle listening and collisions. In networks with periodic traffic patterns, MRMAC shows better performance results than RI-MAC in terms of energy efficiency and end-to-end delivery latency.
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 . 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.
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:
fixed, semi-dynamic, and dynamic. In the fixed approach, each node is assigned to a certain channel and communicates with other nodes only through the assigned channel. Most of the fixed approaches are based on clustering, which divides sensor nodes into several clusters. All nodes in each cluster communicate through a channel assigned for each cluster. The fixed approach prevents interference between clusters, but it cannot fully utilize all channels.
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 , 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.
Le et al.  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 . 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  is based on slotted carrier sensed multiple access (CSMA) and is composed of two parts:
frequency assignment and media access. The frequency assignment part collects node IDs and assigns channels to nodes. To collect the IDs of 2-hop neighbor nodes, each node broadcasts its node ID and a list of IDs of its 1-hop neighbor nodes. Each node sorts the collected lists and chooses a channel for communication. Every node periodically wakes up on its channel to receive data. A sender switches its radio to a receiver's channel when the sender intends to transmit a packet to the receiver. MMSN prevents interference, collisions, and hidden terminal problems through the frequency assignment.
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)  is based on single-channel LMAC . 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
common frequencyand a split phase. In the common frequency, nodes exchange preambles on a control channel to obtain the assignment information of 2- hop neighbor nodes. To send data, a sender can transmit a preamble only at the assigned timeslot on the assigned channel. The preamble includes both IDs of the sender and the receiver. On the split phase, the sender and the receiver switch to the sender's channel to communicate with each other. If a timeslot is assigned to multiple senders on the same channel, the receiver chooses only one sender. Like MMSN, MC-LMAC also prevents interference, collisions, and duplicated channel assignment. MCLMAC can easily assign timeslots and channels to new joining nodes. However, the control channel is prone to bottlenecking, and channel switching in every timeslot leads to performance degradation.
Y-MAC  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 , especially on nodes around a sink node.
MuChMAC  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.
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 broadcastand multi-hop broadcast. Single-hop broadcast involves transmitting a message to all neighbor nodes within 1-hop distance from a sender. Multi-hop broadcast involves forwarding a message to all nodes that compose a network. In multi-hop broadcast, nodes that received the broadcast message operate as new senders to forward the message to their neighbor nodes.
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.
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  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
scheduling frame(SCH) during the DATA period, which presents the starting point of the broadcast transmission. The actual broadcast transmission will be performed during a following SLEEP period.
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  is the implementation for the unified power management architecture (UPMA) for WSNs for TinyOS . 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 , a sender waits for a
beaconmessage from an intended receiver. The intended receiver sends a beacon message as an invitation of a new transmission after waking up. The sender transmits a data message upon receiving the beacon message. If the data message successfully reaches the receiver, it will send an ACK beacon message that means both an acknowledgement and another invitation. RI-MAC supports single-hop broadcast either by the way used in X-MAC-UPMA, or by one-by-one unicast transmissions. However, both schemes degrade the performance of single-hop broadcast, because a node can receive multiple duplicate copies of the broadcast message. These redundant transmissions can raise frequent collisions, and they cause unnecessary energy consumption.
In synchronous multi-channel MAC protocols, singlehop broadcast can be easily implemented due to synchronization. Nodes in MC-LMAC , MuChMAC  and Y-MAC  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  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  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  and ARM  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.
ADB  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
ADB footer. In Fig. 6, it is assumed that node S wants to send the broadcast message. Node Stransmits the broadcast message with an ADB footer to node A, which presents link quality information of Sand the broadcast progress. Node Arecognizes that the link quality between itself, and Bis better than that between Sand B. Therefore, node Swill delegate the transmission to node A, and Awill forward the broadcast message to B.
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
Stransmits the broadcast message with footers to Cand E. Since nodes Cand Ecannot communicate with each other, both nodes Cand Ewait for Dto forward the broadcast message. They simultaneously transmit the broadcast message to node Dafter it wakes up. This situation results in not only an unnecessary transmission to D, but also a collision at D. Each of nodes Cand Edoes retransmission, so Dwill receive the same two broadcast messages. In ADB, this problem results in unnecessary energy consumption.
EMBA  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
guidance list(GL) created created by the forwarder is piggybacked on the broadcast messages and is sent together. Neighbor nodes which receive the broadcast message and guidance attempt to forward the message to their neighbor nodes according to the guidance.
Three types of guidance are used:
COVERED, DELEGATED, and OBLIGATED. COVEREDmeans that a node Xalready received the broadcast message. When a node Yreceives the guidance, it does not do anything for neighbor node Xif the guidance for Xis COVERED. If the guidance for node Xis DELEGATED, node Yalso does not do anything because Xwill receive the broadcast message from another node which has better link quality. Node Yis OBLIGATEDto send the broadcast message to node Xif Yhas the best link to X.
Fig. 7 shows the operation of EMBA in a topology formed by three nodes
F, A, and B. The forwarder node Fhas a broadcast message and waits for neighbor nodes. When node Awakes up, node Ftransmits the broadcast message with the guidance, as shown in Fig. 7a. Node Aworks as a new forwarder after receiving the broadcast message and node Bwakes up. Since the link quality from node A to node B is better than that from node Fto node B, Bwill receive the broadcast message from A. Therefore, a transmission of the broadcast message from node Fto node Bdoes not occur. If the link quality from node Fto node Bis better than that from node Ato node B, as shown in Fig. 7b, node Adoes not do anything for node B. Instead of node A, node Fattempts to transmit the broadcast message to node B. In EMBA, since nodes have the link quality of their 2-hop neighbor nodes, they can avoid redundant transmissions and collisions in both triangular and quadrangular topologies. Therefore, EMBA outperforms existing protocols in terms of energy efficiency and message cost. However, EMBA is designed for asynchronous single-channel WSNs. To use EMBA in multi-channel WSNs, some modifications and developments are required.
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.
[Fig. 1.] Operation of sensor medium access control (S-MAC). Sync: synchronization, RTS: request to send, CTS: clear to send, CS: carrier sense, RX: receive, TX: transmit.
[Fig. 2.] Operation of wireless sensor medium access control (WiseMAC). P: preamble, A: acknowledgement, RX: receive, TX: transmit.
[Fig. 3.] Operation of receiver-initiated asynchronous duty cycle medium access control (RI-MAC). RX: receive, TX: transmit.
[Fig. 4.] Channel and timeslot selection of multi-channel lightweight medium access control (MC-LMAC).
[Fig. 5.] (a) Channel selection and (b) preamble based communication of a low-overhead multi-channel medium access control (MuChMAC).
[Fig. 6.] Topology with a triangular and a quadrangular shape.
[Fig. 7.] Operation of an efficient multi-hop broadcast protocol for asynchronous duty-cycled wireless sensor networks (EMBA).