A Cross-Layer Route Discovery Framework for Mobile Ad Hoc Networks

Most reactive routing protocols in MANETs employ a random delay between rebroadcasting route requests (RREQ) in order to avoid “broadcast storms.” However this can lead to problems such as “next hop racing” and “rebroadcast redundancy.” In addition to this, existing routing protocols for MANETs usually take a single routing strategy for all ﬂows. This may lead to ine ﬃ cient use of resources. In this paper we propose a cross-layer route discovery framework (CRDF) to address these problems by exploiting the cross-layer information. CRDF solves the above problems e ﬃ ciently and enables a new technique: routing strategy automation (RoSAuto) . RoSAuto refers to the technique that each source node automatically decides the routing strategy based on the application requirements and each intermediate node further adapts the routing strategy so that the network resource usage can be optimized. To demonstrate the e ﬀ ectiveness and the e ﬃ ciency of CRDF, we design and evaluate a macrobian route discovery strategy under CRDF.


INTRODUCTION
A mobile ad hoc network (MANET) is an autonomous system comprising a set of mobile nodes that can move around freely. Because MANETs do not need any fixed infrastructure and can be easily and quickly deployed they have been attracting high interest in both military and civil applications. A MANET is generally formed as a multihop wireless network due to limited transmission range of wireless transceivers. Routing plays an important role in the operation of such a network. Each node acts as both a router and a host.
MANETs are considered to be (1) resource limited, for example, low wireless bandwidth, limited battery capacity and computing power, and (2) dynamic in nature, for example, topology dynamics (due to failures, joining/leaving, and/or mobility of nodes), resource variation (due to the consumption of resources or to the traffic flowing through the network), and channel dynamics (due to fading, multipath, interference, noise, and the like). The conventional routing protocols for fixed networks are no longer appropriate for MANETs due to (1) the heavy routing overheads that consume too many resources such as bandwidth and energy, and (2) the convergence time of the protocols which is too long compared with the dynamics of a MANET. Various routing protocols have been proposed to address above challenges. Existing MANET routing protocols can be generally classified into three categories: proactive, reactive, and hybrid. Proactive routing protocols, which are adapted from conventional routing protocols for wired networks, are tabledriven and rely on periodical exchange of route/link information. Each node maintains route entries to all other nodes of the entire network. In large and highly dynamic MANETs, frequent routing information exchanges have to be performed to keep routing information up to date, and this leads to heavy routing overhead and thus heavy resource consumption. Reactive and hybrid routing protocols have been proposed to address these problems [1,2,3,4,5,6,7,8]. In reactive routing protocols, each node only maintains active route entries and discovers routes only when needed. Routing overhead and routing table storage can thus be reduced. In hybrid protocols, a network is partitioned into clusters or zones. Proactive and reactive routing protocols are then deployed in intracluster/intrazone and intercluster/interzone, respectively. The major advantage of hybrid routing is improved scalability; however, hierarchical address assignment and zoning/clustering management are complicated and can lead to heavy control overheads in highly dynamic networks.
In this paper, we focus on route discovery strategies for reactive routing protocols in IEEE 802.11-based MANETs.
The operation of a reactive routing protocol has three basic stages: route discovery, packet delivery, and route maintenance. Different reactive routing protocols are distinguished by the different strategies used in route discovery and route maintenance. Generally, route discovery is more costly in a dynamic network since it may need several route discoveries in a communication session because of network dynamics.
Route discovery for reactive routing protocols usually works as follows.
(S1) Source S initiates a route request (RREQ) and broadcasts it to its neighbours. (S2) On receiving an RREQ, each node rebroadcasts it.
Each node usually only rebroadcasts the first copy of a RREQ so as to limit routing overhead. (S3) The destination D sends a route reply (RREP) to S when it receives RREQ(s) directed to it.
In step (S2), each node usually rebroadcasts an RREQ in a random delay, for example, in AODV [7] and DSR [8], so as to avoid "broadcast storm" due to synchronization as identi- fied by Ni et al. [9]. In this paper we abbreviate this random rebroadcast delay route discovery approach as RD-random. Li and Mohapatra [3] argued that RD-random might not find the most desirable route, and Zhou et al. [10] demonstrated that flooding, which is a broadcasting scheme using random rebroadcast delay, cannot guarantee the least delay. Figure 1 illustrates a route discovery scenario. Two of the possible paths from source S to destination D are shown in the figure, that is, path S-C-E-F-D and the shortest path S-A-B-D. Two problems exist if RD-random is applied in this scenario. (1) Path S-C-E-F-D may be selected instead of the shortest path S-A-B-D by the destination D because the next hop of a constructing path in RD-random is randomly selected. This phenomenon was identified as "next-hop racing" problem in [3]. (2) All nodes except for the destination D will rebroadcast the RREQ. This is not a serious problem in this scenario; however it will lead to heavy routing overhead and consequent implications such as extra bandwidth and energy consumption in a large-scale dynamic network. We identify this phenomenon as "rebroadcast redundancy" problem.
The key motivation of this paper is to address both these problems by introducing a cross-layer route discovery framework (CRDF) combining a virtual device information manager (VDIM) and a priority-based route discovery strategy (PRDS). CRDF also enables the technique of routing strategy automation (RoSAuto) for MANETs. RoSAuto refers to the technique that each source node automatically creates appropriate routing strategies as per the application requirements while intermediate nodes further adapt the routing strategy according to the available resources such as energy level and link capacity. By combining these two techniques, one can provide QoS routing while optimizing the resource utilization. To our knowledge, this is the first paper to address the RoSAuto concept in MANETs. Existing routing protocols usually implement a single routing strategy for all kinds of applications throughout the network.
The cross-layer design can be applied to a broad range of areas in mobile ad hoc networking. QoS provisioning is one of the most important research areas where the QoS routing plays a key role in providing paths with enough resources to deliver packets. Examples of cross-layer design for QoS provisioning in MANETs include an adaptive service model-utility-fair [16]-an adaptive resource management architecture-TIMELY [17]-an end-to-end QoS framework-INSIGNIA [18]-a per-flow dynamic QoS scheme-dRSVP protocol [19]-a distributed and stateless network model-SWAN [20]-and a bandwidth management scheme -BM [21].
In this paper, we specifically apply the cross-layer design in the routing area in MANETs. By exploiting the crosslayer information, the proposed routing framework can also meet the general requirements of QoS routing with the assumption of the availability of the relevant QoS parameters through cross-layer feedback.
The rest of this paper is organized as follows. Section 2 describes the related works including the cross-layer design and routing in mobile ad hoc networks. Details of CRDF are given in Section 3. As an example, a macrobian route strategy is described in Section 4. Simulation results can be found in Section 5. Finally, the paper is concluded in Section 6.

Cross-layer design in MANETs
The layering design of the standard protocol stacks has achieved great success [22] in wired networks. It separates abstraction from implementation and is thus consistent with sound software engineering principles-information hiding and end-to-end principle. However, protocol stack implementations based on layering do not function efficiently in mobile wireless environments [23]. This results from the highly variable nature of wireless links and the resource limitation nature of mobile nodes. As a solution, there has recently been a proliferation in the use of cross-layer design techniques in wireless networks.
The concept of cross-layer design is not new in the networking area. In some early works [24,25], cross-layer design has been proven to be effective in wired networks. However the cross-layer design principles have greater importance in ad hoc networks because of the unique features of these environments [26]. Firstly, different layers are more likely to use the same information in decision making. For example, the link and channel states, locations of the nodes, and topology information of the network are commonly used by both the routing and the application/middleware layers in computing routes and making higher-level decisions. Secondly, in a fast changing ad hoc environment, different layers need to cooperate closely to meet the QoS requirements of the mobile applications. This goal can be better achieved when the routing layer shares the MAC-layer information such as channel bandwidth, link quality, and the like.
Cross-layer design allows interaction between any layers. This means a layer can interact with layers above or below it. Raisinghani and Iyer [22] discussed the benefits of cross-layer feedback on the mobile device and presented an architecture to enable efficient cross-layer feedback.
Cross-layer feedback can be applied on each layer in the protocol stack [22,26,27]: (1) TCP may share packet loss and available throughput information with the application layer so that the application can adapt accordingly; (2) the link/MAC layer may adjust transmission power of the physical layer to control bit-error rate; (3) the network layer may adjust transmission power of the physical layer to control the topology; (4) packet scheduling may make use of the channel state information to adapt it to the dynamic environment.
In the work of Chen et al. [26], the middleware and the routing share information and actively communicate with each other to achieve high data accessibility for applications.
ElBatt et al. proposed a cross-layer scheme [28] to enhance the TCP performance by controlling the number of neighbours, which is in turn controlled by the adjustment of the transmission power. Balakrishnan et al. [29] proposed a link layer snoop on TCP packets to improve TCP performance. Yang et al. [30] presented an end-to-end link state aware TCP (TCP-ELSA) which adjusts the sending rate of a TCP flow according to the wireless link quality.
Nahrstedt et al. [27] presented a survey on cross-layer architectures for bandwidth management in wireless networks. Shah et al. [21] proposed a bandwidth management system for single-hop ad hoc wireless networks. The single-hop ad hoc wireless network, without a base-station, represents the network used in smart-rooms, hot-spot networks, emergency environments, and in-home networking. The architecture of the bandwidth management system consists of three major components: (a) rate adaptor (RA) at the application or middleware layer, which is used to regulate the applications' traffic; (b) per-node total bandwidth estimator (TBE) at the MAC-layer, which estimates the total network bandwidth for each flow sourced at the node it resides on; and (c) bandwidth manager (BM), which performs admission control. The architecture takes advantage of cross-layer interaction between the application/middleware and link layers. The bandwidth requirement at the application/middleware layer is mapped to a channel time proportion requirement at the MAC layer.
Some works use channel state information to optimize the packet scheduling [31]. Energy efficient wireless packet scheduling and fair queuing schemes were presented in [32]. In [33], a simple approach was proposed to adapt the existing packet fair queuing (PFQ) algorithms for the wired networks to provide the same kind of long-term fairness guarantees while making efficient use of the wireless bandwidth.
We can see from the above that different cross-layer design proposals are aimed at the same goal-achieving performance improvements in wireless environments.

Routing discovery strategies in MANETs
To address the problems discussed in Section 1, that is, the "next-hop racing" and the "rebroadcast redundancy," many new routing discovery strategies have been proposed in various kinds of routing protocols, which mostly take advantage of cross-layer information exchanges. We classify these strategies into three categories, namely better quality strategy, lower routing overhead strategy, and better quality and lower routing overhead strategy.

Better quality strategy
This class of strategy focuses on finding routes that have better quality. The quality of a route can be represented as route stability, load balance, energy awareness, and so forth. Most of the routing protocols falling into this category are QoS oriented.
The CEDAR routing algorithm presented by Sivakumar et al. [1] is a hierarchical routing approach. It uses the link state information, that is, bandwidth, to maintain a "core network" which comprises a set of nodes called the core. The core nodes try to dynamically maintain stable highbandwidth links. The selection of routes is done with the consideration of the quality of service a link could provide. A node joins or leaves the core responding to the available bandwidth.
Chen and Nahrstedt [2] proposed a tick-based QoS routing scheme which selects multiple paths using imprecise link state information such as delay and bandwidth. In their scheme, a ticket is the permission to search one path. The source node issues a number of tickets based on the available state information. The tickets are distributed amongst the neighbours according to their available resources.
Li and Mohapatra [15] proposed a positional attributebased-next-hop determination approach (PANDA) to address the "next-hop racing" problem. PANDA uses positional attributes such as relative distance, link lifetime, and transmission power consumption, to discriminate neighbouring nodes as good or bad candidates for the next hop. Good candidates have shorter rebroadcast RREQ delay than bad candidates. Better quality routes can then be found in this way as good next hop candidates usually rebroadcast RREQs more quickly.
Some efforts have been made to find stable or longerlived routes [13,14]. Toh [14] proposed an associativitybased routing (ABR) protocol for discovering longer-lived routes. ABR defines a new routing metric-associativity: the degree of association stability. Each node periodically issues beacons to signify its existence. A beacon triggers the associativity tick of receiving node with respect to the beaconing node to be incremented. In ABR, the destination selects the route with highest degree of association stability, which may indicate the relative mobility between nodes.
A signal stability-based adaptive routing protocol (SSA) [13], which is a logical descendant of ABR, was proposed to select routes based on signal strength. In SSA, a signal stability table (SST) is used to record the signal strength of neighbouring nodes; channels are discriminated as strong or weak according to signal strength. RREQs are rebroadcast only when they are received over strong channels and have not been processed before. The destination chooses the first arriving RREQ and replies to the source. The route chosen by the destination in this way may have strong stability because RREQs received over weak channels have been dropped at intermediate nodes.
Some solutions focus on traffic load balance in the network [11,12,34]. In [12], Lee and Gerla proposed a dynamic load aware routing (DLAR), which uses the load of the intermediate nodes as the main route selection metric. The network load of a mobile node is defined as the number of packets in its interface queue. Each intermediate node attaches its load information to RREQ and rebroadcasts it. The destination then selects the most proper route among all received routes and replies to the source. Similarly, Wu and Harms [34] proposed a load-sensitive routing (LSR) protocol. In LSR, the network load in a node, that is, traffic load, is defined as the summation of the number of packets being queued in the interfaces of the mobile node and its neighbours. LSR considers the total path load (cumulative traffic load along the path) as the main criterion and the standard deviation of path load as the second criterion in route selection. In [11], Katzela and Naghshineh proposed a loadbalanced ad hoc routing (LBAR) protocol. The load metric in a node is defined as the total number of routes passing through the node and its neighbours; the destination selects the least congested path based on this load metric.
Mobile nodes usually operate on batteries that have limited capacity. Thus, how to properly use the limited energy is a quite important issue in mobile ad hoc networks. Energy aware schemes try to optimize energy usage in the network. Some approaches try to achieve energy conservation by reconstructing the logical topology of the network [35]; others address the problem from a link cost viewpoint by identifying various energy-efficient cost metrics for routing [36,37]. Singh et al. [36] addressed the issue of increasing node and network life by taking power aware metrics into account in route discovery. They presented five power-aware metrics for route discovery, that is, minimum energy consumed/packet, maximize time to network partition, minimize variance in node power levels, minimize cost/packet, and minimize maximum node cost. These power-aware metrics focus on different power consumption issues.
In [38], a clustering scheme is applied to a wireless ad hoc network. Cluster heads then handle most of the routing load in a power-efficient manner. In [39], several algorithms for discovering energy efficient broadcast and multicast trees are presented. In [40], an energy efficient routing protocol evenly distributes the traffic load in the network in order to maximize the lifetime of the forwarding nodes.
Gomez et al. [41] proposed a dynamic power-controlled routing scheme (PARO) that helps to minimize the transmission power in forwarding packets in ad hoc networks. In PARO, one or more intermediate nodes called "redirectors" elects to forward packets on behalf of source-destination pairs. In [42] microsensor nodes use signal attenuation information to route packets towards a fixed destination known to all nodes in an energy efficient way.
Location-based routing schemes exploit the location information from the positioning system to predict new location, delay, and link lifetime, which are used for routing decisions and data forwarding so as to improve routing quality [43,44,45] or alleviate routing overhead [4,15].

Lower routing overhead strategy
Many techniques such as caching [8], query localization [46,47], and hybrid routing have been proposed to reduce routing overhead in MANETs. DSR uses route cache to reduce route discoveries when the requested route is available in the cache; AODV uses an expanding ring search to limit the RREQ flooding area.
Castaneda and Das [46] proposed query localization protocols based on the notion of spatial locality, namely, the fact that a mobile node cannot move too far too soon. When a route breaks up, the route rediscovery is limited in the vicinities of the previous route. Routing overhead can thus be reduced.
To overcome the high control overhead induced by uncontrolled flooding, the OLSR [48] imposes a hierarchy on the mobile ad hoc network. It adopts the MPR scheme, where certain nodes are elected as multipoint relays (MPRs) for their neighbourhoods. Nodes that are not MPRs receive and process the flooded messages from their neighbourhood MPRs, but do not rebroadcast them. Only the designated MPRs rebroadcast the flooded messages. Thus, overhead is reduced because there are fewer copies of the message in the network as compared to the number of copies that would be generated if un-controlled flooding was done.
Cluster-based [49] and zone-based [5,6] routing protocols usually use hybrid routing technique, namely, proactive in intracluster/intrazone routing and reactive in intercluster/interzone routing, to reduce routing overhead. Some control messages such as state information may only have to be propagated within a cluster or a zone.
Location-aided routing (LAR) [4] makes use of physical location information of destination node to reduce the search space for route discovery. LAR defines a request zone using location information which specifies where the destination node may reside in a high probability. It limits route discovery to the smaller request zone of the network. This results in a significant reduction in the number of routing messages.
Li and Mohapatra proposed a location-aided knowledge extraction routing (LAKER) protocol to reduce routing overhead [15]. LAKER utilizes a combination of caching strategy in dynamic source routing (DSR) and limited flooding area in location-aided routing (LAR) protocol [4]. It is suitable for the case where mobile nodes are not uniformly distributed. It gradually discovers geographical location information and constructs guiding routes in route discoveries, which can be further used to limit the search space in later route discoveries.

Better quality and lower routing overhead
All of the above approaches address either the "next-hop racing" or the "rebroadcast redundancy" as independent problems. Connected-dominating-set (CDS)-based approaches [50,53] potentially have the ability to deal with both problems. CDS-based approaches use neighbourhood or global information to select the set of nodes that form a CDS for the network where all nodes are either a member of the CDS or a direct neighbour of one of the members. Searching space for a route is reduced to nodes in the set. Wu et al. [50] proposed a method-calculating power-aware for connected dominating set to prolong the life span of the network. On the other hand, CDS-based approaches need to maintain 2-or 3-hop neighbour information or global topology information for CDS formation. It is difficult to keep this information up to date in a dynamic environment. In addition to this, CDS based solutions introduce the overhead of "hello" messages.
Cluster-based routing protocols could be used to solve both problems as well via proper adaptation. However, the clustering maintenance itself is difficult in a dynamic environment in addition to the extra control overhead.
In this paper, we propose a cross-layer route discovery framework (CRDF) to address both problems without extra control overhead. The kernel engine of the architecture is the priority-based route discovery strategy (PRDS) [51]. PRDS uses distributed algorithms with cross-layer information to construct quality routes while reducing the control overhead. PRDS is based on our previous work-a priority-based competitive broadcasting algorithm (PCBA) [10]. PCBA is an efficient broadcast protocol for MANETs. It enhances broadcast performance while reducing broadcasting overhead by using the priority-based competing mechanism. It sets rebroadcast priority in proportion to extra coverage area of a potential rebroadcast so as to propagate broadcast messages throughout the network quickly. In this paper, we improve the PCBA mechanism and use it in route discovery to solve both the "next-hop racing" problem and the "rebroadcast redundancy" problem.

CRDF overview
The cross-layer route discovery framework (CRDF) is designed to provide a flexible architecture for searching desirable routes with low control overhead and to enable RoSAuto for MANETs. CRDF is divided into two main parts: the priority-based route discovery strategy (PRDS) [51] and the virtual device information manager (VDIM). Figure 2a illustrates the logical relationship between the components of CRDF. Cross-layer information is provided by a set of APIs. In Figure 2a, VDIM manages cross-layer information and provides a set of unique APIs to access the information. Upper-layer agents manage the upper-layer information. Each device agent is responsible for communications with the related device driver and providing state information of the device. For example, a wireless device agent communicates with the wireless card driver and manages wireless information such as signal strength, channel state, and channel throughput; a global positioning system (GPS) agent communicates with GPS driver and manages position information of the node such as coordinates and velocity of the node and the time synchronized by the GPS satellites. The information provided by these agents can be accessed via APIs. PRDS exploits the cross-layer information to enable RoSAuto. In Figure 2b, RoSAuto automatically generates  appropriate routing strategies for different applications, for example, least delay path for real-time applications and least cost path for best-effort applications. The routing strategy is further adapted at intermediate nodes according to the availability of local resources, and this information is obtained from the lower layers in each intermediate node.
The mechanism for PRDS to solve the "next-hop racing" problem and the "rebroadcast redundancy" problem is easy to understand. It assigns a high rebroadcast priority to a "good" candidate for the next hop to solve the "next-hop racing" problem; it uses a competing procedure to prohibit "bad" candidates for the next hop from rebroadcast so as to solve "rebroadcast redundancy" problem. In PRDS, a "good" candidate for the next hop will go more "quickly" than a "bad" candidate. A "bad" candidate may quit the race if it feels that it has lost the competition. With this mechanism the first arriving RREQ at the destination has the high probability of having travelled through a desirable path comprising "good" candidates. The destination simply selects the path(s) through which the first or the first k arriving RREQ(s) have travelled. In the latter case, multiple paths can be used to distribute communication load.

The procedure of PRDS
In PRDS, each node maintains a competing state table (CST). A CST contains three fields.
(i) RREQ ID that is used to identify a unique RREQ. It is represented as "source ID, broadcast sequence". (ii) The duplicate number (n h ) of the same RREQ that a node has received. n h is initialised to 1 when a node receives the first copy of a new RREQ. It also represents the competing state. It is set to 0 when the competition is over. Any following RREQs will be deleted as long as their related n h equals 0. (iii) The timestamp of receiving the first copy of the RREQ.
This field is used to maintain the CST with a soft state, that is, timeout mechanism.  In PRDS, there are two kinds of events: receiving an RREQ event, which is triggered when a node receives an RREQ; and a rebroadcast delay time out event, which is triggered when a rebroadcast delay expires. When a node receives a new RREQ, it assesses itself on how well it can deal with the next hop of the constructing route by using a priority index (PI). PI is defined by some node/link/network state parameters provided by VDIM according to different route design purposes such as shortest path, long lifetime path, stable path, load/energy-aware path, and so forth. For convenience, we restrict the value of PI within [0, 1]. In the following, we will give some examples of PI for various route strategies.
When the PI has been estimated, the RREQ rebroadcast delay (d) is then calculated according to PI. The higher the PI is, the smaller d will be. The node schedules a rebroadcast event that will be triggered when the rebroadcast delay expires.
We preset a threshold (n 0 ) for the duplicate number of RREQ. When a rebroadcast delay times out, PRDS compares the RREQ duplicate number (n h ) with the threshold (n 0 ). The node will rebroadcast the RREQ if n h ≤ n 0 . Otherwise, the rebroadcast operation will be cancelled. We denote PRDS using different n 0 as PRDS /n 0 , for example, PRDS /1, PRDS /2, and so forth. The sequence of operations for PRDS is shown in Figure 3. Note that only those nodes that win the rebroadcast competition need to rebroadcast the RREQ.
As an example to demonstrate its operation, we apply PRDS /1 to the topology in Figure 1. Setting n 0 = 1 means that a node will be prohibited from rebroadcasting if it has received more than one copy of the RREQ when the rebroadcast delay expires. We simply take DIS /R as PI (thus this is the shortest path routing strategy), where DIS is the distance between the sender and receiver; R is the transmission range. In Figure 1, node S broadcasts an RREQ that is destined for node D. Node A, C, and G receive the RREQ and compete for rebroadcast. Node A has the highest rebroadcast priority since link S-A has the longest length. Node A wins the competition and rebroadcasts the RREQ first. Nodes G and C receive the second copy of the RREQ and thus are prohibited from rebroadcasting. Similarly, node B will rebroadcast the RREQ; nodes E and H are prohibited from rebroadcasting. Note that nodes F and I will rebroadcast the RREQ because they only receive one copy of the RREQ from node B (the destination D will not rebroadcast the RREQ). In this example, node S initiates an RREQ; nodes A, B, F, and I rebroadcast it in turn; other nodes, that is, C, E, G, and H are prohibited from rebroadcasting. That is, 4/8 of the rebroadcasts are eliminated and the shortest path S-A-B-D is selected.

Definition of PI and the rebroadcast delay
As we can see from the above, there are two important parameters in the system: the priority index (PI) and the rebroadcast delay (d).
PI is used to indicate how good the node is for the next hop of the constructing route. A large PI implies that the RREQ will go fast in the rebroadcast competition. The definition of PI should satisfy (a) PI ∈ [0, 1]; (b) a larger PI represents the higher priority of a node to rebroadcast the RREQ.
One can define a PI in many ways with respect to the routing requirements as long as the definition is in line with the above requirements.
To find a desirable route is usually a combinatorial optimization problem which is often a NP-problem, for example, the least delay and power efficient route with enough bandwidth. It needs global information to construct such routes, which is difficult to maintain in a distributed dynamic network. In PRDS, we propose to couple multiple requirements into a single parameter-PI.
We assume that there are k constraints for a route, namely α 1 , α 2 , . . . , α k . We then design k functions f α j for each α j , where j = 1, 2, . . . , k, and f α j ∈ [0, 1]. The larger f α j means the relevant requirement is more satisfied. We term the function f α j the contribution function. Examples of defining a contribution function can be found in Section 4. The following two functions are suggested for PI estimation: where c j ≥ 0, j = 1, . . . , k, and k j=1 c j = 1.
In (2), the contribution of f α j to PI is weighted by c j . It is obvious that both (1) and (2) satisfy the requirements for PI.
The next important parameter is the rebroadcast delay d. d should be defined as a bounded decrease function: d decreases as PI increases.
We provide two schemes to define d. In the first scheme, we divide the value range of the PI into M parts: The value of M is decided based on the control granularity. The typical value is 3 or 4.
The rebroadcast delay d is then defined as for PI ∈ [PI( j), PI( j + 1)), where δ is a pre-assigned small delay, for example, 5 milliseconds; random(·) is a random function uniformly distributed from 0 to 1.
In the second scheme, we define d as where d max is the upper bound of d; random(·) is the same as the one in (5). This term is used to differentiate rebroadcast delay when nodes have same PI value. f (·) is a function of PI that should satisfy the following requirements: (i) a bounded function with upper bound ≤ 1 and lower bound ≥ 0; (ii) f (·) decreases as PI increases. We define the function f (·) as follows: where tanh(x) is a hyperbolic tangent function; u 0 is a constant, and the value of 0.3 is appropriate for most cases (see Figure 4). f (PI) ∈ [0, 0.998] when PI ∈ [0, 1]. f (PI) decreases rapidly when PI approaches 1 so as to differentiate rebroadcast delay efficiently between high priority nodes.

Cross-layer parameters and routing strategies
Generally, each layer has its own state parameters that can be provided to other layers. As we focus on routing strategies, we only discuss routing relevant parameters in this paper.
(i) Application layer: application requirements such as delay, bandwidth, packet loss, and user priority could be used in the route construction.
(ii) TCP layer: TCP throughput and packet loss information could be exploited by the routing protocol.
(iii) Link/MAC/physical layer: link states (such as link lifetime, link bandwidth, and link stability), channel states (such as bit error rate, signal strength, and channel utilization), location information (such as coordinates, neighbour distribution, and mobility parameters), energy level, and transmission power could be used by the routing protocol to calculate PI.
(iv) Network layer: the routing protocol uses the parameters from upper/lower layers to construct desirable routes. Upper layers usually provide resource requirement information while lower layers provide resource availability information.
Based on the availability of the above cross-layer parameters, the following routing metrics are examples that could be used in CRDF.

Link lifetime and route lifetime
Based on the availability of the relevant parameters, link lifetime can be predicted either by the position/mobility information or by the signal strength and its temporal variation information. Route lifetime is the minimum link lifetime amongst the links along the route.

Route length
This is the number of hops of a route.

Delay
Average delay to send a packet on a link could be measured in the MAC layer. The end-to-end delay is the addition of each link delay along the route. The average medium access delay can also represent the medium state of how busy the channel is.

Bandwidth
The used bandwidth and the available bandwidth are important for applications with QoS requirements.

Node lifetime
This metric is based on the energy capacity of a node and the energy dissipation rate.

Energy level or energy capacity
This metric can be used in energy aware routing.

Location
Position, that is, the coordinate of a node, and mobility information, that is, the speed and direction, can be used in location-based routing.

Power
This is the power needed for a transceiver to transmit data over a link at different radio rate. This metric is desirable for power efficient routing.

Cost
The cost could be defined by a single metric or a combination of several metrics, for example, energy consumption, price, and the combination of delay and energy consumption.
A contribution function can be defined for each or a combination of the above metrics to characterize a specific routing strategy, for example, shortest path routing, least delay routing, and energy aware routing. By combining the specific routing strategies, one can "compose" flexible routing strategies, for example, long life least delay routing, energy efficient shortest path routing, and so forth.

Routing strategy automation
The continuous proliferation of wireless networks has triggered a plethora of research into how to provide quality of service (QoS) for different applications, for example, requirements regarding bandwidth, delay, jitter, packet loss, and reliability. Existing routing protocols usually employ a single routing strategy throughout the network for all types of applications. This can lead to inefficient use of the scarce resources with a resultant negative impact on the lifetime of the nodes in the network. CRDF enables the routing strategy automation to solve this problem, where each source node automatically constructs the appropriate routing strategy for different applications and each intermediate node further adapts the routing strategy.
In CRDF, when an application requests a new route, PRDS can obtain the application requirements from the VDIM. After that, PRDS decides the appropriate routing strategy for the application, for example, QoS routing strategies for real-time applications (such as VoIP and video conferencing) and least cost routing strategy for best-effort applications (such as FTP and email). The source node constructs the route request (RREQ) and broadcasts to its neighbours.
When an intermediate node receives an RREQ, it further adapts the routing strategy according to the available resources. For example, a node with low energy level may just simply ignore an RREQ or it may adjust the PI to a very small value if the RREQ represents a best-effort requirement. A MANET may include diversity mobile nodes which differ in energy capacity, computing power, memory capacity, physical size, and wireless interface type. When the routing strategy is further adapted by considering these factors, the overall network resources will be more reasonably allocated to different types of applications.

PRDS-MR
In this section, we demonstrate the effectiveness and efficiency of CRDF by designing a macrobian routing protocol using PRDS inside the CRDF. We term it PRDS-MR. We assume that (i) each node gets its own location and mobility knowledge from some positioning system via the VDIM; (ii) each node is equipped with an omni-directional transceiver that has a transmission range R. PRDS-MR aims at finding the route that has the following features in comparison with RD-random: the lifetime of the route is relatively long; the route length (hops) is not significantly long; routing overhead is minimised. What we need to do is just to define each contribution function and PI.
We first define two parameters: link alive time (LAT), route alive time (RAT), and the distance of a link (DIS). LAT is the amount of time during which two nodes remain connected. RAT is the minimum LAT of the links along the route from source to destination.
We denote the coordinates and moving speed of node i as (x i , y i , z i ) and (u i , v i , w i ), respectively. The distance between node 1 and node 2 can then be expressed as where A link exits between node 1 and node 2 if DIS ≤ R, that is, node 1 and node 2 can communicate with each other directly. The LAT of the link can be estimated as follows: where Now, we define contribution functions for the LAT, DIS, and RAT to meet the route requirements:  We choose (1) to define PI, that is, where f LAT is the contribution of the LAT of the upstream link. It is the main part of PI. It guarantees that the link with a larger LAT has a higher PI. f DIS is the contribution of the physical length of the upstream link. f RAT is the contribution of lifetime of the path from source to the current node. C 1 , C 2 , C 3 , LAT 0 , and RAT 0 are parameters whose values are chosen with respect to the routing requirements. By adjusting their values, we can change the relative contribution of each term in (12) to the PI. According to the purpose of PRDS-MR described at the beginning of this section, f LAT should play the main part in PI; f DIS prevents very short links from being included in the route; and f RAT prevents short lifetime routes from being selected. We choose the following parameters to meet these route selection criteria: LAT 0 = 100 seconds; RAT 0 = 10 seconds. Figure 5 illustrates a route discovery example using PRDS-MR. n 0 is set to 1 in this scenario. Node S broadcasts an RREQ to discover a route to node D. The numbers above a link are (LAT, RAT, DIS /R); the number under a link is the PI for the receiving node to compete for the RREQ rebroadcast. For example, numbers (60,50,0.9) above the link A-B mean that LAT of link A-B is 60 seconds; RAT of route S-A-B is 50 seconds; length of link A-B is 0.9R. The number 0.96 under link A-B means that the PI for node B allows the latter to compete for the RREQ rebroadcast. In the figure, node J is prohibited from broadcasting because link A-J is very short (so p DIS is very small). Node F is prohibited from rebroadcasting because the RAT of path S-E-F is very short (so p RAT is very small). In this example, two paths are discovered; path S-A-B-C-D is the first arrival that is then selected (RAT = 50 seconds); five nodes are prohibited from rebroadcasting.
We use (6) and (7) to estimate the rebroadcast delay.

SIMULATION RESULTS
To evaluate the performance of PRDS-MR, we have implemented PRDS-MR based on AODV. In this section, we conduct simulations in the global mobile simulation (Glo-MoSim) developing library [52]. We evaluate the performance of PRDS-MR by comparison with AODV. In the simulations, IEEE 802.11 distributed coordination function (DCF) is used as the MAC protocol. The random waypoint model is used as the mobility model. In this model, a host randomly selects a destination within the terrain range and moves towards that destination at a speed between the predefined minimum and maximum speed. Once the host arrives at the destination, it remains in its current position for a pause time. After the pause time, it randomly selects another destination and speed and then resumes movement. In our simulation, the pause time is set to 0 seconds. The bandwidth of the wireless channel is 2 Mbps. The data packet size is 512 bytes. The flow pattern is CBR (constant bit rate). The maximum rebroadcast delay d max in (1)

Scenario 1: scalability to network size
Protocol scalability is an important issue in MANETs. In some applications such as military communications in a tactical environment, thousands of mobile nodes may exist. In this simulation, network size varies from 50 to 1000 while keeping node density constant. Table 1 gives the simulation parameters. The purpose of this simulation is to demonstrate the scalability of the protocol, that is, how it performs against network size.
In the following figures, PRDS /n 0 -MR denotes simulation results of the protocol using PRDS /n 0 -MR mechanism, where n 0 is the threshold of the RREQ duplicate number as described above. n 0 = ALL means each node will rebroadcast every nonduplicated RREQ once. Figure 6a illustrates the average route lifetime of each scheme. It shows that route lifetimes of all PRDS /n 0 -MR schemes are nearly twice as long as AODV. In AODV, RDrandom is used in route discoveries; while in PRDS /n 0 -MR, the long lifetime links have the highest priority. The simulation results demonstrate that PRDS /n 0 -MR mechanism is effective. Lifetime of the route discovered by PRDS /n 0 -MR is significantly longer than that of AODV. Within PRDS /n 0 -MR schemes, PRDS /1-MR and PRDS /2-MR perform better than PRDS/ALL-MR.
The performance of PRDS against route length is shown in Figure 6b. The results show that the average route length of each PRDS /n 0 -MR scheme is 5%-14% longer than that of AODV. This is because PRDS /n 0 -MR schemes aim at finding the most stable route rather than the shortest route. The macrobian route tends to include shorter links than AODV and leads to longer paths. Considering the benefit from route lifetime, the cost in route length is worthy. PRDS /n 0 -MR leverages the route length and the route lifetime. Figure 6c shows the same variation tendency of routing overhead for all routing strategies. That is, routing overhead increases as network size increases. However it may be seen that the routing overhead of AODV increases much more rapidly than that of PRDS /n 0 -MR. The routing overhead of PRDS/ALL-MR, PRDS /1-MR, and PRDS /2-MR is only 42%, 11%, and 15% of that of AODV, respectively, when network size is 1000. The reasons for low routing overhead for PRDS /n 0 -MR are (1) macrobian route decreases the number of route discoveries; (2) a large amount of rebroadcasts are avoided in the route discoveries.
IEEE 802.11 DCF uses contending-based channel access scheme. It does not have any mechanism to reserve the channel for broadcast that is used by RREQ propagation. Thus, signal collisions are unavoidable in a real environment. We analyzed collision variance with respect to network size and found that the variance tendency is very similar to that of routing overhead shown in Figure 6c. This implies that signal collisions are highly correlated with routing overhead. Figure 6d illustrates the packet delivery ratio. As expected, the packet delivery ratio of each scheme decreases as network size increases. Otherwise, the packet delivery ratio of AODV decreases more quickly than that of any of the PRDS /n 0 -MR schemes. The difference between them increases as network size increases. The delivery ratio of PRDS /n 0 -MR is 2%-5% higher than AODV in 50-node network, while 20%-25% higher in 1000-node network. Among all schemes, PRDS /2-MR performs best; PRDS /1 and PRDS/ALL-MR perform similarly; AODV performs worst. Figure 6e presents the average end-to-end delay of each scheme. In general, delay of any scheme increases as network size increases. In small networks (network size is less than 100), the delay of AODV is lower than that of PRDS /n 0 -MR. On the other hand, the delay of AODV increases rapidly as network size increases and soon exceeds the delay of PRDS /n 0 -MR.

Scenario 2: dynamic adaptation
A MANET has the ability of fast deployment and each node can move around freely. One of the main features of a MANET is its dynamic topology that challenges any routing protocol designed for it. This simulation scenario demonstrates the performance differences between AODV and the PRDS-MR schemes on how well they adapt to a dynamically changing environment.
In the simulation, network size is 100 nodes; simulation area is 1500 m × 300 m; simulation time is 500 seconds; the number of communication pairs is 10; the packet sending rate for each communication pair is 4 pkts/s. The mobility model is random waypoint model where the minimum speed is 0 m/s while the maximum speed varies from 1 m/s to 25 m/s. Figure 7 gives performance difference between AODV and PRDS/MR schemes. Figure 7a shows that route lifetime of each PRDS/MR scheme is almost two times as much as that of AODV in any case. There appears to be no significant difference in route lifetime between the PRDS/MR schemes. Figure 7b shows that the average route length of AODV is shorter than that of each PRDS/MR scheme as expected. Figures 7c and 7d demonstrate that the PRDS/MR schemes utilize bandwidth more efficiently than AODV. Figure 7c shows that when the node speed increases the overhead of AODV increases more rapidly than any of the PRDS/MR schemes. Figure 7d shows the packet delivery ratio varying with node moving speed. It is clear that all of the PRDS/MR schemes outperform AODV.
When analyzing end-to-end delay (not shown in the figures), we found that the delay of AODV is smaller than that of PRDS/MR schemes when mobility is low. However, since AODV delay increases more quickly than that of PRDS/MR schemes, it becomes larger when mobility is high.
In addition to the above simulations, we have also conducted other simulations such as performance variance under various network load and communication pairs. All these simulations demonstrate that the PRDS/MR schemes outperform AODV in terms of packet delivery ratio, end-toend delay, and route lifetime while they reduce routing overhead significantly and consume much less network bandwidth and energy. The performance improvement obtained by the PRDS/MR schemes is an example of the gains from the cross-layer design in MANETs.

CONCLUSIONS
Current reactive routing protocols in mobile ad hoc networks (MANETS) employ random delays between rebroadcasting route requests. This has been shown to lead to "next-hop racing" and "rebroadcast redundancy." In this paper, a crosslayer route discovery framework (CRDF) has been proposed to address these problems. CRDF provides mechanisms to exploit the cross-layer information. In CRDF, a virtual device information manager (VDIM) provides cross-layer information; a novel route discovery strategy termed priority-based route discovery strategy (PRDS) serves as the kernel engine of the framework to utilize the cross-layer information in route discoveries. PRDS can be used to construct different routing strategies by defining different priority indices (PI) and has the ability to find better quality routes while decreasing routing overhead.
In addition to solving the "next hop racing" and the "rebroadcast redundancy" problems, the proposed framework, CRDF, enables routing strategy automation (RoSAuto), wherein the routing strategy is automatically decided by the source node with respect to the application requirements, and is further adapted by the intermediate nodes according to the availability of the local resources. This makes the routing strategy adaptive to the changing environment, and optimizes the resource usage. According to our best knowledge, this is the first time that an automated routing strategy such as RoSAuto has been considered for use in MANETs.
To demonstrate the effectiveness and efficiency of the proposed CRDF, we have designed a macrobian route discovery strategy (PRDS-MR) within the framework. Simulation results show that PRDS-MR outperforms AODV in terms of packet delivery ratio and end-to-end delay while reducing routing overhead significantly. PRDS-MR has better scalability than AODV.
PRDS-MR has additional advantages. It is a distributed algorithm and does not need any periodic messages such as beacons/hellos and link state exchanges. A macrobian route requires fewer route reconstructions and hence yields higher throughput and lower routing overhead. A large amount of redundant rebroadcasts are saved and therefore bandwidth and energy consumption by routing overhead is reduced, that is, it improves both bandwidth and energy utilization.
Future research directions include collaboration between CRDF and existing QoS mechanisms such as InerServ and DiffServ, development of the specific routing strategies such as energy aware and delay sensitive routing strategies. Another research direction is to adapt the CRDF to resource constraint wireless sensor networks.