Congestion-aware and Predictive Geo-Casting Routing Mechanisms for Mobile ad hoc Network


 Mobile Ad-hoc Networks (MANETs) has gained remarkable appreciation during the last decade because of its high flexibility. Due to high mobility and unpredictable topology changes, most of the existing routing protocols are unable to adapt to these changes and efficient route selection becomes a challenging task. The existing routing protocols incur high control overhead during route discovery process, tendency to select an unreliable route and high data packet loss during route maintenance. Therefore, this paper presents A Congestion-aware and Predictive Geo-casting Routing Mechanism (CPGR) for MANET that optimally utilize the constrained network resources and reliably detect high-quality links. CPGR exploits a multi-facet routing strategy that takes into consideration the congestion level, relatively higher signal strength, and hop-counts of neigh- boring nodes while making routing decisions. This strategy not only ensures data dissemination via high quality nodes but also balances out resource consumption among nodes while traversing through shorter paths. Demonstrated by simulation results in NS-2, CPGR achieves improved performance in terms of end-to-end delay, control overhead, and packet delivery ratio as compared to existing solutions.


Introduction
Despite their widespread, MANET has a number of challenges and limitations. In such circumstances, because of restricted radio scope of a mobile node, a mobile node may require the aid of other nodes to send data packets to the destination. Thus, every mobile node works as a host as well as a router utilizing a particular routing mechanism (protocol) to efficiently and reliably forward data packets for other mobile nodes within the network, which may not be inside senders radio transmission range [1]. Compared to their hardwired counterparts, wireless links will always have the considerably limited capacity. A MANET works with constrained band-width which means that only a restricted amount of data can be transmitted over a time frame. Besides, in real environments, the wireless communications throughput is generally much less than a radio maximum transmission rate, be-cause of the impacts of multiple access, fading, noise, and interference conditions [2].
This will degrade the network performance and increase overhead and packet drop. Generally, the current routing protocols in MANET can be classified as Topologybased protocols and Position-based protocols.
In Topology-based routing algorithms, flooding is a fundamental communication mechanism for routing discovery. Each node in these algorithms is allowed to rebroadcast the same packet only once (packets are identified through their sequence number) [3,4]. A straightforward flooding broadcast in wireless networks, using IEEE 802.11 protocols results in serious drawbacks: duplicate reception, contentions, and collisions [5,6]. Position-based routing protocols, on the other hand, for-ward packets greedily; this may lead to the inaccurate position information and cause routing failure. Furthermore, using proactive fixed-interval beaconing to disperse local positions information generates high overhead [7,8]. To overcome limitations of traditional routing schemes, several protocols have been proposed [9,10,11,12]. However, these solutions exploit traditional route discovery mechanisms which are not mostly suitable for MANET to counter nodes quality due to the following reasons: (i) Most of the protocols such as the ones suffer from high computational complexity and incur high control overhead during route discovery process and dissemination.
(ii) Insufficient consideration is given to the quality of wireless communication, which is the main reason for high packet drop, network node breakdowns, faulty software or hardware, and substantial network traffic that results in the least successful packet forwarding.
(iii) Most of the existing schemes have no consideration for node load while forwarding packets. (iv) In most schemes link failures do not consider due to congestion and other factors which may increase route failure notifications. These schemes involve conventional route maintenance when overlooking transmission failure that may result in high route instability and route switching.
The efficiency of the routing protocol influences the performance of the whole network. Therefore, the process of establishing a reliable and efficient route should be done with minimum overhead, delay, bandwidth, and complexity [13,14,15]. Routing discovery solutions for MANET are characterized by path detection effectiveness and their efficiency in utilizing the limited network re-sources [6]. Therefore, any proposed solution should consider the improvement of path detection effectiveness while utilizing fewer network resources during the discovery process. Recently, several route discovery models [16,17,18] and quality routing approaches [19,20,21,22,23] have been proposed in the literature. However, most of the existing schemes exhibits several vulnerabilities. First, most of routing approaches exclusively focus on selecting nearest neighbors irrespective of their quality and capacity as a result selected weak route that may break more quickly. Second, most of the schemes are vulnerable to high network overheads due to exchange of high volume of information on regular basis [24,25,26]. Third, insufficient consideration is given to the quality of wireless communication, which is the main reason for high packet drop, network node breakdowns, faulty software or hardware, and substantial network traffic that results in the least successful packet forwarding. Fourth, most of the existing schemes have no consideration for node load while forwarding packets. In this paper, A Congestion-aware and Predictive Geo-casting Routing Mechanism (CPGR) for MANET is proposed that aims to address the aforementioned limitations. The CPGR integrates both geographic and topology-based mechanisms to limit search area during route discovery process by including only promising search paths to minimize control overhead. CPGR uses a composite routing metric that incorporates direction, distance and hop counts, that is it uses geographical information to establish a cost-effective path to the destination node. Unlike most of the existing schemes, CPGR integrates signal strength and congestion awareness to optimize route selection by selecting routes which pass optimal links, with relatively higher signal strength, and minimum hop counts, resulting in fewer re-transmissions and lower probability of broken links. More importantly CPGR proves more resilient under heavy network load and demonstrates steady improvement in network performance. In addition, CPGR also sets up communication routes such that balanced data traffic is achieved in reliable delivery of data packets. Using CPGR, only a set of nodes having sufficient capacity and high signal strength value are selected in active routing path. Simulations based evaluation of CPGR in NS-2 reveals better performance in terms of end-to-end delay, control overhead, and packet delivery ratio as compared to other state-of-the-art. The rest of paper is organized as follows: Section II presents the review of existing routing solutions for ad-hoc networks. Section III describes our proposed CPGR scheme in detail. The simulation based performance evaluation of CPGR is presented in Section IV. Finally, we conclude the paper and provide future directions in Section V.
2 Review of existing work Several routing protocols have been proposed for adhoc network. In [27] an enhancement to Scalable Broadcast Algorithm (SBA) is proposed to optimize the rebroadcast process. It depends on two-hop neighborhood knowledge be-fore deciding on packet rebroadcasting. This is achieved by using periodic hello messages. In this algorithm, when a node N1 obtains a broadcast message M from several nodes say N0 , then N1 will transmit M across entire neighboring nodes that are within N1 and N0 that might obtain a broadcast message through N0 . In the case where a neighboring node fails to acquire M from N0 . M will undergo rebroadcasting upon minimal delay, called RAD (Random Assessment Delay). There are two disadvantages of the enhanced SBA algorithm [16]. First, every node in this algorithm maintains two-hop information via periodic hello messages, which will produce a significant overhead if they are not needed all the time. Secondly, inactivity during the transfer of a message may occur as a con-sequence of using RAD. It is not suited for highly dynamic networks. Building upon these weaknesses, the memory-aided broadcast algorithm (MaBA) [28] is proposed to enhance SBA broadcasting formula. However, assuming threshold value T for every node to distinguish between the static and dynamic states is impractical. A fuzzy inference engine is introduced in EABA mechanism [16] to resolve the SBA and MaBA algorithms problems. Each node in EABA independently discovers a new route by using a neighbor knowledge scheme (SBA). It also calculates local node movement surrounding it to solve issues related to quality. EABA classifies networks fuzzily into dynamic, semi-fixed and fixed categories. It switches between SBA and MaBA to control the broadcast process between the nodes. Initially, EABA conducts packet rebroadcasting following regulations in SBA using the periodic hello message to regulate neighboring nodes information concerning the two-hop rule. Random Assessment Delay (RAD) is used to rebroadcast the messages to all neighbors in the network. Nodes are determined as either dynamic, semi-fixed or fixed fuzzily. When the network is highly dynamic, the nodes use the SBA algorithm in the broadcast process; MaBA is used when the network is static or semi-static. The performance of EABA was evaluated using the N S2 simulator. The result showed that it enhanced the reachability of a proportion of delivered packets and minimized congestion, compared with the SBA algorithm. However, the EABA mechanism has many limitations. The proposal depends on the broadcast process, which generates a significant overhead. Also, using MaBA will cause latency and high end-to-end delay. Finally, EABA assumes the destination will always be reachable, which may not always be the case [29]. [18] proposed a Hybrid On-demand Greedy Routing Protocol with Back-tracking for MANET (HGRB) to increase the scalability and solve the void problem. HGRB propagates route requests during the route discovery process by using a greedy mechanism. When the node faces a void region, HGRB back-tracks and navigates nearby; the next-best forwarder node in HGRB should be closer to the destination, but if there is no such node the source will drop the packet; otherwise, the packet is backtracked to the sender node to search for an-other node. Each node in the protocol maintains three tables: the neighboring table, seen table (to select the best node) and routing table. The researchers implemented their work using GloMoSim, resulting in minimal overhead, lower hop quantity than AODV, and a higher proportion of delivered packets. However, HGRB has many limitations. Firstly, the overhead of controlling three tables increases as the neighboring node quantity increases [18]. Secondly, using a greedy mechanism to forward the packets causes inaccurate positioning and increases the number of dropped packets. Finally, the protocol does not discuss the reliability or stability of links, which are important metrics in minimizing route breakage and reducing lost packets [30]. Dynamic packet beaconing for GPSR MANET position-based routing protocol uses fuzzy logic (GPSR-FLDB), as presented in [31]. This algorithm uses fuzzy logic to optimize the time between periodic beacon intervals and enhance route stability. It correlates the data collected from neighbor node quantity, the velocity of the node, and periodic beacon interval fuzzily to obtain the optimal route between nodes. The fuzzy logic mechanism suggests increasing beacon packet quantity when there is high movement speed with a small quantity of node neighbors, decreasing beacon packets when velocity is slow with few node neighbors. The researchers carried out their work using N S2. Promising performance of GPSR-FLDB was revealed compared with GPSR, as it was able to reduce end-to-end delay, improve non-optimal hops, and minimize false node positions. However, GPSR-FLDB does not retain the direction of the node and as a result neighbor nodes may move in the opposite direction to the destination node, resulting in frequent link breakages. In addition, the protocol does not consider the link reliability which is required in highly dynamic environments [32], and is based on a greedy mechanism to select the next hop, which may increase packet loss. In [9], a routing protocol called Self-Adaptive On-Demand Geographic Routing with a Hybrid Reactive (SOGR-HR) protocol is presented. This protocol determines the next hop reactively by combining geographic based and topology-based mechanisms. SOGR-HR uses a signal-to-noise together with an interference ratio to measure the link quality. Although the simulation demonstrated that the proposed protocol SOGR-HR can reduce packet delivery latency, com-pared to GPSR, and can reduce forwarding overhead in all test scenarios, it exhibits several vulnerabilities. SOGR-HR floods the entire network with RREQ control packet and this will increase control overhead. Moreover, the frequent exchange of hello and beacon messages limits the availability of bandwidth for data packets, leading to high network loads. Triangle-based routing for MANET is presented in [33], to minimize control overhead and reduce dissemination of request routing packets during route discovery process. TBR considers all network nodes lying in a similar plane. The plane is then divided into a number of equilateral triangular regions, each region assigned a unique identifier called an Absolute Location Identifier (ALI). Two Triangular Areas (TAs) sharing an edge are formed into a rhombus. An ALI is assigned to the rhombus, and then to the TA. The researchers use the bottom-left corner to identify the rhombus. TBR uses another identifier, a Relative Location Identifier (RLI), to identify neighboring TAs which saves communication bandwidth. Every node has knowledge of the ALI and the approximate location of its neighbors by exchanging periodic heartbeat messages which contain three fields: SrcI D, ALI and P C T A. The SrcI D field includes the sender's address, the second field is the sender's ALI, while the third field refers to the set of TAs reachable by the source. The request packet in TBR carries information about the triangular regions already covered by the route request. The researchers simulated their work using GloMoSim. The simulation results showed that TBR reduced control overhead better than AODV, although with many limitations. TBR has a higher end-to-end and lower packet delivery ratio than AODV. In addition, the proposed algorithm does not consider any route metric to enhance link stability and reliability. In [21], a routing protocol called End-to-End Link Reliable Energy Efficient Multipath Routing (E2E-LREEMR) for MANET is proposed to extend the AOMDV protocol. E2E-LREEMR is a multipath routing using two routing metrics, the Path-Link Quality Estimator and Path-Node Energy Estimator, to choose reliable links to deliver the data packets from the source to the destination. The multipath routes are established by flooding the RREQ and RREP packets between the source and the destination. A Path-Link Quality Estimator metric based on the ETX metric is used to count the number of data packets transmitted and re-transmitted over a link. The simulation results show the E2E-LREEMR, when compared with AOMDV, enhances network lifetime, residual energy, and throughput, the proportion of delivered packets, scalability and bandwidth. However, E2E-LREEMR uses a flood mechanism without restriction in the route discovery process and this may generate high control overhead. In addition, although E2E-LREEMR improves the link quality measurement, it does not consider congestion in its measurement. An enhancement of AODV is presented in [22], where two routing mechanisms address reliability and stability in existing on-demand routing protocols. The two mechanisms are Reliability Aware Design (RA-AODV) and Modified-AODV (MAODV). In RA-AODV the speed of the intermediate nodes is considered as a factor to confer reliability to the route, while in MAODV, end-to-end delay as well as bandwidth constraints are taken into account to enhance route stability without considering the speed parameter. The two mechanisms are combined with the AODV protocol to obtain the best path between source and destination. First, the route discovery process is initiated by flooding RREQ packets in all the networks to collect information about each path. Then, the shortest path is chosen if it largely satisfies the quality requirements. The route should ideally contain minimum end-to-end delay as well as maximum band-width. Simulation findings revealed that RA-AODV compared with AODV and MAODV generated lower end-to-end delay and higher packet delivery ratio. However, the authors did not consider any adaptive function to control the routing metrics, only calculating different node movement speed. In addition, the algorithm floods the entire network with control packets, which increases control overhead. Moreover, the protocol tends to find shorter paths per hop count journey which may generate a longer end-to-end path. [34] proposed two congestion-control protocols for on-demand route discovery, which addresses the congestion problem in existing on-demand routing protocols. The two routing protocols are Improved Ad-hoc On-demand Distance Vector (AODV-I) and Enhanced Ad-hoc On-demand Distance Vector (EDAODV). For AODV-I, RREQ packet is used during routing with the purpose of automatically avoiding busy routing paths and re-routing the packet. The researchers enhanced AODV-I route discovery by involving RREP packets to control congestion, from the destination node towards the source. Similarly, EDAODV tries to avoid busy routes by forwarding packets by alternate routes. The performance of AODV-I and EDAODV was evaluated with AODV as a benchmark routing scheme, and the N S2 simulator. AODV-I and EDAODV was found to generate lower control overhead, lower latency, and enhanced packet delivery and throughput than AODV. However, the proposed protocols did not consider node load while forwarding the packets, nor link reliability as a factor for routing which may result in link breakage and high packet loss. [35] proposed a QoS-aware routing protocol with adaptive feedback scheme for video streaming for mobile networks (AQA-AODV). The proposed protocol uses the periodic hello message to construct a session cache list which includes finishing period (expiration time) as well as a session identifier (sid). When a hello message is lost for any reason, neighboring nodes will detect damaged links and transmit an RERR towards the source. Upon reception of the RERR, the source begins initiating fresh routes by broadcasting request messages including an authentic proportion of data, required bandwidth, as well as a request to construct a path with high quality. However, using the periodic hello message to detect link failure results in high control overhead as well as consuming greater bandwidth [36]. [37] combined Backup Link Mutual Exclusion (BLME) [38] with Trust Aware Routing Framework (TARF) [39] to provide an Enhanced Trust Aware Routing protocol (E-TARF). When a primary link fails, E-TARF selects an alternative path using BLME strategy which employs heuristic conditions for finding backup paths. However, E-TARF incurs high overheads from the BLME strategy, which imposes certain constraints while selecting a backup path. Moreover, the backup may not be the appropriate path due to changing network conditions such as mobility, congestion and interference on links, thereby significantly reducing network performance. More importantly, E-TARF focuses exclusively on recovering a broken link and does nothing to optimize route discovery and maintenance which can reduce route breakage calls. Table 1 provides the summary and comparison of the discussed schemes. Each scheme is evaluated in terms of related parameters such as type, congestion consideration, route stability, network overhead cost, and quality consideration. The type and sub-type clarify whether they are topology based or position based. The second parameter refers to the detection of faulty nodes in networks due to some network faults or congestion in active route. The active path may encounter significant level of congestion which results in dropping of packets. Most of the proposed schemes consider such dropping as link failure and declare the congested nodes as unreliable. The nodes are constrained in terms of capacity. The quick depletion of nodes may result in reduced network lifetime. Therefore, the design of routing solutions must also take into consideration scarce resources of nodes. The third parameter is the route stability which indicates how long the route remains intact without breakage. Higher route stability minimizes the flow of route discovery and maintenance packets and thereby minimizes the routing load. Most of the on-demand routing schemes are based on conventional local route repair mechanisms for repairing link breakages. However, conventional route maintenance suffers from the high number of route discoveries. The fourth parameter provides an estimate of the network overhead cost involved in establishing and maintaining reliable delivery routes. The fifth parameter refers to a quality factor in protocol design, one of the critical factors to be considered when establishing a route among nodes. Based on the literature review, we concluded following points. First, the topology and geographic based schemes are not completely effective to deal with efficient route discovery due to adopted methodology and high associated cost. These limitations restricts their applicability in resource constrained environments. Second, delivering data reliably is seen as a task that consumes resources, includes regular breakages of the route, involves a storm of route discoveries, and causes high network overheads. Third, most of the protocols involve conventional route maintenance when overlooking transmission failure that may result in high route instability and route switching. Fourth, most of the existing schemes do not provide any mechanism to counter faulty or congested nodes in their models design thereby undermines the network lifetime. The main contribution of this paper is to propose a new congestion-aware and predictive Geo-casting routing protocol that integrates the concept of optimal discovery and reliability efficiency in its protocol design to provide reliable data delivery and prolonging lifetime of network. The proposed protocol neither imposes too many constraints for network operation nor requires any specialized set of resources, which makes it suitable for resource constrained environment. These features together with the dynamic detection of high quality and congested nodes in efficient manner make CPGR an appropriate choice for MANET applications as compared to existing schemes. In this section, we present the detailed description of our proposed CPGR scheme. Before elaborating the detailed design of CPGR, we would like to clarify certain assumptions and goals.

Assumptions
CPGR is developed with following underlying assumptions: (i) All the nodes communicate via a shared bidirectional wireless channel.
(ii) Each node can obtain the destination node position by using location services.
(iii) Each node obtains neighbors mobility information (e.g. Speed, position, and direction) through the control packets.
(iv) Every node in the network is equipped with the GPS receiver that provides current location coordinates for the neighbor nodes.

Goals
CPGR aims to achieve following desirable goals: (i) High packet delivery ratio: The PDR metric can be used to measure the utilization of network resources. It represents the proportion of data received successfully by the destination node, per packets of data produced by the source node.
(ii) Minimum control overhead: Control overhead is a vital metric because a large overhead indicates instability with frequent network communication failure. Control overhead is the proportion of total control messages per total number of received packets, expressed as packets per second.
(iii) Minimum average end to end delay: This metric specifies the average time interval for the data packets from the CBR sources up to the destination at the application layer. The average end-to-end delay is the ratio between the total of all end-to-end delays to the total data packets reaching their destination. However, when the number of nodes grows larger, the dropping of packets also increases. This increases the average delay caused by reestablishment of routes. Therefore, measuring average delay with different network conditions is an important metric in assessing performance and evaluating the reliability of proposed scheme.

Design of CPGR
The design of CPGR constitutes: Route Discovery, High Quality Route Setup, and Route Maintenance.

Route Discovery Process
The existing challenge in ad-hoc networking is in establishing a route with minimum control overheads. Two mechanisms are used for routing discovery. The first utilizes a topology-based routing protocol which relies on flooding of the network to establish an end-to-end path towards the destination node from the source node. The second mechanism utilizes routing based on position protocol, where forwarders relay packets to neighbors closer to the destination node. Topology-based routing protocols based on flooding during the discovery routing process generate high control overheads. In contrast, position-based protocols rely on greedy forwarding and require only local knowledge for forwarding decisions. However, position routing becomes inefficient if information from neighbors is inaccurate (e.g. due to a fading channel, obstacles, and so on). As a result, a recovery strategy is needed to overcome this problem. Also, a longer distance might increase signal attenuation, and if so, greedy forwarding suffers from packet loss. Therefore, the proposed CPGR scheme integrates both geographic and topology-based mechanisms to overcome these limitations. CPGR enhances AODVs default RREQ and RREP control messages by including node locations to incorporate geographic information to minimize control overhead during the route discovery phase. In order to achieve this goal, CPGR uses a composite routing metric that incorporates distance Equation (1), direction Equation (2), and hop counts, that is it uses geographical information to establish a costeffective path to the destination node.
The search area during the route discovery process includes only promising search paths; this will alleviate the effect of control overhead and end-to-end delay. Each node in this scheme calculates the flooding angle Equation (3), direction, and distance of the destination node and selects the preferred node to forward packets.  Fig.1 illustrates the idea CPGR protocol region of interest. Node N1 is within the restricted zone, calculated by relying on node S location. Node N2 is within a fresh reoriented restricted zone, calculated by relying on node N1 s location. Although they belong to different request zones, these two nodes take part in discovering routes. Dt0,1,2,3 is the destination at time t0 , t1 , t2 , t3 respectively. V is the velocity of the destination. Fig.2 shows the flowchart of the proposed CPGR protocol a routing dis-covery phase. Most MANET routing protocols depend on minimum hop count route finding and broadcast control packets as a metric to select the best route. However, using the hop count metric may discover a weak route, while most routing proto-cols consider only one parameter (hop count or signal strength) in finding stable routes without considering the node ability or node quality. One of the major limitations of these routing protocols is that they overlook optimized end-to-end route discovery through important design characteristics of MANET such as mobility, signal strength, hop count, and node capacity. To address these problems, CPGR in this stage provide optimized route selection with the aid of a composite routing metric which integrates signal strength Equation (4), congestion awareness, and mobility.
Where, Pt is the transmitted power, Gt and Gr are the gains of Tx and Rx antennas respectively, L is the system loss factor not related to propagation and λ is the wavelength measured in meters. The proposed scheme involves mobility estimation. Thus, when the route discovery phase is finished, the best next hop, for example B as illustrated Fig.3, is cached to be the next forwarder node. In case node B has change its position beyond the coverage area, the forwarder node always verifies the validity of the next hop before submitting the packet. The forwarder node estimates the current position of B(X, Y ) before forwarding the packet, using the formula presented in the following Equation:  This composite metric optimizes route selection by selecting routes which pass optimal links, with relatively higher signal strength, and minimum hop counts, resulting in fewer re-transmissions and lower probability of broken links. The congestion-aware feature is integrated in routing routines, whereby only a forwarder node which exceeds threshold residual may relay messages. The shortest path with a strong signal minimize control overhead, whereby fewer nodes are chosen to forward packets. For instance, a node exhibiting reliability and an adequate buffer is placed on an active path by its upstream node. Despite this, a sufficient buffer without link quality would render RREQ neglected in the routing process, and the RREP being neglected by its upstream node. Two phases were designed and incorporated into the proposed scheme. The first phase is quality at link level which utilizes the signal-to-noise ratio (SNR) to select the strongest path. The second phase is quality at node level which uses a traffic flow technique (CAT) to regulate data traffic and minimize congestion. Fig. 4 shows the flowchart of the proposed CPGR protocol a high quality route setup. In this phase, a cross-layer design is deployed by acquiring the packet SNR from the physical layer to detect the strongest neighbor during route establishment. SNR is integrated into the process of routing whereby stable nodes are chosen to transmit packets which have a signal strength above a specified threshold (-65).  The following describes the step-by-step process of link quality route discovery process.
• The source node S looks for a route entry in its local routing table for destination node D. If there an entry exists, it should have strong signal strength. If such route does not exist, node S broadcasts RREQ packets to its next-hop nodes to initiate the routediscovery process.
• When neighboring nodes receive the RREQ packets, they first check whether they have sufficient signal strength to participate in packet for-warding. If their signal strength is insufficient, they drop the RREQ packets. Otherwise, they look for a route towards node D in their local routing table. If such route exists, a RREP packet is unicast to node S and makes a reverse route entry for node S. If such route does not exist, the RREQ is re-broadcast to next-hop nodes.
• The previous step is repeated until RREQ reaches node D.
• A RREP packet is unicast by node D to node S through the reverse route provided. The signal strength from neighboring nodes is verified by an intermediate node in the reverse route path. If the RREP s signal strength is below the predetermined threshold, the neighbor transmitting it is disqualified from participating, and its RREP dropped.
• If multi-RREQs are received by D from distinct routes, multi-RREPs are generated and unicast towards S by reversal routes. This aids S in selecting an optimum path through the comparison of composite routing metric costs for every route. Thus, the optimum path selected by S has the lowest routing cost comprising strong signal, hop count and mobility estimation. Source S is informed towards the end of the process of route discovery in order to decide and select the optimal route from all those meeting the high-quality and efficient routing requirements.

Quality at Node Level Phase
When the load in a data communication network is larger than the amount that a nodes buffer can handle, congestion occurs and network performance degrades. Therefore, to avoid congestion, control flow data rate mechanisms are applied [40,41]. In this phase, a Congestion Avoidance Technique (CAT) is proposed to solve the problems of packet drop and bottlenecks at intermediate nodes. Most of the routing stability solutions involve cross layer design, nodes remaining power, and location. Unfortunately, these solutions focus on link conditions without considering node capacity. Thus, incorporating node quality (capacity) is very important to minimize packet drop. Fig.6 shows the flowchart of the congestion avoidance in intermediate Node. A node is considered as congested when its traffic flow capacity is outnumbered by data packets navigating over it.

Route Maintenance
In MANET, link breaks are common because of frequent network topology change. Breakage can be sensed by using hello messages or link-layer acknowledgments (LLACKS). However, a hello message may be lost due to channel errors or high mobility. As a result, its neighboring nodes presume that the node is no longer available and delete all information about it. To solve this problem, The CPGR scheme defines the more sophisticated role of intermediary nodes for optimizing route maintenance. It handles link failure rapidly by using a route maintenance mechanism which utilizes a link state prediction technique to avoid link failure and assess the availability of the route. Hence, link failure recording is adjusted efficiently, with the aim of avoiding redundant link failures, thereby reducing linkfixing calls; this leads to meaningful network optimization in terms of performance, including route stability, routing burden, delay and throughput. Rapidly solving the link-failure problem can increase the proportion of delivered packets, decrease end-to-end delay upon breakage as well as save overall utilization of the network resources. Fig. 7 shows the flowchart of the proposed CPGR protocol a route maintenance. In CPGR, the route maintenance process is carried out in three phases: link state prediction, link failure avoidance and route availability check. A brief explanation of each phase follows.

Link State Prediction Phase
In this phase, a received signal strength mechanism is used to predict route failure to the next hop. Each intermediate mobile node, before declaring a route breakage, determines the status of the link. The link expiration time can be estimated using Equation (7).

Link Failure Avoidance Phase
This phase is responsible for minimizing new route discoveries and avoiding unnecessary route error reporting packets; it therefore improves end-to-end delay performance. This phase is initiated once the intermediate node finds that the link to the next hop will soon break. It performs two main functions: find-ing a new route and redirecting data packets. When an intermediate node finds that the current link to the next hop does not exist, it sends a Local Route Repair (LRR) packet to the nodes within its transmission range. Each node receiving the LRR packet traverses its routing table to find an entry (route) to the destination node. Then, one of the nodes responds to the current node to redirect the data packets to the destination For example, Figure 8 shows the process of the LRR packet from the Current Node C N node to its neighbors. As illustrated in Figure 8, the source node sends the data packet through (S, A, B, CN, NN, E, D). The node Neighbor Node (NN) gets away from the transmission range of the C N . For such case, the C N node has to take action to avoid sending the route error packet to the source node. The C N node will broadcast LRR packet to its neighboring nodes on the route (J, F, G, and H).
Each neighboring node will check its routing table to find a new route to the destination.  When the new route is found, the Redirect Data Function transfers the data, as shown in Figure 10. The pseudo-code for the proposed link failure avoidance phase is shown in Figure 11. In this phase, adaptation to network changes is performed by diverting data packets to a new route before disconnection. This phase takes place when no route to the destination is found, and the node notices the link failure. A notification message is transmitted to the previous node to avoid sending an error message to the source node.

Simulation and results
The performance evaluation of CPGR is performed using popular network simulation (NS-2). Three different set of experiments are carried out to evaluate the efficacy of CPGR. In the first set of experiments, the scalability feature of CPGR is evaluated at different network density (50-200 nodes) in terms of control overhead, packet delivery ratio, and end-to-end delay. Secondly, CPGR is evaluated at different mobility speed (10-50 m/s). Finally, CPGR is evaluated at different pause time (0-100 s). In all the experiments, the SNR threshold is taken as -65. We used IEEE 802.11b as the MAC protocol. The network dimension is taken as 1500 1500 and we ran the simulation for 900 s. We use constant bit rate (CBR) traffic for the flows with packet size equal to 512 bytes. We compared our CPGR scheme with SOGR-HR and TBR where a common feature among them is that all schemes are on-demand routing protocols and geographic. The performance is evaluated in terms of control overhead, packet delivery ratio, and end-to-end delay.

Performance Evaluation under Various Node Density
In order to assess the scalability and robustness of the proposed CPGR scheme, various network topologies with different numbers of nodes were con-sidered in a 1500 m x 1500 m network area. This section assesses and discusses the effect of network size by varying the number of nodes while the pause time and node speed parameters remain fixed.
(i) Control Overhead versus Node Density Figure 12 presents the simulation results for CPGR, TBR and SOGR-HR in terms of control overhead. Four scenarios were examined by varying the number of nodes: 50, 100, 150 and 200. The results obtained from the simulation illustrate that CPGR has a lower control overhead than TBR and SOGR-HR. With 50 nodes, all three schemes showed a reduced con-trol overhead. However, when the number of nodes reached the maximum value of 200, all schemes had a high control overhead, although CPGR outperforms TBR and SOGR-HR because it can handle link failure before the link is disconnected, and minimizes the re-establishment process to find a new route. As a consequence, the number of control packets is min-imized, reducing the control overhead. The major drawback of SOGR-HR and TBR is that they generate a large number of RERR packets which traverse to reach the source node to declare a link breakage. This results in increased control overhead. In contrast, CPGR minimizes the need for route error-reporting packets and predicts the failure of the current route by incorporating an improved route maintenance mechanism. Min-imizing the control overhead leads to better performance of the routing scheme. Thus, this experiment concludes that CPGR outperforms the other schemes in terms of control overhead.  Figure 13 illustrates the performance evaluation result in terms of packet delivery ratio. It is observed that when the number of nodes is increased from 50 to 200, the delivery ratio starts to decline. The reason for such performance degradation is that as the number of nodes increases, con-gestion and interference in most parts of the network result, resulting in collisions and a high number of link failure notifications. When the num-ber of mobile nodes increases, this also increases the route changes in the network, leading to a gradual decrease of packet delivery; in this scenario, CPGR consistently outperforms the other schemes, because it employs a route maintenance mechanism to predict the occurrence of link failure. This methodology minimizes the need for a new route discovery, resulting in reduced control overhead and increasing efficiency. This experiment evaluates the performance of CPGR against SOGR-HR and TBR in terms of average delay against varying node density. Figure 14 shows that when the number of nodes increases, the average end-to-end de-lay also increases. The results show that CPGR has the best performance in terms of end-to-end delay, because it can predict the possibility of route breakages and divert the data traffic to other routes. The route main-tenance mechanism adopted by CPGR helps in minimizing the need for route error-reporting packets, and therefore reduces the number of route discovery attempts. Therefore, this experiment concludes that CPGR has better average end-to-end delay than SOGR-HR and TBR. In this experiment, the network stability was determined using the node speed parameter. A low speed generates a stable network, whereas a high speed generates a network with frequent topology changes.
(i) Control Overhead versus Mobility Speed Figure 15 shows the performance of CPGR, SOGR-HR and TBR in terms of control overhead under the various node speeds. The cost associated with building and maintaining routing paths is known as the control over-head. All three schemes generated increasing overheads with increasing speed, although that of TBR was higher than CPGR and SOGR-HRs. In a network with high mobility, this is due to the likelihood of extra link failures in the TBR protocol. The process of new route discovery occurs as a result of frequent network topology changes and node speed increments, leading to further breakage of links. Link breakage results in an increase in the number of generation and distribution of route request packets. In contrast, CPGR has lower frequency of rediscovery of routes in an envi-ronment with high mobility, through quick link recovery and diversion of data packets to a stable route. This test analyzes CPGR, SOGR-HR and TBRs performance from the perspective of PDR against different node speeds. With low mobility, the PDR is large which means that both packet drop and control overhead are low. From the results presented in Figure 16, it is observed that CPGR uses more stable paths and is also able to control congestion, enabling delivery of more data from the source to the desired destination, even in a highly dynamic network. In CPGR, when the link to the next hop is disconnected, the current node (i.e. the node that noticed the link failure) sends a request packet to its neighbors to search for a fresh route to the destination. However, if a route cannot be found, it sends a notification message to the upstream node to divert the data packet to a new route. If the notification message reaches the source without finding a new route to the destination, then the source node will start the discovery process for a new path before the link is disconnected. CPGR thus maintains a higher PDR than SOGR-HR and TBR. This experiment evaluates the performance of CPGR, SOGR-HR and TBR regarding end-to-end delay under different node mobility speeds. It focuses on how the node speed affects the performance of routing protocols. Figure 17 shows that average end-to-end delay for SOGR-HR and TBR is longer than for CPGR, because CPGR employs a route maintenance mech-anism which avoids additional route discovery. Both SOGR-HR and TBR make a large number of route maintenance calls. When the node speed is increased, the occurrence of link changes also increases, so the delay in SOGR-HR and TBR increases as the possibility of finding an alternative route is difficult. Thus, the intermediate node reports the route break-age to the source node and initiates a new route discovery. CPGR has a smaller route discovery process overhead because whenever the link to the next hop is predicted to fail, the intermediate node will immediately switch the traffic to other available routes to avoid sending a RERR packet to the source node. In this respect, the source node will initiate a new route discovery process only when all routes are broken. CPGR shows improved performance over SOGR-HR and TBR. Figure 17: Average End-to-End Delay vs. Node Speed

Performance Evaluation under Various Pause Time
This section focuses on the impact of varying pause time in CPGR, SOGR-HR, and TBR, while the number of mobile nodes and node speed remain fixed. Increasing the pause time has two impacts on network performance. First, it decreases the node speed (mobile nodes remain for a longer time). Second, mo-bile nodes are more spread out, resulting in a less effective network. However, having fewer mobile nodes may cause low connectivity between them, providing fewer routing paths. Therefore, increasing the pause time affects the perfor-mance of routing schemes. The performance of the three schemes was evaluated under various pause time variations generated using movement patterns. The continuous motion of nodes in the network is represented using a pause time of 0 seconds, whereas a pause time of 100 seconds indicates almost static nodes.
(i) Control Overhead versus Pause Time Figure 18 shows the performance comparison results in terms of control overhead against pause time. The control overhead gradually decreases as the pause time increases, because the network becomes more stable. Figure 18 indicates that, as the pause time approaches either 80 or 100 seconds, the control overhead decreases, and its performance is directly proportional to the network stability. The experiment shows that CPGR has the lowest control overhead, outperforming both SOGR-HR and TBR, which introduced more control messages in order to re-discover a new route. The highest control overhead for SOGR-HR and TBR occurs when the pause time is 0 seconds, because more route changes occur. Thus, based on the route changes, this shows different reactions from CPGR and other schemes as they use different mechanisms to discover new routes and to handle link failure.  Figure 19 shows the results of the PDR for varying pause time periods. All three schemes have the highest PDR when the pause time is set at 100 seconds, where the longer pause time indicates a more stable network. The results generated by CPGR are better than to the others, because its route maintenance avoids link breakage by using the link avoidance algorithm. This leads to a reduction in the route discovery process cost. It also shows that the highest value of the average end-to-end delay is when the pause time is 0 seconds, because more network congestion and control overhead are generated, which contribute to the high probability of link failure. However, when the pause time increases, nodes are more stable, resulting in less data packet transfer delay. In fact, CPGR performs better than SOGR-HR and TBR in all the scenarios considered, because they may not use a valid path from the route cache as there is no mechanism to update the routing information in the cache. CPGR frequently updates the routing table and finds the latest route to the destination. The average end-to-end delay represents how efficiently a routing protocol adapts to changing network dynamics and conditions. In the MANET, network stability is a major element in the routing schemes, and node speed and pause time are the main elements in network stability. Figure 20 illustrates that when the pause time increases, the average end-to-end delay decreases. The figure shows that the highest value of the average end-to-end delay is when the pause time is zero seconds. This is due to more network congestion and Control overhead are generated, which contribute to the high probability of link failure. Whereas, when pause time increases, nodes are more stable; this brings less data packet transfer delay. Nevertheless, CPGR performs better than SOGR-HR and TBR in all scenarios considered. This is because SOGR-HR and TBR may not use a valid path from the route cache because there is no mechanism to update the routing information in the cache. Whereas CPGR frequently updates the routing table and finds the latest route to the destination.

Conclusions
A major challenge for MANET has been to design a routing scheme that satisfies different application needs and optimizes routing paths that handle topology changes.
The volatile nature of the wireless medium affects many network parameters such as bit errors, re-transmissions, end-to-end delay and throughput, thus degrading the quality of the network. The paper focuses on minimizing control overheads, and maximizing network lifetime and route stabil-ity, while taking into account essential aspects of MANET including the highly dynamic environment, path length and wireless congestion. It offers optimized route discovery and achieves delivery of data with high quality involving the least cost by developing an improved optimal estimation scheme. A route main-tenance scheme was proposed for resource-constrained nodes which neither im-poses too many constraints on network operation nor requires any specialized set of resources. These features together make up the proposed Congestion-aware and Predictive Geo-casting Routing Mechanism for Mobile Ad Hoc Network (CPGR). The simulation results reveal improved performance of CPGR under different network parameters. Possible future work includes developing CPGR to consider energy efficiency to reduce the power consumption of mobile nodes. Interference among all node parameters could be considered in future work to produce a more feasible and realistic environment for MANET.