Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Advanced Wireless Networks - 4G Technologies

.pdf
Скачиваний:
60
Добавлен:
17.08.2013
Размер:
21.94 Mб
Скачать

508 AD HOC NETWORKS

 

 

q2

 

 

Rn2

 

 

q1

 

 

q4

 

q3

n

Rn5

q5

R1n=V1nT1n

q6

 

Rn4

R6n

 

 

n'

 

 

 

 

(a)

q

n

Rn(t)

n'

(b)

Figure 13.40 Ad hoc mobility model node movement: (a) epoch random mobility vectors;

(b) ad hoc mobility model node movement.

the random ad hoc mobility model, each node’s movement consists of a sequence of random length intervals called mobility epochs during which a node moves in a constant direction at a constant speed. The speed and direction of each node varies randomly from epoch to epoch. Consequently, during epoch i of duration Tni , node n moves a distance of Vni Tni in a straight line at an angle of θni . The number of epochs during an interval of length t is the discrete random process Nn (t). Figure 13.40(a) illustrates the movement of the node over six mobility epochs, each of which is characterized by its direction, θni , and distance Vni Tni . The mobility profile of node n moving according to the random ad hoc mobility model requires three parameters: λn , μn and σn2. The following list defines these parameters and

CLUSTERING PROTOCOLS

509

states the assumptions made in developing this model:

(1)The epoch lengths are identically, independently distributed (i.i.d.) exponentially with mean 1n .

(2)The direction of the mobile node during each epoch is i.i.d. uniformly distributed over (0, 2π ) and remains constant only for the duration of the epoch.

(3)The speed during each epoch is an i.i.d. distributed random variable (e.g. i.i.d.

normal, i.i.d. uniform) with mean μn and variance σn2 and remains constant only for the duration of the epoch.

(4)Speed, direction and epoch length are uncorrelated.

(5)Mobility is uncorrelated among the nodes of a network, and links fail independently.

Nodes with limited transmission range are assumed to experience frequent random changes in speed and direction with respect to the length of time a link remains active between two nodes. Furthermore, it is assumed that the distributions of each node’s mobility characteristics change slowly relative to the rate of link failure. Consequently, the distribution of the number of mobility epochs is stationary and relatively large while a link is active. Since the epoch lengths are i.i.d. exponentially distributed, Nn (t) is a Poisson process with rate λn . Hence, the expected number of epochs experienced by node n during the interval (0,t)

while a link is active is λn t = 1.

These assumptions reflect a network environment in which there are a large number of heterogeneous nodes operating autonomously in an ad hoc fashion, which conceptually reflects the environment considered in the design of the (c,t) cluster framework. In order to characterize the availability of a link between two nodes over a period of time (t0, t0 + 1), the distribution of the mobility of one node with respect to the other must be determined. To characterize this distribution, it is first necessary to derive the mobility distribution of a single node in isolation. The single node distribution is extended to derive the joint mobility distribution that accounts for the mobility of one node with respect to the other. Using this joint mobility distribution, the link availability distribution is derived.

The random mobility vector can be expressed as a random sum of the epoch random mobility vectors

Nn (t) Rn (t) = Rin

i=1

as shown in Figure 13.40(b). Let be Rn (t) the resulting random mobility vector of a mobile node which is located at position [X(t0), Y (t0)] at time t0 and moves according to a random ad hoc mobility profile, λn , μn , σn2 . The phase of the resultant vector Rn (t) is uniformly distributed over (0, 2π ) and its magnitude represents the aggregate distance moved by the node and is approximately Raleigh distributed with parameter

αn = (2tn ) (σn2 + μn2 )

 

Pr (θn φ) = φ/2π, 0 φ 2π

(13.8)

Pr[Rn (t) r] 1 exp(r2n ), 0 r ≤ ∞

(13.9)

The derivation of these distributions is an application of the classic theory of uniform random phasor sums [80] that applies central limit theorem to a large number of i.i.d. variables.

510 AD HOC NETWORKS

Joint node mobility

Based on the assumption of random link failures, we can consider the mobility of two nodes at a time by fixing the frame of reference of one node with respect to the other. This transformation is accomplished by treating one of the nodes as if it were the base station of a cell, keeping it at a fixed position. For each movement of this node, the other node is translated an equal distance in the opposite direction. So, the vector Rm,n (t) = Rm (t) Rn (t), representing the equivalent random mobility vector of node m with respect to node n, is obtained by fixing m’s frame of reference to n’s position and moving m relative to that point. Its phase is uniformly distributed over (0, 2π ) and its magnitude has Raleigh distribution with parameter αm,n = αm + αn .

Random ad hoc link availability

If Lm,n (t) = 1 denotes an active and Lm,n (t) = 0 an inactive link, then for nodes n and m, link availability is defined as

Am,n (t) Pr[Lm,n (t0 + t) = 1 | Lm,n (t0) = 1]

(13.10)

Note that a link is still considered available at time t even if it experienced failures during one or more intervals (ti , t j ); t0 < ti < t j < t0 + t. By definition, if m lies within the circular region of radius R centered at n, the link between the two nodes is considered to be active.

Depending on the initial status and location of nodes m and n, two distinct cases of link availability can be identified.

(1)Node activation – node m becomes active at time t0, and it is assumed to be at a random location within range of node n. In this case we have

 

 

 

 

 

1

, 2, R2m,n

 

Am,n (t)

1

 

 

2

 

 

1

, 2, z

 

= ez/2 [I0(z/2) I1(z/2)]

 

 

 

 

(13.11)

2

α

m,n =

2t

 

σm2 + μm2

+

σn2

+ μn2

 

 

 

 

λm

 

λn

 

(2)Link activation: node m moves within range of node n at time t0 by reaching the boundary defined by R, and it is assumed to be located at a random point around the boundary. In this case we have

Am,n (t) =

1

1 I0(2R2m,n ) exp(2R2m,n )

(13.12)

2

Random ad hoc path availability

Let Pmk ,n (t) indicate the status of path k from node n to node m at time t. Pmk ,n (t) = 1if all the links in the path are active at time t, and Pmk ,n (t) = 0 if one or more links in the path are inactive at time t. The path availability πmk ,n (t) between two nodes n and m at time t t0 is given by the following probability

πmk ,n (t) Pr Pmk ,n (t0 + t) = 1 Pmk ,n (t0 = 1) =

Ai, j (t0 + t)

(13.13)

 

(i, j) k

 

CLUSTERING PROTOCOLS

511

If πmk ,n (t) is the path availability of path k from node n to node m at time t, then path k is defined as an (c,t) path if and only if

πmk ,n (t) c

(13.14)

Node n and node m are (c,t) available if they are mutually reachable over (c,t) paths. An (c,t) cluster is a set of (c,t) available nodes. This definition states that every node in an (c,t) cluster has a path to every other node in the cluster that will be available at time t0 + t with a probability c.

Path availability cost calculation

The above discussion demonstrates how the link availability can be calculated, thereby providing a link metric that represents a probabilistic measure of path availability. This metric can be used by the routing algorithm in order to construct paths that support a lower bound c on availability of a path over an interval of length t. The availabilities of each of the links along a path are used by the (c,t) cluster protocol to determine if the path is an (c,t) path, and consequently, if a cluster satisfies the (c,t) criteria. In order to support this functionality in an ad hoc network, the routing protocol must maintain and disseminate the following status information for each link:

(1)the initial link activation time, t0;

(2)the mobility profiles for each of the adjacent nodes λi , μi , σi2 , i = m, n;

(3)the transmission range of each of the adjacent nodes, R;

(4)the event which activated the link: (a) node activation at time t0 or (b) nodes moving into range of each other at time t0.

Based on this information, any node in an (c,t) cluster can estimate, at any time τ , the availability of a link at time t + τ . This can be achieved because each node knows the initial link activation time t0; hence, link availability is evaluated over the interval (t0, t + τ ). Nodes can use conditional probability to evaluate the availability of their own links because they have direct knowledge of such a link’s status at time τ , whereas remote nodes do not. Specifically, for an incident link that activated at time t0, a node will evaluate the availability at time t, given that it is available at time τ t0.

13.5.3.4 Performance example

A range of node mobility with mean speeds between 5.0 and 25.0 km/h was simulated in McDonald and Znati [74]. The speeds during each mobility epoch were normally distributed, and the direction was uniformly distributed over (0, 2π ). A node activation rate of 250 nodes/h was used. The mean time to node deactivation was 1 h. Nodes were initially randomly activated within a bounded region of 5 × 5 km. Nodes that moved beyond this boundary were no longer considered to be part of the ad hoc network and were effectively deactivated. (c,t) path availability was evaluated using Dijkstra’s algorithm.

For each simulation run, data was collected by sampling the network status once per second over an observation interval of 1 h. The first 2 h of each run were discarded to eliminate transient effects, and each simulation was rerun 10 times with new random seeds.

512 AD HOC NETWORKS

Simulation results for cluster size and cluster survival times are given in Figures 13.40 and and 13.41. Finally logical relationships among MANET network-layer entities is given in Figure 13.42.

13.6 CASHING SCHEMES FOR ROUTING

A large class of routing protocols for MANETs, namely reactive protocols, employ some form of caching to reduce the number of route discoveries. The simplest form of caching is based on timeouts associated with cache entries. When an entry is cached, a timer starts. When the timeout elapses, the entry is removed from the cache. Each time the entry is used, the timer restarts. Therefore, the effectiveness of such a scheme depends on the timeout

(a)

 

 

 

 

 

 

25

 

 

 

 

 

(number-of-nodes)

20

 

 

 

t = 1 min

 

 

 

 

t = 5 min

 

 

 

 

 

 

15

 

 

 

 

 

 

 

 

 

 

 

size

10

 

 

 

 

 

cluster

 

 

 

 

 

 

 

 

 

 

 

Mean

5

 

 

 

 

 

 

 

 

 

 

 

 

0

 

 

 

 

 

 

0

5

10

15

20

25

Mean mobile speed (km/h)

(b)

 

 

 

 

 

 

6

 

 

 

 

 

(number-of-nodes)

5.5

 

 

a

= 0.4

 

5

 

 

 

 

 

a

= 0.2

 

 

 

 

 

4.5

 

 

 

 

 

4

 

 

 

 

 

3.5

 

 

 

 

 

size

 

 

 

 

 

3

 

 

 

 

 

cluster

 

 

 

 

 

2.5

 

 

 

 

 

 

 

 

 

 

 

Mean

2

 

 

 

 

 

1.5

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

0

5

10

15

20

25

Mean mobile speed (km/h)

Figure 13.41 Simulation results: (a) cluster size (R = 1000 m); (b) cluster size (R = 500 m); (c) cluster survival (R = 1000 m); and (d) cluster survival (R = 500 m). (Reproduced by permission of IEEE [74].)

(c)

 

 

 

 

 

 

90

 

 

 

 

 

 

80

 

 

 

t = 1 min

 

 

 

 

 

 

 

 

70

 

 

 

t = 5 min

 

 

 

 

 

 

 

(min)

60

 

 

 

 

 

50

 

 

 

 

 

age

 

 

 

 

 

 

 

 

 

 

 

Cluster

40

 

 

 

 

 

30

 

 

 

 

 

 

 

 

 

 

 

 

20

 

 

 

 

 

 

10

 

 

 

 

 

 

0

 

 

 

 

 

 

0

5

10

15

20

25

 

 

 

Mean mobile node speed (km/h)

 

 

(d)

 

 

 

 

 

 

45

 

 

 

 

 

 

40

 

 

 

a = 0,4.

 

 

35

 

 

 

a = 0.,2

 

 

 

 

 

 

 

(min)

30

 

 

 

 

 

25

 

 

 

 

 

age

 

 

 

 

 

 

 

 

 

 

 

Cluster

20

 

 

 

 

 

15

 

 

 

 

 

 

 

 

 

 

 

 

10

 

 

 

 

 

 

5

 

 

 

 

 

 

0

 

 

 

 

 

 

0

5

10

15

20

25

 

 

 

Mean mobile node speed (km/h)

 

 

Figure 13.41 Continued.

Routing protocol

Routing table

(α,t)-cluster algorithm protocols

Network-Iinterface MANET Eencapsulatition

Layerlayer

Pprotocol

Internet protocol

Figure 13.42 Logical relationships among MANET network-layer entities.

514 AD HOC NETWORKS

value associated with a cached route. If the timeout is well-tuned, the protocol performance increases; otherwise, a severe degradation arises as entries are removed either prematurely or too late from the cache.

13.6.1 Cache management

A cache scheme is characterized by the following set of design choices that specify cache management in terms of space (cache structure) and time (i.e. when to read/add/ delete a cache entry): store policy, read policy, writing policy and deletion policy.

The store policy determines the structure of the route cache. Recently, two different cache structures were studied [81], namely link cache and path cache, and applied to DSR. In a link cache structure, each individual link in the routes returned in RREP packets is added to a unified graph data structure, managed at each node, that reflects the node’s current view of the network topology. In so doing, new paths can be calculated by merging route information gained from different packets. In the path cache, however, each node stores a set of complete paths starting from itself. The implementation of the latter structure is easier compared with the former, but it does not permit inference of new routes and exploitation of all topology information available at a node.

The reading policy determines rules of using a cache entry. Besides the straightforward use from the source node when sending a new message, several other strategies are possible. For example, DSR defines the following policies:

cache reply – an intermediate node can reply to a route request with information stored in its own cache;

salvaging – an intermediate node can use a path from its own cache when a data packet meets a broken link on its source route;

gratuitous reply – a node runs the interface in the promiscuous mode and it listens for packets not directed to itself. If the node has a better route to the destination node of a packet, it sends a gratuitous reply to the source node with this new better route.

The writing policy determines when and which information has to be cached. Owing to the broadcast nature of radio transmissions, it is quite easy for a node to learn about new paths by running its radio interface in the promiscuous mode. The main problem for the writing policy is indeed to cache valid paths. Negative caches are a technique proposed in Johnson and Maltz [82] and adapted in Marina and Das [83] to filter the writing of cache entries in DSR out. A node stores negative caches for broken links seen either via the route error control packets or link layer for a period of time of δt s. Within this time interval, the writing of a new route cache that contains a cached broken link is disabled.

The deletion policy determines which information has to be removed from the cache and when. Deletion policy is actually the most critical part of a cache scheme. Two kinds of ‘errors’ can occur, owing to an imprecise erasure: (1) early deletion, a cached route is removed when it is still valid; and (2) late deletion, a cached route is not removed even if it is no longer valid.

The visible effect of these kinds of errors is a reduction in the packet delivery fraction and an increase in the routing overhead (the total number of overhead packets) [84]. Late deletions create the potential risk of an avalanche effect, especially at high load. If a node replies with a stale route, the incorrect information may be cached by other nodes and, in turn, used as a reply to a discovery. Thus, cache ‘pollution’ can propagate fairly quickly [83].

CASHING SCHEMES FOR ROUTING

515

Caching schemes in DSR

All such schemes rely on a local timer-based deletion policy [81, 84]. The only exception has been proposed in Marina and Das [83]. They introduce a reactive caching deletion policy, namely, the wider error notification, that propagates route errors to all the nodes, forcing each node to delete stale entries from its cache.

Simulation results reported in References [81, 83] show that performance of a timerbased caching deletion policy is highly affected by the choice of the timeout associated with each entry. In the path cache, for a value of timeout lower than the optimal one (i.e. early deletion), the packet delivery fraction and routing overhead are worse than caching schemes that do not use any timeout. In the link cache, late deletion errors increase the routing overhead while the packet delivery fraction falls sharply.

The cache timeout can obviously be tuned dynamically. However, adaptive timer-based deletion policies have their own drawbacks. This policy suffers from late or early deletion errors during the transition time from one optimal timeout value to the successive one. So, the more the network and the data load are variable, the worse the performance will be.

To reduce the effect of such imprecise deletions, the adaptive timer-based cache scheme has been combined with the wide error notification deletion technique and studied for DSR in Perkins and Royer [17]. According to such a combined scheme, routes that become stale before their timeout expiration are removed reactively from all the sources using that route. In this combined technique, however, two more points remain unresolved: (1) Owing to the reactive nature of the deletions, if a cache entry is not used, it remains in the cache, even if no longer valid, thus it can be used as a reply to a path discovery and (2) the effect of early deletions cannot be avoided.

Caching schemes in ZRP

The caching zone with radius k for a cache leader n is defined as the set of nodes at a distance of at most k hops from n. An active path is created as a result of the discover phase and it is composed of a set of nodes, referred to as active nodes, forming a path from a source node S to a destination node D. Cache leader nodes are a subset of the active nodes.

The key consideration is to avoid the possibility that nodes can cache route information autonomously. Therefore, a cache leader n is the only node that is authorized to advertise route information inside its caching zone which is written into caches. On receiving the advertising message, a node proactively maintains a path to n so that it can be used as the next-hop node to any of the advertised routes. A cache leader is responsible for the validity of the advertised routes. Thus, it monitors such routes and forces each node in its caching zone to remove a route as soon as it becomes stale, so the deletion policy is proactive. Let us note that, if we consider k = k and each node of a ZRP interzone path as a cache leader, we get the same underlying zone structure of ZRP (this implies that each active node is a cache leader). However, more generally, a cache leader can decide to advertise paths only to those nodes located at a distance k < k, and not all active nodes need to be cache leaders.

Implementation of C-ZRP

For simplicity, the implementation assumes:

(1)k = k*.

(2)All active nodes act as cache leader nodes and vice versa.

516AD HOC NETWORKS

(3)Only paths to active nodes are advertised as external routes.

(4)Caches are managed using explicit injection/deletion messages.

(5)To stop redundant query threads, LT (loop back termination), QD2 (query detection) and ET (early termination) redundant filtering rules are used which have been described earlier in this chapter.

When a node S, in Figure 13.43, executes a route request for a node D, an interzone path from S to D is identified. A node Bi belonging to an interzone path is an active node for the caching scheme. In Figure 13.43 an interzone path between S and D is formed by nodes b, e, p and t. Thus, an interzone path is also an active path. An interzone path is stored according to a distributed next-hop fashion, where the next-hop node is an active node. Bi stores Bi+1 as the next-hop active node for all the downstream nodes from Bi+2 to BM+1 and Bi1 as the next-hop active node for all the upstream nodes from B0 to Bi2. These two

IZT

 

 

 

D

 

 

t=B4

IZT

 

 

 

 

 

 

r

 

q

 

p=B3

 

 

 

 

 

 

IZT

 

n

 

 

 

 

m

 

k

 

 

IZT

 

 

i

e=B2

 

 

 

g

 

 

h

 

 

b=B1

IZT

f

 

 

o

a c

S

IZT

r

r

1

 

 

 

t

r

2

 

 

 

 

 

 

q

q

1

 

 

 

r

r

1

 

 

 

p

q

2

 

 

 

D

r

2

 

 

 

 

 

 

m

m

1

 

 

 

q

q

1

 

 

 

e

m

2

 

 

 

t

q

2

 

 

 

 

 

 

h

h

1

 

 

 

m

m

1

 

 

 

l

h

2

 

 

 

p

m

2

 

 

 

n

m

2

 

 

 

b

h

2

 

 

 

 

 

 

a

a

1

 

 

 

f

f

1

 

 

 

h

h

1

 

 

 

S

a

2

 

 

 

c

a

2

 

 

 

g

f

2

 

 

 

l

h

2

 

 

 

e

h

2

 

 

 

 

 

 

a

a

1

 

 

 

c

a

2

 

 

 

b

a

2

 

 

 

EZT

p

t

2

 

 

 

 

 

 

 

 

 

 

 

 

 

e

t

3

 

 

 

 

 

 

 

 

 

 

 

 

 

b

t

4

 

 

 

 

 

 

 

 

 

 

 

 

 

S

t

5

 

 

EZT

 

 

 

 

 

 

 

 

 

 

 

 

 

S

p

4

 

 

 

 

 

 

 

 

 

 

 

 

 

b

p

3

 

 

 

 

 

 

 

 

 

 

 

 

 

e

p

2

 

 

 

 

 

 

 

 

 

EZT

 

 

 

 

 

S

e

3

 

 

 

 

 

 

 

 

 

 

 

 

 

b

e

2

 

 

 

 

 

 

 

 

 

 

 

 

 

D

t

2

 

 

EZT

 

 

 

 

 

S

b

2

 

 

 

 

 

 

 

 

 

 

 

 

 

t

p

2

 

 

 

 

 

 

 

 

 

 

 

 

 

D

p

3

 

 

EZT

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

p

e

2

 

 

 

 

 

 

 

 

 

 

 

 

 

t

e

3

 

 

 

 

 

 

 

 

 

 

 

 

 

D

e

4

 

 

 

 

 

 

 

 

 

 

EZT

 

 

 

 

 

e

b

2

 

 

 

 

 

 

 

 

 

 

 

 

 

p

b

3

 

 

 

 

 

 

 

 

 

 

 

 

 

t

b

4

 

 

 

 

 

 

 

 

 

 

 

 

 

D

b

5

 

 

 

 

 

 

 

 

 

 

Node D

IZP=(ID,B3,D)

Node B4

IZP=(ID,B2,B4)

Node B3

IZP=(ID,B1,B3)

Node B2

IZP=(ID,S,B2)

Node B1

Node S

Figure 13.43 An example of values of data structures used in C-ZRP, k = 2.

CASHING SCHEMES FOR ROUTING

517

active nodes will be referred to as companion nodes (as an example, the companion nodes of node b, with respect to the interzone path from S to D are S and e).

All routing information concerning nodes belonging to an interzone path is advertised inside the caching zone of each member of the path, which thus acts as cache leader for that information. Such routes are then maintained proactively by the IARP. If a new node joins Bi ’s zone, it acquires, by means of the IARP, all previously advertised routing information by Bi . Since a node may belong to more than one overlapping zone, it can acquire more than a single path to the same destination.

When a node, say Bi+1, leaves Bi ’s routing zone, not all the routing information gathered during the route request/reply is lost. Roughly speaking, two active paths from S to Bi1 and from Bi+1 to D are still up. Hence, all the routing information concerning these subpaths is still valid. However, nodes B0, . . . ,Bi1 (Bi1, . . . ,BM+1) notify the nodes inside their own zones, using a delete control message, that the destinations Bi1, . . . ,BM+1 (B0, . . . ,Bi ) are no longer reachable.

Data structures

Each node X uses the following local data structures:

Internal zone routing table (IZT) – an entry of IZT is a triple (d, n, #h), where d is the destination node, n is the next-hop node (located in X’s transmission range), and #h is the path cost in number of hops.

External zone routing table (EZT) – a row of EZT is a triple (d, n, #z), where d is the destination node, n is the next-hop active node (n belongs to X’s routing zone and is not restricted to be in its transmission range), and #z is the cost of the path from X to d, given as the number of active nodes that have to be traversed. For example, in Figure 13.43, node b sets node e as the next-hop active node for p with cost two (nodes e and p).

Interzone path table (IZP) – an interzone path corresponds to an entry in X’s IZP table provided that X is an active node and (X =S,D). In this case, let the path id be ID and X = Bi . The entry is the triple (ID, Bi1, Bi+1).

Reachable nodes (RN) list – this is a sequence of pairs (d,#z), where d is an active node belonging to an interzone path and #z is the cost of the path from X expressed as number of active nodes that must be traversed to reach d. A node X advertises RN to nodes belonging to Zk (X). RN includes the projection of EZT along the first and third components. For example, node b of Figure 13.43 will include the pairs (p, 2), (t, 3), and (D, 4) in RN.

Unreachable nodes (UN) set – this set of nodes is used to advertise destinations that become unreachable.

Interzone path creation

A single interzone path from S to D is created during a route request/reply cycle by allowing only the destination D to send a single reply for a given request. The path is tagged with a unique identifier ID, for example, obtained by using increasing sequence numbers generated by the requesting node. When S triggers a new route discovery for a node D, it bordercasts a query message to all its border nodes. The message contains the identifier ID and a route