## 2 Literature Review
Since we are interested in dynamic and event driven protocol so we studied the likes of AODV which is a reactive protocol that discovers routes only on the basis of demand using a route discovery mechanism. It uses traditional routing tables with one entry per destination. The main advantage of AODV [9; 10] compared to other routing protocols is that less memory space is required as information of only active routes are maintained, in turn increasing the performance. While on the other side, the disadvantage is; this protocol is not scalable and in large networks it does not perform well and is not capable to support asymmetric links. Ad-hoc On-demand Multipath Distance Vector Routing (AOMDV) [19] protocol is an extension to the AODV protocol for computing multiple loop-free and link disjoint paths [20] which aims to remove the disadvantages and the limitation of AODV. The main idea in AOMDV is to compute multiple paths during route discovery. It is designed primarily for highly dynamic ad hoc networks where link failures and route breaks occur frequently. When single path on-demand routing protocol such as AODV is used in such networks, a new route discovery is needed in response to every route break. Each route discovery is associated with high-overhead and latency. This inefficiency can be avoided by having multiple redundant paths available. Now, a new route discovery is needed only when all paths to the destination break. AOMDV can also be used to find node-disjoint or link-disjoint routes. But, AOMDV has more message overheads during route discovery due to increased flooding because it is a multipath routing protocol, the destination replies to the multiple RREQs which results in longer overheads. In [21], researchers improved the performance of standard AOMDV in conditions like mobility or multi communication. They proposed link reliability in route choice. They modified the Route request process to enable reliable paths using Bit Error Rate (BER). They tested the effectiveness of new protocol by considering these improvements under realistic conditions and the result was compared to standard AOMDV and AODV protocols to show improved performance. Researchers in [22] modified AOMDV protocol by proposing a new fuzzy logic based scheme. The proposed protocol was shown to select better paths and increase network survivability. The proposed protocol considered many selection criteria, where some represented network status and others were issued by preventive, reactive and tolerant saving lines. They carried out simulations to compare the modified AOMDV protocol with AODV and AOMDV. They showed the proposed protocol's survivability under different conditions. An AOMDV based method (E-AOMDV) was proposed by [23], to conserve energy, find shortest path and for load balancing. In order to conserve energy, they defined an energy factor as selection criteria, which was defined as product of energy factors of all nodes on different paths. The status of energy was given by Energy factor. They compared the performance of AOMDV and E-AOMDV to show that the lifetime of proposed E-AOMDV protocol was limited but it showed improved routing compared to AOMDV without including energy factor. So they concluded that performance of the proposed method was better in limited lifetime and showed better results with the new E-AOMDV protocol. In [24], the authors proposed a modified AOMDV protocol called Network Coding-based AOMDV (NC-AOMDV) routing algorithm for MANET. The proposed method tried to increase data transmission reliability and ensure load balancing. They compared NC-AOMDV routing protocol to AOMDV routing protocol in simulation based on packet overhead, packet delivery ratio, and average end-to-end delay during packet transmission. The results in simulations showed that NC-AOMDV routing protocol was accurate and efficient and provided route stability in dynamic MANET. An algorithm find maximal nodal remaining energy was proposed in [25], called Delay Remaining Energy for AOMDV (DRE-AOMDV) routing protocol.