You are on page 1of 7

See discussions, stats, and author profiles for this publication at: https://www.researchgate.

net/publication/220905597

Adaptive Clustering Using Mobile Agents in Wireless Ad-Hoc Networks

Conference Paper · January 2001


DOI: 10.1007/3-540-44763-6_20 · Source: DBLP

CITATIONS READS
9 2,363

2 authors:

Robert Sugar Sandor Imre


University of Cambridge Budapest University of Technology and Economics
20 PUBLICATIONS 1,732 CITATIONS 444 PUBLICATIONS 4,263 CITATIONS

SEE PROFILE SEE PROFILE

All content following this page was uploaded by Sandor Imre on 30 May 2014.

The user has requested enhancement of the downloaded file.


Adaptive Clustering Using Mobile Agents in Wireless
Ad-Hoc Networks

Robert Sugar, Sandor Imre

Department of Telecommunications
Budapest University of Technology and Economics
H-1117. Pazmany Peter setany 1/D, Budapest, Hungary
E-mail: {sugar,imre}@hit.bme.hu

Abstract. A Mobile ad-hoc network is a multihop wireless network, where


nodes communicate with each other without any pre-deployed infrastructure.
The most important problem on such dynamic networks is to find routing
algorithms well performing in most cases. Cluster based algorithms are among
the most effective and scaleable approaches. Up till now creation and
maintenance clusters were mostly based on basic heuristic methods. Deploying
mobile agents has several advantages in the ad-hoc environment due to their
flexible, robust and autonomous nature, and their use seems promising for the
clustering problem as well. In our proposed architecture every cluster has a
clustering agent that is capable of making membership modification decisions,
transferring nodes and splitting or merging clusters. Communication is used
only between neighbouring agents to reduce the signalling overhead. Clustering
decisions can be based on several network parameters modified by an
adaptation mechanism to provide adequate performance even under dynamic
conditions.

I. Introduction

Wireless ad-hoc networks (also known as MANETs) started to draw attention in the
recent years. These networks require no fixed infrastructure and can be set up anytime
anywhere. Network services are provided by hosts participating in the network,
therefore every node acts as a packet forwarding router. MANETs can be very useful
in ad-hoc conferencing, in deserted or arctic regions or in extending the coverage of
base stations in sparsely populated areas. They may be the only way of
communication in a catastrophe situation or in some military applications [1,2].
Several problems exist in MANETs that hinder effective communication.
Bandwidth and radio resources are scarce, computing and battery capacity is limited,
node mobility is high and link failures are much more frequent than in infrastructure
environment. To overcome these problems new methods must be defined in order to
allow the successful operation of these networks. The most important task is to find
an appropriate routing algorithm that is adaptive, robust and introduces only a
relatively small overhead. Several methods were presented and most of them fall into
three basic categories [3,4].
Pro-active routing aims to maintain a route to every host by setting up and updating
routing tables in each node. Examples for such algorithms are AODV (Ad-Hoc on
Demand Distance Vector) [5] or WRP (Wireless Routing Protocol) [6]. Reactive or
source routing discovers the path to a host only on demand. The source floods the
network in search of the destination and chooses the path from which the first packet
arrived to the target. Such algorithms are DSR (Dynamic Source Routing) [7] or LMR
(Lightweight Mobile Routing) [8].
The third type is the hybrid or cluster based routing, which is a mixture of pro-
active and reactive algorithms. The network is divided into several partitions, referred
to as clusters or zones. The clusters can contain a special node, called the clusterhead,
which routes the packets destined outside of the cluster. This, although creates a
bottleneck at the clusterheads, reduces the number of control packets needed, because
only the clusterheads have to be informed about changes outside the cluster. Clusters
can be either distinct or overlapping. In the latter case the neighbouring clusters can
have a common node, referred to as gateways [11]. Other algorithms can be superior
to cluster based routing in special situations, but this solution is the most scaleable
and adaptive, what is usually more important in such environment than finding
optimal routes. Such algorithms are the ZRP (Zone Routing Protocol) [9], the CBRP
(Cluster Based Routing Protocol) [10] or CGSR (Clusterhead-Gateway Switch
Routing) [11]. During the rest of the paper we focus only on cluster based algorithms.
For the effective functioning of cluster based routing algorithms the size and the
membership of the clusters must be chosen carefully. The most important requirement
is to keep clusters as stable as possible, because dynamic membership changes need
more communication between the clusters in order to provide up-to-date membership
information. Long-lived clusters also reduce the probability that a packet will be
routed to the previous cluster of the addressed node, thus causing more delay and
overhead. Although for stability reasons larger clusters are desirable, large cluster size
puts a heavy burden on clusterheads, and hinders the efficient communication within
the cluster.
Previously, most of the focus was on the routing algorithms and simple heuristics
were used for determining cluster size and membership. In [12,13] clusters are
defined as "a set of nodes, where every node is at most two hops away from the
others". Probably the most comprehensive study on this topic was the (α,t) clustering
[14] that based clustering on user mobility and node availability focusing on selecting
the most stable routes. An (α,t) cluster consists of nodes that can reach any other node
in the cluster for a t time with at least the probability of α. These algorithms, although
they are simple and need little signalling, lack the needed scalability and adaptability,
and only use knowledge of one type of the network parameters, such as node
connectivity or mobility.
Therefore, a more general, adaptive and scaleable clustering method should be
designed that reduces the weaknesses and uses the strength of the previous methods.
Since cluster membership changes are less frequent than routing packets, a slight
overhead can be tolerated in order to maintain suitable clusters in all situations. In this
paper a mobile agent based method is provided that can incorporate the previously
defined requirements for effective clustering. Adaptivity is provided in a distributed
manner by relatively simple entities showing intelligence as a system as in the case of
swarm intelligence [16].
II. Mobile Agents

Mobile agents (MAs) are autonomous, intelligent programs that move through the
network, performing actions on their creator’s behalf [15]. Deploying mobile agents
for network management tasks has several advantages over the traditional methods on
large infrastructure networks, as presented in [17,18]. The usage of mobile agents in a
wireless ad-hoc environment is even more appealing, because they easily fit into the
distributed nature of MANETs, providing adaptivity, flexibility, robustness and even
efficiency, which are prime requisites in such environment. Deploying mobile agents
for clustering is mostly desirable because one fixed algorithm can rarely prove
profitable in all situations.

A, Advantages of Agent Technology

The use of mobile agents, however, needs software architecture capable of hosting
and executing agents at every node. As most MA platforms (such as Aglets [20] or
Voyager [21]) work with Java code, it means that every host must contain a virtual
machine and a mobile agent server listening on a specified port. This is not a heavy
constraint, because as computational power increases, the overhead of the MA
platform will be small enough, and for the equipment with limited capabilities, cheap
JVM chips will be available in the near future. Most of the mobile hosts already have
a JVM available, for example on the ones using the JINI [19] technology.
Agents can be quite bandwidth efficient due the code to the data phenomenon,
which means that the agent arriving to a node can examine a larger portion of data for
decision making, as opposed to the cluster-master that would have to retrieve all the
data over the network. Java agents are relatively small in size, typically about several
ten kilobytes and can be even smaller while migrating if their classes are cached on
the targeted host, as in most of the cases. The agent based solution is also more
dynamic, because the clustering algorithm is not hard-coded into the clusterheads or
the nodes, can be decided at network set-up time and easily changed later on by
replacing the agents with new ones or by changing their behaviour patterns.

B, Communication between Agents

As the location of agents is not known exactly an effective communication scheme


between neighbouring agents must be achieved. In infrastructure networks mobile
agent communication is usually facilitated by a directory service, often using
CORBA, such as in [21]. It is rather effective, but it needs a centralised directory
server, whom the agent must contact, every time it moves. In ad-hoc networks agents
can use broadcast mechanisms to find a peer agent, which is relatively cheap due to
the shared media. The broadcast can be limited to the target cluster, therefore the wide
propagation of the searching packet can be avoided.
III. Agent based Ad-hoc Networking

The main purpose of a clustering agent is to collect statistics from its cluster and its
neighbouring nodes in order to make correct decisions. It also communicates with
neighbouring agents while performing cluster membership modifications, or gathering
information about their own clusters. During network set-up many hosts on the
network can generate agents to reach an acceptable initial clustering, and start the
normal membership control process afterwards.

A, Controlling the Size of Clusters

In our scheme, four types of cluster state changes exist: Node transfer between
neighbouring clusters, cluster division, cluster merging and node exploration.
Exploration process is very important during network set-up and also serves the
robustness and fault tolerance in case of agent faults. It is needed when a host
switches off with an agent residing on it, or leaves the connectivity range. When
arriving to a host, agents can verify the neighbours of that host, especially the ones in
different clusters, in order to check if a serving agent exists for that node, and analyse
the timestamp that its agent had left there during the last visit. If it finds that the node
has no serving agent or had not been visited for a longer period of time, it will
consider the node free and starts the node discovery process either by sending out a
new agent or by performing it by itself. In this way agents from the neighbouring
clusters can soon repopulate the cluster of a broken agent. Furthermore, newly joined
nodes can easily fit into the cluster structure, although they can initiate the node
exploration by themselves at start-up as well.
Due to host mobility, changing network conditions or other reasons the agents can
decide to move a node into a different cluster. The process can be started by any of
the parties, but in most of the cases the previous agent of the node will begin the
transfer. The actual decision rule possibilities will be covered in chapter III.B. The
initiator of the transfer selects the new cluster of the node and communicates with the
agent of that cluster, making a proposition that can be either accepted or rejected. If
the answer was positive, the membership change takes effect. In case of rejection the
agent can choose a different cluster or a different node for the next transfer attempt.
Dividing clusters may be necessary if the size of the cluster grows and
neighbouring clusters refuse node transfers. The domain of the cluster will be
separated into two – desirably equal – portions, a new agent will be spawned and new
clusterheads will be elected. This procedure enables new clusters to emerge, because
otherwise the number of clusters would be constant, as new clusters can exclusively
be created by cluster divisions or through the exploration process.
Cluster merging is the contrary operator of cluster division. Both cluster agents can
initiate it, but they have to agree on merging to bring the union into effect. The
procedure is similar to node transfers, for the selected party must accept a merging
proposition. If accepted, the two old clusters will form a new one, one of the agents
will terminate and a joint clusterhead will be elected.
B, Decision Making Rules

Several network parameters must be taken into account in order to make correct
clustering decisions. If the procedure is simple enough it could be solved with a rule
based reactive agent. If the numbers of parameters are many, target oriented
deliberative agents could be used, which can incorporate the needed intelligence to
successfully react to unplanned situations. The parameters that could be taken into
account during decision making can be the following: node connectivity, node
mobility, node capability and link conditions, maximal and available bandwidth. The
initial parameter set could be decided at network start-up time and can be changed by
the self-adaptation procedures later on. Agents could define instant triggers, weights
for performance evaluation and probabilities for certain actions.
Instant triggers are used if the situation demands immediate action, such as the loss
of connectivity or the trashing of the clusterhead. Rules are defined, such as “Initiate
the node transfer process with a given probability if the load of the clusterhead is
significantly lower than the neighbour’s” or “Prefer the highly mobile nodes over the
static ones during transfers”. When conditions of some rules are met, the defined
action is performed with a certain probability. The limits and probabilities are
influenced by the adaptation mechanism described in the next chapter .

C, Adaptivity

Adaptivity could be based on previous experiences of the agent and the estimated
effect of its previous decisions. With the weights of certain network parameters
(delays, number of errors or amount control packet flow) agents could construct a
general "well-being" function evaluating the state of their cluster, used for feedback
purposes. The agent could compare the well-being of its cluster before and after a
certain decision. If the action was estimated to be successful, the agent encourages the
given modification type (e.g. increase the probability of cluster division due to the
danger of a cluster split), and if it was found to be ineffective, it discourages the
further changes of the same kind. For adaptive behaviour, the probabilities are
adjusted by a degradation parameter, thus recent events have more influence than
elder ones.

Conclusions and Future Work

In this paper we presented a novel method of using mobile agents in wireless ad-hoc
environment. Mobile agents harmonise with the basic principles of ad-hoc networks,
their dynamic nature and the distributed architecture. They seem to be promising in
the clustering problem due to their flexibility and adaptivity. We pointed out several
advantages over the existing methods and proposed an architecture and framework
for their operation. In the near future we will test agents in a simulated ad-hoc
environment comparing them to the existing solutions. We will also evaluate rules
and parameter sets for decision making and adaptation towards an effective
clustering, and explore further usage of mobile agents in wireless ad-hoc networks.
The project is supported by Timber Hill Group LLC. and OTKA F032268
(Hungarian Scientific Research Found).

References
[1] C-K Toh. Wireless ATM and Ad-Hoc Networks. Kluwer Academic Publishers, 1997.
[2] A. Alwan, R. Bagrodia, N. Bambos, M., L. Kleinrock, J. Short and J. Villasenor, ‘‘Adaptive
mobile multimedia networks, IEEE Personal Communications, pp. 34-51, April 1996.
[3] J. Broch, D. Maltz, D. Johnson, Y. Hu, and J. Jetcheva. A performance comparison of
multi-hop wireless ad hoc routing protocols. In Proceedings of the Fourth Annual
ACM/IEEE International Conference on Mobile Computing and Networking,October 1998.
[4] S. Das, R. Castaneda, J. Yan, and R. Sengupta. Comparative performance evaluation of
routing protocols for mobile, ad hoc networks. In Proceedings of 7th Annual ICCCN,
October 1998.
[5] Charles Perkins. Ad hoc On Demand Distance Vector (AODV) Routing. Internet draft,
draft-ietf-manet-aodv-00.txt, 1997.
[6] Murthy, S. , and Garcia-Luna-Aceves, J.J. A Routing Protocol for Packet Radio Networks.
Proc. of ACM Mobile Computing and Networking Conference, MOBICOM’95, Nov. 14-
15, 1995.
[7] D. Johnson and D. Maltz. Dynamic source routing in ad hoc wireless networks. In T.
Imielinski and eds. H. Korth, editors, Mobile Computing. Kluwer Academic Publications,
1996.
[8] M.S. Corson and A. Ephremides. A distributed routing algorithm for mobile wireless
networks. ACM-Baltzer Journal of Wireless Net-works,1:61-81, January 1995.
[9] Z. J. Haas and M. Perlman. The performance of query control schemes for the zone routing
protocol. In Proceedings of ACM Sigcomm'98, October 1998.
[10] M. Jiang, J. Li and Y.C. Tay. Cluster-Based Routing Protocol (CBRP), Internet-Draft,
draft-ietf-manet-zone-zrp-02.txt, August 1999.
[11] C.-C. Chiang. Routing in Clustered Multihop, Mobile Wireless Networks with Fading
Channel. Proc. IEEE SICON'97, Apr.1997, pp.197-211.
[12] M. Gerla and J.T.-C. Tsai, ‘‘Multicluster, mobile, multimedia radio network,’’ ACM-
Baltzer Journal of Wireless Networks, Vol. 1, No. 3, pp. 255-265, 1995.
[13] C. R. Lin and M. Gerla. Adaptive clustering for mobile wireless networks. IEEE Journal
on Selected Areas in Communications, 15(7), September 1997.
[14] A.B. McDonald and T.F. Znati. A mobility-based framework for adaptive clustering in
wireless ad hoc networks, IEEE J. Selected Areas in Communications, 17, 8, August 1999,
1466-1487.
[15] L. Ismail, D. Hagimont. A Performance Evaluation of the Mobile Agent Paradigm. Proc.
Of the Communications of the ACM, Volume 41, Num. 10. ACM Press. October 1998. pp
44 - 52.
[16] T. White, A. Bieszczad and B. Pagurek, Distributed Fault Location in Networks Using
Mobile Agents. In Proceedings of the Second International Workshop on Agents in
Telecommunications Applications (IATA '98), pp. 130-141, July 4th-7th, 1998.
[17] A. Bieszczad, B. Pagurek, and T. White. Mobile Agents for Network Management. IEEE
Communications Surveys, September 1998.
[18] Robert Sugar, Sandor Imre. Dynamic Agent Domains in Mobile Agent Based Network
Management. IEEE International Conference on Networking, 2001.
[19] Sun Microsystems Inc. Jini connection technology. http://www.sun.com/jini/.
[20] IBM Japan: Aglets Software Development Kit. http://www.trl.ibm.com/aglets/.
[21] ObjectSpace: ObjectSpace Voyager Core Package Technical Overview. Tech. Repot.
ObjectSpace Inc. Dallas, 1997.

View publication stats

You might also like