A New Reactive Routing Algorithm to Improve ...

4 downloads 927 Views 319KB Size Report
Mar 19, 2010 - information, besides a local repair mechanism in the new proposed ...... Conference on Local Computer Networks (LCN),. IEEE 2011, pp. 537- ...
A New Reactive Routing Algorithm to Improve Capacity and Average End-toEnd Delay in MANETs Elahe Ataee Bojd1, Neda Moghim1, Faria Nassiri-Mofakham1, Naser Movahedinia1 1Computer Engineering Department, University of Isfahan, Isfahan, 81746-73441, Iran. E-mail: [email protected], [email protected], [email protected], [email protected]

Abstract Delay and capacity are two important parameters in Mobile Ad Hoc Networks (MANETs). Increasing network capacity almost leads to delay increase as well. Many recent works have been conducted to achieve both desirable capacity and delay simultaneously. A new connectionless routing algorithm is proposed in this paper to reach this aim. An extension is proposed for multi-hop Dynamic Virtual Router (DVR) algorithm to overcome the performance limits of MANETs. Mobility metrics are defined to estimate the mobility degree of the nodes' neighborhood and a new route setup process is defined using the estimated information, besides a local repair mechanism in the new proposed algorithm. In this local repair mechanism, a new route is sought between the repairing node and its next hop on the communication path. Simulation study shows that the proposed algorithm improves the network performance, including throughput and delay, significantly. However, the increasing overhead is not remarkable in the proposed algorithm, considering its significant improved performance. Keywords Mobile ad hoc networks, connectionless routing, capacity, delay, mobility 1 Introduction A Mobile Ad Hoc Network (MANET) is a collection of wireless mobile nodes forming a temporary network without any centralized administration and control. Due to the limited transmission range of each node, a source and destination may communicate through a chain of intermediate nodes. So, each mobile node should be capable of acting as a router [1,2]. As the mobile nodes move around freely and randomly all the time, MANETs do not have a fixed and stable topology so that the links break due to the nodes' mobility and this causes frequent topological changes in these networks. Therefore, quickly setting up, maintaining and repairing routes are essential problems which should be addressed with a low overhead. Many routing protocols have been proposed for MANETs. These protocols can be divided into three categories [3,4]: proactive, reactive and hybrid. In proactive methods, each node maintains a table consisting of routing information to every other node in

the network, regardless of any need to all the routes. They react to topology changes to update the table, even if no traffic is affected by the changes. The main advantage of these protocols is that hosts can quickly obtain route information and establish a session. Destination-Sequenced Distance Vector routing (DSDV), Wireless Routing Protocol (WRP) and Global State Routing (GSR) are some examples of table-driven algorithms [5]. Reactive methods are based on demand for data transmission. Routes between hosts are determined only when they are explicitly needed to forward the packets. Reactive protocols are also called on-demand algorithms. They do not need to update the route information periodically and they do not find and maintain information about no-traffic routes. Therefore, these protocols can significantly reduce routing overhead when topology changes less dramatically. The main disadvantages of these algorithms are route setup delay and their excessive flooding in route creation phase. Dynamic Source Routing (DSR) and Ad hoc Ondemand Distance Vector routing (AODV) are examples of on-demand algorithms [5]. Hybrid methods combine proactive and reactive methods to find efficient routes without much control overhead. Some forecasted routes are proactively established and other demands will be served by additionally activated routes through reactive flooding. The performance of the hybrid methods is highly dependent on the number of proactive routes and also the amount of traffic demands. Zone Based Routing (ZBR) is a typical hybrid routing protocol [5]. In general, due to the structural features of MANETs, routing algorithm design, network performance estimation and capacity improvement in these networks are challenging issues. Network capacity improvement is a problem that is related to users' quality of service, network performance and routing efficiency. When the network load is greater than network capacity or when the routes are broken, some data packets will be dropped and the data packet loss will not only decreases the throughput but also causes some routing information to be lost.

There are two ways to increase the average achievable capacity in the network: • Adding relay nodes to the network: Relay nodes just take the relaying responsibility in the network. Packets are transmitted from source to destination with the help of these nodes. As the transmission opportunity increases when the relaying nodes exist, network capacity will be improved. However, number of relay nodes should be dramatically increased when more source-destination pairs are created in the network [6-8]. • Using mobility: Packets are transmitted from source to destination with the use of nodes' mobility. In this scheme, there is no need to spare nodes in the network and a constant capacity can be achieved independent of number of sources, but no packet end-to-end delay bound is guaranteed [9,10]. An important problem in MANETs is how to maintain communication links of an established route between source and destination. Communication links are often broken due to nodes' mobility in the network and new routes can be re-established in AODV and DSR with extra delay and overhead. To overcome this problem, virtual router concept is introduced in DVR. A virtual router is composed of a set of nodes, placed in a geographical region. A connection less route is formed by a chain of virtual routers and leads to the following advantages in the network: • The mobile nodes may move, but the virtual router cannot, because they are defined by the geographical region. • A communication route comprising virtual routers is more robust compared to traditional routes used in MANET. • Since data packet forwarding is only limited to virtual routers, this approach reduces the number of nodes that are necessary to relay the data packets. Connection less routing concept is used and mentioned in many works [11-13] , due to its explained advantages over traditional routing algorithms.

In this paper, the focus is on applications that cannot tolerate long end-to-end delays. Real-time interactive services, such as interactive voice, videophone, and interactive games are some examples of these applications. They have strict QoS requirements and they need low end-to-end delay and high throughput simultaneously. In this paper, a new on-demand multi-hop routing protocol is

introduced to reduce the number of nodes needed in data forwarding. It is designed to handle a high mobility environment with focus on the capacity of wireless ad hoc networks. This algorithm is based on Dynamic Virtual Router (DVR), which is explained in section 3. In our algorithm, the overhead of route request process is decreased by restricting the region of route request flooding. Nodes' mobility characteristics are utilized to find more stable virtual routers and a local repair mechanism is also used in the network. All of the above mentioned changes are made to achieve a higher capacity and lower packet delays in the network. Rest of the paper is organized as follows: Section 2 summarizes the related works. In Section 3, DVR routing algorithm is described. Our proposed algorithm is explained in Section 4 and is evaluated by a simulation study in Section 5. Finally, paper is concluded in Section 6. 2 Related Works Gupta and Kumar [14] initially defined the concept of capacity for ad hoc networks in 2000. They considered two types of network with static nodes: arbitrary network and random network. In arbitrary network, traffic pattern, nodes' location and source-destination pairs are all arbitrary but in a random network, they are selected randomly. They proved that the maximum per node throughput in an arbitrary ad hoc network is θ( ), √ while the capacity of a node in a random wireless  network with static nodes is θ( ).   

Per node capacity in a random network is less than that of arbitrary model, because transmission range, traffic patterns and location of the nodes are not predictable. However, even in an arbitrary network, capacity of the nodes gets smaller as the number of nodes becomes larger. Therefore, static ad hoc networks are not scalable. Later, Grossglauser and Tse [9] studied the capacity of ad hoc networks with mobile nodes. They showed that per-node capacity of θ(1) can be achieved by a two hop relaying scheme under independent and identically distributed (i.i.d) mobility model. In first hop, each packet is transmitted from source to a nearby relay node and in the second hop; packet is handed off to its destination if the relay node is close enough to the destination. However, such constant capacity has achieved under a very large delay, because delay bound analysis has not been considered. Capacity and delay are two important factors in performance evaluation of routing protocols for wireless networks. Therefore, many research works have been

conducted to analyze the relationship between capacity and delay in MANETs. Delay-Capacity trade-off was first studied by Bansal and Liu [15]. They claimed that a hybrid network with stationary nodes and mobile relays can increase the capacity. They proposed a geographic routing scheme to achieve optimal capacity while keeping the network delay low. This routing algorithm exploits the velocity information and forwards the packet to the nodes that are moving toward the destination. If rely node is moving away from the destination, packet is handed off to another mobile node. In this approach, source and destinations have assumed static. In addition, every node should know the mobility patterns of other nodes to forward the packets in the destination's direction. Perevalov and Blum [16] determined the network capacity in a delay limited mobile ad hoc network using a transmission and relying strategy. In the relaying strategy, each source node splits a packet into blocks and sends them to different relay nodes, after adding redundant information. Thus the traffic is spread between various nodes. Finally, blocks are transmitted from relays to the destination using a relay strategy like in [9]. Each block includes additional bits to determine the packet to which it belongs. In this strategy, each source node needs to know the nodes' motion path. Neely and Modiano [17] reduced delay in the network via sending redundant packets to the mobile destination using multiple paths. This strategy is an extended version of Grossglauserand Tse's two-hop relay algorithm that is considered in a cell partitioned network under i.i.d mobility model. They improved the delay, but network capacity could not be increased due to the existing redundancy. Some other methods using redundancy, have also been reported in [18,19] for various mobility models. As the nodes spend most of their life time within a specific area, researchers have studied the capacity and delay trade-off under the restricted node mobility. Li et al. [20] investigated the impact of a practical restricted random mobility model on capacity and delay. They partitioned a network of n nodes within a unit area into cells and cells were further divided into squares. Each node can only move inside the cell which has initially been located in. A new multi-hop relay scheme has been proposed to transmit the packets from the sources to the destinations. Finally, they found a smooth trade-off between throughput and delay in mobile ad hoc networks by controlling nodes' mobility pattern. Liu et al. [21] proposed a general 2-Hop Relay with -cast (2HR- ) algorithm, where each node sends at most copies of packet in the network through different

relay nodes (i.e., a packet is allowed to have at most + 1 copies in the network). To have a more accurate estimation of network capacity and delay, queuing delay and medium access contention are considered in 2HR- algorithm. Most of the researches focus on the relation of delay and capacity, and the impact of other network parameters such as node transmission range, packet redundancy, number of nodes and so on are investigated on network capacity in [22] and [23]. Wang et al. [24] studied the impact of correlated mobility and packet redundancy on capacity and delay. They extended -cast relay algorithm [21] for a group based mobility model, where nodes are clustered based on their correlated mobility across the network. They proposed a multi-hop scheduling-routing algorithm for packet transmission inter- and intra- clusters. In most of the previous works, two-hop or multi-hop algorithm with or without packet redundancy is used to transfer packets from source to destination. These types of algorithms have less scalability. In addition, comprehensive information about the speed and direction of another nodes' movement is assumed to be known. Such information does not exist in the real scenarios. In this paper, a reactive multi-hop routing algorithm is proposed that considers mobility of nodes in route selection procedure to choose more stable routes and it does not have any need of duplicated packet transmission. The proposed algorithm is based on DVR algorithm, which will be explained in the next section. 3 Dynamic Virtual Router (DVR) routing algorithm Most of the routing algorithms sustain frequent reconnections in high mobility environments. Ho et al. introduced a reactive routing algorithm to solve this problem by defining virtual routers [20]. In this approach, communication link breaks are prevented instead of recreating the broken routes. A virtual router is a logical router that is associated with a particular geographic area. A virtual router is consisted of one or more mobile nodes that are within a geographical region. Hence, these different nodes can take part in forwarding data packets. DVR algorithm is explained in the following subsections. 3.1 Route Request When a source has a data packet to a destination, it needs to establish a communication route to the destination. If there is not any route available, the source node broadcasts a route request packet to all neighboring nodes within its transmission range. Upon receiving a RREQ packet, a node invokes Algorithm 1.

Algorithm1: Handling RREQ // Assume Node N is a node that receives RREQ packet if (N is not the destination) { if (N has not seen route request packet before) { It caches the packet ID; attaches its own ID to the packet; delays the route request packet forwarding; if (N hears the same route request forwarding, during this delay time) { N cancels its forwarding; } N broadcasts route request at the end of delay time; } else if (node N has seen route request packet before) { It discards the route request packet; } } else if (N is the destination) { It sends a route reply packet; }

3.2 Route Reply When the request packet is received by the destination node, a route reply will be sent to the source node via traversed relay nodes in the RREQ, to establish a communication path. Each relay node that receives RREP, invokes Algorithm 2. Algorithm2: Handling RREP // Assume Node N is a node that receives RREP packet if (N is not the source) { N keeps the route ID* and becomes a part of communication route; if (N is on the path listed in the received RREQ) { It broadcasts RREP; } } else if (N is the source) { N sends data packets; } * Route ID is generated at the destination and is composed of node ID and a local particular number together.

3.3. Data packet forwarding When the route reply is received by the source, data packets forwarding procedure is started. It is notable that any mobile node that overhears the route reply packet stores the packet's route ID in its

Route ID Cache and becomes a part of communication route. Relay nodes and the overhearing nodes will be assisted to forward the data packets from source to the destination. 3.4 Route Update Because of the nodes' mobility on the communication path, destination periodically replaces the broken links by the new ones via sending periodic route updates. Route update packet will traverse the network on the path listed in the last received data packet. 3.5 Route Recovery In rare cases, a virtual link may break. Therefore, destination node frequently sends route update packets to its source. Upon receiving a route update packet, the source node updates virtual route, and otherwise it sends a new RREQ in the network, as shown in Algorithm 3. Algorithm 3: Route Update Algorithm // Assume Node S is the source if (S receives a Route Update Packet) { Node S updates prior route and route ID with the new one; } else if (S does not receive the route update packet) { Node N sends route request and starts Algorithm 1; }

In this paper, some improvements are made on different parts of DVR routing algorithm to improve capacity and average end-to-end delay in the network. Our idea is to improve capacity and delay by nodes' mobility consideration in creating the communication paths. 4 Proposed algorithm The proposed algorithm is composed of three improvement phases. In these improvement phases, different parts of DVR routing algorithm are changed to achieve a better capacity and end-to-end delay in the network. In the first phase, virtual route setup is improved. Route selection and data packet forwarding is modified in the second phase and in the last phase; a local route repair mechanism is added to DVR. 4.1 First Improvement Phase: Virtual route setup phase Consider two adjacent nodes that are in the border of each other's transmission range. They receive route request packet and take part in the virtual route formation. But later in the route reply forwarding, their link may be broken due to their movement [25].

Therefore, this route request forwarding wastes the network bandwidth to find an unusable route. Consider Fig. 1, when node D receives route request packet from node S, it delays the packet and records its own ID in the header of packet and forwards it. First of all, nodes S and D are neighbors but regarding their moving direction, they may not be in the range of each other when they reach their next position and when destination replies the route request, this link may be broken and the reply cannot be forwarded. DVR only sends replies for the route with smallest hop-count. Therefore, it does not always lead to reliable routes due to the node’s mobility and this can lead to the increase of control packets in the network. Fig. 1 Creation of virtual link in DVR [25]

Reliable distance concept is used in this paper to mitigate this problem [25]. Some nodes' movement information such as its position, velocity and direction of movement, e.g. obtained by GPS [26] or another location services [27], are used for reliable distance calculation. This distance is always smaller than the transmission range and is used to decide about the nodes' effectiveness in connection setup process. Because of the frequent variation in the nodes' velocity and direction of movement, reliable distance (r) is dynamically changing. Current node’s information such as its current position (x, y), current direction (cosα, sinα), current velocity (v) and current time ( ) are recorded in the route request packet. This information will be used by the receiving nodes to decide to broadcast it or not. If source node (S) needs a route to the destination, it initiates the process by broadcasting a route request packet at the time  . When an intermediate node (D) receives a new request packet at the time  , as shown in Fig. 2, it will do the following steps [25]: Fig. 2 Creation of Reliable virtual link in modified DVR [25]

• Node D can determine the position of node S at  +  , using the information found in the received RREQ and the following equations:  =  +  ∗  ∗ cos

(1)

! = ! +  ∗  ∗ sin

(2)

T is chosen such that the inaccuracy of GPS information is covered. • Similarly, node D uses its own information at  to obtain its position at  +  . Then final distance ($% ) of S and D after T seconds will be determined.

• If d exceeds reliable distance r and $% exceeds d too, it means that distance between two nodes increases. Thus, the received RREQ will be discarded as the virtual link between S and D is not reliable. • Otherwise, if D has not seen this route request packet before, it will broadcast it. In this way, the established virtual routes will be valid longer than those built by original DVR. Note that r is a very important parameter in the new mechanism. If r is chosen almost equal to R, the new approach will be almost the same as original. However, if r is too small, the route discovery latency and control packets will be increased rapidly. As mentioned above, r should be able to change dynamically with the variation of node’s velocity and moving angle. When two adjacent nodes move fast in different directions, r should be decreased to make the route more reliable. The following equation is used to calculate the reliable distance (r): % & = ' − ) ∗ *

(3) % *

Where, ) is a constant and indicates two adjacent nodes' relative velocity’s projection on the % , % (see Fig. 2). -----vector of + 4.2 Second Improvement Phase: Route selection and data packet forwarding In original DVR, a communication route with smallest number of hops is selected to send data packets and the effect of other parameters, like nodes' mobility, queue length and so on, is not considered in the route selection procedure. An improvement is considered in this paper, which considers nodes' mobility in its route selection and makes DVR more robust to high mobility in MANETs. Node’s mobility degree is defined in this regard and it is quantified periodically based on the node's neighboring knowledge. The calculated mobility degree is used to determine the best reliable virtual route between source and destination, during route setup and data forwarding phase. Therefore, frequent link breaks associated with unstable paths, containing highly mobile nodes, will be avoided. • Calculating node’s mobility degree In this subsection, node’s mobility degree is estimated. Each node’s mobility degree is determined locally and is dependent on the nodes' local situation. Change of neighboring nodes within time is used to calculate the mobility degree of a node periodically [28,29]. Therefore, node’s mobility degree at t represents the changes in its neighboring nodes list compared to  − ∆ . Nodes joining or leaving the

transmission range will affect the node’s mobility degree. To better understand, consider the following scenario [28]: Node A has 11 neighbors as shown in Fig. 3a and during the interval of ∆, its neighborhood changes as shown in (Fig. 3b): E and F leave and B, C and D join the neighborhood. As a result, five changes are made in A's neighborhood during ∆ (Fig. 3c). At the end of each time interval, the node makes an evaluation of the changes in its neighboring nodes that are equal to 5/11 in the given example. Fig. 3 Illustration of the defination of relative Nodes' mobility [30]

Generally, node A’s mobility at time t, can be calculated as follows: /01232!(4, ) =

6789:6;?() 6789:6;9@() 6789:6;(A)

(4)

Where: • B1&C B0$DEFG() is the number of nodes joining the neighboring range of A during interval ∆. • B1&C B0$DECH() is the number of nodes leaving the neighboring range of A during interval ∆. • B1&C B0$DE( − 1) is the number of neighboring nodes of A at  − 1. • /01232!(4, )is the mobility degree of node A. Each node’s mobility metrics are characterized by two following parameters: • Average mobility degree of each node and its neighboring nodes • Variance mobility degree of each node and its neighboring nodes Equations (5) and (6) are used to calculate these parameters. Of course, using the average mobility cannot be sufficient by itself and only one node with high mobility degree in the neighboring area can cause unreliability. Therefore, variance is also considered to cover this issue. I&(;

Suggest Documents