Keywords

1 Introduction

Currently, WSNs have become the furthermost exciting networking technologies. With restricted power ability, the sensed collected data is offered to the sink. “WSNs consist of a huge number of low-cost, restricted power, and multifunctional wireless sensor nodes with sensing computation capabilities and wireless communications. These sensors communicate via a wireless medium within the short distance and collaborate to accomplish a common task, such as environment monitoring, and industrial process control” [1]. Because of the limitations of network resources such as energy, storage, bandwidth, several network constraints and requirements, the routing protocols designing for WSNs is challenging. Generally, routing protocols in WSNs are classified in two categories: proactive and reactive protocols [2]. Proactive routing protocols keep track of routes to all destinations in routing tables whereas reactive protocols acquire routes on demand and avoid saving information about the network topology. Depending on the structure of the network routing protocols may be classified into three categories: location-based routing, hierarchical-based routing, and flat-based routing [3]. Due to higher energy efficiency, lower data retransmission and network scalability, the routing protocols hierarchical-based are the most efficient protocols in WSNs. In such a protocol, the whole network is grouped into clusters where every cluster has a leader called as cluster head (CH) and used for aggregation of data and data transmission, and for data sensing other sensor nodes (non-CH) are used. The main challenges with the clustering algorithms are the selection of the CH and managing the clusters, several routing protocols based clustering have been proposed as a result of these challenges. The rest of the paper is organized as follows. Section 2 elaborates the previous research works and in the Sect. 3, the preliminary notations are defined. The proposed method is described in Sect. 4 and Sect. 5 shows the results and performance analysis. In Sect. 6 the conclusion is presented.

2 Related Work

Heinzelman et al. [4] designed the LEACH (Low Energy Adaptive Clustering Hierarchy) protocol. The operation in LEACH is divided into different rounds, in which every round run two phases: setup and steady-state. Clusters are formed and one node is selected to be a cluster head (CH) in every cluster in setup phase. Every sensor node is generated a random number between 0 and 1(r), r is compared with the threshold value T(n) in such a way that the sensor node becomes a CH in the current round if r is less than T(n), otherwise, it will be a member node. The CH is selected according to the following probability:

$$ T\left( n \right) = \left\{ {\begin{array}{*{20}c} {\frac{p}{{1 - p *\left( {r\,mod\, 1 /p} \right)}}} & {, if\,n \in G} \\ 0 & {, otherwise} \\ \end{array} } \right. $$

After selecting the CHs, a message is broadcasted to all sensor nodes by the CHs. Based on the strength of the received signal the sensor nodes will be decided in which CH will be joined and sent a message for joining to the selected CH. Every CH sets up TDMA schedules for all member nodes of its cluster. In steady phase, the cluster members transmit their data to CH according to their TDMA schedule, CH aggregate the data then transmit it to the base station. However battery depletion is avoided and communication between sensor nodes and the base station is less in LEACH, but the CH selection has wasted the energy during setup phase, and there is no guarantee for CH distribution. Lindsey et al. [5] presented a PEGASIS (Power-Efficient GAthering in Sensor Information Systems) protocol, which is an improvement of the LEACH protocol. In every cluster, PEGASIS forms chains from sensor nodes, in which each sensor node transmits and receives data only from its neighbor and only one of these sensor nodes in the chain is elected to transmit data to the sink. The collected data transfer from one node to another, aggregated and lastly is sent to the sink. PEGASIS protocol avoids so much clustering, but the chain shaping overhead is introduced, and it leads to the problem of a packet delay. Manjeshwar et al. [6] design TEEN (Threshold sensitive Energy-Efficient sensor Network) protocol for reactive networks. If the sink has interesting attributes, then an event will report to the sink. A trade-off between the energy consumption applications and accuracy is provided. It is appropriate for real-time applications, but it is not appropriate for usual applications of data gathering. Heinzelman et al. [7] proposed LEACH Centralized protocol (LEACH-C). In this protocol, a centralized algorithm is run at the base station to select the CHs based on their energy information, and then it broadcasts a message to all sensor nodes to inform them about the CHs ID. LEACH-C is forming better balanced clusters, but it is not robust and relatively high overhead. Bakaraniya et al. [8] proposed K-LEACH (Kmedoids-LEACH)protocol. K-medoids algorithm is used for forming the clusters, and Euclidean distance is used for selecting the cluster head. All nodes in K-LEACH are homogeneous, as the clusters are formed only in the first round there is no improvement in the network lifetime. Arumugam et al. [9] proposed EE-LEACH (Energy-Efficient LEACH) protocol for data gathering. In EE-LEACH protocol, for each cluster the cluster head is selected to optimize the resource utilization and reduce the energy consumption. So, the nodes with the highest residual energy will be selected to forward the data to sink. EE-LEACH provide better ratio of packet delivery, but it is lack to provide the integrity of data. Sindhwani et al. [10] proposed V-LEACH protocol. In V-LEACH a vice-CH is selected besides having a CH in the cluster that can take the role of the CH, when the CH die. So the cluster nodes’ data will always send to the sink, but it increases setup phase, and reserve a node in each round. Alnawafa et al. [11] proposed a multi-hop technique (MHT-LEACH) as an improvement of LEACH, based on LEACH protocol the CHs is elected then based on threshold distance value all CHs are divided into two groups, external group and internal group. The internal CHs transmit their data to BS directly. While each CH in the external group establishes a special routing table for choosing the next hop to the BS. In [12] Alnawafa et al. proposed an improvement for MHT-LEACH which is refer as IMHT-LEACH, instead of dividing the CHs into two groups, all CHs are distributed into a number of levels. Data is transferred among the CHs from the upper levels towards the lower levels until it reaches the BS. However, most of the existing routing algorithms have a problem with selecting of the optimal cluster head, performing the clusters and requiring high processing. As a result, there is a dire need to design an algorithm to be a proper for WSNs in terms of selection an optimal cluster head, and performing less processing. In this paper, a proposed method Energy-Aware Centralized Control Clustering (EACCC) is introduced with the objective of reducing the energy consumption average and enhancing the lifetime of network. The centralized control clustering technique is used for the selecting of the CH in the proposed method.

3 Preliminaries

3.1 First-Order Radio Energy Model

Many suggestions about the radio characteristics, including the effect of the performance of different protocols and energy spent in transmit and receive modes. Transmitter and receiver based on this model are shown in Fig. 1. For an individual sensor node, energy dissipation depends on the amount of data to be transmitted, transmissions number, receiving number and distance between transmitter and receiver [13, 14]. In the Fig. 1 the distance between the sender and the receiver is presented as (d) and L is the number of bits per packet transmission.

Fig. 1
figure 1

First-order radio energy model

Electronics energy consumption for data transmitting \( \left( {E_{Tx} \left( L \right)} \right) \) and electronics energy consumption for receiving the data \( E_{Rx} \left( L \right) \) are the same and it is given by formula (1) as follows:

$$ E_{Tx} \left( L \right) = E_{Rx} \left( L \right) = E_{elec } *L $$
(1)

where Eelec is the energy spent per bit to run the transmitter or the receiver circuit. For transmit L-bit packet within distance d between any two sensor nodes, the transmission energy cost is calculated by the formula (2) as follows:

$$ E_{Tx} \left( {L,d} \right) = E_{Txelec} *\left( L \right) + E_{Txamp} \left( {L,d} \right) = E_{elec} *L + E_{amp} \left( {L,d} \right) $$
(2)

where \( E_{amp} \) the amplifier of energy consumption, it can be also expressed in the terms of ɛfs or ɛmp. The ɛfs correspond to the free space model (fs), which is used when the distance between the source and the destination is less than d0, and the ɛmp refers to the multipath model (mp) which is used when the distance between the source and destination is equal or greater than d0. Where d0 is the threshold distance. So the formula (2) can redefine as in formula (3) as:

$$ E_{{Tx}} \left( {L,d} \right) = \left\{ {\begin{array}{*{20}c} {\left( {E_{{elec}} *L} \right) + \left( {\varepsilon _{{fs}} *L*d^{2} } \right),~~if~d \le d_{0} } \\ {\left( {E_{{elec}} *L} \right) + \left( {\varepsilon _{{mp}} *L*d^{4} } \right),~~if~d > d_{0} } \\ \end{array} } \right. $$
(3)

4 Proposed Method

The objective of the work is to propose an improved routing technique EACCC used for cluster heads selection and forming appropriate clustering so as to avoid the problem of random selecting of the CHs, guarantee that the CHs have enough energy to transmit data to the base station (BS), and offer uniformity distribution for CHs through the network area. The EACCC aims to reduce the spent of total energy in the network and prolong the network lifetime by maximizing the number of alive sensor nodes and reducing the data to be transmitted through the technique of data aggregation. The process of the EACCC is depending on the centralized control cluster algorithm which is implemented at the BS [11]. At the beginning of the EACCC, all sensor nodes send their information about residual energy and location to the BS, BS will divide the network area into four regions, and depending on information which is sent by sensor nodes the BS determines in which region the sensor nodes will be. The method runs in rounds, in which every round starts with a step of cluster head selection at the cluster head will be chosen, then the cluster forming step at which clusters are formed. Last step is the transmission of data to the BS.

4.1 The Suggested Network Model

Besides the first-order radio energy model, assumptions for the network model have to be listed in order to perform the proposed method.

  • All sensor nodes are distributed randomly in a 2-Dimensional network field, energy constrained, stationary, and aware of their geographical locations and residual energy.

  • A static BS is situated either inside or outside the sensor network area with unlimited energy supply.

  • The sensor nodes are cluster head or cluster member node.

  • The sensor nodes have the capability of power control to change their power of transmitted.

  • Sensor nodes can be either homogeneous or heterogeneous.

4.2 Method

The algorithm of the proposed method EACCC comprises two steps. At the first step, the network area is divided into regions based on the information sent by sensor nodes. The second step consists of three phases: selection of cluster head, cluster forming, and data transmission phase as explained below. The EACCC’s flow chart is presented in Fig. 2.

Fig. 2
figure 2

EACCC flowchart

First Step. At the beginning, all sensor nodes send their current energy status (how much energy is remaining in the sensor node) and locations to the BS. In order to offer uniform distribution of CHs through the network i.e. reduce isolated nodes number, the BS divides the network area into four regions (r1, r2, r3, r4), in such a way if the network field’s size is M * M, then the regions’ size will be as following formulas (4)–(7).

$$ r_{1} = \left( {0 \to M/2,0 \to M/2} \right) $$
(4)
$$ r_{2} = \left( {M/2 \to M,0 \to M/2} \right) $$
(5)
$$ r_{3} = \left( {0 \to M/2,M/2 \to M} \right) $$
(6)
$$ r_{4} = \left( {M/2 \to M,M/2 \to M} \right) $$
(7)

Second Step. The second step will operate in rounds, in which every round run three phases, which is cluster head selection, cluster forming, and data transmission. These phases are described as following:

Cluster Head Selection. All sensor nodes (SNs) will send their current residual energy status and locations to the BS. Suppose N is the SN number, and n is the SN number in every region which be defined in the first step, the BS computes the energy average as defined in formula (8) and the distance average from SN to BS as defined in formula (9) based on the information sent by SNs.

$$ E_{avg} = \mathop \sum \limits_{i = 1}^{n} E(SN_{i} )/n $$
(8)
$$ D_{avg} = \mathop \sum \limits_{i = 1}^{n} d(SN_{i} ,BS)/n, $$
(9)

where \( E(SN_{i} ) \) is the sensor node’s residual energy. For every region, to ensure that only SN with a high level of energy and nearer to the BS are selected as CHs for this round, the SNs with an energy level above the average of energy \( (E\left( {SN} \right) \ge E_{avg} ) \) and with the distance less than the average of distance to the BS \( \left( {d\left( {SN,BS} \right) \le D_{avg} } \right) \) are qualified to be a CH candidate. Among the eligible cluster head candidate (K), the optimal No. of cluster heads is calculated by the formula (10) as in [15], and the CHs will be chosen if the eligible CH satisfy the formula (11) and (12) in every region.

$$ K_{{opt\left( {r_{i} } \right)}} = \sqrt {\frac{n}{2\pi }} *\frac{2}{{d_{toBS} }} $$
(10)
$$ max_{i = 1 \to K} \left( {E(CH_{i} )} \right) $$
(11)
$$ min_{i = 1 \to K} d\left( {CH_{i} ,BS} \right) $$
(12)
$$ d_{toBS} = \mathop \sum \limits_{i = 1}^{K} d(CH_{i} ,BS)/K $$
(13)

After selecting the CHs in every region, the number of the CHs (CH.N) in a whole network will be calculated as in formula (14). Then the BS will broadcast the CH nodes ID.

$$ CH.N = K_{{opt\left( {r_{1} } \right)}} + K_{{opt\left( {r_{2} } \right)}} + K_{{opt\left( {r_{3} } \right)}} + K_{{opt\left( {r_{4} } \right)}} $$
(14)

Cluster Forming. During this phase, all sensor nodes should keep their receivers on. By using the CSMA MAC protocol, every CH elected in this round broadcasts an advertisement message to all the sensor nodes. Based on the received signal strength (RSS) of the message, the non-CH node decides in which CH it will belong. Once the sensor node decided, it must inform the selected CH that it will be a member of your cluster by transmitting this information to the CH. After receiving all the messages from the sensor nodes which are included in the cluster, the CH creates TDMA schedule to tell every sensor node member in the cluster in which time it can transmit data, and then broadcast back this schedule to the sensor nodes member in the cluster.

Data Transmission. Assuming sensor nodes sense data, and need to send these data. During their allocated transmission time, they can send these data to the CH. In order to minimize energy dissipation in non-CH sensor nodes, the radio of these sensor nodes turns off until the node’s transmission time is allocated. Once CH receives all the data sent by non-CH sensor nodes, it performs the functions of signal processing to compress these data into a single signal, and send these data to the BS.

4.3 Analytical Proof

Challenge 1. Select cluster head.

Issue. If we use the distributed algorithm which uses the random selection of CH, then CH may have not enough energy to reach to the BS. Therefore, the data which was sent by the member nodes to the CH in that cluster will be lost.

Proposition

Use the centralized algorithm to select the CH.

Proof

In centralized algorithm, BS will calculate the sensor node’s residual energy average and average of distance from sensor nodes to the BS for every region based on information which is sent by sensor nodes \( {\text{E}}_{\text{avg}} = \sum\nolimits_{{{\text{i}} = 1}}^{\text{n}} {{\text{E}}({\text{SN}}_{\text{i}} )/{\text{n}}} \), \( {\text{D}}_{\text{avg}} = \sum\nolimits_{{{\text{i}} = 1}}^{\text{n}} {{\text{d}}({\text{SN}}_{\text{i}} ,{\text{BS}})/{\text{n }}} . \) The sensor node which satisfies: \( {\text{E}}({\text{SN}}_{\text{i}} ) \ge {\text{E}}_{\text{avg}} \), and \( {\text{d}}\left( { {\text{SN}}_{\text{i}} ,{\text{BS}}} \right) \le {\text{D}}_{\text{avg}} \) will be elected as a CH. Among the eligible selected cluster head nodes, we select an optimal CHs in order to guarantee that the selected CH have enough energy to reach to the BS, and energy consumption will be less as the distance from the selected CH to BS is less, so for each sensor node which satisfies the: \( { \hbox{max} }_{{{\text{i}} = 1 \to {\text{K}}}} \left( {{\text{E}}({\text{SN}}_{\text{i}} )} \right), \) \( { \hbox{min} }_{{{\text{i}} = 1 \to {\text{K}}}} {\text{d}}\left( {{\text{E}}({\text{SN}}_{\text{i}} ),{\text{BS}}} \right) \), will be elected as a CH in this round.

Challenge 2. Number of CHs.

Issue. A large enumeration of the selected CH will produce a less number of member nodes. It also will reduce the efficiency of the routing protocol. At the same time, the data collection reliability will be affected.

Proposition

An optimal number of the CH.

Proof

Let K is the CH’s number in the region r, then optimal number of CH depends on how many sensor nodes in the region, what is the dimensions of the sensors field, and what is the average distance from a CH to the BS. It will be computed from the formula (10). Suppose if we have 500 sensor nodes distributed randomly in network field, number of sensor nodes in region r1 is 150, and average of distance from CHs to BS is 0.765 then the optimal number of CH in r1 is:

$$ {\text{K}}_{{{\text{opt}}\left( {{\text{r}}_{1} } \right)}} = \sqrt {150/2\pi } \, *\,2/0.765 \cong 13 $$

Challenge 3. Isolated sensor node.

Issue. The random selection of the CHs may result in isolated sensor nodes which may be located far away from selected CHs and communicated with the BS by spending too much energy.

Proposition

Divide the network area into regions.

Proof

Suppose we have N sensor nodes distributed randomly in network filed (M * M), the BS divides the network area into four regions (r1, r2, r3, r4), the size of regions will be as in formula (47). Based on information sent by sensor nodes to the BS, the BS will determine in which region the sensor nodes will be. The proposed method will be done in every region, in such a way that every sensor node will be either a CH or member node so we guarantee that the uniform selected CH among the whole network area. In addition, to form a cluster the CH will broadcast an advertisement message to all sensor nodes in the region. As the non-CH node decision for joining based on the RSS of the advertisement message, so we ensure that every sensor node will receive the advertisement message.

5 Result and Performance Analysis

EACCC, LEACH [4] and EE-LEACH [14] clustering algorithm for WSNs are simulated to prove the efficiency of the proposed algorithm. There are 500 sensor nodes deployed randomly in the 25 × 25 m2 with the transmission range 5 m and 2000 bit of the data packet size. The parameters used in the simulation are presented in Table 1.

Table 1 Parameters of simulation

5.1 Performance Evaluation on the Basis of the Sensor Nodes’ Energy

To evaluate the EACCC performance, the initial energy of the sensor node is taken through homogeneous and heterogeneous. 0.1 J is taken as initial node energy for the homogenous nodes and from 0.1 to 0.3 J as initial node energy for the heterogeneous nodes. The comparison between the LEACH, EE-LEACH, and EACCC is taken when the first node dies and 50% of sensor nodes die as the evaluation criterion for the simulation with respect to the type of the sensor nodes initial energy which is homogenous or heterogeneous. Table 2 shows for the homogenous nodes, the nodes are started to die in LEACH at round 115 whereas in EE-LEACH first node died in the round 134, and in EACCC first node died at round 190. At round 257 the 50% of sensor nodes died in the LEACH, and at round 284 the 50% of sensor nodes died, whereas in EACCC 50% of sensor nodes died at round 358.

Table 2 Number of died nodes versus rounds

For the heterogeneous nodes the first node died at round 117 in the LEACH, at round 131 first node died in the EE-LEACH, and at round 318 first node died in EACCC. At round 543, the 50% of sensor nodes died in the LEACH, at round 583 50% of sensor nodes in the EE-LEACH, whereas in EACCC 50% of sensor nodes died at round 627. So it has been cleared that the number of alive sensor nodes is increased in EACCC, therefore the network lifetime is prolonged.

5.2 Performance Evaluation on the Basis of Efficiency Metrics

The performance evaluation shows the efficiency and performance of the EACCC over the LEACH, and EE-LEACH through the following metrics: network lifetime, total network energy, end-to-end time delay, and number of failed nodes.

Network Lifetime. It can be defined as “the time passing from the initial deployment of the network to the moment of the connectivity reaching the specified threshold” [16]. So in EACCC, the network lifetime is calculated as the length of time from deployment of the network until either the first node or 50% nodes died, i.e., the rounds number. Figures 3 and 4 show that the lifetime of network in EACCC is longer than that in LEACH, and EE-LEACH for the homogenous and heterogeneous nodes at first node died or 50% of nodes died.

Fig. 3
figure 3

Network lifetime for homogeneous nodes. a First node died. b 50% node died

Fig. 4
figure 4

Network lifetime for heterogeneous nodes. a First node died. b 50% node died

Total Network Energy. Energy consumption can be calculated by the formula (3). Figures 5 and 6 show that the total network energy in EACCC is more than in LEACH, and EE-LEACH which means the energy consumption is minimized in EACCC in the case of the first node died or 50% nodes died for the homogeneous nodes or heterogeneous nodes.

Fig. 5
figure 5

Total network energy for homogeneous nodes. a First node died. b 50% node died

Fig. 6
figure 6

Total Network energy for heterogeneous nodes. a First node died. b 50% node died

Number of Failed Nodes. The node can be considered as the failed (dead) node, if the energy of sensor node is less or equal than 0. Figures 7 and 8 show that the failed nodes number in the EACCC is less than in LEACH, and EE-LEACH in another word the alive nodes number is more in the EACCC in the case of first node died or 50% nodes died for the homogeneous nodes or heterogeneous nodes.

Fig. 7
figure 7

Number of failed nodes for homogeneous nodes. a First node died. b 50% node died

Fig. 8
figure 8

Number of failed nodes for heterogeneous nodes. a First node died. b 50% node died

End-to-End Time Delay. It can be defined as the delay average between the data packet sending by the source and the same data packet receiving at the specific receiver, with the delay due to route acquisition, retransmission delays, and processing at intermediate nodes [17]. Figures 9 and 10 show the time delay between the LEACH, EE-LEACH and EACCC. The EACCC takes less time to aggregate data and sends it to BS than LEACH, and EE-LEACH protocols for all cases of the simulation.

Fig. 9
figure 9

End-to-end time for homogeneous nodes. a First node died. b 50% node died

Fig. 10
figure 10

End-to-end time for heterogeneous nodes. a First node died. b 50% node died

6 Conclusion

The main idea behind the design of protocol in WSNs is to keep the sensor nodes operating as possible, thus extending the lifetime of the network. In this paper, an improved method EACCC is proposed by using a centralized clustering algorithm for cluster heads selecting and the clusters forming in order to prolong the network lifetime and reduce the spent of the total energy in the network. The performance evaluation of EACCC is done through extensive analysis, analytical proof, and comparison. The results and performance analysis show that the EACCC has a better performance than LEACH protocol, and EE-LEACH protocol with respect to the lifetime of the network, total energy of network, No. of failed nodes, end-to-end delay, and routing overhead metric.