Analysis of Enhanced Associativity Based Routing Protocol

: This study introduces an analysis to the performance of the Enhanced Associativity Based Routing protocol (EABR ) based on two factors; Operation complexity (OC) and Communication Complexity (CC). OC can be defined as the number of steps required in performing a protocol operation, while CC can be defined as the number of messages exchanged in performing a protocol operation [1] . The values represent the worst-case analysis. The EABR has been analyzed based on CC and OC and the results have been compared with another routing technique called ABR. The results have shown that EABR can perform better than ABR in many circumstances during the route reconstruction.


INTRODUCTION
An ad-hoc mobile network is a collection of mobile nodes that are dynamically and randomly located in such a manner that the interconnections between nodes are capable of changing on a continual basis. In order to facilitate communication within the network, a routing protocol is used to discover routes between nodes. The primary goal of such an ad-hoc network routing protocol is correct and efficient route establishment between a pair of nodes so that messages may be delivered in a timely manner. Route construction and maintenance should be done with a minimum of overhead and bandwidth consumption [2][3][4][5][6][7] .

ABR & EABR Protocols Description Associativity based routing (ABR) protocol:
Associativity Based Routing (ABR) [1,8] is a bandwidth efficiently distributed routing protocol used in Ad Hoc networks. ABR is a source-initiated On-Demand routing protocol. ABR uses both point-to-point and broadcast routing. In ABR, the destination node takes the decision of choosing a route basing on the property of "Associativity", the selected route is used and all other routes are discarded. This results in long-lived routes because the decision is made on the property of "Associativity". ABR consists of two phases: 1. Route Discovery phase 2. Route Re-Construction (RRC) phase.
The three phases of ABR are: route discovery, route re-construction (RRC) and route deletion.
The route discovery phase in ABR: The route discovery phase in ABR is accomplished by a Broadcast Query (BQ) and a wait-reply (BQ-REPLY) cycle. A node desiring a route broadcasts a BQ message in search of mobiles that have a route to the destination. All nodes receiving the query (that are not the destination) append their addresses and their associativity ticks with their neighbors along with QoS information to the query packet. A successor node erases its upstream node neighbors' associativity tick entries and retains only the entry concerned with itself and its upstream node. In this way, each consequential packet arriving at the destination will contain the associativity ticks of the nodes along the route to the destination. The destination is then able to select the best route by examining the associativity ticks along each of the paths. In the case where multiple paths have the same overall degree of association stability, the route with the minimum number of hops is selected. The destination then sends a REPLY packet back to the source along this path. Nodes propagating the REPLY mark their routes as valid. All other routes remain inactive and the possibility of duplicate packets arriving at the destination is avoided.
The route re-construction phase in ABR: Movement by the source results in a new BQ-REPLY process. The RN [1] message is a Route Notification that is used to erase the route entries associated with downstream nodes. When the destination node moves, the immediate upstream node erases its route and determines if the node is still reachable by a Localized Query (LQ[H]) process, where H refers to the hop count from the upstream node to the destination. If the destination receives the LQ packet, it replies with the best partial route; otherwise, the initiating node times out and the process backtracks to the next upstream node. Here an RN[0] message is sent to the next upstream node to erase the invalid routes and inform this node it should invoke the LQ[H] process. If this process results in backtracking more than halfway to the source, the LQ process is discontinued and a new BQ process is initiated at the source.
Route deletion phase in ABR: When a discovered route is no longer desired, the source node initiates a Route Delete (RD) broadcast so that all nodes along the route update their routing tables. The RD message is propagated by a full broadcast, as opposed to a directed broadcast, because the source node may not be aware of any route node changes that have occurred during route re-constructions.
Enhanced associativity based routing (EABR) protocol: Enhanced Associative Based Routing (EABR) [9] is also a bandwidth efficient distributed routing protocol used in Ad Hoc networks and based on ABR. The major enhancements over ABR are done in the route re-construction phase.

Route re-construction when the destination moves:
As all Intermediate Nodes (INs) are aware of the route in question from their own routing table, the Destination nodes (DEST), after settling, will broadcast a LQ packet [Here I am] searching for one of its immediate upstream nodes. If any INs listens to this message then each listening IN will reply to the DEST by selecting the best partial route using association stability criteria (AS). Then, using the same criteria, the DEST selects the best route. The DEST then sends a REPLY packet back to the source along this path. Nodes propagating the REPLY mark their routes as valid. All other routes remain inactive and the possibility of duplicate packets arriving at the destination is avoided. This will generate either the same previous path or a shortcut path, which is better than the maintained one. Optimization is done while Re-construction. The route reconstruction phase is accomplished by an LQ and await-reply (BQ-REPLY) cycle. The destination node will broadcast a LQ message in search of intermediate mobiles that are participating in the current route to the source. The following scenarios are anticipated: * If the Source node (SRC) received the LQ, then the DEST is within the Source' radio coverage range. Packet duplicates will result at the DEST since the DEST now receives packets from the SRC directly and from the original SRC-DEST rout. Hence, to avoid cell duplicates and non-optimal routes, the SRC, on discovering that the DEST is within range and is in stable state, will send a RN [1] packet downstream to erase existing route and will re-establish a new single hop route with the DEST. * Some INs will receive the LQ. Consequently, the IN will reply to the DEST by selecting the best partial route AS criteria. Each IN will update its routing table to reflect a shortcut to the Destination. * If no intermediate node replied to the Destination then a route discovery will be initiated from the DEST.
Route re-construction when the source moves: The SRC broadcasts an LQ packet and waits for one or more replies. Once the replies are received from INs, the SRC node selects the best route using AS criteria. When SRC broadcasts the LQ message, the following scenarios are anticipated: * If the DEST received the LQ then the destination is within the SRC radio coverage range, packet duplicates will result at the DEST since the DEST now receives packets from the SRC directly and also from the original SRC-DEST rout. Hence, to avoid cell duplicates and non-optimal routes, the SRC, on discovering that the DEST is within range and is in stable state, will send a RN [1] packet downstream to erase existing route and will reestablish a new single hop route with the DEST * Some Intermediate Nodes will receive the LQ, consequently the IN will reply to the SRC by selecting the best partial route based on AS criteria. Each IN will update its routing table to reflect shortcut to the Source. * If no intermediate node replied to the Source Node then a route discovery will be initiated from the Source.

Route re-construction when the intermediate node moves:
Once the IN settles, it broadcasts an LQ packet [Here I am] searching for one of its immediate downstream and upstream nodes. The LQ packet will include the SRC ID & the DEST ID and its Serial No in the route under reconstruction. The listening INs will check first if they are participating in the route in question or not. If not, then the packet will be discarded. If yes, then the IN will send a reply packet, which contains its ID and its SN. After receiving all the REPLYs, the broadcasting IN will sort in ascending order the received Serial NOs and store them in a list; based on the biggest and smallest SNs of the list.

Communication and operation complexity analysis of ABR & EABR:
The analysis of the EABR depends on two factors; Operation complexity (OC), which can be defined as the number of steps required in performing a protocol operation and Communication complexity (CC), which can be defined as the number of messages exchanged in performing a protocol operation [1] . The values represent the worst-case analysis.          Beside that, the following variables are defined in Table 1 to be used when referring to Operation and communication complexities [1] .
Analysis of route discovery phase: The route discovery phase in the ABR as well as in the EABR is accomplished by a broadcast query and await-reply (BQ-REPLY) cycle. A node desiring a route broadcasts a BQ message to all nodes in the network (N) in search of mobiles that have a route to the destination. The destination then sends a REPLY packet back to the source along this established path in which (Y) are participating [1,8] .
To summarize, the broadcasted query message will be broadcasted to all nodes in the network (N) and the reply message will be broadcasted through all the nodes forming the route from the destination node to the source node (Y). Thus, the initial route discovery phase will require exchanging of N+Y messages [9] .
On the other hand, broadcasted query message will traverse the whole network diameter in searching for the destination, so it needs to perform steps equal to the network diameter D, while the reply message will traverse the diameter of all the nodes forming the route from the destination node to the source node (Z). Thus, the initial route discovery phase will require performing of D+Z steps. This is summarized in Table 2.
Analysis of route re-construction phase: The route reconstruction RRC phase will be invoked in three situations, specifically when the SRC, DEST or the IN moves. There are two positions for the SRC, DEST or the INs to settle after movements: * within the radius of one or more INs who are participating in the established route, or, * faraway from the INs which are participating in the established route.
In the ABR, the movement by the source results in a new BQ-REPLY process. The RN [1] message is a Route Notification that is used to erase the route entries associated with downstream nodes. When the destination node moves, the immediate upstream node erases its route and determines if the node is still reachable by a localized query (LQ[H]) process, where H refers to the hop count from the upstream node to the destination. If the destination receives the LQ packet, it replies with the best partial route; otherwise, the initiating node times out and the process backtracks to the next upstream node. Here an RN [0] message is sent to the next upstream node to erase the invalid routes and inform this node it should invoke the LQ [H] process. If this process results in backtracking more than halfway to the source, the LQ process is discontinued and a new BQ process is initiated at the source [9] .
Analysis of route re-construction phase -source movement Route re-construction when the source moves in the ABR: The ABR movement of the source node will result in route initialization thus, the time required to reconstruct the route is equal to the time required to establish a new route. This also applies to the communication complexity as well, i.e. the route reconstruction when the source moves will require exchanging of N+Y messages and will require performing of D+Z steps, (Toh, 1996). This is detailed in Table 3.
Route re-construction when the source moves in the EABR: As all INs are aware of the route in question from their own routing table, the SRC, after settling, will broadcast a LQ packet [Here I am] searching for one of its immediate downstream nodes. If any IN listens to this message, then each listening intermediate node will reply to the Source Node by selecting the best partial route based on association stability criteria. Then the SRC will select the best route based on the abovedescribed criteria and this will generate either the same previous path or a shortcut path, which is better than the maintained one. Optimization while re-construction will be achieved. The following three scenarios are anticipated: If the DEST receives the LQ then the destination will be within the SRC radio coverage range and EABR will re-establish a new single hop route with the DEST. This requires exchanging of two messages between the DEST and SRC in addition to deletion of the previous path. Also this will require execution of two steps to get the one hop route and Z steps to invalidate the previous path [9] . This is summarized in the Table 4.
Some Intermediate Nodes will receive the LQ, consequently the IN will reply to the SRC by selecting the best partial route based on association stability (above-described criteria). Each IN will update its routing table to reflect a shortcut to the Source. This requires exchanging of two messages between the DEST and IN in addition to deletion of the part of previous path. Moreover, this will require execution of two steps to get the one hop route and (Z -P) steps to invalidate the previous path. In addition, this will require exchanging of two messages between the DEST and IN besides exchanging of Y-W messages to invalidate the previous route. This is summarized in the Table 5 [9] .
If no intermediate node replies to SRC, which is an odd case given the conference-size assumption, then a route discovery is initiated from the Source. In EABR this will require overhead of one communication message and one step, which may negligible when the number of nodes is very large [9] . This is summarized in the Table 6.
Analysis of route re-construction phase -destination movement Route re-construction when the destination moves in the ABR: When the destination node moves, the immediate upstream node erases its route and determines if the node is still reachable by a localized query (LQ[H]) process, where H refers to the hop count from the upstream node to the destination. If the destination receives the LQ packet, it replies with the best partial route; otherwise, the initiating node times out and the process backtracks to the next upstream node. Here, an RN[0] message is sent to the next upstream node to erase the invalid routes and inform this node it should invoke the LQ[H] process. If this process results in backtracking more than halfway to the source, the LQ process is discontinued and a new BQ process is initiated at the source. Accomplishing this restructuring will require performing steps equal to Diameter of the affected network segment (L) plus the diameter of the directed path where the REPLYs    Route table  Route table  Route table  Route table  Route table  Utilizes  packets transits (Z). Also this will require exchanging equal to the Number of nodes affected by a topological change (X) plus the number of nodes forming the route from SRC to DEST (Y). This is summarized in the Table 7 [1,9] .
Route re-construction when the destination moves in the EABR: As all INs are aware of the route in question from their own routing table, the DEST, after settling, will broadcast a LQ packet [Here I am] searching for one of its immediate upstream nodes. If any of the INs listens to this message, then each listening IN will reply to the DEST by selecting the best partial route based on association stability criteria. Then, the DEST will select the best route based on the criteria described in EABR. The DEST then sends a REPLY packet back to the source along this path. Nodes propagating the REPLY mark their routes as valid. All other routes remain inactive and the possibility of duplicate packets arriving at the destination is avoided. This will generate either the same previous path or a shortcut path, which is better than the maintained one. Optimization while reconstruction is achieved. The following three scenarios are anticipated: 1. If the SRC received the LQ, then the DEST is within the Source' radio coverage range and EABR will reestablish a new single hop route with the DEST. This requires exchanging of two messages between the DEST and SRC in addition to deletion of the previous path. Also this will require execution of two steps to get the one hop route and Z steps to invalidate the previous path. This is summarized in the Table 8 [9] . Some INs will receive the LQ, consequently the IN will reply to the DEST by selecting the best partial route based on association stability criteria). Each IN will update its routing table to reflect a shortcut to the Destination. This requires exchanging of two messages between the DEST and the IN, in addition to deleting part of the previous path. Also this will require execution of two steps to get the one hop route and (Z -P) steps to invalidate the previous path. As well, this will require exchanging of two messages between the DEST and IN, in addition to exchanging of Y-W messages to invalidate the previous route. This is summarized in the Table 9 [9] .
If no intermediate node replies to the Destination, which is an odd case given the conference-size assumption, then a route discovery is initiated from the Source then a route discovery is initiated from the DEST. In the EABR this will require overhead of one communication message and one step over the initial route discovery, while in the ABR this will require the overhead of backtracking to half of the hop count of the path in addition to the route initialization cost. This is summarized in the Table 10 [9] .
Analysis of route re-construction phase-intermediate node movement: The IN, after settling, will broadcast an LQ packet [Here I am] searching for one of its immediate downstream and upstream nodes. The LQ packet will include the SRC ID & the DEST ID and its Serial No in the route under reconstruction. The listening INs will check first if they are participating in the route in question or not. If not then the packet will be discarded. If yes then the IN will send a reply packet, which contains its ID and its SN. After receiving all the REPLYs, the broadcasting IN will sort in ascending order the received Serial NOs and store them in a list. Based on the biggest and smallest SNs of the list, the following cases may appear: Case one: The broadcasting IN' SN is greater than the smallest and less than the biggest SN of the list. In this case, the IN has successfully found a shortcut path. The RT entries for the three INs will be updated. In addition, the IN with maximum and minimum SN will invalidate the unused parts of the route.
Case two: The broadcasting IN' SN is greater than any SN within the list. In this case the route from the IN' downstream node to the DEST is still valid. Furthermore, the moving IN is closer to the SRC. The IN's immediate downstream node (i.e. the pivoting node) removes its incoming node entry and its immediate upstream neighbor propagates an RN [1] packet towards the SRC, thereby deleting all the subsequent upstream nodes' invalid routing entries. A new partial route to the SRC needs to be found.

Case three:
The broadcasting IN' SN is smaller than any SN within the list. In this case the route from the IN' upstream node to the SRC is still valid. Also the moving IN is closer to the DEST. The IN's immediate upstream node (the pivoting node) removes its outgoing node entry and its immediate downstream neighbor propagates an RN [1] packet towards the DEST, thereby deleting all the subsequent downstream nodes' invalid routing entries. A new partial route to the DEST needs to be found. This is detailed in Table 11 [9] .
Comparisons with other protocols: EABR is compared with some Source-Initiated On-Demand Routing Protocols namely ABR, AODV, DSR, TORA and SSR as shown in Table 12; the values represent the worst-case behavior.

CONCLUSION
In this study, a communication and operation complexity analysis for two protocols namely the ABR and the EABR has been presented. The operation complexity and communication complexity as defined in [1] were compared for both the ABR and the EABR, where the values represent the worst-case analysis.
The EABR proofed to be better in route reconstruction, which is attributed to the novel way in which the EABR reconstruct the route after movement of any node and the active role of the moved node in route reconstruction phase. Future work includes simulation of the EABR protocol so that performance comparison with ABR and other routing protocols can be conducted.