99 CHAPTER 5 AN AODV-BASED CLUSTERING APPROACH FOR EFFICIENT ROUTING 5.1 INTRODUCTION Dynamic network topology and limited system resources characterize mobile ad hoc networking. Many routing protocols were proposed for routing in MANETs (Chakeres and Belding-Royer 2004; Jiang et al 1998). In MANETs, performance decreases when network s size exceeds a certain threshold, resulting in many routing algorithms performing only when network s size is small. To overcome bandwidth and battery power limitations and reduce routing overhead, it is mandatory to make network organization smaller and manageable (Garcia et al 2003). A clustering architecture provides MANET environments with three features: network scalability, fault tolerance and communication overhead reduction. Many clustering algorithms have geographical regions as clusters or form new ones unnecessarily. (Chiang et al 19997; Lin and Gerla 1997). An algorithm by Chatterjee et al (2000) creates necessary clusters without using routing protocol maintained information. It has been proved that cluster architecture ensures basic performance achievement in MANETs with many mobile terminals. A cluster structure provides at least three benefits, as an effective topology control measure. First, it facilitates spatial resources reuse to increase system capacity. With the non-overlapping multi-cluster structure, two clusters can use the same frequency/code set if they are not neighbours. Also, a cluster
100 coordinates transmission events better with a special mobile node, with a cluster head, inside. This saves retransmission resources resulting in lower transmission collisions. The second benefit is in routing, as a cluster head set and cluster gateways normally are the virtual backbone for inter-cluster routing which in turn restricts creation and spread of routing information. Last, a cluster structure shrinks an ad hoc network and makes it more stable with every mobile terminal. When a mobile node changes its cluster attachment, the information is updated only in those nodes in corresponding clusters. Thus, local changes do not need updation by the whole network as this greatly reduces information stored by each mobile node. 5.2 CLUSTERING Clustering technique is not a routing protocol; it aggregates nodes into groups to ensure easier network management. An ad hoc network s cluster organization is impossible to be achieved in fixed infrastructure, offline. Clustering scheme implementation ensures better protocol for Media Access Control (MAC) through improvement of spatial reuse, throughput, scalability and power consumption. MANETs have multiple benefits from clustering. To begin with, cluster structure ensures MANETs scalability and load balancing, increases system capacity facilitating spatial resources reuse. In a multi cluster structure, two non-overlapping clusters can have similar frequency if they are not adjacent. It also elects a mobile host with special features called cluster head for enhanced transmission activities coordination which in turn alleviates collision of mobile nodes, saving both energy and resources. Second, it limits creation and spreading routing information through formation of a inter-cluster routing backbone consisting of cluster heads and cluster gateways. Lastly, it provides a stable and smaller vision of ad hoc network when a mobile node changes its attaching cluster so that the whole
101 network need not be aware of local changes in a node set. Only mobile nodes in a corresponding cluster reflect such changes. Hence each node stores and processes a fraction of total network routing information saving resources. Clustering aims to be connected and nodes play various roles in clustering techniques. The three node types are defined as follows: 1. Ordinary nodes 2. Cluster head 3. Cluster gateways 5.2.1 Cost Involved with Clustering Construction and maintenance of a cluster structure requires additional cost compared to flat structure MANETs. Cost of clustering analysis is carried out either quantitatively or qualitatively to outline both clustering techniques benefits and drawbacks. Clustering associated cost is explained below: 1. Due to Frequent network topology changes cluster related information varies drastically in a dynamically changing cluster structure. Transfer of message packets subsequently eats up massive bandwidth, depleting mobile nodes energy and further disabling upper layer applications that are unable to be implemented with meagre resources. 2. Re-clustering occurs in some clustering schemes due to abrupt local instance like mobile nodes moving to other clusters or due to the demise of a mobile node or shutting down of cluster heads, resulting in other cluster heads reelection. This is re clustering ripple effect which stimulates a re-clustering effect over the full network.
102 3. Clustering stages are divided into two: cluster formation and maintenance. The first stage assumes that mobile nodes are static. Every mobile node obtains information from neighbouring nodes in a specific period which might prove impractical in a real time scenario. 5.3 CLUSTER MANAGEMENT Clustering architecture provide network scalability, fault tolerance resulting in increased use of network resources. It could be used for resource management, routing and location management to lower communication and computational overheads. This section discusses cluster formation and maintenance. 5.3.1 Clustering Algorithm Design Goal It is intended to integrate clustering with routing functions. The design aims of the clustering scheme include: An algorithm using a routing protocol s control messages to form clusters with limited overhead. An algorithm operating in localized and distributed manners and intertwining with nodes using only AODV. The algorithm incurring limited cluster formation/ maintenance overhead and supporting formation of ondemand clusters. The algorithm minimizing network-wide flooding and being scalable.
103 The proposed scheme constructs/updates clustering architecture when clusters alone service is required. The on-demand nature of AODV s is utilized for the scheme. Nodes participating in clustering are known from CHs maintained topological information and individual nodes. 5.3.2 Cluster Formation The aim of clustering is to ensure efficient use of network resources, enhance availability, reduce overheads and give scalable architecture (Jiang et al 1998; Garcai et al 2003). The clustering algorithm choice affects clusters stability. The proposed work divides a network into several two-hop clusters where in each cluster a node can play one of five roles: cluster head, ordinary node, secondary cluster head, undecided node or gateway. A gateway is a node that communicates directly with more than two clusters. A Cluster Head (CH) is elected in every cluster and it is responsible for maintaining inter and intra-cluster communication. Every CH maintains two tables in addition to a routing table, an intra-cluster node table and a k- hop cluster table. The intra-cluster node table has the IDs of cluster nodes. The k-hop table has the IDs of CHs of other clusters in a 2-hop neighborhood. The CHs coordinate every cluster and store shared information. All nodes regularly broadcast a hello message to ensure information about neighbors. To reduce the periodic broadcasting overhead, new/undecided nodes learn of their nearest CH on demand by forwarding a cluster head request packet. The nodes act as either ordinary nodes or a gateway based on present location. A Secondary Cluster Head (SCH) is also chosen to avoid the CH from becoming into a bottleneck (Lu and Denko 2004). The SCH stores backup routing and cluster information, with the role being rotated among
104 ordinary nodes. This election needs no extra overheads as any node wishing to serve as a SCH informs the CH and the latter informs cluster members. 5.3.3 Cluster Head Election Many distributed algorithms were suggested for CH election in MANETs. Chiang et al (1997) revealed that the Lowest ID (LID) algorithm performed better than cluster head election algorithms based on Highest Connectivity (HC). The proposals in Chatterjee et al (2000), Garcia et al (2003) use varied criteria for CH election. As cluster heads are responsible for maintenance and intra and inter-cluster communication, they were expected to work for long durations when elected. Node mobility and link failure are the chief reasons for cluster head re-election and changes in cluster membership. Node Gateway Cluster Figure 5.1 Cluster head election Denko (2003), proposed a mobility-based clustering algorithm where a node is elected as CH only when the mobility index is below a specific threshold. This index is computed based on cluster membership and CH changes. When there is a tie, the lowest ID node is selected. In cluster election algorithm, lowest ID clustering is first used to form clusters. Hence, a node is elected CH when it has the lowest ID. This forms the initial node configuration. Later, a node with a mobility index lower than its neighbors is used as criteria. In Figure 5.1, every node broadcasts mobility information to
105 neighbors during a CH election. Once information is collected from neighbors every node checks to see if it is the node with the lowest mobility index. Once this is confirmed it becomes a CH itself and informs all neighbors. In this study, the CH is selected based on the lowest ID and mobility index. 5.3.4 Cluster Maintenance cluster maintenance. Cluster maintenance consists of two parts: intra-cluster and inter 5.3.4.1 Intra-cluster maintenance To keep the neighbor table and CH information updated, nodes exchange hello messages at periodic intervals. A hello message has information about a node s ID and roles. If no hello message is received from a neighbor during the ALLOW_HELLO_LOST interval, the neighbor is thought lost and removed from the table. An ordinary node checks the neighbor table to check whether the CH is still alive. When no CH is found to exist, a new CH is elected in the neighborhood. Local maintenance is carried out, when a CH fails. 5.3.4.2 Inter-cluster maintenance Every cluster head has a k-hop cluster table, containing all network k-hop CHs information. Each CH then informs neighboring CHs that it is active by forwarding a HeadAlive message. For example, CH1 receives a HeadAlive message from CH2. If CH1 discovers that CH2 exists in the CH table, CH2 s expiration time is updated. Otherwise, a new CH entry for CH2 could be inserted and its expiration time would be set by improving CH update time to the present. When no HeadAlive message is received from cluster heads during a HEAD_UPDATE_INTERVAL interval, such a cluster
106 is assumed to be unavailable. When no HeadAlive message is received during ALLOW_HEADALIVE_LOST interval, then that CH is removed from the CH table. 5.4 IMPLEMENTATION OF THE AODV CLUSTERING AND ROUTING SCHEMES A k-hop CH table maintains k-hop neighbor cluster information. In this study k=2, where only two hop clusters are considered. The K-hop CH table maintains fields such as CH ID, CH status, cluster size, CH expiration time and number of times the hello message has been lost. The CH s expiration time is the current time plus the HeadAliveUpdate interval. A CH s status could be either alive or not alive. A CH s status will be marked as not alive when its HeadAlive message is not received by other CHs within its expiration time. A CH entry will be removed from a k-hop CH table if the number of times that the HeadAlive message has not been received exceeds three. In the following section, the various data structure added to the AODV to implement the proposed clustering architecture is presented. 5.4.1 Hello Message and Neighborhood Maintenance Prior to a hello message being forwarded the sender node adds status information to it. The hello message sender can be a CH, a gateway, ordinary node or undecided node. The hello message s extension includes the following: source address, lifetime and current status. A neighbor table stores the neighbor s ID, expiration time, status and the many times a hello message was lost. A node on receipt of a hello message from neighbors, checks whether the neighbor is alive in the neighbor table. If existence is confirmed, the neighbor s expiration time is updated or else a new entry is added. When a node has not received a hello message from
107 another in three subsequent hello intervals, it is thought to be unconnected and is removed from the neighbor table. 5.4.2 Cluster Management Module The following three modules are used to implement an AODV based clustering algorithm. 5.4.2.1 Cluster initialization module A cluster formation module initializes clusters after initializing an AODV. The module is invoked through the CLUSTER_FORM_PERIOD, a predefined threshold. Before initialization, all nodes are set at status of undecided and broadcast hello message to neighbors. When a node receives all the hello messages from neighbors, it invokes a Cluster Head Election module to elect a CH. This stage uses a LID clustering algorithm. The new CH notifies neighbors and other CHs. The nodes on receipt of a CH existence notification, changes its status to an ordinary node and forwards hello messages to neighbors. When a node locates two different CHs in the neighbor table, that node changes into a gateway. After the execution of a cluster information module, all nodes belong to one cluster at least. 5.4.2.2 Cluster head election module A node invokes a Cluster Head Election module to elect cluster heads when there is no CH or when multiple CHs are in proximity to each other. The procedure involves the following steps: A node checks whether it has the lowest mobility index among non-gateway neighbors. When it has the lowest mobility index, it declares itself as CH and notifies other nodes. Otherwise, it changes its status to ordinary node.
108 Figure 5.2(a) reveals the topology of a hypothetical clusterednetwork at time t. In Figure 5.2(a), nodes 1, 3 and 6 are CHs. Nodes 8 and 9 are gateways while nodes 2, 4, 5 and 7 are ordinary nodes. Assuming that at time t2 the network s topology changes to Figure 5.2(b), where node 7 has moved from its original cluster. When node 7 checks the neighbor table, it cannot locate a cluster head. Thus node 7 uses the Cluster Head Election module to elect a new CH and the result is shown in Figure 5.2(c), where node 7 becomes a new CH and node 4 the new gateway. 2 1 8 (a) 6 5 9 7 3 2 4 1 Node Gateway Cluster Head 8 6 5 9 3 (c) 4 7 6 3 7 2 1 8 5 9 4 (b) Figure 5.2 Cluster re-election when no cluster exists in the neighbor table
109 Figure 5.3 reveals a situation where many CHs exist in one cluster as shown in (a). When the network s topology changes from Figure 5.3(a) to Figure 5.3 (b) at time t 2, nodes 6 and 7 exchange positions. Node 6 and node 3 find two CHs among their neighbors, as shown in Figure 5.3 (b). Then both node 3 and node 6 invoke the Cluster Head Election Module to select a new cluster head. After cluster election, node 6 throws away its CH status and changes itself into an ordinary node. Node 3 remains a CH. Again, the cluster with nodes 5, 7, 8 and 9 elect node 5 as the new CH. Network topology after the CH reelection is seen in Figure 5.3(c). 2 8 6 5 9 7 3 4 2 1 8 7 5 9 (c) 6 3 4 1 Node (a) Gateway Cluster Head 7 6 2 1 8 5 9 3 4 (b) Figure 5.3 Cluster re-election when more than one cluster head exists Figure 5.3 reveals a situation where many CHs exist in one cluster as shown in (a). When the network s topology changes from Figure 5.3(a) to
110 Figure 5.3 (b) at time t 2, nodes 6 and 7 exchange positions. Node 6 and node 3 find two CHs among their neighbors, as shown in Figure 5.3 (b). Then both node 3 and node 6 invoke the Cluster Head Election Module to select a new cluster head. After cluster election, node 6 throws away its CH status and changes itself into an ordinary node. Node 3 remains a CH. Again, the cluster with nodes 5, 7, 8 and 9 elect node 5 as the new CH. Network topology after the CH re-election is seen in Figure 5.3(c). 5.4.2.3 Neighbor table purge module As all nodes are mobile and network topology s changes frequently, network may be unstable. Clusters size and nodes status varies at any time due to mobility. To ensure that the cluster information is fresh and updated, the neighbor table is purged. 5.4.3 Cluster AODV Based Routing The AODV protocol sends many packets in comparison to other reactive protocols like DSR. So, when network s size increases, node degree also increases proportionately, leading to congestion in the network. Clustering reduces this through localized route discovery and maintenance. The suggested Cluster AODV scheme uses clustering architecture and AODV functionalities for routing. This section discusses mechanisms used by Cluster-AODV to lower routing overhead and allows scalability while ensuring good packet delivery ratio. 5.4.3.1 Intra-cluster routing Intra-cluster routing is routing within a cluster. Each node has routing information on its cluster. When a node lacks a route to a destination that is in the cluster it sends a Local Route Request (LRREQ). When route failures ensure lack of reply to a RREP, local route maintenance is undertaken within a cluster.
111 5.4.3.2 Inter-cluster routing Inter-cluster routing is routing among clusters. The CH has a 2-hop cluster topology also maintained in a SCH to minimize one point of failure. When routes cannot be found in a cluster once a LRREQ message has been issued, a CH uses a RREQ message to locate a destination via a gateway to 2- hop neighbor clusters. To lower RREQ flooding packet overhead only gateways and CHs forward the RREQ. Ordinary nodes are not involved in RREQ packets in inter-cluster communication. 5.4.3.3 Route maintenance Similar to route maintenance, cluster maintenance starts when a route fails within a cluster and is re-constructed locally using LRREQ and RREQ with 2-hop topology information. When LRREQ fails, an AODV procedure is used and the usual RERR is forwarded to source nodes for route reconstruction. The source node follows the same process to repair failed routes, first locally and then others. The processes involving a new node which joins and an existing node leaving are carried out based on hello messages from AODV. When CHs exchange neighborhood information with cluster members, a new node close by can register with a CH by using a RREQ message. A node acts as gateway when it registers with two CHs. When a node goes away from the present CH, it switches its role to that of an ordinary node, a gateway or will be undecided. It will be erased from the old CH and old members routing entries are updated accordingly.
112 5.5 SELFISH NODES In ad hoc networks, nodes are classified as failed, co operative, selfish and malicious nodes. A node can refrain from being active in a network when moving out of transmission range or when it is switched off by malfunctions. Failed nodes are unused during route discovery. Co-operative nodes are active in the network and participate in route discovery and packet forwarding. Selfish nodes actively involved in route discovery and actively send/receive own packets. But they are liable to drop other nodes data packets either fully or selectively to lower CPU processing to save battery power. Such nodes affect network performance greatly. But malicious nodes are also active in route discovery and could involve data packets transfer similar to selfish or co-operative nodes. However they also launch attacks on networks either to disrupt services or steal network data.. As mobile nodes are autonomous they join or leave the network freely and so nodes are unable to work out an effective system to prevent prospective malicious behavior from nodes it communicate with. This is because nodes behavioral diversity. Further, because of ad hoc network mobility a compromised node can and will frequently change attack target and indulge in malicious behavior with various network node, thereby making it difficult to track malicious behavior of a compromised node in a large ad hoc networks. Hence, threats from compromised nodes with networks are more dangerous than attacks from outsiders. Also such attacks are harder to detect as they are from compromised nodes, which behave correctly prior to being compromised. An example of such threats is from potential Byzantine failures seen in the routing protocol for MANET (Mishra et al 2004). Byzantine failure occurs when nodes are compromised so that incorrect/malicious behavior cannot be easily detected due to cooperation among compromised nodes when they indulge in malicious behavior. Such nodes may behave well,
113 but they may use flaws and inconsistencies in routing protocols to destroy routing network fabric without detection, generate and advertise new routing information containing nonexistent link, provide fake link state information and even flood other nodes with routing traffic. Such malicious behaviors are liable to be ignored by other nodes as compromised nodes cannot be recognized easily. One of the misbehavior which the malicious node exhibit is selfishness, wanting to preserve own resources while using the services of the other nodes in network and consuming their resources. Performance of ad hoc network protocol depends upon the cooperation of all the nodes in the network. Nodes transfer traffic by route detection and packet forwarding. As transferring traffic consumes energy, CPU time, memory and bandwidth, selfish nodes deny packet forwarding to other nodes but use the network resources to deliver its own data. Detection and exclusion mechanism is used to prevent selfishness in ad hoc networks. The selfish node saves its own resources as follow (Bruce 2000): 1. Not participating in routing: Selfish node do not relay the routing data such as route requests and route replies. Set hop limit or TTL value at the lowest in route request / reply. Selfish nodes modify routing data to modify route request, insert additional hops, declare own ID as external in source route. 2. Stop participation in current route: Do not participate in route request, create arbitrary RERR messages, not sending ACK messages. 3. Stop relaying data packets: Drop data packets.
114 5.6 EXPERIMENTAL SETUP The OPNET simulation tool is used to evaluate performance. Simulation parameters are the same as used in the previous chapter. Three scenarios are studied in this investigation, Nodes moving in constant speed To replicate real time scenario, experiments with 8 nodes moving at an average speed of 100 Kmph in a predefined circular route 4 nodes moving at an average speed of 65 Kmph in a predefined straight route. Balance nodes moving randomly about the network. To replicate real time scenario, selfish nodes are included in the network. Simulations are run using Fuzzy AODV, Proposed Fuzzy Clustered AODV and Proposed Fuzzy Clustered AODV with selfish nodes. The proposed AODV Clustering approach is evaluated for packet delivery ratio and end to end delay. 5.7 RESULTS AND DISCUSSION The experiments were conducted based on the above simulation parameters. Each data point in the graph represents an average of ten simulation runs. Figure 5.4 shows the packet delivery ratio for Nodes moving in constant speed. Figure 5.5 show the end-to-end delay in MANET. Table 5.1 tabulates the same.
115 Table 5.1 Packet delivery ratio and end-to-end delay for nodes moving in constant speed. Packet Delivery Ratio End to End Delay Node Mobility speed Fuzzy AODV Proposed Fuzzy Clustered AODV Fuzzy AODV Proposed Fuzzy Clustered AODV 10.8 Kmph 0.9732 0.9817 0.000985 0.00102 18 Kmph 0.89264 0.92264 0.001225 0.001017 36 Kmph 0.8712 0.8912 0.01138 0.009857 54 Kmph 0.8688 0.8417 0.01434 0.01658 72 Kmph 0.7215 0.6817 0.0315 0.03652 90 Kmph 0.6823 0.6412 0.0336 0.03876 Figure 5.4 Packet delivery ratio for nodes moving in constant speed
116 Figure 5.5 End-to-end delay nodes moving in constant speed From Figures 5.4 and 5.5, it is seen that when the nodes move in constant speed, the proposed Fuzzy clustered AODV performance is similar to Fuzzy AODV. In high speed, Fuzzy AODV performs better than the proposed clustered AODV. The increase in end to end delay is however negligible. Table 5.2 and Figure 5.6 shows the packet delivery ratio for Nodes moving in varying speed for Fuzzy AODV, Proposed Fuzzy Clustered AODV and Proposed Fuzzy Clustered AODV with selfish nodes. Table 5.3 and Figure 5.7 show the end-to-end delay in MANET.
117 Table 5.2 Packet delivery ratio for nodes moving in varying speed Time in sec Fuzzy AODV Proposed Fuzzy Clustered AODV Proposed Fuzzy Clustered AODV with selfish nodes 10 0.8488 0.869171 0.809755 20 0.849 0.863433 0.708236 30 0.8538 0.872157 0.695505 40 0.8714 0.892314 0.681783 50 0.8718 0.886621 0.753845 60 0.8501 0.868377 0.692491 70 0.8676 0.888422 0.67881 80 0.8694 0.88418 0.75177 90 0.8772 0.89606 0.758515 100 0.8786 0.899686 0.715708 110 0.8314 0.87432 0.7245 120 0.8577 0.876141 0.741653 130 0.8805 0.901632 0.761368 140 0.8857 0.900757 0.721491 150 0.8872 0.906275 0.694145 160 0.8974 0.918938 0.775982 170 0.8501 0.8978 0.735081 180 0.8731 0.891872 0.711227 190 0.8776 0.898662 0.686634 200 0.8642 0.878891 0.747274
118 Figure 5.6 Packet delivery ratio for nodes moving in varying speed From figure 5.7 it can be seen that end to end delay is high for malicious nodes as newer routes need to be discovered due to the packet drop caused by selfish nodes. Figure 5.7 End-to-end delay for nodes moving in varying speed
119 Table 5.3 End-to-end delay for nodes moving in varying speed Time in sec Fuzzy AODV Proposed Fuzzy Clustered AODV Proposed Fuzzy Clustered AODV with selfish nodes 10 0.0161472 0.015098 0.016704 20 0.0163216 0.015375 0.018182 30 0.0163312 0.017474 0.018716 40 0.0148704 0.013978 0.017458 50 0.0151184 0.014136 0.01614 60 0.0146256 0.013777 0.017755 70 0.0146848 0.015713 0.016829 80 0.0148096 0.013921 0.018867 90 0.0148368 0.013872 0.01678 100 0.0148704 0.014008 0.016566 110 0.0151184 0.016177 0.017326 120 0.0151888 0.014277 0.020869 130 0.0152432 0.014176 0.015617 140 0.0153632 0.014357 0.017115 150 0.01572 0.014808 0.018785 160 0.013224 0.01415 0.015525 170 0.0137216 0.012898 0.014881 180 0.0138304 0.012862 0.015407 190 0.0140928 0.01317 0.01615 200 0.0141872 0.013364 0.016656
120 From Figures 5.6 and 5.7, it is seen that the proposed Fuzzy Clustered AODV performs better than Fuzzy AODV in terms of both packet delivery ratio and end-to-end delay. It is also seen that the performance of the network deteriorates considerably in the presence of selfish nodes. 5.8 CONCLUSIONS This work presents an AODV-based clustering and routing scheme for MANETs. The scheme is used for integrated routing and message delivery in clustered networks. The proposed clustering architecture was evaluated using simulation experiments. The simulation results show that the algorithm builds stable clusters achieving better packet delivery ratio and end-to-end delay. Further studies are required to address the deterioration in performance due to the presence of selfish nodes.