You are on page 1of 5

JOURNAL OF COMPUTING, VOLUME 3, ISSUE 1, JANUARY 2011, ISSN 2151-9617

HTTPS://SITES.GOOGLE.COM/SITE/JOURNALOFCOMPUTING/
WWW.JOURNALOFCOMPUTING.ORG 16

An Efficient Weight-Based Clustering


Algorithm for Mobile Ad-hoc Networks
Mohammad Reza Monsef, Sam Jabbehdari and Farshad Safaei

Abstract— Many clustering algorithms have been proposed to partition mobile devices into clusters to support routing and
network management. In this paper, we proposed an efficient weight-based clustering algorithm (EWBCA) for mobile ad hoc
networks (MANETs). It aimes to improve the usage of scarce resources such as bandwidth and energy, preserve current cluster
structure as much as possible, minimize routing overhead, and increase end-to-end throughput. In our algorithm, each node has
a quality that indicates its suitability as a cluster head. This quality is calculated according to following four parameters: Number
of Neighbors, Residual Power of Battery, Stability and Variance of distance with all neighbors. Through simulations, we
compared our proposed algorithm with WCA algorithm in terms of the number of clusters, number of re-affiliations, routing
overhead, end-to-end throughput and average consumed energy in various number of nodes. The simulation results showed
that the proposed algorithm has superior performance than WCA.

Index Terms— MANET, Routing, Clustering, Performance.

——————————  ——————————

1 INTRODUCTION

A D HOC networks consist of a number of mobile


devices that dynamically form wireless network
without any preexisting communication infrastruc-
algorithms. Section 3 gives a description of proposed clus-
tering setup and maintenance phases. Then the modifica-
tion of route discovery procedure and maintenance
ture [1], [2]. In such network, mobile nodes communicate process in underlying routing protocol is discussed in
with each other using multi-hop wireless links. section 4. The details of Simulation experiments of the
Each mobile node operates not only as a host but also proposed algorithm and their results are depicted in sec-
as a router, forwarding packets for other mobile nodes in tion 5. Finally section 6 concludes the paper.
the network that may not be within direct wireless trans-
mission range of each other.
2 RELATED WORKS
Routing algorithms for ad hoc networks are responsi-
ble to establish low-cost and high quality route in rather Many clustering algorithms have been proposed in the
dynamic environments. Indeed, the clustering algorithm past which include the Highest-Degree [4], the Lowest-
can improve the performance of routing algorithms [3] Identifier [5] [6], Distributed Clustering Algorithm [7], the
with the reduction of routing overhead and resources Weighted Clustering Algorithm (WCA) [8], Distributed
optimization such as battery power, network capacity Weighted Clustering Algorithm (DWCA) [9].
and bandwidth. This algorithm consists in dividing the The Highest-Degree algorithm uses the number of
network into groups of interconnected nodes that named neighbors of a node as a metric for the selection of cluster
clusters. heads. The node with maximum degree is chosen as a
A major challenge in the design of ad hoc networks is cluster head. Basically, each node either becomes a cluster
the development of clustering algorithms that can estab- head or remains an ordinary node (neighbor of a cluster
lish stable clusters where cluster head reelection is re- head).The reaffiliation count of nodes is being high due to
duced and cluster membership periods are increased in node movements.
these networks. The Lowest-Identifier algorithm which assigns a
In this paper, we proposed a new Clustering algorithm unique identifier (ID) to each node, chooses the node with
for MANET called Efficient Weight-Based Clustering Al- the minimum ID as a cluster head. The system perfor-
gorithm (EWBCA). It uses clustering's structure to de- mance is better than Highest-Degree heuristic in terms of
crease routing overhead and save the node’s energy. throughput.
The remainder of this paper is organized as follows: In The Distributed Clustering Algorithm is a modified
section 2, we present an overview of previous clustering version of the Lowest-Identifier algorithm. For each clus-
ter, it chooses a node with locally lowest ID among all the
————————————————
neighbor nodes as a cluster head. Every node can deter-
 Mohammad Reza Monsef is with the the Computer Engineering Depart-
mine its cluster and only one cluster, and transmits only
ment, North Tehran Branch, Islamic Azad University, Tehran, Iran. one message during the algorithm [10].Since it uses node
 Sam Jabbehdari. is with the the Computer Engineering Department, ID for the selection of cluster heads, it inherits the draw-
North Tehran Branch, Islamic Azad University, Tehran, Iran. backs of the Lowest-Identifier heuristic.
 Farshad Safaei is with the the Computer Engineering Department, Shahid The WCA is based on the use of a combined weight
Beheshti University, Tehran, Iran. metric that takes into account several system parameters
like the node-degree, distances with all its neighbors,
JOURNAL OF COMPUTING, VOLUME 3, ISSUE 1, JANUARY 2011, ISSN 2151-9617
HTTPS://SITES.GOOGLE.COM/SITE/JOURNALOFCOMPUTING/
WWW.JOURNALOFCOMPUTING.ORG 17

node speed and the time spent as a cluster head.


The distributed weighted clustering (DWCA) algo- (3)
rithm is based on the weight values considering optimal
cluster size, distance between a cluster head and ordinary cos cos (4)
nodes, node mobility, and battery power consumption.
The DWCA chooses the cluster heads using the informa- (5)
tion of neighbor nodes, and maintains clusters locally.
sin sin (6)
(7)
3 PROPOSED CLUSTERING ALGORITHM
Clustering is a process that divides the network into Where nodes i,j are two mobile nodes that have a trans-
interconnected substructures, called clusters. Each mission range of r, speeds vi and vj , directions and θ
cluster has a cluster head as coordinator within the , coordinates (xi , yi) and (xj , yj). N(i) is the set of node’s
substructure. Each cluster head acts as a temporary neighbors and N is the number of members of this set.
base station within its zone or cluster and commu- ‐ Variance of distance (Vd): Variance of distance between
nicates with other cluster heads. node i and its neighbors indicates how the nodes are dis-
In our algorithm, there are four possible states for the tributed around its mean of distance µ(i) (8). However the
node: NUL, CLUSTERHEAD, MEMBER and GATEWAY. values of the average and variance of distance are small-
Initially all nodes are in the state of NUL. The ordinary er, stability degree of the cluster is longer.
nodes that join a cluster, are called MEMBER nodes. The ∑ , (8)
nodes which receive messages from more than one cluster
head which are located in its neighborhood region, are ∑ , (9)
GATEWAY nodes. CLUSTERHEAD is the node which is
responsible for formation of cluster and its members and Where dis(i,j) is distance value between i and j.
has information of all its member nodes within its cluster. Our proposed protocol has 6 main steps (in each node):
Each node maintains the neighbor table wherein the Step1 The node i finds its neighbors by receiving Hello
information about the other neighbor nodes is stored. messages from them and updates its neighborhood table.
Initially we describe the clustering set up and clustering Step2 The node i calculates its combined weight Wi and
maintenance phases. broadcasts it to all its neighbors by sending a
Weight_EWBCA message.
3.1 Clustering Setup Phase Step3 The node i compares the received weights of all its
Various parameters are considered for cluster heads elec- 1-hop neighbors with its own weight and chooses the
tion. In our algorithm, theses parameters are Number of node with the highest weight as its cluster head. Thus
neighbor nodes, Residual battery power, Stability of each node either declares itself as cluster head and broad-
node, Variance of distance with all neighbors of a node. casts a Be_CH_ EWBCA message to all 1-hop neighbors
Each node calculates its weight value with attaining the or chooses another node as cluster head and waits to re-
values of above parameters and putting them into Equa- ceive a Be_CH_EWBCA message from it.
tion (1). Step4 Upon reception of a Be_CH_EWBCA message from
And then each node broadcasts its weight to all the nodes a cluster head, a node may decides to send a
which are in its neighborhood region. Finally, the node JOIN_EWBCA message to it.
with highest weight is chosen as the cluster head. Step5 Then the cluster head send an Accept_ EWBCA
message to a requesting node to determine its status.
Otherwise the node may send a UNAccept_EWBCA mes-
sage.
(1) Step6 If a node status is not determined up to this step,
Where C1 , C2 , C3 , C4 are weighting factors for the cor- the node will continue again from step 2. Also all nodes in
responding system parameters listed below: the network periodically broadcast a Hello message to
inform their 1-hop neighbors from their current states.
- Number of Neighbor Nodes (Nn): The Number of exist-
3.2 Clustering Maintenance Phase
ing nodes which are located in the transmission range.
- Residual Power of Battery (Rb): the remaining energy of There are two situations that invoke the clustering main-
a node. tenance. One is node movement to the outside of its clus-
- Stability (St): The average of link expiration times (Let) ter boundary and the other is excessive battery consump-
tion at a cluster head.
[11] between a specific node with all its neighbors. A node may join or leave an existing cluster at a time.
In such a case, the status of the node should be updated
∑ , (2) again. Even if it doesn’t find a new cluster head, intro-
, duces itself as a cluster head.
Each cluster head updates the amount of consumed
energy when it sends and receives packets. If amount of
consumed energy becomes more than a given threshold
JOURNAL OF COMPUTING, VOLUME 3, ISSUE 1, JANUARY 2011, ISSN 2151-9617
HTTPS://SITES.GOOGLE.COM/SITE/JOURNALOFCOMPUTING/
WWW.JOURNALOFCOMPUTING.ORG 18

value, the new cluster head is determined and the current forward the packet to precursors stored in its route table.
cluster head node becomes an ordinary node. The mem- When a source node receives a RERR, it initiates a new
ber nodes of the cluster also rejoin the determined cluster route discovery if the route is still needed.
head if it is available.
5 SIMULATION
4 ROUTING
In this section, we evaluated the performance of the pro-
4.1 Route Discovery posed algorithm in compared to WCA algorithm via simula-
Each node maintains the routing table which the informa- tion. For this purpose, we implemented the proposed algo-
tion about routes is stored. When the source node S wants rithm on the GloMoSim (Global Mobile Information System
to send data to the destination node D, and it does not Simulator) [12] simulator. We simulated a system of N nodes
already have a valid route to that destination in its on an 800 m * 800 m area. The value of N was varied be-
routing table, first S check its neighbor table. If there is a tween 10 and 60. Radio range for each node was set to 250
match, it simple adds this route into routing table and meters and channel capacity to 2 Mbps. The propagation
directly send data to D. otherwise it initiates a path dis- model used was the free space model and 802.11 DCF was
covery process to locate the destination. used as the MAC layer protocol. Nodes in the simulation
First the source node S sends route request packet to move according to the random waypoint model [13]. The
its neighbors. After receiving this RREQ packet by a node, nodes move randomly in all directions with a maximum
if it is not destination node D and its type is only cluster speed of 10 m/s. The AODV [14] that was modified in route
head or gateway, it retransmits the RREQ packet to all its discovery process as we mentioned in section 4, was selected
neighbors. This process is iterated until RREQ is deli- as an underlying routing protocol. A source node selects its
vered to node D or RREQ packet is expired. Intermediate destination randomly and sends constant bit rate (CBR) traf-
nodes aren’t allowed to send back a reply packet to fic through UDP with a rate of 2 packets per second. Each
source node S, even if they know the routes to destination packet carries 512 bytes of data payload. In our experiments,
node. Along the route, residual energy of each node is the values of weighting factors used in the weight calcula-
attained. At last, the least amount of residual energy be- tion were set to the C1 = 0.2, C3 =0.7, and C2, C4 are calcu-
tween the nodes of path is set into MIN_ENG variable in lated through linear functions.
RREQ packet. When first RREQ packet is received by the The following metrics were applied for measuring the
destination node D, it waits to recieve same RREQ pack- EWBCA algorithm performance. Also, we compared the
ets from other paths for given time period. simulation results of our algorithm with WCA algorithm.
With expiration of waiting time period, destination  The Average number of clusters
node selects a route that has higher MIN_ENG (minimum  The Number of re-affiliation
energy) and through it, sends back a RREP packet to When a node gets dissociated from its cluster head and
source node. To prevent from routing loop, every route becomes a member of another cluster within the current
discovery packet has a unique ID. The source node S up- dominant set, the reaffiliation count is incremented.
dates the routing table by receiving RREP packet from  The End-to-end throughput
destination node and then it starts to send data. This me-  Normalized routing overhead
thod causes balancing energy consumption among all the The sum of the routing control messages per one node such
existing routes to the destination node. as HELLO, JOIN, RREQ, RREP, etc counted by kByte.
 The Average Consumed Energy per node
4.2 Route Maintenance
Due to node movements, disappearance of nodes or link 16
breakage in an active route, we may need to recover the
14
route or report failure to affected nodes.
Average number of clusters

In the previous methods if a node failed within a route 12


or become far from its neighbor nodes, it causes the route
10
to fail and leads to the recreating of path.
In our algorithm, when a link breakage in an active 8
route occurs, the node upstream of that breakage may 6
choose to repair the link locally. To repair the link brea-
kage, the node increments the sequence number for the 4 EWBCA
destination and then broadcasts a RREQ message for that 2 WCA
destination.
Then the node initiating the repair waits to receive 0
RREPs in response to the RREQ. During local repair, data 10 20 30 40 50 60
packets are buffered. If, at the end of the discovery pe-
Number of Nodes
riod, the repairing node has not received a RREP for that
destination, it sends a route error packet (RERR) back to
all precursors.
Fig. 1 : Average number of clusters vs Number of nodes
When a node receives a RERR from its neighbor, it
JOURNAL OF COMPUTING, VOLUME 3, ISSUE 1, JANUARY 2011, ISSN 2151-9617
HTTPS://SITES.GOOGLE.COM/SITE/JOURNALOFCOMPUTING/
WWW.JOURNALOFCOMPUTING.ORG 19

The average energy was used at every node for transmitting Regardless of the number of nodes, EWBCA performed
and receiving packets, sensing signals and being idle. better in comparison with WCA.
The comparison of routing overhead is shown in Fig. 4
5.1 Simulation Results & Performance Analysis Routing overhead is the sum of control messages like
Fig. 1 compares the average number of clusters formed RREQ, RREP, Hello_Pkt, Weight_Pkt, etc that influences
for EWBCA and WCA with respect to the total number of on the battery energy and at last on the algorithm per-
nodes in the ad hoc network. As the number of nodes
increased, the average number of clusters increased in
both algorithms. It can be seen that with increasing node 1100
density, EWBCA produced less clusters than WCA. 1000
In Fig. 2, the result of the average number of re- 900

Routing Overhead(KB)
affiliations due to node movement and mobility is de- 800
picted. It can be seen that EWBCA gave less re-affiliation 700
than WCA with increment of the number of nodes.
600
Fig. 3 shows the result of end-to-end throughput of
CBR traffics. The proposed algorithm produced 10.2% 500 EWBCA
better throughput than WCA for the node speed of 10 400 WCA
300
50
200
Average number of reaffiliations

45
100
40
0
35
10 20 30 40 50 60
30
25 Number of Nodes
20 EWBCA
15 Fig. 4 : Routing overhead vs Number of nodes
WCA
10
formance. The produced overhead in EWBCA algorithm
5
is less than that in WCA algorithm.
0 The Average energy consumption per node during si-
10 20 30 40 50 60 mulation time period is depicted in Fig. 5. As the number
Number of Nodes of nodes increased, the nodes consumed more battery
power.
The EWBCA algorithm provided smaller energy con-
sumption per node in comparison with WCA. This result
Fig. 2 : Average number of Reaffiliation vs Number of nodes
proved the effect of clustering technique in reduction of
energy consumption.

m/s when the number of nodes was 10. Also, when there
were 60 nodes, our algorithm gave 11% better throughput 8
Average Consumed Energy per node(J)

for the node speed of 10 m/s. As the node density became


7
higher, our algorithm and WCA gave lower throughput.
6
5
4
EWBCA
3
WCA
2
1
0
10 20 30 40 50 60
Number of Nodes

Fig. 5 : Average Consumed Energy per node vs number of nodes


JOURNAL OF COMPUTING, VOLUME 3, ISSUE 1, JANUARY 2011, ISSN 2151-9617
HTTPS://SITES.GOOGLE.COM/SITE/JOURNALOFCOMPUTING/
WWW.JOURNALOFCOMPUTING.ORG 20

6. Conclusion [7] Lin, C. R., and Gerla, M., “Adaptive Clustering for Mobile
Wireless Networks,” IEEE Journal on Selected Areas in
In this paper a new clustering algorithm (EWBCA) for
Communications, Vol. 1`5, 7, 1997, pp. 1265-1275.
MANETs has been proposed. to elect heads in clusters,
[8] Chatterjee, M., Das, S., and Turgut, D., “WCA: a weighted
we used the weight factor for the nodes. To calculate
clustering algorithm for mobile ad-hoc networks,” Journal
weight value of a node, four following parameters have
of Cluster Computing (Special Issue on Mobile Ad hoc Net-
been considered: Number of Neighbors, Residual Power
works), 5, 2002, pp.193-204.
of Battery, Stability and Variance of distance with all
[9] W. Choi, M. Woo.” A Distributed Weighted Clustering
neighbors. EWBCA algorithm has been compared with
Algorithm for Mobile Ad-hoc Networks,” AICT/ICIW,
WCA algorithm to evaluate its performance. Simulation
2006.
demonstrated that our suggested algorithm provides less
[10] Nocetti, F. G., Gonzalez, J. S., and Stojmenovic, I., “Con-
number of clusters, smaller routing overhead, more end-
nectivity Based k-Hop Clustering in Wireless Networks,”
to-end throughput and less consumed energy in compari-
Telecommunication systems, Vol.22, 2003, pp.205-220.
son with WCA in different number of nodes. Consequent-
[11] W. Su, S. J. Lee, and M. Gerla, “Mobility prediction in
ly EWBCA has better performance than WCA clustering
wireless networks,” in Proc. IEEE MILCOM, Los Angeles,
algorithm.
CA, Oct. 2000, pp.491–495.
[12] UCLA Computer Science Department Parallel Computing
REFERENCES Laboratory and Wireless Adaptive Mobility Laboratory,
[1] M. Frodigh, P. Johansson, and P. Larsson. “Wireless ad GloMoSim: A Scalable Simulation Environment for Wire-
hoc networking: the art of networking without a net- less and Wired Network Systems.
work,” Ericsson Review, No.4, 2000, pp. 248-263. http://pcl.cs.ucla.edu/projects/glomosim/.
[2] IETF Working Group: Mobile Adhoc Networks (manet). [13] Johnson D.B., “Routing in Ad Hoc Networks of Mobile
http://www.ietf.org/html.charters/manet-charter.html. Hosts”, Workshop on Mobile Computing and Applications,
[3] J.Wu and H. Li. On Calculating Connected Dominating Set 1997.
for Efficient Routing in Ad HocWireless Networks. In [14] C. E, Perkins, and E.M. Royer,” Ad-Hoc on-Demand Dis-
Proc.of DIALM, pages 7–14, 1999. tance Vector Routing “, in Proc. Of IEEE WMCSA 1999,
New Orleans, LA, Feb 1999.
[4] Gerla, M, and Tsai, J.T.C, “Multicluster, mobile, Multime-
dia Radio network,” ACM/Baltzer Journal of Wireless Net-
works 1, 3 , 1995, pp.255-265.
[5] Baker, D.J., and Ephremides, A., “A distributed algorithm
for organizing mobile radio telecommunication net-
works,” in 2nd International Conference on Distributed Com-
puter Systems, Paris, France, IEEE, 1981, pp.476-483.
[6] Baker, D.J., and Ephremides, A., “The architectural organ-
ization of a mobile radio network via a distributed algo-
rithm,” IEEE Transactions on Communications COM-29 11,
1981, pp. 1694-1701.

18
End‐to‐end throughput(kbits/sec)

15

12

9
EWBCA

6 WCA

0
10 20 30 40 50 60
Number of Nodes

Fig. 3 : End-to-End throughput vs number of nodes

You might also like