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 activat
Trang 1CLUSTERING PROTOCOLS 507
availability associated with each neighbor according to either a system default mobilityprofile or mobility information obtained through the network-interface layer protocol orphysical-layer sensing The precise methodology and the information required for the eval-uation of link availability is described later in this section
Finally, the neighbors, having discovered the unclustered status of the source node,automatically generate and transmit complete cluster topology information, which theyhave stored locally as a result of participating in the cluster’s intracluster routing protocol.This topology synchronization function is a standard feature of typical proactive routingprotocols when a router discovers the activation of a link to a new router The source nodedoes not immediately send its topology information to any of the neighbors
Link activation
A link activation detected by a clustered node that is not an orphan is treated as an intraclusterrouting event Hence, the topology update will be disseminated throughout the cluster.Unlike reactive routing that responds after path failure, the dissemination of link activation
updates is a key factor to an (c,t) cluster node’s ability to find new (c,t) paths in anticipation
of future link failures or the expiration of the timer
Link failure
The objective of a node detecting a link failure is to determine if the link failure has caused
the loss of any (c,t) paths to destinations in the cluster A node’s response to a link failure
event is twofold First, each node must update its view of the cluster topology and re-evaluatethe path availability to each of the cluster destinations remaining in the node’s routing table.Second, each node forwards information regarding the link failure to the remaining clusterdestinations
Expiration of c timer
The c timer controls cluster maintenance through periodic execution of the intracluster
routing algorithm at each node in a cluster Using the topology information available ateach node, the current link availability information is estimated and maximum availability
paths are calculated to each destination node in the cluster If any of the paths are not (c,t)
paths, then the node leaves the cluster
Node deactivation
The event of node deactivation encompasses four related events, namely, graceful vation, sudden failure, cluster disconnection and voluntary departure from the cluster Ingeneral, each of these events triggers a response by the routing protocol As a result, nodesdetermine that the node that has deactivated is no longer reachable
deacti-13.5.3.3 Ad hoc mobility model
The random ad hoc mobility model used in this section is a continuous-time stochastic
process, which characterizes the movement of nodes in a two-dimensional space Based on
Trang 2Figure 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 T i
n , node n moves a distance of V i
n T i
n in
a straight line at an angle ofθ i
n The number of epochs during an interval of length t is the discrete random process N n (t) Figure 13.40(a) illustrates the movement of the node over
six mobility epochs, each of which is characterized by its direction,θ i
n , and distance V i
n T i
n
The mobility profile of node n moving according to the random ad hoc mobility model
requires three parameters:λ n , μ n andσ2 The following list defines these parameters and
Trang 3CLUSTERING PROTOCOLS 509
states the assumptions made in developing this model:
(1) The epoch lengths are identically, independently distributed (i.i.d.) exponentiallywith mean 1/λ n
(2) The direction of the mobile node during each epoch is i.i.d uniformly distributedover (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μ nand varianceσ2and remains constant only forthe 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 twonodes Furthermore, it is assumed that the distributions of each node’s mobility character-istics change slowly relative to the rate of link failure Consequently, the distribution of thenumber of mobility epochs is stationary and relatively large while a link is active Since
the epoch lengths are i.i.d exponentially distributed, N n (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 asingle node in isolation The single node distribution is extended to derive the joint mobilitydistribution that accounts for the mobility of one node with respect to the other Using thisjoint mobility distribution, the link availability distribution is derived
The random mobility vector can be expressed as a random sum of the epoch randommobility vectors
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
Trang 4Joint node mobility
Based on the assumption of random link failures, we can consider the mobility of twonodes 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 basestation 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 L m ,n (t) = 1 denotes an active and L m ,n (t) = 0 an inactive link, then for nodes n and m,
link availability is defined as
A m ,n (t) ≡ Pr[L m ,n 0+ t) = 1 | L m ,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 (t i , t j ); t0< t i < 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
A m ,n (t) ≈ 1 −
1
2, 2, −R2/α m ,n
1
(2) Link activation: node m moves within range of node n at time t0by 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
the links in the path are active at time t , and P k
m ,n (t)= 0 if one or more links in the path are
inactive at time t The path availability π k
m ,n (t) between two nodes n and m at time t ≥ t0
is given by the following probability
Trang 5a probability≥ c.
Path availability cost calculation
The above discussion demonstrates how the link availability can be calculated, therebyproviding a link metric that represents a probabilistic measure of path availability Thismetric 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 , σ2
i
, 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 t0or (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 becausethey 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 inMcDonald 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 initiallyrandomly 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 persecond over an observation interval of 1 h The first 2 h of each run were discarded toeliminate transient effects, and each simulation was rerun 10 times with new random seeds
Trang 6Simulation results for cluster size and cluster survival times are given in Figures 13.40 andand 13.41 Finally logical relationships among MANET network-layer entities is given inFigure 13.42.
13.6 CASHING SCHEMES FOR ROUTING
A large class of routing protocols for MANETs, namely reactive protocols, employ someform 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
0 5 10 15 20 25
Mean mobile speed (km/h)
.4
0 5 10 15 20 25
t = 1 min
t = 5 min
1 1.5 2 2.5 3 3.5 4 4.5 5 5.5 6
(a)
(b)
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].)
Trang 70 10 20 30 40 50 60 70 80 90
t = 1 min
t = 5 min
0 5 10 15 20 25 30 35 40 45
0,4 = 0,2
0 10 20 30 40 50 60 70 80 90
Mean mobile node speed (km/h)
Mean mobile node speed (km/h)
t = 1 min
t = 5 min
0 5 10 15 20 25 30 35 40 45
= 0.4 = 0.2 a a
Internet protocol
Network-Interface Layer
Routing protocol
(α,t)-cluster
algorithm protocols
MANET encapsulation protocol
Internet protocol
Network-interface layer
Routing table
Figure 13.42 Logical relationships among MANET network-layer entities
513
Trang 8value associated with a cached route If the timeout is well-tuned, the protocol performanceincreases; 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 cachemanagement in terms of space (cache structure) and time (i.e when to read/add/ delete acache 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 alink 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 currentview of the network topology In so doing, new paths can be calculated by merging routeinformation gained from different packets In the path cache, however, each node stores aset of complete paths starting from itself The implementation of the latter structure is easiercompared 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:
r cache reply – an intermediate node can reply to a route request with information stored
in its own cache;
r salvaging – an intermediate node can use a path from its own cache when a data packet
meets a broken link on its source route;
r 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 apacket, 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 newpaths by running its radio interface in the promiscuous mode The main problem for thewriting policy is indeed to cache valid paths Negative caches are a technique proposed inJohnson and Maltz [82] and adapted in Marina and Das [83] to filter the writing of cacheentries in DSR out A node stores negative caches for broken links seen either via the routeerror 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 fractionand an increase in the routing overhead (the total number of overhead packets) [84] Latedeletions create the potential risk of an avalanche effect, especially at high load If a nodereplies with a stale route, the incorrect information may be cached by other nodes and, inturn, used as a reply to a discovery Thus, cache ‘pollution’ can propagate fairly quickly [83]
Trang 9CASHING SCHEMES FOR ROUTING 515
Caching schemes in DSR
All such schemes rely on a local timer-based deletion policy [81, 84] The only exceptionhas been proposed in Marina and Das [83] They introduce a reactive caching deletionpolicy, 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 based caching deletion policy is highly affected by the choice of the timeout associatedwith 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 cachingschemes that do not use any timeout In the link cache, late deletion errors increase therouting overhead while the packet delivery fraction falls sharply
timer-The cache timeout can obviously be tuned dynamically However, adaptive timer-baseddeletion policies have their own drawbacks This policy suffers from late or early deletionerrors 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 schemehas 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 stalebefore 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 thereactive 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 earlydeletions cannot be avoided
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 cachingzone 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 acache 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.
Trang 10(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 tion) and ET (early termination) redundant filtering rules are used which have beendescribed earlier in this chapter
detec-When a node S, in Figure 13.43, executes a route request for a node D, an interzonepath from S to D is identified A node Bi belonging to an interzone path is an active nodefor the caching scheme In Figure 13.43 an interzone path between S and D is formed bynodes b, e, p and t Thus, an interzone path is also an active path An interzone path is storedaccording to a distributed next-hop fashion, where the next-hop node is an active node Bi
stores Bi+1as the next-hop active node for all the downstream nodes from Bi+2to BM+1and Bi−1as the next-hop active node for all the upstream nodes from B0to Bi−2 These two
Node S
2 a b 2 a c 1 a a IZT
2 a b 2 a c 1 a a IZT
5 b D 4 b t 3 b p 2 b e EZT
5 b D 4 b t 3 b p 2 b e EZT
2 h e 2 h l 2 f g 2 a c 2 a S 1 h h 1 f f 1 a a IZT
2 h e 2 h l 2 f g 2 a c 2 a S 1 h h 1 f f 1 a a IZT
4 e D
3 e t 2 e p EZT
4 e D
3 e t 2 e p EZT
IZP=(ID,S,B2) Node B1
2 h b
2 m n
2 m p
2 h l
1 m m
1 h h IZT
2 h b
2 m n
2 m p
2 h l
1 m m
1 h h IZT
3 p D
2 p t
2 b S EZT
3 p D
2 p t
2 b S EZT
2 q t
2 m e
1 q q
1 m m IZT
2 q t
2 m e
1 q q
1 m m IZT
2 t D 2 e b 3 e S EZT
2 t D 2 e b 3 e S EZT
2 r D
2 q p
1 r r
1 q q IZT
2 r D
2 q p
1 r r
1 q q IZT
2 p e 3 p b 4 p S EZT
2 p e 3 p b 4 p S EZT
2 r t 1 r r IZT
2 r t 1 r r IZT
5 t S
4 t b
3 t e
2 t p EZT
5 t S
4 t b
3 t e
2 t p EZT
IZP=(ID,B1,B3) Node B2
IZP=(ID,B2,B4) Node B3
IZP=(ID,B3,D) Node B4 Node D
S c
o
a f
i k
n
m q
r D
Trang 11CASHING 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 advertisedinside the caching zone of each member of the path, which thus acts as cache leader for thatinformation 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 morethan a single path to the same destination
When a node, say Bi+1, leaves Bi’s routing zone, not all the routing information gatheredduring the route request/reply is lost Roughly speaking, two active paths from S to Bi−1andfrom Bi+1to D are still up Hence, all the routing information concerning these subpaths isstill valid However, nodes B0, ,Bi−1(Bi−1, ,BM+1) notify the nodes inside their ownzones, using a delete control message, that the destinations Bi−1, ,BM+1(B0, ,Bi) are
no longer reachable
Data structures
Each node X uses the following local data structures:
r 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
r 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)
r 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, Bi−1, Bi+1).
r 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.
r 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 allowingonly the destination D to send a single reply for a given request The path is tagged with aunique 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
Trang 12accumulation vector AV[ ], initialized with AV[0]= S Let M be the number of active nodes
(not including S and D)
(1) When a border node X= D receives a query message, if the message is received forthe first time and the redundant query filter rules are satisfied:
(a) It adds its own identification into the accumulation vector As an example, if thenode X corresponds to node Bj in the interzone path, then AV [ j ] = X.
(b) If D belongs to X’s routing zone, then the latter unicasts the query message to
D Otherwise, it executes a bordercast
(2) When the destination node D receives a query message with identifier ID for thefirst time:
(a) It stores the tuples (AV[i ] , AV[M], M + 1 − i, for 0 ≤ i ≤ M − 1 in EZT.
(b) It prepares the list RN= (AV[i], M + 1 − i)], for 0 ≤ i ≤ M.
(c) It sets AV[M+ 1] = D
(d) It sends a reply message to AV[M] The message contains the AV vector
accu-mulated in the query message
An example of path creation is given in Figure 13.44(a)
(3) When a border node Bj receives a reply message:
(a) If Bj = S, then it stores the triple (ID,AV[ j − 1], AV [ j + 1]) in the IZP table,
thus becoming an active node
(b) It stores the following tuples in EZT: (AV [i], AV[j − 1], j − i), for 0 ≤ i ≤ j − 2; (AV [i], AV[j +1], j − i), for j +2 ≤ i ≤ M + 1.
AV=[S] AV=[S,B1] AV=[S,B1,B2]
(c) (b)
(a)
active node
AV=[S, ,D] AV=[S, ,D] AV=[S, ,D] AV=[S,B1,B2,B3,B4,D]
Reply Query
UN=[B3,B4,D] UN=[B3,B4,D] UN=[B3,B4,D] UN=[B3,B4,D]
3 B3 D
2 B3 B4
2 B1 S EZT
3 B3 D
2 B3 B4
2 B1 S EZT
IZP=(ID,B1,B3) RN=[(S,2),(B1,1),(B3,1),(B4,2),(D,3)]
2 B1 S
Trang 13CASHING SCHEMES FOR ROUTING 519
(c) It prepares RN= [(AV[j + i], |i|)] for − j ≤ i ≤ M + 1.
(d) If Bj = S, then it forwards the reply message to the node AV [j − 1].
Figure 13.43(b) shows the state at node B2 after the reception of the reply message with
AV [S,B1,B2,B3,B4,D] that caused the execution of the following actions:
(1) B2becomes a member of an interzone path [it stores the triple (ID,B1,B3) in IZP].(2) B2adds the entries (S,B1,2), (B4,B3, 2), (D,B3, 3) in EZT
(3) B2prepares the list of reachable nodes, RN= [(S,2),(B1,1),(B3,1),(B4, 2),(D,3)].(4) B2forwards the reply to B1
Interzone path deletion
An interzone path is broken at node B j when B j−1(or B j+1) is no longer in B j’s routing zone
In this case, the path is divided in two subpaths and the source node is notified with an error
message An active node B j executes the following actions (in the following notation ‘–’means any):
(1) Deletes the entry (–,Bj−1,–) or (–,Bj+1,–) from EZT.
(2) Checks for the companion node Bj+1or Bj−1in the IZP table.
(3) If the companion node is found, then it prepares the following list of
unreach-able nodes: N = [B0,B1, ,Bj−1] (UN = [Bj+1,Bj+2, ,BM+1]); and sends aDelete Path message, containing UN and the path identifier ID, to the companionnode
(4) Deletes the entry (ID,Bj−1,Bj+1) from IZP after the successful transmission of themessage
When an active path is broken, the source node either receives the Delete Path messagefrom B1[if the link is broken between (Bj,Bj+1), with j > 0], or is able to detect the break
autonomously via IARP The source node thus triggers a new route discovery if required
to send other packets, while the two subpaths (B0,B1, ,Bj−1and Bj+1,Bj+2, ,BM+1)remain active Figure 13.44(c) shows the case when the ‘link’ between B2and B3is broken
(i.e their distance becomes higher than k) Two interzone subpaths, (S,B1,B2) and (B3,B4,D),are generated In the figure, B2’s EZT data structure is also shown
When an active node receives a Delete Path message from one of its companion nodes
X, it deletes the entries stored in the UN list from EZT and forwards the message to theother companion node If the receiving node has some another route to a node stored in UN,then it does not include such a node when forwarding UN
Cache management
In order to allow all the nodes of B j ’s routing zone to use the acquired information, B j broadcasts RN inside its zone Such a message is referred to as the inject message On receiving an inject message carrying the reachable node list RN from a node X = Bj, a
node Y creates a set of entries (RN[i ].d,X,RN[i ].#z) into its own EZT, 0 ≤ i ≤ |RN|, where RN[i ].d is the first component (destination node) of the i th pair of RN, RN[i ],#z, the second
component (i.e the length), and|RN| is the number of elements of RN Figure 13.44(a)
Trang 14(a) (b)
1 B2 B1
2 B2 S
1 B2 B1
2 B2 S
3 B2 D
2 B2 B4
1 B2 B3
1 B2 B1
2 B2 S
3 B2 D
2 B2 B4
1 B2 B3
1 B2 B1
2 B2
Y’s EZT
Y’s EZT
Y’s routing zone zone
Y
Delete
RN=[(S,2),(B1,1), (B3,1),(B4,2),(D,3)]
UN=[(B3,B4,D)]
B2’s routing
Figure 13.45 An example of (a) injection and (b) deletion of external nodes
shows node B2injecting the external routes to nodes S,B1,B3,B4,D into its zone Note that
Y now has two routes to node B1since such a node is in Y’ routing zone
Deleting external routes
When a node Bjeither detects a path breakage or receives a Delete Path message, it casts a Delete message into its zone containing the list of unreachable nodes UN When
broad-an internal node receives a Delete message it deletes all the matching entries from EZT.Figure 13.45(b) shows the delete mechanism on node Y
13.7 DISTRIBUTED QoS ROUTING
In this section a distributed QoS routing scheme for ad hoc networks is discussed Two routing problems are presented, delay constrained least cost routing (DCLC) and bandwidth
constrained least cost routing (BCLC) As before, the path that satisfies the delay (or
bandwidth) constraint is called a feasible path The algorithms can tolerate the imprecision
of the available state information Good routing performance in terms of success ratio,message overhead and average path cost is achieved even when the degree of informationimprecision is high Note that the problem of information imprecision exists only for QoSrouting; all best-effort routing algorithms, such as DSR and ABR, do not consider thisproblem because they do not need the QoS state in the first place Multipath parallel routing
is used to increase the probability of finding a feasible path In contrast to the flooding-basedpath discovery algorithms, these algorithms search only a small number of paths, which
Trang 15DISTRIBUTED QoS ROUTING 521
limits the routing overhead In order to maximize the chance of finding a feasible path, thestate information at the intermediate nodes is collectively utilized to make intelligent hop-by-hop path selection The logic behind this is very much equivalent to using the Viterbiinstead of ML (maximum likelihood) algorithm in trellis-based demodulation processes.The algorithms consider not only the QoS requirements, but also the optimality of therouting path Low-cost paths are given preference in order to improve the overall networkperformance In order to reduce the level of QoS disruption, fault-tolerance techniques arebrought in for the maintenance of the established paths Different levels of redundancyprovide tradeoff between the reliability and the overhead The dynamic path repairingalgorithm repairs the path at the breaking point shifts the traffic to a neighbor node, andreconfigures the path around the breaking point without rerouting the connection along acompletely new path Rerouting is needed in two cases One case is when the primary pathand all secondary paths are broken The other case is when the cost of the path grows largeand hence it becomes beneficial to route the traffic to another path with a lower cost
13.7.1 Wireless links reliability
One element of the cost function will be reliability of the wireless links The links betweenthe stationary or slowly moving nodes are likely to exist continuously Such links are called
stationary links The links between the fast moving nodes are likely to exist only for a short
period of time Such links are called transient links A routing path should use stationary links
whenever possible in order to reduce the probability of a path breaking when the network
topology changes A stationary neighbor is connected to a node with a stationary link As
in Chapter 7, delay of path P between two nodes equals the sum of the link delays on the path between the two nodes and will be denoted as delay(P) Similarly bandwidth(P) equals the minimum link bandwidth on the path P, and cost(P) equals the sum of the link costs.
13.7.2 Routing
Given a source node s, a destination node t, and a delay requirement D, the problem of delay-constrained routing is to find a feasible path P from s to t such that delay(P) ≤ D.
When there are multiple feasible paths, we want to select the one with the least cost Another
problem is bandwidth-constrained routing, i.e finding a path P such that bandwidth(P)≥
B, where B is the bandwidth requirement When there are multiple such paths, the one with
the least cost is selected Finding a feasible path is actually the first part of the problem.The second part is to maintain the path when the network topology changes
13.7.3 Routing information
The following end-to-end state information is required to be maintained at every node i for every possible destination t The information is updated periodically by a distance-vector
protocol discussed in Section 13.1:
(1) Delay variation –D i (t) keeps the estimated maximum change of D i (t) before the
next update That is, based on the recent state history, the actual minimum end-to-end
delay from i to t is expected to be between D i (t) − D i (t) and D i (t) + D i (t) in
the next update period
Trang 16(2) Bandwidth variation –B i (t) keeps the estimated maximum change of B i (t) before the next update The actual maximum bandwidth from i to t is expected to be between
B i (t) − B i (t) and B i (t) + B i (t) in the next period.
(3) The cost metric C i (t) is used for optimization, in contrast to the delay and bandwidth
metrics used in QoS constraints
Consider an arbitrary update ofD i (t) and D i (t) Let D i (t) and D
i (t) be the values of
D i (t) before and after the update, respectively Similarly, let D i (t) and D i (t) be the values
of D i (t) before and after the update, respectively D i (t) is provided by a distance-vector
protocol.D
i (t) is calculated as follows:
D i (t) = αD i (t) + (1 − α) D
i (t) − D i (t) ...
wireless networks, in Proc INFOCOM ‘ 97, April 19 97.
[11] M.S Corson and A Ephremides, A distributed routing algorithm for mobile wireless
networks, ACM/Baltzer Wireless Networks. ..
point, the differences between sensor networks and ad hoc networks (see Chapter 13, and
Advanced Wireless Networks: 4G Technologies< /small> Savo G Glisic... TechnicalReport, 1 971
[43] T.-W Chen and M Gerla, Global state routing: a new routing schemes for ad-hoc wireless networks, in Proc IEEE ICC’98, 7? ??11 June 1998, pp 171 – 175 .
[44]