# A Novel Effective Multipath Routing Technique Providing High Availability in Wireless Networks
## 1 Introduction  
A wireless network is a collection of wireless nodes that communicate with each other using wireless links. A node can communicate only with other nodes in its wireless transmission range. A mobile ad hoc network (MANET) is a wireless network typically characterized by node mobility and topology change. In a MANET, nodes exchange data among themselves without reliance on any additional infrastructure, such as a base station or a wired backbone network, and the network topology may dynamically and unpredictably change since the nodes are free to move [1]. A wireless sensor network (WSN) consists of many nodes, each of which is connected to one (or several) sensors. These sensors monitor and sense changes in environmental or physical conditions and then transmit this data to a main location, called a sink node. WSNs can be considered a special type of ad hoc wireless network with reduced or no mobility [1, 2]. Nodes in MANETs and WSNs are constrainedby their limited power, computational capabilities, storage, bandwidth, and mobility. A node usually requires multiple hops to exchange data with any other node. Thus, routing is a crucial issue to the design of MANETs and WSNs. There are two main types of routing in MANETs and WSNs: single path routing and multiple path routing. Single path routing is simple and scalable but does not efficiently satisfy the requirements of high availability, fault tolerance, and load balancing. Ad hoc on-demand distance vector (AODV) [3] is one of the most popular on-demand single path routing protocols. AODV uses a request-reply mechanism associated with hop-by-hop routing to discover and establish a path between a source and a destination in a wireless network. AODV does not support multipath routing. Link failures and topology changes, however, often happen in MANETs and WSNs due to the mobility of wireless nodes, the insufficient power of wireless nodes, the unstable state of wireless links, and unpredictable environmental interference. If any link or node failure occurs, a lack of fault-tolerant mechanisms may lead to the interruption of active communication between the source and destination nodes. Multipath routing is an alternative routing technique that selects multiple paths to deliver data from the source to the destination. If a link or node fails, only one path is disconnected, and data transmission is still available through redundant paths, resulting in no interruption of the data communication between the source and destination nodes. A typical multipath routing protocol consists of three phases: _path discovery_, _traffic distribution_, and _path maintenance_. Path discovery is the process of discovering and establishing multiple routes between a source and a destination in a wireless network. The multiple routes can be node-disjoint, link-disjoint, or non-disjoint. Node-disjoint routes are completely disjoint, with no common nodes and links. Link-disjoint routes have no links in common but may share some common intermediate nodes. Non-disjoint routes can have nodes and links in common. Node-disjoint routes are usually preferred because they are the most fault-tolerant [4]. After establishing multiple paths between the source and destination nodes, the source can begin sending data to the destination along the paths. There are various strategies for distributing traffic over available paths. A multipath protocol may forward traffic using only the path with the best metric and keep other discovered paths as backups; it may also use the paths concurrently [4]. Depending on the traffic distribution used, multipath routing can provide different capabilities for MANETs and WSNs, such as fault tolerance and load balancing. Path maintenance is the process of re-establishing paths after the initial path discovery process. The path maintenance process provides a mechanism for detecting a path failure and recovering from it.