The LEACH protocol proposed by Heinzelman et al. [
10] is the earliest clustering protocol, which has very important influence on the later clustering routing protocols. In the LEACH protocol, the implementation of the algorithm is performed circularly. Each round is made up of two stages. One is the establishment of the cluster, and the other is the stable data communication phase. In the establishment stage, each node generates a random number between 0 and 1, then the random number is compared with the preset threshold
T(
n). If the random number is less than
T(
n), the node will be selected as a cluster head (CH). The selection of CHs each round is produced from the nodes that have not been selected as a CH, so, the threshold value of the nodes that have been selected as a CH is 0. The threshold is set as:
where
P is the percentage of cluster heads in all nodes,
r is the current round number,
n is the token of node, and
G represents the set of all nodes that have not been selected as a CH. Then, the nodes will choose the proper CH as its manager. After the cluster structure is formed, the data communication phase is entered. In this stage, CHs will assign a TDMA (Time Division Multiple Access) schedule and inform all nodes. The nodes transmit data to the CH during the corresponding time slot, and the CHs transmit the results to the BS after the fusion processing. Compared with the flat routing, although the LEACH protocol has balanced the energy load of the whole network, it does not consider the residual energy of the node, and it selects CHs in a random way, resulting in uneven distribution of the CHs.
The LEACH-C protocol [
11] is modified on the basis of LEACH. Its cluster head selection method adopts centralized control rather than a distributed method. It selects CHs in the sink node based on the global information of all nodes. Each node reports its geographic position and the current energy to the BS. Then, the BS will calculate the average energy. The node whose current energy is higher than the average energy will be the candidate cluster head. After that, a simulated annealing algorithm is used to select the appropriate number and optimal location of the cluster heads from the candidate nodes. Finally, the BS will broadcast the set of cluster heads, and the rest of the operation is the same as LEACH. This method solves the problem of uneven distribution of cluster heads that LEACH has, but the nodes need to communicate with the base station each round, leading to extra energy consumption. O-LEACH [
12] is another extension of LEACH, in which the nodes with more energy are more likely to be a CH. It takes the remaining energy into account. As a result, it lengthens the network lifetime to some extent.
Younis describes the implementation of the HEED protocol in [
13]. It mainly considers the primary and secondary parameters. The primary parameter is the residual energy of the node, and the secondary parameter is the transmission energy consumption within the cluster. It improves the energy efficiency and further prolongs the life cycle of the network. However, there still exists a shortcoming that cannot be overcome, namely, the problem of false cluster heads. Recently, a lot of clustering protocols have been improved. Shokouhifar proposes the ASLPR protocol in [
14], which takes four factors into account: the residual energy of nodes, the distance from node to the base station, the number of CHs in the current round, and the total number of nodes that have been selected as a cluster head so far. In addition, the SEECH protocol [
15] selects the cluster heads and relay nodes separately to save the energy of CHs.