Efficient Heuristic Based on Clustering Approach for OLSR

Due to the dynamic nature of mobile ad hoc network (MANET), the quality of service (QoS) requires several improvements. The present papercomeswithin the framework of research to optimize QoS in MANET. In this paper, we propose a novel version of OLSR based on the clustering approach which is inspired from Lin and Chu heuristic and adapted to beimplemented inOLSR. We studied its stability and we compared its performances to those of standard OLSR. The metrics we used in evaluating network performances were average end-to-end delay, control routing overhead, and packet delivery ratio. Experimental results show that our alternative significantly reduces the traffic reserved to monitoring the network, which positively influences other performances such as throughput, delay, and loss.


Introduction
MANETs are mobile radio networks with no infrastructure, allowing a quick and easy implementation.They may also be coupled to a LAN to extend the coverage of existing infrastructure.Nodes can appear, disappear, and move independently from each other.The network topology is scalable.Terminals can communicate within the limit of its radio power.A diagram of multihop communication is necessary to allow two remote nodes to communicate.
In this communication scheme, each terminal can be used as router to relay other terminals communications.The configuration of these multihop roads is carried out by routing protocol.To be effective, these routing protocols must consider the intrinsic characteristics of the network (topology changing), terminals (memory size and computing capacity limited), and the medium of communication (bandwidth limited, interference).
Many of the routing protocols for ad-hoc networks are classified as either proactive or reactive routing protocols.Proactive routing protocols try to collect information about the MANET through proactive exchange of messages about their local topology.These protocols reach rapidly their limits when increasing density and mobility of nodes.However, reactive protocols find a route on demand by flooding the network with route request packets and require an important delay to find and to use the route that links up two nodes.
Currently there are many routing protocols for each type of network.However, even this efficiency on small and medium size networks, neither of them can be used on large scales because they generate too much control traffic or would require too large routing tables.
One solution commonly proposed for routing on large scales is to introduce a hierarchical routing by grouping geographically close nodes.
Each group, called cluster, is represented and managed by a particular node called cluster head.

Related Work
In this section, we present the main algorithms built clusters in ad hoc networks [1,2].A clustering algorithm should principally allow construction of clusters, their maintenance, and election of cluster head.

1-Hop Clusters.
Many clustering algorithms produce 1hop clusters.One of the oldest algorithms is the lowest ID or LCA (Linked Cluster Algorithm) proposed by Ephremides et al. [3].
LCA protocol is used by routing protocol CBRP (Cluster Based Routing Protocol) [4] for cluster formation.
Subsequently, Gerla and Tsai try to bring more stability to the structure of clusters formed by the LCA.The authors proposed HCC protocol (High Connectivity Clustering) [5] which uses the degree of nodes rather than their ID.
The authors of [6] proposed LCC (Least Cluster Change) which adds phase maintenance of clusters formed with the LCA and HCC.
The protocol MOBIC (Mobility Based Metric for Clustering) [7] applies the same algorithm as LCA and HCC but uses a metric based on mobility rather than degree or identifier of nodes.

K-Hop
Clusters.These algorithms allow the generation of k-clusters where every node in a cluster is located at most at khops to its corresponding cluster head.The k-clusters formed are relatively stable to 1-clusters and cover a wide geographical area.
Fernandess and Malkhi [8] proposed an algorithm which is based on a new approach to generate k-clusters.
The heuristic Max-Min d-cluster [9] also produces clusters whose radius is higher than 1.The structure of Max-Min offers very good stability results.It uses the identifier of nodes.
In this paper, we propose an algorithm that generates k-clusters.Our algorithm is a lightweight in the sense that it is simple and without adding any control message to the network.

Problem Formulation
Most routing protocols designed for ad hoc networks of small and medium size with low mobility of nodes provide good performance.However, when the number of nodes increases [10] or nodes are agitating [11], control traffic which dominates the real communications causes an increase in latency and an explosion of routing tables.
These difficulties are mainly due to the use of flooding to discover routes.The flood consumes bandwidth because all nodes must rebroadcast received packets.Moreover, the distribution of packets causes problems of collision and redundancy.
To overcome these limitations, the hierarchical architecture is considered one of effective solutions for routing in ad hoc networks.
Although Ad Hoc networks have no physical infrastructure, a virtual backbone [12] could be constructed by the nodes in a Connected Dominating Set (CDS) in which the constituents are the only ones involved in information broadcast.Thus it is effective while it is more compact.
Figure 1 shows hierarchical structure with one level.There are also proposals for hierarchical structures multilevel in which clusters are then grouped into other clusters of higher levels and so on.Each level contains the cluster heads and gateways of lower level (CDS).
In this paper, we proposed a novel heuristic based on clustering approach which is inspired from Lin and Chu heuristic [13] and implemented in OLSR protocol.This approach establishes different schemes for routing within cluster (intracluster) and between clusters (intercluster).We present a detailed description of the algorithm and its comparison with standard OLSR in terms of routing overhead, average end-to-end delay, and packet delivery ratio.
Our proposal aims at reducing the size of the routing table and its maintenance costs by involving only the nodes forming the backbone in the broadcast.Therefore, the massive redundancy of emission will be avoided.

OLSR Overview.
OLSR is a proactive routing protocol for ad hoc networks that uses the concept of Multi-Point Relay (MPR) to minimize the control traffic and calculate the shortest route between any pair of nodes.Each node selects its MPR in its 1-hop neighborhood.When a node u receives a message M from a neighbor v, it retransmits that if this is the first time it receives M and if u is designated as one of its MPR.MPR selection consists of a node u to choose a minimum set of nodes among its neighbors so that all of 2neighbors of u shall be covered (each 2-hop neighbor of u receives a transmission from at least one MPR of u).This way, even if u considers only MPR in its neighborhood, it can join his 2-hop neighbors, and by extension its k-neighborhood in k-hops [14,15].
Periodically, each node sends a HELLO message to all its neighbors.This message contains three lists of nodes representing the state of the link.
(i) List of neighbors addresses from which the node has received a HELLO packet.
(ii) List of neighbors addresses which are accessible by a bidirectional link.
(iii) List of neighbors addresses that the node has selected as multipoint relays (Figure 2).
Each node must detect the neighbor nodes with which it has a direct and bidirectional link.The uncertainties over radio propagation may make some links unidirectional.Consequently, all links must be checked in both directions in order to be considered valid.For this, each node periodically broadcasts its HELLO messages, containing the list of neighbors known to the node and their link status.The HELLO messages are received by all one-hop neighbors but are not forwarded.They are broadcast at a low frequency determined by the refreshing period HELLO interval (the default value is 2 seconds) [15].

Clustering.
Mobile ad hoc network can be designed such as a graph G = (V, E) where V represents the nodes and E represents the communication links.The clustering process is based on a virtual dividing of V into a set of geographically closed groups { 1 ,  2 , . . .,   } such as the following: These groups are named clusters and they are not necessarily disjointed.However, each cluster is identified by a particular node called cluster head.So as to select a clusterhead, a metric or a combination of metrics can be used such as identifier, degree, density, and mobility.Furthermore, according to the density, and mobility of nodes, the clustering algorithm efficiency is evaluated in terms of number of clusters formed and in terms of clusters' stability.

Algorithm Description.
Our algorithm is inspired by Lin and Chu heuristic [13].It is based on density and identifier of nodes as metric for electing cluster heads that produce disjoint r-clusters where its cluster heads are distant at least D hops (D > r) which ensures structure stability.
The distances between a cluster head and the members of the cluster are within a predetermined maximum number of hops which can be one or more hops.
The link state information of 2-hop neighbors of a node (neighbors and neighbor neighbors) is contained in the HELLO messages broadcast periodically in the OLSR network.In order not to change the structure of control messages in OLSR network, we based on the density of nodes for the election of cluster-heads and we assigned the value 2 to the parameter r which is already used by the principle of MPRs for information flood.
Density and ID of symmetrical 2-hop neighbors are accounted from the control messages of OLSR as described in RFC 3626 [16].The election of cluster heads will focus on the density of nodes in 1-hop and 2-hop (2-neighbors).
The mean diameter of the clusters of the same size, the stability of the cluster structure, and the communication overhead for maintaining the cluster structure for the proposed clustering technique have been studied by extensive simulations.

Heuristic.
Our alternative produces clusters whose radius is fixed at 2. Since the information of the 2neighborhood is available for each node (OLSR principle), computing is made locally.Thus, the algorithm is inexpensive in terms of messages and latency.
Below we present the heuristic in detail.
(i) Initially, node u is in the initialization phase (calculates its density).(ii) If all nodes in the 2-hop neighborhood have lower densities (including the initialization phase), u declares itself as cluster head.All its 2-hop neighbors having no nearest head attach themselves to it.
Else if it exists at least as a cluster-head less than 2-hop,  attaches to the nearest.Else, u is declared cluster head.
(iii) If two cluster heads are separated by less than 3-hop, the head having lower identifier abandons its role and all its cluster members choose a new leader.

Gateway Selection.
After a node has determined its cluster-head, it communicates that it is a member of the cluster to the cluster head.In order to minimize messages, this information is communicated from the fringes of the cluster, gateway nodes, and inward to the cluster-head.Furthermore, a node has no way to know if it is a gateway node.Therefore, after cluster-head selection, each node broadcasts its elected cluster head to all of its neighbors.Only after hearing from all neighbors can a node determine if it is a gateway node.If all neighbors of a node have the same cluster-head selection, then this node is not a gateway node.However, if there are neighboring nodes with cluster-head selections that are different, then these nodes are gateway nodes.

Simulation Environment
In our experimental study we validate the stability of our alternative in terms of number of generated clusters and average lifetime duration of cluster.Furthermore, we evaluate it in terms of performances routing control overhead, average end-to-end delay, and packet delivery ratio based on CBR traffic.Finally, we compare it to standard OLSR.Simulations have been carried out by Network Simulator NS2 version 2.34.In Table 1, we provide all simulation parameters.4.1.Performance Metrics.About the simulation results, we have used the routing control overhead, average end-to-end delay, packet delivery ratio, node eccentricity, and cluster diameter as metrics in order to evaluate the performances of the protocols described.
(i) Routing control overhead: routing control overhead is measured as the average number of control packets transmitted at each node during the simulation.Each hop is counted as one separate transmission.(ii) Average end-to-end delay: the delay of a packet is the time it takes to achieve the destination after it leaves the source.The average packet delay for a network is obtained by averaging over all packets and all source destination pairs.The average end-to-end delay  Avg is calculated as follows: is emission instant of package ,    is reception instant of package , and   is the total number of packets received (iii) Packet delivery ratio: ratio of the data packets successfully delivered to the destination.(iv) Eccentricity: we used (/) to denote the eccentricity of node u in a cluster C, where the eccentricity of a node is the biggest distance between u and any other node in the same cluster C: (v) Diameter: the diameter of a cluster C, denoted by D(C), is the largest eccentricity in this cluster:

Results Discussion
In this section we present the simulation results, our proposition validation, and its comparison with the standard OLSR.

Stability of the Algorithm.
As we know, the congestion problem is proportional to the number of clusters generated  [17].However, the algorithm stability depends on the number of generated clusters which is associated with the congestion problem.This stability depends also on minimum lifetime of a cluster before restarting the clustering process.
A node in MANET with OLSR routing receives HELLOs messages regularly from its neighbors.Because we are based on those messages to compute density and ID, a node may change its state after each message reception.This can lead to certain instability in clustering system [18].To solve this problem, a node should keep its state for reasonable time duration [19].For this reason we increase the refreshing period to three times the period of emission Hellos messages.Moreover, this refreshing period represents the minimum lifetime of a cluster.
Simulation results of the clusters characteristics of our algorithm are in Table 2: Based on described results in Table 2, we note that a node is more eccentric within its cluster, that is, each formed cluster by the algorithm contains a reasonable number of nodes which implies that the algorithm builds less clusters.Therefore, we conclude that the structure of our proposition gives good results in terms of stability which remains to be confirmed by the simulations related to the number of generated clusters and their lifetimes.

Number of Generated Clusters.
As described previously, generating a great number of clusters causes the congestion problem [17].As solution, we have increased the interval between two HELLO messages to three times more.
Figure 3 shows the number of clusters generated by our proposition depending on the node density when the period between sending two messages HELLO equal to that of standard OLSR and when we increase it to three times.
We observe that the generated clusters with three times interval of HELLO messages are reduced significantly than those generated in normal case.From this result, we can conclude that when we force nodes to retain their status for a minimum of three times more than the normal we can solve the congestion problem and improve network performances.

Cluster Average Life Time.
Due to topology dynamic in ad hoc network, the state of each node can drastically change.This will have a negative impact on the algorithm stability.
Figure 4 shows the behavior of the cluster average duration according to density of nodes when the period between sending two HELLO messages equals that of standard OLSR and when we multiplying it three times.
As shown, by expanding the refreshing period of HELLO message interval to three times more than the normal we have increased remarkably the cluster average lifetime in network.Therefore, the cluster formation process becomes stable.to the density of nodes.According to the same figure (Figure 5) our algorithm reduces significantly the quantity of control messages broadcasted than those broadcasted by OLSR standard especially when increasing density of nodes.Therefore, this result leads to gain more bandwidth which can be exploited to improve other performances such as the throughput, delay, and loss.

Routing Control Overhead.
This result can be interpreted by the structure of our algorithm which runs as follows: it behaves like the standard OLSR in intracluster (within cluster), and on the contrary it involves in interclusters (between clusters) only the nodes which form the backbone.

Average End-
To-End Delay.The aim of Figure 6 is to show the efficiency of our alternative in terms of average end-to-end delay.Moreover, it presents the delay of standard OLSR and OLSR with clustering according to density of nodes.As shown, it outperforms standard OLSR in term of delay while increasing density of nodes.The latest result can be explained by the fact that the communication between two remote clusters is done only through the nodes that form the backbone.Consequently, this optimizes automatically the path in terms of hop number in order to reduce the end-to-end delay.

Packet Delivery Ratio.
In order to evaluate our proposition we have compared it to standard OLSR in terms of packet loss.According to Figure 7, OLSR with clustering delivers packets to the destination more than standard OLSR.
To conclude, based on the reduced control traffic quantity, OLSR with clustering improves the quantity of data traffic by choosing optimal paths according to number of hops.

Conclusion and Perspective
In this paper, we addressed the limitations of traditional routing protocols in MANET and the need to involve other approaches.
We have proposed a novel heuristic based on clustering approach that we have adapted to be implemented in standard OLSR.
Our alternative divides the network into disjoint clusters.It behaves like standard OLSR in intracluster and involves only nodes which form the connected dominating set in intercluster.Thus, it significantly reduces the amount of control traffic.
We compared our proposition to standard OLSR and showed that it outperforms it in terms of average end-to-end delay, control routing overhead, and packet delivery ratio.
In the next version of our algorithm, the criterion of electing cluster heads will focus on a metric combining density, energy, and mobility.

Figure 5 :
Figure 5: Routing Control Overhead versus Number of nodes.

Figure 6 :
Figure 6: End-to-End delay versus number of nodes (CBR traffic).

Figure 7 :
Figure 7: Packet delivery ratio versus number of nodes (CBR traffic).