# AH-MAC: Adaptive Hierarchical MAC Protocol for Low-Rate Wireless Sensor Network Applications

Authors: Adnan Ismail Al-Sulaifanie; Subir Biswas; Bayez Khorsheed Al-Sulaifanie
Journal: Journal of Sensors
 (2017)

---

## Abstract

This paper proposes an adaptive hierarchical MAC protocol (AH-MAC) with cross-layer optimization for low-rate and large-scale wireless sensor networks. The main goal of the proposed protocol is to combine the strengths of LEACH and IEEE 802.15.4 while offsetting their weaknesses. The predetermined cluster heads are supported with an energy harvesting circuit, while the normal nodes are battery-operated. To prolong the network’s operational lifetime, the proposed protocol transfers most of the network’s activities to the cluster heads while minimizing the node’s activity. Some of the main features of this protocol include energy efficiency, self-configurability, scalability, and self-healing. The simulation results showed great improvement of the AH-MAC over LEACH protocol in terms of energy consumption and throughput. AH-MAC consumes eight times less energy while improving throughput via acknowledgment support.


---

## Body

## 1. Introduction

A wireless sensor network (WSN) consists of a large number of collaborating devices called sensor nodes. Each sensor node is capable of sensing, computation, and communication. The function of these nodes is to sense its surrounding environment, collecting data about one or more physical phenomenon and forwarding it through multiple paths to a central node called sink or base station for further processing. WSNs have been used for environment monitoring, healthcare, structure health monitoring, military, and many other applications [1]. These sensor nodes rely on the use of small and limited energy batteries to supply electrical energy to these devices. Batteries need to be replaced or recharged regularly whenever it is depleted. This regular maintenance could easily become the greatest cost of installing a wireless sensor network for many applications [2].Replacing or recharging batteries is not preferred or unfeasible for two reasons: the rising cost of regular maintenance when a large number of devices are deployed over a wide region. Sometimes the nodes may be not reachable, that is, when they are embedded in building materials or deployed in a hazardous region such as those used in volcano monitoring and toxic regions or deployed in a hostile region for some military applications. Thus, the lifetime of the sensor network is limited by the lifetime of the nodes’ battery. To prolong the network’s lifetime, energy should be optimized in all aspects. Although the latest developments in reducing the size of electronics have enabled the development of low-cost and low-power sensor networks, still the energy consumption is a great challenge.During the past decade, the research community proposed many solutions to prolong the lifetime of the sensor nodes. One of these techniques is to use duty cycling strategy where the different units of the sensor node are switched off or entered low-power (sleep) mode when they are inactive [3, 4]. Another approach is to design energy-aware medium access control protocols (MACs) and routing protocols [5]. Data fusion and aggregation is another approach to reduce the number of transmitted packets in the network by removing packets that carry redundant data for the same region [6, 7]. Despite the fact that previous solutions reduce energy consumption to extend the network lifetime and/or increase the time period between battery replacements, it does not resolve the problem completely.Recently, a promising solution has been proposed to overcome energy limitation of sensor nodes by exploiting the wasteful energy surrounding the node and converting it to useful electrical energy that can directly power sensor node or supplement the storage device [8–10]. This process is called energy harvesting or power scavenging. The characteristics of an energy harvesting circuit are strongly related to the activity of the transceiver and MAC protocol design. Therefore, an efficient MAC protocol is necessary for minimizing the cost of the harvesting circuit.This paper proposes a completely scalable, configurable, and self-healing WSN that incorporates energy harvesting at a reasonable cost. The main features of this system are longevity without requiring human intervention, self-configurability, scalability, and self-healing. The proposed system is suitable for low-rate monitoring applications and/or event-driven alarm systems. Our contributions are summarized as follows:(1)
A new energy-efficient MAC protocol is developed for large-scale hierarchical topology WSN. The cluster heads are provided with energy harvesting source while the rest of the nodes are battery-operated.(2)
Node’s activity is minimized and limited to uploading their data to the cluster head in order to maximize their respective lifetime.(3)
A simple and efficient procedure is used to join the network and recover the synchronization with lost parent.(4)
Intercluster communication feature is incorporated to expand the network’s coverage area.The paper is organized as in the following order: Section2 will review the main sources of energy waste and attributes of the MAC protocols. Section 3 will explain the design challenges and characteristics of the common protocols used in large-scale WSN. The details of the proposed system will be discussed in Section 4, while the results and the conclusion will be presented in Sections 5 and 6, respectively.


## 2. Wireless Sensor Node

### 2.1. Sensor Node Architecture

A wireless sensor node is designed for sensing, data acquisition, localized processing, and wireless communication. The main units of sensor node are shown in Figure1. The transceiver has been identified as one of the units that consume the most power in the sensor node. It dominates the power budget at 60% consumption of the total available energy and determines the lifetime of the sensor network [11]. The power consumption is evaluated by different parameters such as voltage supply, transmitting current, receiving current, and current at power-down mode. The range of power consumption in modern transceivers is 40–600 mW (Table 1). Generally, the communication subsystem has an energy consumption that is much higher than the computation subsystem. It has been shown that transmitting one bit may consume as much as executing a few thousands instructions [12].Table 1
Electrical characteristics of common transceivers used in WSNs.
Module Voltage (V) Frequency (MHz) Data rate Kbps Output power (dBm) Current consumption I T X (mA) I R X (mA) I S (μA) CC2520 1.8–3.6 2400 250 +5 33 22 1 CC2420 2.1–3.6 2400 250 0 18.8 17.4 20 JN5148 M00/03 2.3–3.6 2400 250 +2.5 15 17.5 2.6 JN5148 M04 2.7–3.6 2400 250 +18 110 23 2.6 nRF2401 1.9–3.6 (3) 2400 0–1000 0 18 10.5 0.4 XBee-pro ZB 2.7–3.6 (3.3) 2400 250 +18 220 62 <10 nRF905 1.9–3.6 (3) 433/868/915 50 +10 12.5 9 2.5 MRF49XA 2.2–3.8 433/868/915 256 +7 15 11 0.3 CC1101 1.8–3.6 300/433/868/915 1–500 +12 30 14.7 <1 CC1120 1.8–3.6 300/433/868/915 1–200 +16 45 22 <1Figure 1
Sensor node architecture [13].


### 2.2. Source of Energy Wastage

Designing an energy-efficient MAC protocol plays a vital role in reducing energy consumption due to its direct control over the RF module. Since sensor nodes are assumed to be disposed when they are out of a battery, the low-power consumption is a major requirement in the design of communication protocols for sensor networks. During the operation of WSN, the major sources of energy waste are as follows [14, 15].(  1) Collisions. When a node receives more than one packet simultaneously, all packets that cause the collision have to be discarded and retransmitted which subsequently increase the energy consumption.(  2) Overhearing. This source of energy dissipation occurs when a sensor node wastes energy by receiving a packet that is intended for a different destination.(  3) Control Packet Overhead. Data packets in WSNs are usually small; therefore, headers and other types of overhead (such as control messages, like RTS, CTS, SYNC, and ACK) imply a high level of energy waste.(  4) Idle Listening. Idle listening occurs when a node listens to the channel for a possible reception. It is a source of major waste of energy in WSNs where it usually consumes 50%–100% of the energy required for the receiving process.(  5) Overemitting. Overemitting is caused when the message delivery fails due to the destination node’s inactivity.


### 2.3. MAC Performance Metrics and Attributes

MAC protocols designed for wireless LANs have been optimized for maximum throughput, low delay latency, fairness, and low overhead. The low-energy consumption has been relegated as a secondary requirement [16]. Wireless sensor networks employ performance metrics that differ from those of conventional data networks. It emphasizes low-power consumption and low cost as opposed to data throughput or channel efficiency [1].MAC protocols are influenced by a number of constraints. A good protocol for WSNs should consider a set of performance attributes and make a trade-off between them. The most important attributes can be found in references [17, 18]: The first attribute is energy efficiency. To prolong the network lifetime, energy-efficient MAC protocols should be carefully designed. The second attribute is collision avoidance which determines when and how a node can access the medium and send its data. Collisions are not completely avoided but all MAC protocols avoid frequent collision. The third and fourth attributes which are closely related are scalability and adaptability to changes. Changes in network size, node density, and topology should be handled rapidly and effectively such that the network connectivity and topology can be recovered. Other attributes such as latency, throughput, and bandwidth utilization may be regarded as secondary attributes in the context of sensor networks.


## 2.1. Sensor Node Architecture

A wireless sensor node is designed for sensing, data acquisition, localized processing, and wireless communication. The main units of sensor node are shown in Figure1. The transceiver has been identified as one of the units that consume the most power in the sensor node. It dominates the power budget at 60% consumption of the total available energy and determines the lifetime of the sensor network [11]. The power consumption is evaluated by different parameters such as voltage supply, transmitting current, receiving current, and current at power-down mode. The range of power consumption in modern transceivers is 40–600 mW (Table 1). Generally, the communication subsystem has an energy consumption that is much higher than the computation subsystem. It has been shown that transmitting one bit may consume as much as executing a few thousands instructions [12].Table 1
Electrical characteristics of common transceivers used in WSNs.
Module Voltage (V) Frequency (MHz) Data rate Kbps Output power (dBm) Current consumption I T X (mA) I R X (mA) I S (μA) CC2520 1.8–3.6 2400 250 +5 33 22 1 CC2420 2.1–3.6 2400 250 0 18.8 17.4 20 JN5148 M00/03 2.3–3.6 2400 250 +2.5 15 17.5 2.6 JN5148 M04 2.7–3.6 2400 250 +18 110 23 2.6 nRF2401 1.9–3.6 (3) 2400 0–1000 0 18 10.5 0.4 XBee-pro ZB 2.7–3.6 (3.3) 2400 250 +18 220 62 <10 nRF905 1.9–3.6 (3) 433/868/915 50 +10 12.5 9 2.5 MRF49XA 2.2–3.8 433/868/915 256 +7 15 11 0.3 CC1101 1.8–3.6 300/433/868/915 1–500 +12 30 14.7 <1 CC1120 1.8–3.6 300/433/868/915 1–200 +16 45 22 <1Figure 1
Sensor node architecture [13].


## 2.2. Source of Energy Wastage

Designing an energy-efficient MAC protocol plays a vital role in reducing energy consumption due to its direct control over the RF module. Since sensor nodes are assumed to be disposed when they are out of a battery, the low-power consumption is a major requirement in the design of communication protocols for sensor networks. During the operation of WSN, the major sources of energy waste are as follows [14, 15].(  1) Collisions. When a node receives more than one packet simultaneously, all packets that cause the collision have to be discarded and retransmitted which subsequently increase the energy consumption.(  2) Overhearing. This source of energy dissipation occurs when a sensor node wastes energy by receiving a packet that is intended for a different destination.(  3) Control Packet Overhead. Data packets in WSNs are usually small; therefore, headers and other types of overhead (such as control messages, like RTS, CTS, SYNC, and ACK) imply a high level of energy waste.(  4) Idle Listening. Idle listening occurs when a node listens to the channel for a possible reception. It is a source of major waste of energy in WSNs where it usually consumes 50%–100% of the energy required for the receiving process.(  5) Overemitting. Overemitting is caused when the message delivery fails due to the destination node’s inactivity.


## 2.3. MAC Performance Metrics and Attributes

MAC protocols designed for wireless LANs have been optimized for maximum throughput, low delay latency, fairness, and low overhead. The low-energy consumption has been relegated as a secondary requirement [16]. Wireless sensor networks employ performance metrics that differ from those of conventional data networks. It emphasizes low-power consumption and low cost as opposed to data throughput or channel efficiency [1].MAC protocols are influenced by a number of constraints. A good protocol for WSNs should consider a set of performance attributes and make a trade-off between them. The most important attributes can be found in references [17, 18]: The first attribute is energy efficiency. To prolong the network lifetime, energy-efficient MAC protocols should be carefully designed. The second attribute is collision avoidance which determines when and how a node can access the medium and send its data. Collisions are not completely avoided but all MAC protocols avoid frequent collision. The third and fourth attributes which are closely related are scalability and adaptability to changes. Changes in network size, node density, and topology should be handled rapidly and effectively such that the network connectivity and topology can be recovered. Other attributes such as latency, throughput, and bandwidth utilization may be regarded as secondary attributes in the context of sensor networks.


## 3. WSNs Design Challenge

### 3.1. Direct versus Multihop Transmission

The transmission power of wireless radio is proportional to the distance squared or even higher order. Thus, long distance direct transmission consumes too much energy. Also, the limited communication range of sensor nodes prevents direct communication between each sensor node and the sink [15]. Therefore, forwarding data by several relaying nodes (multihop) will consume less energy than direct transmission [19, 20]. However, this reduction in power consumption incurs several problems that greatly influence network design and performance.One of the problems that affect the network’s lifetime is the nodes in the vicinity of the sink. These nodes which are closer to the sink lose their energy much quicker because they utilize their energy to relay the data from any other nodes through the network to the sink and sending their own data as well. This problem is known as the “sink neighborhood problem” [21]. This problem leads to premature network disconnection because most of the sink’s neighbors’ energy is fully depleted and the sink is isolated from the rest of the network [22]. Other possible disadvantages of multihop data communication are as follows:(i)
The delay caused by relaying a packet through multiple hops is more than with direct communication [23].(ii)
Multihop communication increases network traffic.(iii)
Multihop routing introduces significant overhead for topology management and medium access control [24].Direct communication performs better than multihop communication paradigm. The only problem that needs to be tackled is the limited energy of sensor nodes. So, providing sensor nodes with sufficient power using energy harvesting techniques will improve the performance of the network and simplify network design from multiple perspectives.


### 3.2. Network Topology

WSNs can be broadly classified into the flat and hierarchical topology. In a flat topology, each node plays the same role and has the same functionality as other sensor nodes in the network [19, 20]. To prolong the network’s operational lifetime, each node should be provided with an energy harvesting circuit. In many applications where a large number of sensor nodes (several hundred or even thousands) are deployed, this approach seems to be unfeasible because it may increase the total cost of network installation to an unacceptable level.In a hierarchical topology, nodes organized into groups called clusters. Each cluster selects a node that serves as the cluster head (CH). The CH is responsible for collecting sensor data from its members, aggregating them and transmitting a summary to the sink directly or through another CH [25]. Clustering is a key technique in improving network’s lifetime, reducing energy consumption and increasing network scalability. Other advantages of clustering schemes are as follows [23, 26]:(i)
The aggregation process eliminates redundant and highly correlated data, thus minimizing the total transmission power, and conserves the communication bandwidth.(ii)
CH rotation balances the energy-exhausting load between all of the nodes.(iii)
Using multilevel power transmitter reduces packet collision and interference in cluster-scale and network-scale communications.(iv)
Clustering reduces the size of the routing table by localizing the route setup within the cluster.(v)
The energy of non-CH nodes is conserved by reducing their rates of energy consumption.Cluster-based protocols consist of four stages: cluster head (CH) selection, cluster formation, data aggregation, and data communication. In the CH selection phase, the CH can be selected randomly or based on some criteria such as the residual energy of the node and the number of its followers. In the cluster formation phase, each non-CH will decide to join the nearest CH based on the strength of the received signal. After that, each CH will create a TDMA schedule for its members to transmit their respective data within their time slot to prevent packet collisions. In data aggregation phase, the CH performs some signal processing functions in a way that all information can be aggregated in only one message, and the resulting packet will be forwarded to the sink.


#### 3.2.1. LEACH Protocol

One of the most common examples of clustering based protocol is Low-Energy Adaptive Clustering Hierarchy (LEACH) protocol [27]. LEACH assumes that all nodes within a cluster are synchronized and they can control their transmission power and reach one sink. Within each cluster, the sensor nodes communicate using direct sequence spread spectrum (DSSS) to limit the interference of other clusters. Since the CH depletes its energy faster than non-CH, the role of CH is rotated so that uniform energy dissipation in the network is obtained. LEACH is capable of achieving a reduction of energy dissipation at a factor of 8 compared to other protocols. However, this comes at the cost of many drawbacks and limitations. The main disadvantages of LEACH protocol are as follows [28, 29]:(i)
Overhead associated with the death of a CH. When a CH dies, the whole cluster becomes inactive during the remaining steady-state phase, even if several nodes inside the cluster have enough energy to function.(ii)
LEACH assumes one-hop communication between the nodes and their CH and also among the CHs and the sink. This causes the sensor nodes to consume large amounts of energy when transmitting messages and also limit the geographical area covered by the sensor network.(iii)
LEACH requires tight synchronization which is included as part of the protocol and will require additional energy and overhead to accomplish.(iv)
Cluster formation and restructuring can take a long time during which the sensor nodes consume energy and will be incapable of performing any useful task.(v)
It does not work well in applications that require multihop to cover a large area.Many modified versions of LEACH protocol have been proposed to improve its performance and overcome certain limitations and drawbacks.Centralized LEACH (LEACH-C) [30] moves the responsibility of electing a CH to the sink to improve the performance by distributing the cluster heads throughout the network. During the setup phase, each node sends to the sink its remaining energy and location. The sink then runs a centralized cluster formation algorithm to determine the clusters for that round. However, since this protocol requires location information for all sensors in the network (normally provided by GPS), it is not seen as robust protocol.In the two-level LEACH (TL-LEACH) [31], the CH collects data from the cluster members and relays the data to the sink through another CH that lies between the CH and the sink. Thus, the network can be expanded to cover a larger area.Self-Organizing Slot Allocation (SRSA) [32] was another attempt at improving the LEACH protocol in terms of energy efficiency and network scalability. The SRSA protocol utilizes multiple sinks instead of only one, which is the case of the original LEACH protocol. Thus, CHs can communicate directly with the nearest sink which significantly reduces the transmission energy.Energy-LEACH (E-LEACH) [33] improves the CH selection procedure. Like LEACH, it is divided into rounds. In the first round, all nodes have the similar probability of being CH. However, after the first round, the remaining energy of each node differs, and the node with high residual energy will be selected as CH rather than those with less energy.V-LEACH [34] proposed a solution to the problem of CH failure. When the CH dies, the cluster becomes useless, and because of this, the information collected by the node members will not reach the sink. The protocol uses vice-CH that takes the role of the CH when the main CH dies.


#### 3.2.2. IEEE 802.15.4

Another approach that can be used to implement the hierarchical topology network is to use IEEE 802.15.4 cluster-tree network [35]. IEEE 802.15.4 is proposed for low-rate Wireless Personal Area Networks (WPAN). Two types of devices are used: full function device (FFD) which can act as a PAN coordinator, coordinator, or end-device (node) and reduced function device (RFD) that plays the role of normal node. The IEEE 802.15.4 standard specifies a physical layer that operates in the unlicensed industrial, scientific, and medical (ISM) radio bands.The MAC layer specifies three access methods. Random access with the coordinator always listens, while the RFDs engage the unslotted CSMA. In slotted access method, the coordinator sends out beacon frames consisting of a number of contention slots followed by an inactive period. Frame-based access with the coordinator reserves an additional number of Guaranteed Time Slots (GTS) for specific RFDs with real-time communication requirements. The standard does not detail how multiple coordinators should operate together (e.g., should they tune the length of their beacon intervals?), leaving it up to individual and groups of vendors, such as the ZigBee alliance, to fill this void.The protocol in cluster-tree mode uses superframe structure (Figure2), where a TDMA-based period is used for guaranteed access, while a contention-based period is used for nonguaranteed access. The coordinator operates in the beacon mode to maintain the synchronization of time frames. All nodes can turn off their respective radios and enter a sleep state during an inactive period.Figure 2
Beacon based frame structure in IEEE 802.15.4.IEEE 802.15.4 uses 16 slots in the active period of its frame and the coordinator should remain awake during these slots waiting for the possibility of arriving packets. For many low-rate applications where each node transmits a packet every several minutes, most of the time the coordinator is in RX state without receiving any useful data. However, IEEE 820.15.4 can adjust the frame length to increase the inactive period to conserve energy in this case. This scheme may not be suitable for applications requiring low latency such as alarm systems because the delay produced by the network is high. Another disadvantage of IEEE 802.15.4 scheme is the slots in the frame not being efficiently utilized which increases the energy consumption of the coordinator.


### 3.3. Energy Harvesting

Energy harvesting refers to harnessing energy from the surrounding environment or other energy sources and converts it to electrical energy [10]. There are many sources of energy that can be used to power autonomous microelectronic devices, for example, environmental vibrations, thermal sources, solar, and electromagnetic waves. In general, the main sources of energy that can be used to generate electrical signals are as follows [11, 36]:(i)
Light energy: captured from sunlight or room light via photo sensors, photo diodes, or solar panels.(ii)
Mechanical energy: from sources such as a car engine compartment, trains, ships, helicopters, bridges, floors (offices, train stations, and nightclubs), speakers, window panes, walls, household appliances (fridges, washing machines, and microwave ovens), pumps, motors, compressors, chillers, and conveyors.(iii)
Electromagnetic energy: from inductors, coils, and transformers.(iv)
Thermal energy: waste energy from furnaces, heaters, and friction sources.(v)
Radio frequency: microwaves, infrared, cell phones, and high power line emissions.(vi)
Human body: a combination of mechanical and thermal energy naturally generated from bioorganisms or through actions such as walking and sitting.Energy harvesting provides a viable alternative to design and implement long-lasting wireless sensor networks. The sporadic nature of ambient energy leads to using one or more storage devices to accumulate energy whenever it is available to be used later. The type and capacity of storage devices are highly dependent on harvesting technology, intended lifetime of the sensor network, and application requirements (average power and duty cycle). Therefore, two different cases can be distinguished:(i)
Short term deployment sensor networks (several months): In this case, a primary battery is sufficient. The size and capacity of such battery are determined as a function of average power consumption by sensor node.(ii)
Long-lasting WSNs (several years or even decades): they require energy harvesting technology with supercapacitor due to their long lifetime, or a combination of a rechargeable battery and super capacitor.The direct comparison between different harvesting technologies seems to be hard because there is a large number of parameters that affect the performance of harvesting circuits, for example, harvested power, output voltage, circuit size and complexity, cost, and lifetime.The solar panel is the most common technology used today because it has low cost while providing higher energy density. However, it has the disadvantage of being able to generate energy only when there is sufficient sunlight or artificial light. The optical energy source is highly dependent on time, weather condition, and location. Another disadvantage is that it cannot be integrated with microelectromechanical systems (MEMS) technology.The goal of this work is to minimize energy requirement for both nodes and cluster heads regardless of the type of harvesting circuit used. Minimizing energy requirement enables us to use simple and cost-effective harvesting circuit. The proposed protocol is based on the hypothesis that the cluster head is provided with energy harvesting while the rest of the nodes are battery-operated to keep the cost of the system within reasonable levels. For example, a solar panel with 500 Joule supercapacitor seems to be ideal for long-lasting WSN.


## 3.1. Direct versus Multihop Transmission

The transmission power of wireless radio is proportional to the distance squared or even higher order. Thus, long distance direct transmission consumes too much energy. Also, the limited communication range of sensor nodes prevents direct communication between each sensor node and the sink [15]. Therefore, forwarding data by several relaying nodes (multihop) will consume less energy than direct transmission [19, 20]. However, this reduction in power consumption incurs several problems that greatly influence network design and performance.One of the problems that affect the network’s lifetime is the nodes in the vicinity of the sink. These nodes which are closer to the sink lose their energy much quicker because they utilize their energy to relay the data from any other nodes through the network to the sink and sending their own data as well. This problem is known as the “sink neighborhood problem” [21]. This problem leads to premature network disconnection because most of the sink’s neighbors’ energy is fully depleted and the sink is isolated from the rest of the network [22]. Other possible disadvantages of multihop data communication are as follows:(i)
The delay caused by relaying a packet through multiple hops is more than with direct communication [23].(ii)
Multihop communication increases network traffic.(iii)
Multihop routing introduces significant overhead for topology management and medium access control [24].Direct communication performs better than multihop communication paradigm. The only problem that needs to be tackled is the limited energy of sensor nodes. So, providing sensor nodes with sufficient power using energy harvesting techniques will improve the performance of the network and simplify network design from multiple perspectives.


## 3.2. Network Topology

WSNs can be broadly classified into the flat and hierarchical topology. In a flat topology, each node plays the same role and has the same functionality as other sensor nodes in the network [19, 20]. To prolong the network’s operational lifetime, each node should be provided with an energy harvesting circuit. In many applications where a large number of sensor nodes (several hundred or even thousands) are deployed, this approach seems to be unfeasible because it may increase the total cost of network installation to an unacceptable level.In a hierarchical topology, nodes organized into groups called clusters. Each cluster selects a node that serves as the cluster head (CH). The CH is responsible for collecting sensor data from its members, aggregating them and transmitting a summary to the sink directly or through another CH [25]. Clustering is a key technique in improving network’s lifetime, reducing energy consumption and increasing network scalability. Other advantages of clustering schemes are as follows [23, 26]:(i)
The aggregation process eliminates redundant and highly correlated data, thus minimizing the total transmission power, and conserves the communication bandwidth.(ii)
CH rotation balances the energy-exhausting load between all of the nodes.(iii)
Using multilevel power transmitter reduces packet collision and interference in cluster-scale and network-scale communications.(iv)
Clustering reduces the size of the routing table by localizing the route setup within the cluster.(v)
The energy of non-CH nodes is conserved by reducing their rates of energy consumption.Cluster-based protocols consist of four stages: cluster head (CH) selection, cluster formation, data aggregation, and data communication. In the CH selection phase, the CH can be selected randomly or based on some criteria such as the residual energy of the node and the number of its followers. In the cluster formation phase, each non-CH will decide to join the nearest CH based on the strength of the received signal. After that, each CH will create a TDMA schedule for its members to transmit their respective data within their time slot to prevent packet collisions. In data aggregation phase, the CH performs some signal processing functions in a way that all information can be aggregated in only one message, and the resulting packet will be forwarded to the sink.


### 3.2.1. LEACH Protocol

One of the most common examples of clustering based protocol is Low-Energy Adaptive Clustering Hierarchy (LEACH) protocol [27]. LEACH assumes that all nodes within a cluster are synchronized and they can control their transmission power and reach one sink. Within each cluster, the sensor nodes communicate using direct sequence spread spectrum (DSSS) to limit the interference of other clusters. Since the CH depletes its energy faster than non-CH, the role of CH is rotated so that uniform energy dissipation in the network is obtained. LEACH is capable of achieving a reduction of energy dissipation at a factor of 8 compared to other protocols. However, this comes at the cost of many drawbacks and limitations. The main disadvantages of LEACH protocol are as follows [28, 29]:(i)
Overhead associated with the death of a CH. When a CH dies, the whole cluster becomes inactive during the remaining steady-state phase, even if several nodes inside the cluster have enough energy to function.(ii)
LEACH assumes one-hop communication between the nodes and their CH and also among the CHs and the sink. This causes the sensor nodes to consume large amounts of energy when transmitting messages and also limit the geographical area covered by the sensor network.(iii)
LEACH requires tight synchronization which is included as part of the protocol and will require additional energy and overhead to accomplish.(iv)
Cluster formation and restructuring can take a long time during which the sensor nodes consume energy and will be incapable of performing any useful task.(v)
It does not work well in applications that require multihop to cover a large area.Many modified versions of LEACH protocol have been proposed to improve its performance and overcome certain limitations and drawbacks.Centralized LEACH (LEACH-C) [30] moves the responsibility of electing a CH to the sink to improve the performance by distributing the cluster heads throughout the network. During the setup phase, each node sends to the sink its remaining energy and location. The sink then runs a centralized cluster formation algorithm to determine the clusters for that round. However, since this protocol requires location information for all sensors in the network (normally provided by GPS), it is not seen as robust protocol.In the two-level LEACH (TL-LEACH) [31], the CH collects data from the cluster members and relays the data to the sink through another CH that lies between the CH and the sink. Thus, the network can be expanded to cover a larger area.Self-Organizing Slot Allocation (SRSA) [32] was another attempt at improving the LEACH protocol in terms of energy efficiency and network scalability. The SRSA protocol utilizes multiple sinks instead of only one, which is the case of the original LEACH protocol. Thus, CHs can communicate directly with the nearest sink which significantly reduces the transmission energy.Energy-LEACH (E-LEACH) [33] improves the CH selection procedure. Like LEACH, it is divided into rounds. In the first round, all nodes have the similar probability of being CH. However, after the first round, the remaining energy of each node differs, and the node with high residual energy will be selected as CH rather than those with less energy.V-LEACH [34] proposed a solution to the problem of CH failure. When the CH dies, the cluster becomes useless, and because of this, the information collected by the node members will not reach the sink. The protocol uses vice-CH that takes the role of the CH when the main CH dies.


### 3.2.2. IEEE 802.15.4

Another approach that can be used to implement the hierarchical topology network is to use IEEE 802.15.4 cluster-tree network [35]. IEEE 802.15.4 is proposed for low-rate Wireless Personal Area Networks (WPAN). Two types of devices are used: full function device (FFD) which can act as a PAN coordinator, coordinator, or end-device (node) and reduced function device (RFD) that plays the role of normal node. The IEEE 802.15.4 standard specifies a physical layer that operates in the unlicensed industrial, scientific, and medical (ISM) radio bands.The MAC layer specifies three access methods. Random access with the coordinator always listens, while the RFDs engage the unslotted CSMA. In slotted access method, the coordinator sends out beacon frames consisting of a number of contention slots followed by an inactive period. Frame-based access with the coordinator reserves an additional number of Guaranteed Time Slots (GTS) for specific RFDs with real-time communication requirements. The standard does not detail how multiple coordinators should operate together (e.g., should they tune the length of their beacon intervals?), leaving it up to individual and groups of vendors, such as the ZigBee alliance, to fill this void.The protocol in cluster-tree mode uses superframe structure (Figure2), where a TDMA-based period is used for guaranteed access, while a contention-based period is used for nonguaranteed access. The coordinator operates in the beacon mode to maintain the synchronization of time frames. All nodes can turn off their respective radios and enter a sleep state during an inactive period.Figure 2
Beacon based frame structure in IEEE 802.15.4.IEEE 802.15.4 uses 16 slots in the active period of its frame and the coordinator should remain awake during these slots waiting for the possibility of arriving packets. For many low-rate applications where each node transmits a packet every several minutes, most of the time the coordinator is in RX state without receiving any useful data. However, IEEE 820.15.4 can adjust the frame length to increase the inactive period to conserve energy in this case. This scheme may not be suitable for applications requiring low latency such as alarm systems because the delay produced by the network is high. Another disadvantage of IEEE 802.15.4 scheme is the slots in the frame not being efficiently utilized which increases the energy consumption of the coordinator.


## 3.2.1. LEACH Protocol

One of the most common examples of clustering based protocol is Low-Energy Adaptive Clustering Hierarchy (LEACH) protocol [27]. LEACH assumes that all nodes within a cluster are synchronized and they can control their transmission power and reach one sink. Within each cluster, the sensor nodes communicate using direct sequence spread spectrum (DSSS) to limit the interference of other clusters. Since the CH depletes its energy faster than non-CH, the role of CH is rotated so that uniform energy dissipation in the network is obtained. LEACH is capable of achieving a reduction of energy dissipation at a factor of 8 compared to other protocols. However, this comes at the cost of many drawbacks and limitations. The main disadvantages of LEACH protocol are as follows [28, 29]:(i)
Overhead associated with the death of a CH. When a CH dies, the whole cluster becomes inactive during the remaining steady-state phase, even if several nodes inside the cluster have enough energy to function.(ii)
LEACH assumes one-hop communication between the nodes and their CH and also among the CHs and the sink. This causes the sensor nodes to consume large amounts of energy when transmitting messages and also limit the geographical area covered by the sensor network.(iii)
LEACH requires tight synchronization which is included as part of the protocol and will require additional energy and overhead to accomplish.(iv)
Cluster formation and restructuring can take a long time during which the sensor nodes consume energy and will be incapable of performing any useful task.(v)
It does not work well in applications that require multihop to cover a large area.Many modified versions of LEACH protocol have been proposed to improve its performance and overcome certain limitations and drawbacks.Centralized LEACH (LEACH-C) [30] moves the responsibility of electing a CH to the sink to improve the performance by distributing the cluster heads throughout the network. During the setup phase, each node sends to the sink its remaining energy and location. The sink then runs a centralized cluster formation algorithm to determine the clusters for that round. However, since this protocol requires location information for all sensors in the network (normally provided by GPS), it is not seen as robust protocol.In the two-level LEACH (TL-LEACH) [31], the CH collects data from the cluster members and relays the data to the sink through another CH that lies between the CH and the sink. Thus, the network can be expanded to cover a larger area.Self-Organizing Slot Allocation (SRSA) [32] was another attempt at improving the LEACH protocol in terms of energy efficiency and network scalability. The SRSA protocol utilizes multiple sinks instead of only one, which is the case of the original LEACH protocol. Thus, CHs can communicate directly with the nearest sink which significantly reduces the transmission energy.Energy-LEACH (E-LEACH) [33] improves the CH selection procedure. Like LEACH, it is divided into rounds. In the first round, all nodes have the similar probability of being CH. However, after the first round, the remaining energy of each node differs, and the node with high residual energy will be selected as CH rather than those with less energy.V-LEACH [34] proposed a solution to the problem of CH failure. When the CH dies, the cluster becomes useless, and because of this, the information collected by the node members will not reach the sink. The protocol uses vice-CH that takes the role of the CH when the main CH dies.


## 3.2.2. IEEE 802.15.4

Another approach that can be used to implement the hierarchical topology network is to use IEEE 802.15.4 cluster-tree network [35]. IEEE 802.15.4 is proposed for low-rate Wireless Personal Area Networks (WPAN). Two types of devices are used: full function device (FFD) which can act as a PAN coordinator, coordinator, or end-device (node) and reduced function device (RFD) that plays the role of normal node. The IEEE 802.15.4 standard specifies a physical layer that operates in the unlicensed industrial, scientific, and medical (ISM) radio bands.The MAC layer specifies three access methods. Random access with the coordinator always listens, while the RFDs engage the unslotted CSMA. In slotted access method, the coordinator sends out beacon frames consisting of a number of contention slots followed by an inactive period. Frame-based access with the coordinator reserves an additional number of Guaranteed Time Slots (GTS) for specific RFDs with real-time communication requirements. The standard does not detail how multiple coordinators should operate together (e.g., should they tune the length of their beacon intervals?), leaving it up to individual and groups of vendors, such as the ZigBee alliance, to fill this void.The protocol in cluster-tree mode uses superframe structure (Figure2), where a TDMA-based period is used for guaranteed access, while a contention-based period is used for nonguaranteed access. The coordinator operates in the beacon mode to maintain the synchronization of time frames. All nodes can turn off their respective radios and enter a sleep state during an inactive period.Figure 2
Beacon based frame structure in IEEE 802.15.4.IEEE 802.15.4 uses 16 slots in the active period of its frame and the coordinator should remain awake during these slots waiting for the possibility of arriving packets. For many low-rate applications where each node transmits a packet every several minutes, most of the time the coordinator is in RX state without receiving any useful data. However, IEEE 820.15.4 can adjust the frame length to increase the inactive period to conserve energy in this case. This scheme may not be suitable for applications requiring low latency such as alarm systems because the delay produced by the network is high. Another disadvantage of IEEE 802.15.4 scheme is the slots in the frame not being efficiently utilized which increases the energy consumption of the coordinator.


## 3.3. Energy Harvesting

Energy harvesting refers to harnessing energy from the surrounding environment or other energy sources and converts it to electrical energy [10]. There are many sources of energy that can be used to power autonomous microelectronic devices, for example, environmental vibrations, thermal sources, solar, and electromagnetic waves. In general, the main sources of energy that can be used to generate electrical signals are as follows [11, 36]:(i)
Light energy: captured from sunlight or room light via photo sensors, photo diodes, or solar panels.(ii)
Mechanical energy: from sources such as a car engine compartment, trains, ships, helicopters, bridges, floors (offices, train stations, and nightclubs), speakers, window panes, walls, household appliances (fridges, washing machines, and microwave ovens), pumps, motors, compressors, chillers, and conveyors.(iii)
Electromagnetic energy: from inductors, coils, and transformers.(iv)
Thermal energy: waste energy from furnaces, heaters, and friction sources.(v)
Radio frequency: microwaves, infrared, cell phones, and high power line emissions.(vi)
Human body: a combination of mechanical and thermal energy naturally generated from bioorganisms or through actions such as walking and sitting.Energy harvesting provides a viable alternative to design and implement long-lasting wireless sensor networks. The sporadic nature of ambient energy leads to using one or more storage devices to accumulate energy whenever it is available to be used later. The type and capacity of storage devices are highly dependent on harvesting technology, intended lifetime of the sensor network, and application requirements (average power and duty cycle). Therefore, two different cases can be distinguished:(i)
Short term deployment sensor networks (several months): In this case, a primary battery is sufficient. The size and capacity of such battery are determined as a function of average power consumption by sensor node.(ii)
Long-lasting WSNs (several years or even decades): they require energy harvesting technology with supercapacitor due to their long lifetime, or a combination of a rechargeable battery and super capacitor.The direct comparison between different harvesting technologies seems to be hard because there is a large number of parameters that affect the performance of harvesting circuits, for example, harvested power, output voltage, circuit size and complexity, cost, and lifetime.The solar panel is the most common technology used today because it has low cost while providing higher energy density. However, it has the disadvantage of being able to generate energy only when there is sufficient sunlight or artificial light. The optical energy source is highly dependent on time, weather condition, and location. Another disadvantage is that it cannot be integrated with microelectromechanical systems (MEMS) technology.The goal of this work is to minimize energy requirement for both nodes and cluster heads regardless of the type of harvesting circuit used. Minimizing energy requirement enables us to use simple and cost-effective harvesting circuit. The proposed protocol is based on the hypothesis that the cluster head is provided with energy harvesting while the rest of the nodes are battery-operated to keep the cost of the system within reasonable levels. For example, a solar panel with 500 Joule supercapacitor seems to be ideal for long-lasting WSN.


## 4. Proposed Protocol (AH-MAC)

### 4.1. Motivations behind AH-MAC

The main goal of the proposed MAC is to combine the strengths of LEACH and IEEE 802.15.4 while offsetting their weaknesses. In order to optimize the performance of the MAC protocol, many aspects should be considered: first, the duty cycle should be optimized to keep the nodes in sleep mode for longer periods of time. This can be achieved by decreasing the active time of the CH within the frame.In contrast to the IEEE 802.15.4, the AH-MAC restricts the active period of the CH to one slot. The child nodes contend to access the channel after receiving the beacon. Increasing the probability of packet collision may be the main side effect of this scheme. However, it can be tackled by adjusting the schedule of the next transmission for all followers. In addition to reliable transmission, ACK packet can be utilized to provide information about the next time the node will upload its data. Unlike LEACH which requires four phases to run regularly (Section3.2), the CH selection phase in AH-MAC is not required to do so because the CHs are predetermined. The cluster formation phase is needed only once during network initialization and whenever the follower loses the connection with its parent. This modification conserves considerable amounts of energy.Keeping nodes synchronized with their parent is another source of energy waste in LEACH and IEEE 802.15.4. Every node should wake up at least once during each frame to receive the beacon from the parent even if there is no data to upload. AH-MAC modifies this synchronization scheme by keeping the node in sleep mode unless the node has new data to send. To reduce idle energy, the node schedules its wake up prior to the next beacon from its parent.Like IEEE 802.15.4, AH-MAC adopted the intercluster communication, where the CH can forward its data to another CH that is closer to the distant sink. This feature will reduce the total energy consumption as well as increasing the network coverage area. Table2 summarizes the main features of the three protocols.Table 2
Main features of AH-MAC, LEACH, and IEEE 802.15.4.
AH-MAC LEACH IEEE 802.15.4 Beacon mode Yes No Yes TDMA schedule No Yes Yes Association required CHs only All nodes All nodes Active time 1 slot N slot N slot Intercluster routing support Yes No Yes Network size Unlimited Limited Unlimited ACK support Yes No YesThe structure of AH-MAC consists of the following:(1)
One sink is used to collect and process the received data from the network nodes.(2)
CH is provided with energy harvesting circuit and carries out most network activities.(3)
The basic node which is battery powered with limited capabilities is used to collect data from the region of interest and upload it to its parent (associated CH).(4)
Both types of nodes are deployed in the region of interest randomly or in the delimited manner as shown in Figure3.Figure 3
Example of nodes deployment in WSN.


### 4.2. Network Setup and Operation

AH-MAC protocol uses the beacon mode where the time axis is divided into repeated segments called frames. Each frame is further subdivided into two parts: active and inactive periods which are adjusted by the designer (Figure4(a)). The active period is used by the parent CH to send the beacon and allows its follower to send association request or upload data, while the latter is used by associated CHs for similar purposes. This mechanism provides synchronization between the parent and its followers as well as preventing beacons collision. The number of follower CHs that can be associated with one parent can be determined from the following relation:(1)Nch=TframeTactive-1,where Nch is the maximum number of CHs that can be associated with a single parent, Tframe is the frame interval, and Tactive is the amount of time the parent CH remains active in the frame (aka slot). For each parent CH, the number of followers that can upload their data is defined by the packet rate and beacon rate parameters. Nominally, it can be estimated by(2)Nfollower=TpktTframe.Figure 4
Frame structure in AH-MAC.
(a)
General frame structure (b)
Parent-child slot schedulingN f o l l o w e r is the maximum number of followers (nodes and CHs) that can be associated with one parent, while Tpkt is the interval between two generated packets. The maximum number of basic nodes (Nnodes) that can join a cluster is defined by(3)Nnodes=Nfollower-Nch.Assuming that the CH is sending one beacon every second and each node is generating 1 packet per minute, if the active period is adjusted to 0.1 Sec, the frame is divided into 10 slots. The parent CH uses the first slot while up to nine children CHs use the rest of the slots. The period between two generated packets is 60 beacons (i.e., nominally 60 nodes (Nfollower) can upload their data to the parent). Thus, the total number of followers (Nch+Nnodes) should not exceed 60 which is the maximum cluster size for this scenario. In Figure 3, the CH2 has five followers (two CHs and three nodes).At the beginning of network operation, the sink starts sending beacon at the beginning of its slot. The content of beacon frame is shown in Figure5. After the active period has elapsed, it goes to sleep until the beginning of the next frame. The first child CH starts sending its beacon in second slot. The second child uses the third slot and so on. This mechanism of slot assignment prevents the beacons from colliding and cluster interference. At any time, one cluster is active while other clusters in the vicinity are in sleep mode. Each CH wakes up twice every frame: first in the slot of its parent to keep the synchronization with it and upload its data and second during its own slot to send beacon and allow its followers to upload data packets.Figure 5
Beacon frame format in AH-MAC.


#### 4.2.1. Cluster Head Operation

When the CH is switched on for the first time, it scans the channel for SCAN_LENGTH time to locate the best parent. The CHs who are close to the sink will choose the sink as a parent, while those who are further will choose the CH that has minimum distance to the sink as a parent. The parent selection mechanism is done by utilizing DFS (distance from the sink) field in the beacon packet, which defines the distance of current CH from the sink. Sink sets its DFS to 0, and the subsequent CHs increase it by one to construct a multiring network structure.When the scan timer expires, the CH chooses the best parent based on the minimum DFS. Then, it waits the next beacon from the candidate parent to request association. If the parent has an empty slot in frame, it will be assigned to the new follower. Otherwise, the association request will be rejected. In order to avoid rejection and conserve energy, each parent with empty slots will set the ACCEPT bit in the beacon frame, allowing other CHs to request association; otherwise, the follower will choose another parent. After the association is accomplished, a new follower CH will wake up in its slot and starts sending beacon frame with a new DFS (DFSparent+1) as shown in Figure 4(b). This process will be repeated for all other CHs in the network.The pseudocode in Algorithm1 explains the CH joining process. Lines (1)–(5) initialize variables and initiate scan timer. The first part of the RECV_BEACON procedure (lines (7)–(16)) shows how the CH chooses the best parent based on DFS criteria. When a beacon is received from the previous lost parent, the scanning process is stopped and a new association will be requested. Otherwise, the current parent will be recorded as the best candidate if its DFS is less than that of the current candidate. In lines (33)–(43), the CH processes the information from the last scan after the scan_timer expires. If no parent is found, the CH goes to sleep and wakes up randomly to repeat the scanning process. Finally, lines (20)–(31) clarify the behavior of the follower CH toward the parent beacon during network operations.Algorithm 1:Cluster head join algorithm.
(1)procedure start_scan() (2)  best_parent_addr = 0XFFFF; min_dfs = 255; scan_timer = ON (3)  wake_after(0)                                ⊳ wakeup now (4)  start_scan_timer(0, SCAN_LENGTH)    ⊳ scan_timer starts now and will fire after SCAN_LENGTH (5) end procedure (6) procedure recv_beacon(src, dfs, accept) (7)  if scan_timer then (8)   if (dfs < min_dfs & accept)then                   ⊳ replace current parent (9)     min_dfs = dfs (10)    best_parent_addr = src (11)   end if (12)   if (my_parent_addr == best_parent_addr) then      ⊳ restore synchronization with last parent (13)    stop_scan_timer() (14)    scan_timer = OFF (15)   end if (16) end if (17) if scan_timer then (18)   return (19) end if (20) if (not associated) then (21)   sleep_after(slot_time) (22)   wake_after(Tframe) (23)   send_associate_request_packet() (24) else if (data available) then (25)   sleep_after(slot_time) (26)   wake_after(my_slot ∗ slot_time)             ⊳ wake up in my slot to start my frame (27)   try_send_data() (28)else (29)   sleep_after(0) (30)   wake_after(my_slot ∗ slot_time) (31) end if (32) end procedure (33) procedure scan_handler()                    ⊳ called when scan timer is fired (34) if (best_parent_addr < 0XFFFF) then (35)   my_parent_addr = best_parent_addr (36)   my_dfs = min_dfs + 1 (37)   scan_timer = OFF (38) else (39)   sleep_after(0) (40)   start_scan_timer(random delay, SCAN_LENGTH) (41) end if (42) return (43) end procedure


#### 4.2.2. Node Operation

The behavior of the basic node differs from that of CH in such a way that the power consumption is minimized. Choosing a parent CH is an adaptive process. The association process is combined implicitly in the data transmission phase. Initially, the node uses the information inside the beacon packet to decide which CH can accept new followers. When the CH receives data packet from the new node, it records it as new follower or rejects the association through ACK packet.At the beginning of the node’s operation, it starts scanning the channel for SCAN_LENGTH time. During this time, the node receives beacons from all the neighboring CHs. When the scan timer is expired, the best parent will be chosen based on the received signal strength indicator (RSSI). Then, the node goes to sleep after completing the data transmission phase.Whenever a new data is available, the node schedules its wake-up prior to the next parent’s beacon. The scan process is initiated and stopped when the beacon from the current parent is received to commence the transmission phase. If the parent is lost, the scanning process will continue and an alternative parent will be selected. This mechanism aims to solve the problem of connection lost with the parent. Algorithm2 explains how the normal node joins the network. It is similar to that of the CH with two exceptions: RSSI criterion is used rather than DFS and the association request is omitted.Algorithm 2:Node join algorithm.
(1) procedure start_scan() (2)  best_parent_addr = 0XFFFF; best_rssi = 0; scan_timer = ON (3)  wake_after(0)                                      ⊳ wakeup now (4)  start_scan_timer(0, SCAN_LENGTH)        ⊳ scan_timer starts now and will fire after SCAN_LENGTH (5) end procedure (6) procedure recv_beacon(src, rssi, more)                        ⊳ more bit in CTRL byte (7)  if scan_timer then (8)   if (rssi > best_rssi & more) then                    ⊳ replace current candidate parent (9)      best_rssi = rssi (10)     best_parent_addr = src (11)end if (12)   if (my_parent_addr == best_parent_addr) then           ⊳ restore synchronization with last parent (13)    stop_timer() (14)    scan_timer = OFF (15)   end if (16) end if (17) if scan_timer then (18)   return (19) end if (20) if (data available) then (21)   sleep_after(slot_time) (22)   wake_after(beacon_frame)                    ⊳ wake on next frame to send more data (23)   try_send_data() (24) else (25)   sleep_after(0) (26) end if (27) end procedure (28) procedure scan_handler()                          ⊳ called when scan timer is fired (29) if (best_parent_addr < 0XFFFF) then (30)   my_parent_addr = best_parent_addr (31)   scan_timer = OFF (32) else (33)   drop_packet() (34)   sleep_after(0)                   ⊳ sleep now and wake up when new packet is available (35) end if (36) return (37) end procedureEach cluster head can limit the number of associated nodes or block further association when the number of followers reaches the maximum limit. This is done by utilizing the MORE bit in CTRL byte (see Figure5 and Algorithm 2). When the number of follower’s reaches the limit, this bit is set to “0” and every node receiving the beacon will ignore this parent during the scanning process and choose another one. This mechanism balances the load among the cluster heads evenly.


#### 4.2.3. Node’s Failure

The nodes in WSN are susceptible to failures due to running out of energy. In the case of CH failure, the node stops working until the energy storage is replenished by the harvesting circuit and it joins the network again as a new CH. Regarding the associated CHs, after consecutive number of lost beacons, they start the scanning process to select an alternative parent while the nodes tackle this issue as explained in Section4.2.2. On the other hand, when the node runs out of energy, it simply stops working, but it can send an alarm signal to the sink before their energy is depleted completely.


## 4.1. Motivations behind AH-MAC

The main goal of the proposed MAC is to combine the strengths of LEACH and IEEE 802.15.4 while offsetting their weaknesses. In order to optimize the performance of the MAC protocol, many aspects should be considered: first, the duty cycle should be optimized to keep the nodes in sleep mode for longer periods of time. This can be achieved by decreasing the active time of the CH within the frame.In contrast to the IEEE 802.15.4, the AH-MAC restricts the active period of the CH to one slot. The child nodes contend to access the channel after receiving the beacon. Increasing the probability of packet collision may be the main side effect of this scheme. However, it can be tackled by adjusting the schedule of the next transmission for all followers. In addition to reliable transmission, ACK packet can be utilized to provide information about the next time the node will upload its data. Unlike LEACH which requires four phases to run regularly (Section3.2), the CH selection phase in AH-MAC is not required to do so because the CHs are predetermined. The cluster formation phase is needed only once during network initialization and whenever the follower loses the connection with its parent. This modification conserves considerable amounts of energy.Keeping nodes synchronized with their parent is another source of energy waste in LEACH and IEEE 802.15.4. Every node should wake up at least once during each frame to receive the beacon from the parent even if there is no data to upload. AH-MAC modifies this synchronization scheme by keeping the node in sleep mode unless the node has new data to send. To reduce idle energy, the node schedules its wake up prior to the next beacon from its parent.Like IEEE 802.15.4, AH-MAC adopted the intercluster communication, where the CH can forward its data to another CH that is closer to the distant sink. This feature will reduce the total energy consumption as well as increasing the network coverage area. Table2 summarizes the main features of the three protocols.Table 2
Main features of AH-MAC, LEACH, and IEEE 802.15.4.
AH-MAC LEACH IEEE 802.15.4 Beacon mode Yes No Yes TDMA schedule No Yes Yes Association required CHs only All nodes All nodes Active time 1 slot N slot N slot Intercluster routing support Yes No Yes Network size Unlimited Limited Unlimited ACK support Yes No YesThe structure of AH-MAC consists of the following:(1)
One sink is used to collect and process the received data from the network nodes.(2)
CH is provided with energy harvesting circuit and carries out most network activities.(3)
The basic node which is battery powered with limited capabilities is used to collect data from the region of interest and upload it to its parent (associated CH).(4)
Both types of nodes are deployed in the region of interest randomly or in the delimited manner as shown in Figure3.Figure 3
Example of nodes deployment in WSN.


## 4.2. Network Setup and Operation

AH-MAC protocol uses the beacon mode where the time axis is divided into repeated segments called frames. Each frame is further subdivided into two parts: active and inactive periods which are adjusted by the designer (Figure4(a)). The active period is used by the parent CH to send the beacon and allows its follower to send association request or upload data, while the latter is used by associated CHs for similar purposes. This mechanism provides synchronization between the parent and its followers as well as preventing beacons collision. The number of follower CHs that can be associated with one parent can be determined from the following relation:(1)Nch=TframeTactive-1,where Nch is the maximum number of CHs that can be associated with a single parent, Tframe is the frame interval, and Tactive is the amount of time the parent CH remains active in the frame (aka slot). For each parent CH, the number of followers that can upload their data is defined by the packet rate and beacon rate parameters. Nominally, it can be estimated by(2)Nfollower=TpktTframe.Figure 4
Frame structure in AH-MAC.
(a)
General frame structure (b)
Parent-child slot schedulingN f o l l o w e r is the maximum number of followers (nodes and CHs) that can be associated with one parent, while Tpkt is the interval between two generated packets. The maximum number of basic nodes (Nnodes) that can join a cluster is defined by(3)Nnodes=Nfollower-Nch.Assuming that the CH is sending one beacon every second and each node is generating 1 packet per minute, if the active period is adjusted to 0.1 Sec, the frame is divided into 10 slots. The parent CH uses the first slot while up to nine children CHs use the rest of the slots. The period between two generated packets is 60 beacons (i.e., nominally 60 nodes (Nfollower) can upload their data to the parent). Thus, the total number of followers (Nch+Nnodes) should not exceed 60 which is the maximum cluster size for this scenario. In Figure 3, the CH2 has five followers (two CHs and three nodes).At the beginning of network operation, the sink starts sending beacon at the beginning of its slot. The content of beacon frame is shown in Figure5. After the active period has elapsed, it goes to sleep until the beginning of the next frame. The first child CH starts sending its beacon in second slot. The second child uses the third slot and so on. This mechanism of slot assignment prevents the beacons from colliding and cluster interference. At any time, one cluster is active while other clusters in the vicinity are in sleep mode. Each CH wakes up twice every frame: first in the slot of its parent to keep the synchronization with it and upload its data and second during its own slot to send beacon and allow its followers to upload data packets.Figure 5
Beacon frame format in AH-MAC.


### 4.2.1. Cluster Head Operation

When the CH is switched on for the first time, it scans the channel for SCAN_LENGTH time to locate the best parent. The CHs who are close to the sink will choose the sink as a parent, while those who are further will choose the CH that has minimum distance to the sink as a parent. The parent selection mechanism is done by utilizing DFS (distance from the sink) field in the beacon packet, which defines the distance of current CH from the sink. Sink sets its DFS to 0, and the subsequent CHs increase it by one to construct a multiring network structure.When the scan timer expires, the CH chooses the best parent based on the minimum DFS. Then, it waits the next beacon from the candidate parent to request association. If the parent has an empty slot in frame, it will be assigned to the new follower. Otherwise, the association request will be rejected. In order to avoid rejection and conserve energy, each parent with empty slots will set the ACCEPT bit in the beacon frame, allowing other CHs to request association; otherwise, the follower will choose another parent. After the association is accomplished, a new follower CH will wake up in its slot and starts sending beacon frame with a new DFS (DFSparent+1) as shown in Figure 4(b). This process will be repeated for all other CHs in the network.The pseudocode in Algorithm1 explains the CH joining process. Lines (1)–(5) initialize variables and initiate scan timer. The first part of the RECV_BEACON procedure (lines (7)–(16)) shows how the CH chooses the best parent based on DFS criteria. When a beacon is received from the previous lost parent, the scanning process is stopped and a new association will be requested. Otherwise, the current parent will be recorded as the best candidate if its DFS is less than that of the current candidate. In lines (33)–(43), the CH processes the information from the last scan after the scan_timer expires. If no parent is found, the CH goes to sleep and wakes up randomly to repeat the scanning process. Finally, lines (20)–(31) clarify the behavior of the follower CH toward the parent beacon during network operations.Algorithm 1:Cluster head join algorithm.
(1)procedure start_scan() (2)  best_parent_addr = 0XFFFF; min_dfs = 255; scan_timer = ON (3)  wake_after(0)                                ⊳ wakeup now (4)  start_scan_timer(0, SCAN_LENGTH)    ⊳ scan_timer starts now and will fire after SCAN_LENGTH (5) end procedure (6) procedure recv_beacon(src, dfs, accept) (7)  if scan_timer then (8)   if (dfs < min_dfs & accept)then                   ⊳ replace current parent (9)     min_dfs = dfs (10)    best_parent_addr = src (11)   end if (12)   if (my_parent_addr == best_parent_addr) then      ⊳ restore synchronization with last parent (13)    stop_scan_timer() (14)    scan_timer = OFF (15)   end if (16) end if (17) if scan_timer then (18)   return (19) end if (20) if (not associated) then (21)   sleep_after(slot_time) (22)   wake_after(Tframe) (23)   send_associate_request_packet() (24) else if (data available) then (25)   sleep_after(slot_time) (26)   wake_after(my_slot ∗ slot_time)             ⊳ wake up in my slot to start my frame (27)   try_send_data() (28)else (29)   sleep_after(0) (30)   wake_after(my_slot ∗ slot_time) (31) end if (32) end procedure (33) procedure scan_handler()                    ⊳ called when scan timer is fired (34) if (best_parent_addr < 0XFFFF) then (35)   my_parent_addr = best_parent_addr (36)   my_dfs = min_dfs + 1 (37)   scan_timer = OFF (38) else (39)   sleep_after(0) (40)   start_scan_timer(random delay, SCAN_LENGTH) (41) end if (42) return (43) end procedure


### 4.2.2. Node Operation

The behavior of the basic node differs from that of CH in such a way that the power consumption is minimized. Choosing a parent CH is an adaptive process. The association process is combined implicitly in the data transmission phase. Initially, the node uses the information inside the beacon packet to decide which CH can accept new followers. When the CH receives data packet from the new node, it records it as new follower or rejects the association through ACK packet.At the beginning of the node’s operation, it starts scanning the channel for SCAN_LENGTH time. During this time, the node receives beacons from all the neighboring CHs. When the scan timer is expired, the best parent will be chosen based on the received signal strength indicator (RSSI). Then, the node goes to sleep after completing the data transmission phase.Whenever a new data is available, the node schedules its wake-up prior to the next parent’s beacon. The scan process is initiated and stopped when the beacon from the current parent is received to commence the transmission phase. If the parent is lost, the scanning process will continue and an alternative parent will be selected. This mechanism aims to solve the problem of connection lost with the parent. Algorithm2 explains how the normal node joins the network. It is similar to that of the CH with two exceptions: RSSI criterion is used rather than DFS and the association request is omitted.Algorithm 2:Node join algorithm.
(1) procedure start_scan() (2)  best_parent_addr = 0XFFFF; best_rssi = 0; scan_timer = ON (3)  wake_after(0)                                      ⊳ wakeup now (4)  start_scan_timer(0, SCAN_LENGTH)        ⊳ scan_timer starts now and will fire after SCAN_LENGTH (5) end procedure (6) procedure recv_beacon(src, rssi, more)                        ⊳ more bit in CTRL byte (7)  if scan_timer then (8)   if (rssi > best_rssi & more) then                    ⊳ replace current candidate parent (9)      best_rssi = rssi (10)     best_parent_addr = src (11)end if (12)   if (my_parent_addr == best_parent_addr) then           ⊳ restore synchronization with last parent (13)    stop_timer() (14)    scan_timer = OFF (15)   end if (16) end if (17) if scan_timer then (18)   return (19) end if (20) if (data available) then (21)   sleep_after(slot_time) (22)   wake_after(beacon_frame)                    ⊳ wake on next frame to send more data (23)   try_send_data() (24) else (25)   sleep_after(0) (26) end if (27) end procedure (28) procedure scan_handler()                          ⊳ called when scan timer is fired (29) if (best_parent_addr < 0XFFFF) then (30)   my_parent_addr = best_parent_addr (31)   scan_timer = OFF (32) else (33)   drop_packet() (34)   sleep_after(0)                   ⊳ sleep now and wake up when new packet is available (35) end if (36) return (37) end procedureEach cluster head can limit the number of associated nodes or block further association when the number of followers reaches the maximum limit. This is done by utilizing the MORE bit in CTRL byte (see Figure5 and Algorithm 2). When the number of follower’s reaches the limit, this bit is set to “0” and every node receiving the beacon will ignore this parent during the scanning process and choose another one. This mechanism balances the load among the cluster heads evenly.


### 4.2.3. Node’s Failure

The nodes in WSN are susceptible to failures due to running out of energy. In the case of CH failure, the node stops working until the energy storage is replenished by the harvesting circuit and it joins the network again as a new CH. Regarding the associated CHs, after consecutive number of lost beacons, they start the scanning process to select an alternative parent while the nodes tackle this issue as explained in Section4.2.2. On the other hand, when the node runs out of energy, it simply stops working, but it can send an alarm signal to the sink before their energy is depleted completely.


## 4.2.1. Cluster Head Operation

When the CH is switched on for the first time, it scans the channel for SCAN_LENGTH time to locate the best parent. The CHs who are close to the sink will choose the sink as a parent, while those who are further will choose the CH that has minimum distance to the sink as a parent. The parent selection mechanism is done by utilizing DFS (distance from the sink) field in the beacon packet, which defines the distance of current CH from the sink. Sink sets its DFS to 0, and the subsequent CHs increase it by one to construct a multiring network structure.When the scan timer expires, the CH chooses the best parent based on the minimum DFS. Then, it waits the next beacon from the candidate parent to request association. If the parent has an empty slot in frame, it will be assigned to the new follower. Otherwise, the association request will be rejected. In order to avoid rejection and conserve energy, each parent with empty slots will set the ACCEPT bit in the beacon frame, allowing other CHs to request association; otherwise, the follower will choose another parent. After the association is accomplished, a new follower CH will wake up in its slot and starts sending beacon frame with a new DFS (DFSparent+1) as shown in Figure 4(b). This process will be repeated for all other CHs in the network.The pseudocode in Algorithm1 explains the CH joining process. Lines (1)–(5) initialize variables and initiate scan timer. The first part of the RECV_BEACON procedure (lines (7)–(16)) shows how the CH chooses the best parent based on DFS criteria. When a beacon is received from the previous lost parent, the scanning process is stopped and a new association will be requested. Otherwise, the current parent will be recorded as the best candidate if its DFS is less than that of the current candidate. In lines (33)–(43), the CH processes the information from the last scan after the scan_timer expires. If no parent is found, the CH goes to sleep and wakes up randomly to repeat the scanning process. Finally, lines (20)–(31) clarify the behavior of the follower CH toward the parent beacon during network operations.Algorithm 1:Cluster head join algorithm.
(1)procedure start_scan() (2)  best_parent_addr = 0XFFFF; min_dfs = 255; scan_timer = ON (3)  wake_after(0)                                ⊳ wakeup now (4)  start_scan_timer(0, SCAN_LENGTH)    ⊳ scan_timer starts now and will fire after SCAN_LENGTH (5) end procedure (6) procedure recv_beacon(src, dfs, accept) (7)  if scan_timer then (8)   if (dfs < min_dfs & accept)then                   ⊳ replace current parent (9)     min_dfs = dfs (10)    best_parent_addr = src (11)   end if (12)   if (my_parent_addr == best_parent_addr) then      ⊳ restore synchronization with last parent (13)    stop_scan_timer() (14)    scan_timer = OFF (15)   end if (16) end if (17) if scan_timer then (18)   return (19) end if (20) if (not associated) then (21)   sleep_after(slot_time) (22)   wake_after(Tframe) (23)   send_associate_request_packet() (24) else if (data available) then (25)   sleep_after(slot_time) (26)   wake_after(my_slot ∗ slot_time)             ⊳ wake up in my slot to start my frame (27)   try_send_data() (28)else (29)   sleep_after(0) (30)   wake_after(my_slot ∗ slot_time) (31) end if (32) end procedure (33) procedure scan_handler()                    ⊳ called when scan timer is fired (34) if (best_parent_addr < 0XFFFF) then (35)   my_parent_addr = best_parent_addr (36)   my_dfs = min_dfs + 1 (37)   scan_timer = OFF (38) else (39)   sleep_after(0) (40)   start_scan_timer(random delay, SCAN_LENGTH) (41) end if (42) return (43) end procedure


## 4.2.2. Node Operation

The behavior of the basic node differs from that of CH in such a way that the power consumption is minimized. Choosing a parent CH is an adaptive process. The association process is combined implicitly in the data transmission phase. Initially, the node uses the information inside the beacon packet to decide which CH can accept new followers. When the CH receives data packet from the new node, it records it as new follower or rejects the association through ACK packet.At the beginning of the node’s operation, it starts scanning the channel for SCAN_LENGTH time. During this time, the node receives beacons from all the neighboring CHs. When the scan timer is expired, the best parent will be chosen based on the received signal strength indicator (RSSI). Then, the node goes to sleep after completing the data transmission phase.Whenever a new data is available, the node schedules its wake-up prior to the next parent’s beacon. The scan process is initiated and stopped when the beacon from the current parent is received to commence the transmission phase. If the parent is lost, the scanning process will continue and an alternative parent will be selected. This mechanism aims to solve the problem of connection lost with the parent. Algorithm2 explains how the normal node joins the network. It is similar to that of the CH with two exceptions: RSSI criterion is used rather than DFS and the association request is omitted.Algorithm 2:Node join algorithm.
(1) procedure start_scan() (2)  best_parent_addr = 0XFFFF; best_rssi = 0; scan_timer = ON (3)  wake_after(0)                                      ⊳ wakeup now (4)  start_scan_timer(0, SCAN_LENGTH)        ⊳ scan_timer starts now and will fire after SCAN_LENGTH (5) end procedure (6) procedure recv_beacon(src, rssi, more)                        ⊳ more bit in CTRL byte (7)  if scan_timer then (8)   if (rssi > best_rssi & more) then                    ⊳ replace current candidate parent (9)      best_rssi = rssi (10)     best_parent_addr = src (11)end if (12)   if (my_parent_addr == best_parent_addr) then           ⊳ restore synchronization with last parent (13)    stop_timer() (14)    scan_timer = OFF (15)   end if (16) end if (17) if scan_timer then (18)   return (19) end if (20) if (data available) then (21)   sleep_after(slot_time) (22)   wake_after(beacon_frame)                    ⊳ wake on next frame to send more data (23)   try_send_data() (24) else (25)   sleep_after(0) (26) end if (27) end procedure (28) procedure scan_handler()                          ⊳ called when scan timer is fired (29) if (best_parent_addr < 0XFFFF) then (30)   my_parent_addr = best_parent_addr (31)   scan_timer = OFF (32) else (33)   drop_packet() (34)   sleep_after(0)                   ⊳ sleep now and wake up when new packet is available (35) end if (36) return (37) end procedureEach cluster head can limit the number of associated nodes or block further association when the number of followers reaches the maximum limit. This is done by utilizing the MORE bit in CTRL byte (see Figure5 and Algorithm 2). When the number of follower’s reaches the limit, this bit is set to “0” and every node receiving the beacon will ignore this parent during the scanning process and choose another one. This mechanism balances the load among the cluster heads evenly.


## 4.2.3. Node’s Failure

The nodes in WSN are susceptible to failures due to running out of energy. In the case of CH failure, the node stops working until the energy storage is replenished by the harvesting circuit and it joins the network again as a new CH. Regarding the associated CHs, after consecutive number of lost beacons, they start the scanning process to select an alternative parent while the nodes tackle this issue as explained in Section4.2.2. On the other hand, when the node runs out of energy, it simply stops working, but it can send an alarm signal to the sink before their energy is depleted completely.


## 5. Performance Evaluation

The NS2 software (version 2.35) was used to evaluate the performance of the AH-MAC. 100 sensor nodes were uniformly distributed in an area measuring about 100 × 100m2. The sink is located at (0,0). Table 3 lists the main parameters used in the simulation scenario. Two-data-packet format is supported: one for uploading sensed data from the nodes to the CH and another packet format for the aggregated data in CH. Choosing RF parameters impacts the node’s performance and lifetime. In this work, the parameters of the transceiver CC1120 are used. This chip is the state-of-the-art product from Texas Instrument (TI).Table 3
Simulation setting parameters.
Simulation time 3600 sec Number of nodes 100 Area 100 × 100m2 Number of CHs 5 Platform TI-CC1120 Beacon rate 1 sec Packet rate 2 packets/min Beacon Packet size 20 bytes Data packet size (CH) 36 bytes Data packet size (node) 28 bytes ACK packet size 14 bytes Active period 0.05 secThe performance was evaluated and compared to the LEACH protocol. LEACH is nonstandard protocol and very well accepted in the sensor network community. A large number of proposed protocols [37–46] in the literature were compared with it. This motivates us to compare with the same reference protocol. The source code of LEACH protocol in the mannasim package was modified to adopt the CC1120 parameters rather than the unlimited output power and zero idle energy as done in the original LEACH.


### 5.1. TI-CC1120

The CC1120 device from Texas Instrument [47] is a fully integrated single-chip radio transceiver designed for high performance at very low-power and low-voltage operation in cost-effective wireless systems. The device is mainly intended for the ISM (Industrial, Scientific, and Medical) frequency bands. The CC1120 provides extensive hardware support for packet handling, data buffering, burst transmissions, clear channel assessment, link quality indication, and Wake-On-Radio. Table 4 tabulates the main characteristics of this transceiver. Throughout this work, channel data rate and the carrier frequency are set to 200 Kbps and 868 MHz, respectively.Table 4
CC1120 main characteristics.
Tx current 26 mA (0 dBm)–45 mA (14 dBm) Rx current (normal mode) 22 mA RX current (sniff mode) 2 mA Idle current 1.3 mA Sleep current <1μA Input voltage 2–3.6 V Data rate 1.2–200 Kbps Frequencies 164–960 MHzQuick startup time enables CC1120 to use few preamble bits. This feature is utilized by sniff mode to dramatically reduce the current consumption while the receiver waits for data. Due to the fact that the CC1120 device can wake up and settle much faster than the duration of most preambles, it is not required to be in the RX mode continuously while waiting for a packet to arrive. Instead, the enhanced Wake-On-Radio (eWOR) feature can be used to periodically put the device into sleep mode. By setting an appropriate sleep time, the CC1120 device can wake up and receive the packet when it arrives and suffers no performance losses. This sequence removes the need for accurate timing synchronization between the transmitter and the receiver. It lets the user trade off current consumption between the transmitter and receiver.


### 5.2. Performance Results

The initial energy of nodes is set according to the case study. Throughout this evaluation, the CHs in AH-MAC are assumed to have unlimited energy because they are supported by an energy harvesting source. The round time of the LEACH is adjusted so that each node acts the role of CH once during the simulation time.Table5 lists the performance results of both algorithms for a one-hour simulation. It is obvious that AH-MAC outperforms LEACH by a greater margin in terms of energy consumption and the delivery ratio. Delivery ratio is the ratio of the successfully received packets by the sink to the total data packets originating from all sources. All nodes in LEACH played the role of CH so that they consume high energy (7.85 Joule). In AH-MAC, basic nodes consume very low energy (0.25 Joule) compared to that consumed by CH which is 15.67 Joule. Figure 6(a) shows the progress of total energy consumption of both protocols during simulation time. AH-MAC can achieve about an 8x reduction in energy compared to the LEACH protocol.Table 5
Performance evaluation of AH-MAC versus LEACH.
AH-MAC LEACH Total energy consumption (Joule) 102 785 Delivery ratio 93% 78% Node energy consumption (Joule/node) 0.25 — CH energy consumption (Joule/CH) 15.67 7.85Figure 6
Performance evaluation of AH-MAC versus LEACH.
(a)
Total energy consumption versus time (b)
Nodes alive versus time (initial energy = 0.5 J) (c)
Total energy consumption versus packet rate (d)
Delivery ratio versus packet rate (e)
Delivery ratio versus network size (terrain size =X2 meter2)Figure6(b) shows the nodes’ lifetime for both protocols. The initial energy of the nodes is set to 0.5 Joule except for the CHs in AH-MAC. At the beginning of the simulation, all of the nodes are active and they participate in network traffic, TDMA schedule is relatively large, and the node consumes 0.066 W when it is in receiving mode (Table 4). Also, the nodes farther from the sink consume energy at a much faster rate because more energy is required to transmit their data. For all the above reasons, the first set of the CHs shortly depleted their energy (tens of seconds). This abrupt change cannot be shown clearly on the graph unless it displayed individually. In both protocols, the nodes set the transmission power according to their respective distances from the parent. Therefore, the nodes with similar rates of energy consumption will run out of their energy simultaneously. This leads to the appearance of steps in both plots and also explains why they are not smooth.In Figures6(c) and 6(d), the network traffic is used to evaluate the performance of both protocols in terms of total energy consumption and delivery ratio. The energy consumption in AH-MAC increased linearly against the exponential increment in LEACH. However, the latter provides better delivery ratio than AH-MAC in high rates because AH-MAC is designed and optimized for low-rate applications., but increasing the beacon rate in AH-MAC improves the delivery ratio at the cost of higher energy consumption.Figure6(e) shows the unique feature of AH-MAC in supporting intercluster communication which extends the coverage area of the network. AH-MAC can span across the much larger area, while LEACH is limited by the maximum transmission range of the transceiver regardless of the number of clusters used. In AH-MAC, the coverage area depends on the number of clusters, the location of the CHs, and the transmission range of the transceiver.Based on the results of comparison of both protocols, the following are noticed:(1)
In low-rate applications, AH-MC outperforms LEACH protocol in terms of delivery ratio and energy consumption. The latter provides better delivery ratio in high packet rates (>1 pkt/Min). However, the delivery ratio of AH-MAC can be improved at the cost of increasing the energy consumption.(2)
The frame length in the LEACH is variable and depends on the cluster size. The CH remains active throughout the frame. Unlike LEACH, the active time of CH in AH-MAC is limited to one slot. This saves a considerable amount of energy in AH-MAC.(3)
Energy consumption resulting from network overhead in LEACH is high because four phases are done regularly (see Section3.2). In AH-MAC, the network overhead is optimized and it is required only one time. Also, all phases are not required. This optimization saves a considerable amount of energy in AH-MAC.(4)
The ACK support in AH-MAC enhances the network throughput, so a larger number of packets are received by the sink.(5)
AH-MAC successfully minimizes energy consumption of the nodes at the cost of increasing the energy consumption of CHs. This strategy results in longer network lifetime.Regarding the performance evaluation of AH-MAC against IEEE 802.15.4, it is expected that AH-MAC can outperform IEEE 802.15.4. Two reasons lead to this assumption. Firstly, the length of the active period in IEEE 802.15.4 is much longer than the AH-MAC which is restricted to one slot. This saves considerable amount of cluster head’s energy. Secondly, the nodes in IEEE 802.15.4 should wake up periodically to keep the synchronization with their parents while the node in AH-MAC wakes up only when new data is available and prior to the beacon of its parent to reduce idle energy.The author in [48] estimated the energy consumption of the nodes in IEEE 802.15.4 environment. A mesh topology of 26 nodes is used with different packet size payload. The minimum energy consumption reported in his work was 1.1 Joule (20 bytes payload) for a 300 Sec simulation time while the node in AH-MAC requires 0.25 Joule for one-hour simulation. This elemental comparison highlights the performance improvement of AH-MAC protocol over the standard.


### 5.3. Impact of Frame Length on AH-MAC Performance

The frame length parameter in AH-MAC is variable and adjusted depending on the traffic load and cluster size. Figure7 shows the effect of varying frame length on two performance metrics: energy consumption and the total number of packets received by the sink. All graphs are normalized to simplify the performance analysis. The reference values are chosen at the point where the frame length is set to 1 Sec. For example, the normalized value of the total energy (Et_norm) is computed using (4), and all other normalized metrics are computed with similar manner.(4)Et_normx=EtxEt1x=framelength.Figure 7
Effect of frame length on AH-MAC performance (all graphs are normalized to the point where the frame length = 1.0 Sec).Figure7 shows that doubling the beacon rate increments cluster head energy consumption to 173% of its reference value. However, this increment is partially compensated by the reduction of node’s energy to 83%. As a result of this, the total energy is increased to 165%.Short frame allows the CH to send more beacons which result in more slots being available for the followers to upload their data, decrease collisions (higher throughput), and increase power consumption. Moreover, the scanning period of the nodes is reduced which results in lower energy consumption and longer lifetimes. The main drawback of the short frame is the increased cost of the harvesting circuit due to the need for a higher storage capacity with sufficient amount of harvested energy.On the other hand, setting the beacon rate to 0.5 packet/sec will reduce CH’s energy consumption to 52% at the cost of increasing the node’s energy to 140%. This reduction of CH’s energy will result in simpler harvesting circuit at the cost of shorter network lifetime. A compromise is required between energy harvesting cost and the network’s lifetime.


### 5.4. AH-MAC Performance in Low-Rate Applications

The motivation behind AH-MAC is to design an energy-efficient MAC protocol for low-rate monitoring systems such as environmental monitoring. In such an application, each node generates one packet every five minutes. The duty cycle of the nodes is about 0.3%. The frame length can be adjusted to 2 Sec to reduce the cost of harvesting circuit. Taking advantage of the sniff mode, the idle energy can be reduced dramatically. Table6 shows the performance of the network under these stipulated conditions.Table 6
AH-MAC performance (packet rate = 0.2 pkt/min, frame length = 2 Sec).
Normal mode Sniff mode Energy (J) Power (μW) Energy (J) Power (μW) CH 14.71 4090 1.65 458 Node 0.21 58 0.04 11In Table6, 14.71 Joule represents the average energy consumption of cluster head during one-hour simulation. This is equivalent to the CH average power of 4090 μW. Multiplying 14.71 Joule by 24 hours results in 350 Joule/day which is the energy required for one-day operation. A simple solar panel with a supercapacitor of 500 Joule will be sufficient for the cluster head to operate continuously several days without needing to be replenished.The results show that the energy consumption of normal node is very low. This means it can last for several years before battery replacement is needed. However, CH consumes much higher energy and energy harvesting is necessary for perpetual operation.


## 5.1. TI-CC1120

The CC1120 device from Texas Instrument [47] is a fully integrated single-chip radio transceiver designed for high performance at very low-power and low-voltage operation in cost-effective wireless systems. The device is mainly intended for the ISM (Industrial, Scientific, and Medical) frequency bands. The CC1120 provides extensive hardware support for packet handling, data buffering, burst transmissions, clear channel assessment, link quality indication, and Wake-On-Radio. Table 4 tabulates the main characteristics of this transceiver. Throughout this work, channel data rate and the carrier frequency are set to 200 Kbps and 868 MHz, respectively.Table 4
CC1120 main characteristics.
Tx current 26 mA (0 dBm)–45 mA (14 dBm) Rx current (normal mode) 22 mA RX current (sniff mode) 2 mA Idle current 1.3 mA Sleep current <1μA Input voltage 2–3.6 V Data rate 1.2–200 Kbps Frequencies 164–960 MHzQuick startup time enables CC1120 to use few preamble bits. This feature is utilized by sniff mode to dramatically reduce the current consumption while the receiver waits for data. Due to the fact that the CC1120 device can wake up and settle much faster than the duration of most preambles, it is not required to be in the RX mode continuously while waiting for a packet to arrive. Instead, the enhanced Wake-On-Radio (eWOR) feature can be used to periodically put the device into sleep mode. By setting an appropriate sleep time, the CC1120 device can wake up and receive the packet when it arrives and suffers no performance losses. This sequence removes the need for accurate timing synchronization between the transmitter and the receiver. It lets the user trade off current consumption between the transmitter and receiver.


## 5.2. Performance Results

The initial energy of nodes is set according to the case study. Throughout this evaluation, the CHs in AH-MAC are assumed to have unlimited energy because they are supported by an energy harvesting source. The round time of the LEACH is adjusted so that each node acts the role of CH once during the simulation time.Table5 lists the performance results of both algorithms for a one-hour simulation. It is obvious that AH-MAC outperforms LEACH by a greater margin in terms of energy consumption and the delivery ratio. Delivery ratio is the ratio of the successfully received packets by the sink to the total data packets originating from all sources. All nodes in LEACH played the role of CH so that they consume high energy (7.85 Joule). In AH-MAC, basic nodes consume very low energy (0.25 Joule) compared to that consumed by CH which is 15.67 Joule. Figure 6(a) shows the progress of total energy consumption of both protocols during simulation time. AH-MAC can achieve about an 8x reduction in energy compared to the LEACH protocol.Table 5
Performance evaluation of AH-MAC versus LEACH.
AH-MAC LEACH Total energy consumption (Joule) 102 785 Delivery ratio 93% 78% Node energy consumption (Joule/node) 0.25 — CH energy consumption (Joule/CH) 15.67 7.85Figure 6
Performance evaluation of AH-MAC versus LEACH.
(a)
Total energy consumption versus time (b)
Nodes alive versus time (initial energy = 0.5 J) (c)
Total energy consumption versus packet rate (d)
Delivery ratio versus packet rate (e)
Delivery ratio versus network size (terrain size =X2 meter2)Figure6(b) shows the nodes’ lifetime for both protocols. The initial energy of the nodes is set to 0.5 Joule except for the CHs in AH-MAC. At the beginning of the simulation, all of the nodes are active and they participate in network traffic, TDMA schedule is relatively large, and the node consumes 0.066 W when it is in receiving mode (Table 4). Also, the nodes farther from the sink consume energy at a much faster rate because more energy is required to transmit their data. For all the above reasons, the first set of the CHs shortly depleted their energy (tens of seconds). This abrupt change cannot be shown clearly on the graph unless it displayed individually. In both protocols, the nodes set the transmission power according to their respective distances from the parent. Therefore, the nodes with similar rates of energy consumption will run out of their energy simultaneously. This leads to the appearance of steps in both plots and also explains why they are not smooth.In Figures6(c) and 6(d), the network traffic is used to evaluate the performance of both protocols in terms of total energy consumption and delivery ratio. The energy consumption in AH-MAC increased linearly against the exponential increment in LEACH. However, the latter provides better delivery ratio than AH-MAC in high rates because AH-MAC is designed and optimized for low-rate applications., but increasing the beacon rate in AH-MAC improves the delivery ratio at the cost of higher energy consumption.Figure6(e) shows the unique feature of AH-MAC in supporting intercluster communication which extends the coverage area of the network. AH-MAC can span across the much larger area, while LEACH is limited by the maximum transmission range of the transceiver regardless of the number of clusters used. In AH-MAC, the coverage area depends on the number of clusters, the location of the CHs, and the transmission range of the transceiver.Based on the results of comparison of both protocols, the following are noticed:(1)
In low-rate applications, AH-MC outperforms LEACH protocol in terms of delivery ratio and energy consumption. The latter provides better delivery ratio in high packet rates (>1 pkt/Min). However, the delivery ratio of AH-MAC can be improved at the cost of increasing the energy consumption.(2)
The frame length in the LEACH is variable and depends on the cluster size. The CH remains active throughout the frame. Unlike LEACH, the active time of CH in AH-MAC is limited to one slot. This saves a considerable amount of energy in AH-MAC.(3)
Energy consumption resulting from network overhead in LEACH is high because four phases are done regularly (see Section3.2). In AH-MAC, the network overhead is optimized and it is required only one time. Also, all phases are not required. This optimization saves a considerable amount of energy in AH-MAC.(4)
The ACK support in AH-MAC enhances the network throughput, so a larger number of packets are received by the sink.(5)
AH-MAC successfully minimizes energy consumption of the nodes at the cost of increasing the energy consumption of CHs. This strategy results in longer network lifetime.Regarding the performance evaluation of AH-MAC against IEEE 802.15.4, it is expected that AH-MAC can outperform IEEE 802.15.4. Two reasons lead to this assumption. Firstly, the length of the active period in IEEE 802.15.4 is much longer than the AH-MAC which is restricted to one slot. This saves considerable amount of cluster head’s energy. Secondly, the nodes in IEEE 802.15.4 should wake up periodically to keep the synchronization with their parents while the node in AH-MAC wakes up only when new data is available and prior to the beacon of its parent to reduce idle energy.The author in [48] estimated the energy consumption of the nodes in IEEE 802.15.4 environment. A mesh topology of 26 nodes is used with different packet size payload. The minimum energy consumption reported in his work was 1.1 Joule (20 bytes payload) for a 300 Sec simulation time while the node in AH-MAC requires 0.25 Joule for one-hour simulation. This elemental comparison highlights the performance improvement of AH-MAC protocol over the standard.


## 5.3. Impact of Frame Length on AH-MAC Performance

The frame length parameter in AH-MAC is variable and adjusted depending on the traffic load and cluster size. Figure7 shows the effect of varying frame length on two performance metrics: energy consumption and the total number of packets received by the sink. All graphs are normalized to simplify the performance analysis. The reference values are chosen at the point where the frame length is set to 1 Sec. For example, the normalized value of the total energy (Et_norm) is computed using (4), and all other normalized metrics are computed with similar manner.(4)Et_normx=EtxEt1x=framelength.Figure 7
Effect of frame length on AH-MAC performance (all graphs are normalized to the point where the frame length = 1.0 Sec).Figure7 shows that doubling the beacon rate increments cluster head energy consumption to 173% of its reference value. However, this increment is partially compensated by the reduction of node’s energy to 83%. As a result of this, the total energy is increased to 165%.Short frame allows the CH to send more beacons which result in more slots being available for the followers to upload their data, decrease collisions (higher throughput), and increase power consumption. Moreover, the scanning period of the nodes is reduced which results in lower energy consumption and longer lifetimes. The main drawback of the short frame is the increased cost of the harvesting circuit due to the need for a higher storage capacity with sufficient amount of harvested energy.On the other hand, setting the beacon rate to 0.5 packet/sec will reduce CH’s energy consumption to 52% at the cost of increasing the node’s energy to 140%. This reduction of CH’s energy will result in simpler harvesting circuit at the cost of shorter network lifetime. A compromise is required between energy harvesting cost and the network’s lifetime.


## 5.4. AH-MAC Performance in Low-Rate Applications

The motivation behind AH-MAC is to design an energy-efficient MAC protocol for low-rate monitoring systems such as environmental monitoring. In such an application, each node generates one packet every five minutes. The duty cycle of the nodes is about 0.3%. The frame length can be adjusted to 2 Sec to reduce the cost of harvesting circuit. Taking advantage of the sniff mode, the idle energy can be reduced dramatically. Table6 shows the performance of the network under these stipulated conditions.Table 6
AH-MAC performance (packet rate = 0.2 pkt/min, frame length = 2 Sec).
Normal mode Sniff mode Energy (J) Power (μW) Energy (J) Power (μW) CH 14.71 4090 1.65 458 Node 0.21 58 0.04 11In Table6, 14.71 Joule represents the average energy consumption of cluster head during one-hour simulation. This is equivalent to the CH average power of 4090 μW. Multiplying 14.71 Joule by 24 hours results in 350 Joule/day which is the energy required for one-day operation. A simple solar panel with a supercapacitor of 500 Joule will be sufficient for the cluster head to operate continuously several days without needing to be replenished.The results show that the energy consumption of normal node is very low. This means it can last for several years before battery replacement is needed. However, CH consumes much higher energy and energy harvesting is necessary for perpetual operation.


## 6. Conclusions

This work proposed an energy-efficient hierarchical MAC protocol (AH-MAC) for low-rate wireless sensor network applications. The protocol supposes that the cluster heads are supported by energy harvesting source for perpetual operations while the rest of the nodes are battery-operated. The cluster head operates in beacon mode and supports intercluster communication. A robust and energy-efficient algorithm is proposed to either join the network or recover the synchronization with lost parent. The resulting network has many features such as longevity, self-configurability, scalability, and fault tolerance.Comparing the performance of AH-MAC with well-known LEACH protocol shows great improvement to the AH-MAC in many aspects such as energy consumption, throughput, load balancing, cross-layer optimization, and network overhead traffic.The performance evaluation of AH-MAC in low-rate applications shows that a harvesting circuit that accumulates 350 Joule per day is sufficient for perpetual operation. Normal nodes consume very low energy and this means it can last for several years when two AAA batteries are used.



---

*Source: 8105954-2017-01-17.xml*