# Energy Efficiency for Green Internet of Things (IoT) Networks: A Survey +
## 3 Literature Review
### Taxonomy of Energy Consumption Solutions
#### 3.7.1 Routing Protocols
[93] introduced a modification of the LEACH protocol named the energy aware multihop multipath hierarchy protocol (EAMMH). This approach introduced a new routing strategy and clustering formation to transfer the data. The proposed method divides the sensing area into subgroups and each group has number of child nodes and main CH node. The main CH should be an optimum distance from these child-CH nodes. This means the distance between the CH and its member nodes should be balanced to minimize energy consumption and therefore increase the lifetime of network. The EAMMH scheme outperformed LEACH in terms of energy preservation by 23% but the main CH nodes can be overloaded and quickly drained of energy when surrounded by many child-CH nodes. [PERSON] et al. [94] proposed the energy aware multihop routing (EAMR) method for WSNs. The EAMR proposes fixed clusters to provide communication between the sensor nodes and the BS. In this protocol, when a sensor node is attached to a cluster, it will be a member for that cluster for the whole network lifetime. The selection of CH nodes is repeated each round, the proposed protocol allows a sensor node to act as a CH node until its energy falls below a threshold value. Sensor nodes located close to the BS forward their data direct to the BS. However, the remaining CH nodes forward their packets to the BS through intermediate nodes. The EAMR extends the network lifetime by achieving steady clusters and reducing the number of CH node changes. Although the LEACH and its derivative protocols payed the way for implementing energy-efficient routing protocols, they all suffer from one fundamental problem. A node uses single-hop routing within clusters thus, it is not suitable to sensor networks for large geographic area. Additionally, a node that is elected to be CH will die quickly if a larger area is to be supported. Because some CH nodes are positioned far away from the final destination, the resulting large transmission distances lead to large energy consumption. Hybrid, Energy-Efficient and Distributed Protocol (HEED)  
HEED is the other common method of CH node selection. The proposed protocol overcomes the drawback of LEACH by achieving equal and uniform distribution of CH nodes in the sensing field. In this approach, the CH node selection is based on the residual energy of each node and node proximity to its neighbors or node degree (minimum communication cost) [89]. HEED defined the average of lower energy levels (AMRP) required by all \(M\) sensor nodes within the cluster range, to reach the CH node as:  
\[AMRP=\frac{\sum_{i=1}^{M}MinPwr_{i}}{M} \tag{3}\]  
where \(MinPwr_{i}\) is the lower energy level desired by node \(i\) to communicate with the CH. Each node is assigned to only one cluster, and the node independently makes its decision based on local information to join a CH node via a single hop. Based on Equation (4), in HEED, every sensor hub sets the likelihood \(CH_{prob}\) of turning into a CH as:  
\[CH_{prob}=C_{prob}\,\times\,\frac{E_{residual}}{E_{max}} \tag{4}\]  
where \(E_{max}\) is the total energy of the node and \(E_{residual}\) is the evaluated remaining energy in the node, which is typically similar for all nodes. \(C_{prob}\) is only used to limit the initial CH announcements, and has no direct impact on the final clusters. A CH node is either a temporary CH, if its \(CH_{prob}\) is < 1, or a last CH, if its \(CH_{prob}\) has achieved 1. Analysis of the relative performance of HEED and LEACH showed that HEED improved the network lifetime by 10% [95]. Figure 14 introduces an example of a network topology implemented by the HEED protocol. Several researchers have attempted to overcome the limitations of HEED protocol (such as more CHs are generated, the locations of the CHs, etc.) and improve its performance [96]. One example is the heterogeneous hybrid energy-efficient distributed (H-HEED) algorithm. This algorithm divides the sensing field into clusters and each cluster has some sensor nodes.