VSRP 2003 REPORT 1 A Quality of Service Routing and Distributed Clustering Framework in Mobile Ad Hoc Networks Mohit Garg Guide: R. K. Shyamasundar Abstract— In this document, we present a completely distributed algorithm for partitioning a given set of mobile nodes into clusters. The proposed algorithm tries to reduce the amount of computational and information overhead while maintaining a stable cluster formation. The algo- rithm is a distributed version of the Basic Leader-Follower Algorithm used in pattern recognition. Our algorithm does not require maintaining a cluster head. We also propose a modified Quality of Service routing algorithm for a partitioned (clustered) set of mobile nodes in an ad-hoc network. The proposed algorithm works on the basis of an acquaintance based approach in which temporary contacts enable fast inter-cluster routing. Index Terms— Quality of Service, Mobile Ad-Hoc Net- works, Distributed Clustering, Distributed Basic Leader- Follower Algorithm, Acquaintance-based approach. I. I NTRODUCTION M OBILE Ad-Hoc Networks (MANets) were pri- marily researched for their use in military appli- cations. But with the burgeoning need for more and more services for the users, MANets have attracted a lot of industry interest recently. Ad-Hoc networks are wireless networks which do not require any fixed infrastructure. They can be quickly set up without the need for any base station or access points as in the case of traditional wireless networks. The temporary nature of Ad-Hoc networks makes them ideal for applications like military communication, disaster relief work, conferences etc. An ad-hoc network is usually modeled by an undi- rected graph with each vertex representing a node in the network. An edge between two vertexes implies that the two corresponding nodes can communicate with each other (i.e. each link is bi-directional). Such nodes are called neighbours. Since the transmission range of each node is limited, this puts a limit on the maximum length of each edge in the graph (if the graph is drawn to scale). Thus a node A may be able to communicate directly (neighbour) with another node B, but not so with a node C. So, in order for A to communicate with C, it will need to route the packets via another node or set of nodes. This is termed as multi-hopping. A. Routing in MANets Finding and maintaining stable routes in an ad-hoc network is not an easy task. The major stumbling block is the mobility of the nodes. Almost all the approaches in literature can be broadly classified into the following two categories :- • Pro-Active routing involves keeping routes to all possible destinations (which is usually all nodes in the system) and keeping a track of the link parame- ters so as to find QoS enabled paths quickly as and when needed by an application. These techniques require an overhead for maintaining and exchanging information about the state of the network. [10], [11] • Reactive routing on the contrary tries to find paths on demand. i.e. as and when needed by an applica- tion, the source node will initiate a route discovery. These algorithms involve relatively lesser overhead for exchanging information about network state but are characterized by larger delays in finding paths. Flooding algorithms can also be clubbed with reactive routing algorithms. [12], [13] Both pro-active and reactive approaches are not scal- able. In a large network, while the former would need a very large overhead to exchange network state infor- mation (which will compete with the data packets for the already scarce bandwidth), the latter will lead to large delays especially when the source and destination nodes are separated by a large no. of hops. Clearly, some sort of a compromise needs to be achieved between the two strategies. Clustering strategies tend to do just that. Clustering divides the given network into discrete partitions. Most of the cluster-based routing algorithms tend to use pro-active approaches within the cluster and reactive routing for inter-cluster routing [1], [5]. This enables one to reach a sort of compromise between pro- active and reactive routing strategies. Our approach also uses the same routing strategy with a slight addition (see Section IV). Clustering also provides one with some sort of a veil w.r.t. the mobility of a node i.e. a node in cluster X does not bother about the motion of a node in