Preprin t 0 (1998) 1{28 1 Spine Routing in Ad Ho c Net w - - PDF document

preprin t 0 1998 1 28 1 spine routing in ad ho c net w
SMART_READER_LITE
LIVE PREVIEW

Preprin t 0 (1998) 1{28 1 Spine Routing in Ad Ho c Net w - - PDF document

Preprin t 0 (1998) 1{28 1 Spine Routing in Ad Ho c Net w orks Ragh upath y Siv akumar Bev an Das V aduvur Bhargha v an Co or dinate d Scienc es L ab or atory, University of Il linois at Urb ana-Champ aign


slide-1
SLIDE 1 Preprin t (1998) 1{28 1 Spine Routing in Ad Ho c Net w
  • rks
Ragh upath y Siv akumar Bev an Das V aduvur Bhargha v an Co
  • r
dinate d Scienc es L ab
  • r
atory, University
  • f
Il linois at Urb ana-Champ aign E-mail: fsiv akumr,das,bhargha vg@timely .crhc.uiuc.edu An ad ho c net w
  • rk
is a m ulti-hop wireless net w
  • rk
in whic h mobile hosts comm u- nicate without the supp
  • rt
  • f
a wired bac kb
  • ne
for routing messages. W e in tro duce a self
  • r
ganizing net w
  • rk
structure called a spine and prop
  • se
a spine-b ase d r
  • uting
infr astructur e for routing in ad ho c net w
  • rks.
W e prop
  • se
t w
  • spine
routing algorithms : (a) Optimal Spine R
  • uting
(OSR), that uses full and up-to-date kno wledge
  • f
the net w
  • rk
top
  • logy
, and (b) Partial- know le dge Spine R
  • uting
(PSR), that uses partial kno wledge
  • f
the net w
  • rk
top
  • l-
  • gy
. W e analyze the t w
  • algorithms
and iden tify the
  • ptimalit
y-o v erhead trade-os in v
  • lv
ed in these algorithms. Keyw
  • rds:
Ad Ho c Net w
  • rks,
Spine Routing, Wireless Net w
  • rks
1. In tro duction An ad ho c net w
  • rk
is a m ultihop wireless net w
  • rk
in whic h mobile hosts comm unicate
  • v
er a shared, scarce wireless c hannel. Ad ho c net w
  • rks
lac k a wired bac kb
  • ne
to main tain routes as hosts mo v e,
  • r
turn
  • r
  • n.
Instead, the hosts in the ad ho c net w
  • rk
co
  • p
erativ ely determine routes in a distributed manner. Th us, ev ery host is p
  • ten
tially a router, and a route b et w een t w
  • hosts
ma y c hange not
  • nly
b ecause
  • f
end-host mobilit y but also b ecause
  • f
in terme- diate router mobilit y . The k ey issues that an y routing algorithm for suc h an en vironmen t m ust address are the dynamics
  • f
the top
  • logy
and the
  • v
erhead
  • f
route computation. Among the w ell kno wn paradigms for routing, shortest p ath algorithms and r
  • uting
  • ndemand
algorithms are at the t w
  • extremes
  • f
the sp ectrum. T ypically , shortest path routing pro vides
  • ptimal
routes but incurs a h uge
  • v
erhead in the pro cess (in the form
  • f
p erio dic
  • r
ev en t-driv en up dates
  • f
link c hanges
  • v
er the en tire net w
  • rk).
Routing
  • n-demand,
  • n
the
  • ther
hand, t ypically has lo w
  • v
erhead but computes p
  • ssibly
non-optimal
  • r
stale routes, and requires
  • ding
the net w
  • rk
when no route is curren tly a v ailable.
slide-2
SLIDE 2 2 / Giv en that most
  • f
the recen t w
  • rk
  • n
routing in ad ho c net w
  • rks
can b e classied in to
  • ne
  • f
the ab
  • v
e t w
  • mec
hanisms, w e p erceiv e a need for a more ecien t algorithm that w
  • uld
balance the
  • ptimalit
y
  • f
the shortest path algo- rithms with the lo w
  • v
erhead
  • f
the routing
  • n-demand
algorithms. T
  • w
ards this end, w e in tro duce a self
  • r
ganizing net w
  • rk
structure called a spine that helps com bine
  • ptimalit
y with lo w
  • v
erhead. Briey , the spine is c hosen to b e a small and relativ ely stable subnet w
  • rk
  • f
the ad ho c net w
  • rk,
and is used to aggregate the net w
  • rk
state distributiv ely among the no des
  • f
the spine in
  • rder
to generate routes. Using this spine structure, w e presen t a new spineb ase d r
  • uting
infr astruc tur e for fault-toleran t unicast and m ulticast routing in ad ho c net w
  • rks.
The k ey issues addressed in this pap er are: (a) ho w to build and main tain the spine, (b) what net w
  • rk
top
  • logy
information to collect in the spine, and (c) ho w to compute routes
  • nce
the information is aggregated in the spine no des. This in- frastructure is sp ecically built to address the dynamics
  • f
the net w
  • rk
top
  • logy
, scarcit y
  • f
the shared resources, and the nature
  • f
applications that ma y t ypically run in suc h adho c net w
  • rking
en vironmen ts. W e address the follo wing goals in this pap er:
  • Supp
  • rt
ecien t unicast routing b y trading-o b et w een shortest path routing
  • n-demand
algorithms.
  • Supp
  • rt
m ulticast routing b y using the spine structure as the m ulticast bac k- b
  • ne.
  • Compute
alternate routes for long-liv ed connections, and switc h routes dy- namically up
  • n
failure
  • f
the primary route in
  • rder
to pro vide fault-toleran t routing. Note that the spine is basically a routing infrastructure. Its primary role is not to carry data trac. Ho w ev er, the spine can b e used to transmit data pac k ets temp
  • rarily
when routes are b eing switc hed
  • r
computed,
  • r
for m ulticast
  • ws.
F
  • r
the spine-based routing infrastructure describ ed ab
  • v
e, w e presen t t w
  • spine
routing algorithms: (a) Optimal Spine R
  • uting
OSR, that uses full and up-to-date kno wledge
  • f
the net w
  • rk
top
  • logy
, and (b) Partialknow le dge Spine R
  • uting
PSR, that uses partial kno wledge
  • f
the net w
  • rk
top
  • logy
. F
  • r
practical
slide-3
SLIDE 3 / 3 and scalable ad ho c net w
  • rks,
w e prop
  • se
a com bination
  • f
PSR and a clustered algorithm called CSR in [3]. Through CSR, w e pro vide a hierarc hical structure for the spine in
  • rder
to scale w ell for large net w
  • rks.
Since ad ho c net w
  • rks
are exp ected to b e naturally clustered [10], a hierarc hical
  • rganization
is b
  • th
useful and ecien t. The rest
  • f
the pap er is
  • rganized
as follo ws. Section 2 presen ts the net w
  • rk
mo del and notation for
  • ur
w
  • rk.
Section 3 describ es the Optimal Spine Routing algorithm. Section 4 describ es the P artial-kno wledge Spine Routing algorithm. Section 5 ev aluates the p erformance
  • f
OSR and PSR. Section 6 discusses some issues and applications
  • f
spine routing. Section 7 concludes the pap er. 2. Net w
  • rk
Mo del Communic ation mo del W e assume that mobile hosts in an ad ho c net w
  • rk
use
  • mnidirectional
transmitters
  • n
a common wireless c hannel. All hosts within transmission range R
  • f
the transmitting host ma y receiv e the transmission (in absence
  • f
hidden stations). Hence, eac h transmission can either b e an unreliable lo c al br
  • adc
ast in tended for all receiv ers within range,
  • r
a reliable unic ast in tended for a single receiv er. Gr aph terminolo gy and notation W e use an undirected graph G = (V ; E ), with m edges and n no des, to represen t a snapshot
  • f
the ad ho c net w
  • rk.
Eac h no de in V represen ts a mobile host, and eac h edge in E signies that t w
  • hosts
are within transmission range
  • f
eac h
  • ther.
The top
  • lo
gy
  • f
G is the set
  • f
edges and no des. Hence, when w e sa y a no de movement c hanges the top
  • logy
, w e mean a c hange in the net w
  • rk
that results in a c hange in either V
  • r
E . Sp ecically , a e dge deletion
  • ccurs
when t w
  • hosts
lose comm unication with eac h
  • ther,
and an e dge insertion
  • ccurs
when t w
  • hosts
mo v e in to range
  • f
eac h
  • ther.
A no de deletion in isolation
  • ccurs
when a host turns
  • its
p
  • w
er, and a no de insertion in isolation
  • ccurs
when a host turns
  • n
its p
  • w
er. By \in isolation" w e mean that no
  • ther
c hange has
  • ccurred
in the net w
  • rk.
Because a no de insertion
  • r
deletion aects m ultiple edges, w e pro cess these c hanges to V as m ultiple c hanges to E . Finally , the most general no de movement mo dels the mo v emen t
  • f
a host from
  • ne
part
  • f
the net w
  • rk
to
slide-4
SLIDE 4 4 / another; hence, a no de mo v emen t is a com bination
  • f
a no de deletion from
  • ne
part
  • f
G and a no de insertion in another part
  • f
G. The
  • p
en neigh b
  • rho
  • d
N (v )
  • f
no de v represen ts all hosts within trans- mission range
  • f
v except for v itself. The close d neigh b
  • rho
  • d
N [v ]
  • f
v also includes v , that is, N [v ] = N (v ) [ fv g. With these denitions extended to subsets
  • f
V , the
  • p
en neigh b
  • rho
  • d
  • f
S
  • V
is N (S ) = [ v 2S N (v )
  • S
, and the closed neigh b
  • rho
  • d
  • f
S is N [S ] = N (S ) [ S . The de gr e e
  • (v
)
  • f
v is the size
  • f
its
  • p
en neigh b
  • rho
  • d:
  • (v
) = jN (v )j. The maximum de gr e e
  • f
G is
  • =
max v 2V
  • (v
). F
  • r
the purp
  • ses
  • f
analysis
  • f
  • v
erhead, w e assume that a lo cal broadcast tak es O () time (whic h is true if the MA C la y er can sc hedule lo cal broadcasts reli- ably). Giv en a subgraph T
  • f
G, the T
  • degree
  • f
v is
  • T
(v ), the n um b er
  • f
v 's neigh b
  • rs
that are in T . The maxim um degree
  • f
T is denoted (T ). The diame ter diam(G)
  • f
G is the maxim um n um b er
  • f
edges con tained in an y simple path b et w een t w
  • no
des in V . The diameter
  • f
a subgraph T
  • f
G is denoted diam(T ). W e use an appro ximation to a minimum c
  • nne
cte d dominating set (MCDS) for the spine. A subset S
  • V
is a dominating set if N [S ] = V . Let G(C ) b e the subgraph induced b y C
  • V
. C is a c
  • nne
cte d dominating set if, in addition to N [C ] = V , G(C ) is connected. Since nding an MCDS is an N P
  • complete
problem [5] that is also hard to appro ximate [7,11], w e presen t a distributed greedy MCDS appro ximation algorithm that is similar to the algorithm in [7]. The MCDS no des are inciden tally also the in terior no des
  • f
a maxim um leaf spanning tree. W e use the in terior
  • f
this tree as the spine. Th us, eac h no de v in V has a unique dominator in C , denoted dom(v ). The set < v ; dom(v ) > 8v 2 V is a maxim um leaf spanning tree. The no des
  • f
C comprise the in terior
  • f
this spanning tree, and the edges
  • f
this spanning tree b et w een no des in C are called spine e dges. 3. Spine Routing Arc hitecture The spine structure functions as a virtual bac kb
  • ne
for the ad ho c net w
  • rk.
Ho w ev er, unlik e a traditional bac kb
  • ne,
its primary task is not to carry data pac k ets, but to participate in route computation and main tenance. W e construct a spine b y using an appro ximation to the minim um connected dominating set, i.e. the in terior no des
  • f
the maxim um leaf spanning tree. Th us, ev ery no de is either
slide-5
SLIDE 5 / 5 in the spine,
  • r
is a neigh b
  • r
  • f
a no de in the spine. The spine no des collectiv ely compute routes b et w een an y pair
  • f
no des in the net w
  • rk.
The uniqueness
  • f
the spine structure lies in the fact that it enables storage
  • f
net w
  • rk
state in v ery few no des while still minimizing the access
  • v
erhead for this information. It do es this b y allo wing some form
  • f
aggregated net w
  • rk
state to b e main tained collectiv ely in the spine no des. Also, a v ery lo w main tenance
  • v
erhead is ac hiev ed b ecause
  • f
t w
  • reasons:
(i) the n um b er
  • f
spine no des is considerably less than the n um b er
  • f
no des in the net w
  • rk
and hence the up date
  • v
erhead is reduced, and (ii) eac h non spine no de is directly connected to at least
  • ne
spine no de and hence the access
  • v
erhead is minimized. Also, main tenance
  • f
the aggregated state leads to b etter routes. There are three issues that need to b e addressed in an y spine-based routing algorithm 1. Spine maintenanc e
  • Ho
w is a spine constructed ?
  • Ho
w is the spine main tained through no de mo v emen ts ? 2. State maintaine d (at eac h spine no de)
  • What
information is gathered from domains ?
  • What
information is propagated to
  • ther
spine no des ? 3. R
  • ute
Disc
  • very
  • Is
it prob e based
  • r
fully lo calized
  • r
a com bination
  • f
b
  • th
? Figure 1 compares the t w
  • spine
routing algorithms OSR and PSR based
  • n
state main tained, route disco v ery mec hanism,
  • v
erhead, and
  • ptimalit
y
  • f
the routes pro duced. In
  • rder
to presen t a more comprehensiv e picture,
  • ther
p
  • pu-
lar routing mec hanisms are also included in the comparison. The follo wing are the k ey phases in an y spine routing algorithm. 1. Spine Construction In OSR and PSR, the en tire net w
  • rk
has a single spine that is computed using the global up-to-date top
  • logy
information (for OSR),
  • r
partial and p
  • ssibly
stale top
  • logy
information (in PSR).
slide-6
SLIDE 6 6 /

Algorithm Ideal Link State Distance Vector Routing OSR PSR Nodes maintaining information All nodes All nodes Spine nodes Spine nodes Information maintained Global topology of network Next hop and distance for all nodes in network Global topology of network Optimality and Overhead provides optimal routes, but at a very high overhead provides optimal routes and

  • verhead

provides optimal routes at a provides near-optimal routes at a low overhead. at a considerably high Routes found by flooding query snooped information All nodes Routing on Demand

Route Discovery

Localized Localized Localized Localized & Probe based Probe based relatively high overhead

and

probe responses

sub-optimal routes.

  • packets. If no caching, high
  • verhead for probes

potentially and

spine structure,cached domain membership table and long lived edge information

Figure 1. Classication
  • f
Spine Routing Algorithms 2. A ggr e gation
  • f
state into spine no des (a) from non-spine no des to their resp ectiv e dominators and (b) from spine no des to
  • ther
spine no des 3. R
  • ute
disc
  • very
(a) fully lo calized
  • r
(b) using prob es
  • r
(c) a com bination
  • f
b
  • th.
4. State maintenanc e (a) Ev en t-based main tenance up dates. In OSR, eac h edge/no de inser- tion/deletion is broadcast along the spine. In PSR, an edge insertion/deletion is follo w ed b y the generation
  • f
adddelete w a v es. (b) P erio dic main tenance up dates. Ev ery
  • seconds,
for some large v alue
  • f
  • ,
the spine no des rep eat the top
  • logy
broadcast step. The primary use
  • f
the spine is to compute routes and trac k top
  • logy
c hanges. Tw
  • ther
uses
  • f
the spine are (a) to pro vide temp
  • rary
bac kup routes for fault tolerance (for example, if a route from u to v fails, an alternate route is u ! dom(u) ! ::: ! dom(v ) ! v ), and (b) to pro vide the m ulticast bac kb
  • ne
for m ulticast routes b ecause a m ulticast tree can b e
  • btained
b y pruning the spine similar to D VMRP . In addition, the spine routing algorithm can b e mo died to consider w eigh ted graphs
  • where
edge w eigh ts iden tify the link stabilit y . In this
slide-7
SLIDE 7 / 7 case, c hanges in the edge w eigh t b ey
  • nd
a certain threshold w
  • uld
b e propagated similar to edge insertions/deletions. The next section explains in detail ho w a spine is constructed for a net w
  • rk.
Spine Construction As men tioned ab
  • v
e, the spine is constructed b y nding the MCDS for the giv en graph. But, for a general graph, nding the MCDS is an NP-complete problem [5] that is also hard to appro ximate. Hence w e use an appro ximation
  • f
the MCDS as the spine. Let A b e a p
  • lynomial-time
algorithm that nds C , an appro ximation to C
  • ,
the MCDS
  • f
G. The p erformanc e r atio
  • f
A is the maxi- m um v alue
  • f
jC j=jC
  • j,
tak en
  • v
er all graphs G. W e w
  • uld
lik e the p erformance ratio for
  • ur
algorithm to b e at most a constan t, but all p
  • lynomial-time
appro x- imation algorithms for MCDS ha v e p erformance ratios larger than (1=4) log 2 n [7,11]. Therefore, w e use a distributed implemen tation
  • f
the appro ximation al- gorithm
  • f
Guha and Kh uller [7], whic h has a p erformance ratio less than 3H (), where H () = P
  • i=1
1=i
  • ln
  • +
1. Our distributed appro ximation algorithm, Algorithm MCDS appr
  • x,
rst nds an appro ximation to the minimal dominating set (MDS), S . After S is determined, the edges (u; dom(u)) form a spanning forest
  • f
G. The next stage
  • f
Algorithm MCDS appr
  • x
connects the fragmen ts from the rst step b y using an minim um spanning tree (MST) algorithm. C consists
  • f
the in terior no des
  • f
the resulting spanning tree and the tree edges b et w een these no des. The rst stage consists
  • f
rounds
  • f
adding no des to S . A no de u in S is marke d;
  • therwise,
u remains unmarke d. The n um b er
  • f
unmark ed neigh b
  • rs
  • f
a no de u is its ee ctive de gr e e
  • (u).
In eac h round, u gathers
  • (v
) for all v in N 2 (u). No de u is added to S if
  • (u)
>
  • (v
) for all v 6= u in N 2 (u); w e use minim um no de IDs to break ties. Next, the algorithm lab els eac h comp
  • nen
t formed b y the (u; dom(u)) edges with a common lab el and then connects these comp
  • nen
ts. Before connecting comp
  • nen
ts, w e discard edges whic h connect t w
  • no
des in the same comp
  • nen
t and w eigh t the remaining edges to fa v
  • r
edges that do not increase the size
  • f
C to
  • m
uc h: An edge b et w een a no de in S and a no de not in S adds
  • nly
  • ne
no de
slide-8
SLIDE 8 8 /

a b c 4 is new spine node, 2 in 4’s domain, (2,1),(2,3) broken <2,3,4> new route <2,3,5,1> 2 now in 5’s domain, (2,1) broken 2 in same domain, (2,4) broken Move Effects Route updates <2,4,3,1>, <2,4,3> d 2 isolated all routes to 2 deleted

3 5 6 7 8 9 1 2 4 b e d c f a non spine moves: a, b, c, d spine leaf move : e spine interior node move : f

Figure 2. Example
  • f
single no de mo v emen t in OSR. to C , while an edge b et w een t w
  • no
des not in S adds t w
  • no
des to C . Therefore, w e use the n um b er
  • f
endp
  • in
ts not in S when assigning w eigh ts to edges. Referring to Figure 2, Algorithm MCDS appr
  • x
nds no des 3 and 6 to b e in S , and then the MST algorithm connects the t w
  • comp
  • nen
ts b y adding 5 to C . The pseudo co de for Algorithm MCDS appr
  • x
sp ecies its details. Initially , w e assume that eac h no de kno ws its ID, the IDs
  • f
its neigh b
  • rs,
the edges adjacen t to it, and its
  • wn
degree. Algorithm MCDS appr
  • x
Determine S Start
  • f
Round: T ransmit
  • (u)
/* initially ,
  • (u)
=
  • (u)
*/ After receiving
  • (v
) from all neigh b
  • rs,
transmit f
  • (v
)jv 2 N 1 (u)g After receiving messages from neigh b
  • rs,
If
  • (u)
is a maxim um in N 2 (u), then transmit \Mark(u)" Set
  • (u)
:= Mark that u is no w in S If u is unmark ed, and u receiv es \Mark(v )" from v , then mark self with v 's ID and transmit \Mark ed(v )" /* v is u's dominator */ If u is not in S , reduce
  • (u)
b y
  • ne
slide-9
SLIDE 9 / 9 for eac h \Mark" and \Mark ed" message from a neigh b
  • r
If some u has
  • (u)
> 0, then return to Start
  • f
Round Lab el comp
  • nen
ts
  • f
S If u in S and not mark ed b y another no de, then transmit \Lab el(u)" If u is mark ed b y another no de, then when receiv e \Lab el(x)" from dominator v , set u's lab el to x if u also in S , then transmit \Lab el(x)" If u receiv es \Lab el(x)" from w and w is not u's dominator, then set w 's lab el in u's adjacency to x Connect comp
  • nen
ts
  • f
S W eigh t edges as follo ws, for e = (u; v ): if u and v ha v e same lab el, then e do es not connect dieren t clusters, and w e do not use e in this stage
  • therwise,
e has w eigh t b y triple fR ; min(u; v ); max (u; v )g, where R = 1 if u in S
  • r
v in S , and R = 2 if neither is in S Run minim um spanning tree algorithm
  • n
w eigh ted edges [13] Lemma 1. Algorithm I appro ximates C
  • with
a p erformance ratio
  • f
3H () in O ((n + jC j)) time, using O (njC j + m + n log n) messages. Pr
  • f
The ratio
  • f
jS j=jC
  • j
is at most H () [7]. The MST algorithm nds jS j
  • 1
edges and adds at most t w
  • no
des p er edge to C . Therefore, jC j
  • 3jS
j
  • 3H
()jC
  • j.
F
  • r
the time and message b
  • unds
  • f
determining S , the w
  • rst
case is when
  • nly
  • ne
no de is added to S in eac h round. In this case, Algorithm I tak es jS j = O (jC j) rounds. In eac h round, O (1) messages are transmitted b y eac h no de; b y the discussion in 2, eac h no de tak es O () time to transmit these messages. Summing these
  • v
er all no des and rounds, w e get the O (njC j) term in the n um b er
  • f
messages and the O (jC j) term in the time b
  • und.
F
  • r
the MST algorithm, w e could use a sub linear time algorithm [17,15], but these algorithms use a large n um b er
  • f
messages. Instead, w e use the MST algorithm
  • f
Aw erbuc h [13], with mo dications b y F aloutsos and Molle [14]. This
slide-10
SLIDE 10 10 / algorithm tak es O (n) time in
  • ur
mo del, using O (m + n log n) time. 4. Optimal Spine Routing (OSR) In Optimal Spine R
  • uting,
the spine is used to pro vide
  • ptimal,
up-to-date routes to sources in reply to route queries
  • r
up date requests. Although OSR is not practical due to its relativ ely high
  • v
erhead, w e describ e it in detail in this section for completeness and to illustrate the b est case route generation with spine routing. T
  • determine
routes with the spine, w e gather global kno wledge
  • f
G in to all the spine no des and compute shortest paths based
  • n
lo cal copies
  • f
G (akin to the link-state approac h restricted to spine no des). In general, the routes determined b y the spine no des do not pass through the spine. On a high-lev el, OSR consists
  • f
the follo wing steps to rst determine routes: 1. Compute the spine C (see Section 3). 2. Gather information from non-spine no des to spine no des. No de u not in C transmits its edge adjacency list. 3. Broadcast top
  • logy
to all spine no des. Let v 2 C . After receiving adjacency lists from all no des in v 's domain, v broadcasts this information to the rest
  • f
C . Hence in OSR, the state maintaine d is the global top
  • logy
  • f
G. 4. Determine routes. Due to the a v ailabilit y
  • f
global top
  • logy
information, r
  • ute
disc
  • very
is completely lo calized in OSR. Eac h no de v in C runs an all-pairs shortest paths algorithm
  • n
its lo cal cop y
  • f
G. 5. Source gets routes. When a source s w an ts a route not in its route cac he, s sends
  • ut
a route query . The dominator dom(s) replies with the shortest-path route from s to its targeted destination. 6. Ev en t-based main tenance up dates. Eac h edge/no de insertion/deletion is broadcast along the spine. 7. P erio dic main tenance up dates. Ev ery
  • seconds,
for some large v alue
  • f
  • ,
the spine no des rep eat the top
  • logy
broadcast step. This step ensures that spine no des recognize drastic top
  • logy
c hanges, suc h as the partitioning
  • f
G ([1]).
  • can
b e
  • n
the
  • rder
  • f
at least 600 seconds (10 min utes) [8]. The last step ensures that MCDS no des recognize drastic top
  • logy
c hanges, suc h as the partitioning
  • f
G ([1]).
  • can
b e
  • n
the
  • rder
  • f
at least 600 seconds
slide-11
SLIDE 11 / 11 (10 min utes) [8]. W e illustrate the ab
  • v
e steps
  • n
the example in Figure 2. F rom step (a), 3; 5; and 6 are the spine no des, with 3 = dom(1) = dom(2) = dom(4) and 6 = dom(7) = dom(8) = dom(9). In step (b), 1; 2; and 4 send their adjacency lists to 3, and 7; 8; and 9 send their adjacency lists to 6. F
  • r
nding routes b et w een all pairs
  • f
no des, OSR has the follo wing time and message complexities. Let diam(C ) b e the diameter
  • f
C , and (C ) b e the maxim um degree
  • f
C . Step Time Messages Compute spine O ((n + jC j)) O (njC j + m + n log n) Gather info O ( 2 ) O (n) spine broadcast O ((n + diam(C ))(C )) O (njC j) Lo cal shortest paths O (1) none T
  • tal
O ((n + jC j)) O (njC j + m + n log n) The time O ((n + jC j)) from the rst step dominates the time complexit y , and the message coun t O (njC j + m + n log n) from the rst step dominates the message complexit y . Movement
  • f
No des T
  • handle
the mo v emen t
  • f
no des, OSR rst up dates the top
  • logy
infor- mation in the spine no des and then (if necessary) up dates the routing tables at non-spine no des. The sp ecic steps dep end
  • n
whic h no des, and ho w man y , ha v e mo v ed. W e rst describ e single-no de mo v emen t, and then briey deal with m ultiple no de mo v emen t. Singleno de movement The mo v emen t
  • f
a no de aects all routes that pass through it. In the w
  • rst
case, a c hange
  • f
  • ne
no de in the graph can aect all routes. In terms
  • f
the spine, the eects
  • f
a no de's mo v emen t dep ends
  • n
whether the no de is in the spine and, for spine no des, whether the no de is a leaf in the spine. W e consider eac h
  • f
these cases in detail.
  • non-spine
no de Let u b e a non-spine no de, with v = dom(u). The mo v emen t
  • f
u at most increases jC
  • j
b y
  • ne.
  • u
moves within the domain
  • f
v
slide-12
SLIDE 12 12 / In this case, u do es not lose con tact with v . Ho w ev er, u mo v es
  • ut
  • f
range
  • f
  • ther
no des. Let X b e the n um b er
  • f
edges that are either deleted
  • r
inserted as a result
  • f
u's mo v emen t. By denition, X
  • 2(
  • 1),
since at least
  • ne
edge inciden t
  • n
u remains unc hanged (the edge (u; v )). T
  • up
date C , u informs v
  • f
the c hanges to u's adjacency list, and v broadcasts the c hanges to the rest
  • f
C . Because X
  • 2,
  • ne
message p er no de suces. This up date uses O (jC j) messages. Recall that (C ) is the maxim um degree
  • f
C and diam(C ) is the diameter
  • f
C . The up date tak es O (diam(C )(C )) time.
  • u
moves
  • ut
  • f
v s domain to new domain In this case, u loses con tact with v but is no w adjacen t to w , another spine no de. Hence, u joins w 's domain and transmits its new adjacency list to w , whic h w broadcasts to the rest
  • f
C . This up date tak es O (jC j) messages and O (diam(C )(C )) time.
  • u
moves
  • ut
  • f
v s domain and is not in any
  • ther
domain but is adjac ent to a nonspine no de In this case, u is adjacen t to some non-spine no de x. Let w = dom(x). No de x b ecomes a new spine no de, and w sends a cop y
  • f
the top
  • logy
  • f
G to x. Afterw ards, x broadcasts the new adjacency list
  • f
u to the rest
  • f
C , plus the addition
  • f
x to C . This up date tak es O (n + jC j) messages and O (n + diam(C )(C )) time, where the O (n) term comes from the transmission
  • f
the top
  • logy
  • f
G from w to x.
  • u
moves
  • ut
  • f
v s domain and b e c
  • mes
isolate d In this case, u is simply deleted from the top
  • logy
  • f
G b y an spine broad- cast. This tak es O (jC j) messages and O (diam(C )(C )) time.
  • leaf
spine no de Let v b e a leaf in C . Up dating the top
  • logy
  • f
G after v mo v es is similar to the dealing with the mo v emen t
  • f
non-spine no des. W e m ust also consider the eect
  • f
v 's mo v emen t
  • n
the no des in its domain. F
  • r
eac h u in v 's domain, the mo v emen t
  • f
v while u is stationary is symmetric to the mo v emen t
  • f
u while v is stationary . That is,
  • ne
  • f
the four cases
  • f
non-spine no de mo v emen t applies to u. In total, since the w
  • rst-case
up date for a non-spine mo v e uses O (n + jC j) messages and O (n + diam(C )(C )) time, and since
  • (v
)
  • ,
the up date for v 's mo v e tak es O ((n + jC j)) messages and O ((n + diam(C )(C ))) time.
slide-13
SLIDE 13 / 13
  • in
terior spine no de When an in terior no de
  • f
C mo v es, C is partitioned. T
  • handle
the mo v emen t
  • f
an in terior spine no de, therefore, w e suggest that eac h edge c hange is
  • ded
through the rest
  • f
G. Let y b e an in terior no de in C , and let G(C ) b e the subgraph induced b y C . When y mo v es, three p
  • ssibilities
  • ccur:
1. C is partitioned, but not G(C ) 2. G(C ) is partitioned, but not G 3. G itself is partitioned Assuming y is not turned
  • ,
y sends up dates
  • f
the form \new edges (y ; x 1 ); (y ; x 2 ); : : : ;" where x 1 ; x 2 ; : : : ; are the new neigh b
  • rs
  • f
y . Let z b e a former spine neigh b
  • r
  • f
y . After y mo v es, z detects the failure
  • f
(z ; y ), and broadcasts this c hange to the rest
  • f
G. After a sucien t time, for example, t wice the time for a message to propagate across G, all
  • ther
no des in G either ha v e receiv ed all the up dates generated b y y 's mo v e
  • r
will receiv e no further up dates. Hence, the
  • ther
spine no des can correctly up date their copies
  • f
G. In either the rst
  • r
second case, new edges ma y ha v e to b e added to C . Instead
  • f
recomputing an MST from scratc h, the spine no des can use an edge-replacemen t
  • r
no de-replacemen t algorithm (for example, in [16]) to determine these edges. In the case when G is partitioned, when the timeout p erio d passes, the spine no des recognize that G is partitioned from the collection
  • f
up dates that they ha v e receiv ed. There are at most O () up dates generated b y y 's mo v e (at most
  • edges
deleted and
  • nly
  • ne
up date for all the new edges inciden t
  • n
y ). Hence, these up dates tak e O ((diam(G) + )) time, using O (n) messages. The example
  • f
Figure 2 helps to illustrate the dieren t cases. In Figure 2, w e depict p
  • ssible
mo v emen ts
  • f
single no des. W e sho w four p
  • ssible
mo v es for no de 2, whic h is not in the spine. The eects
  • f
eac h mo v e and resulting route up dates are summarized in the table sho wn in Figure 2. W e sho w
  • ne
p
  • ssible
mo v e for no de 3, a leaf
  • f
C . If 3 mak es mo v e e, then it b ecomes a non-spine no de in 5's
  • r
6's domain. In addition, no des 2 and 4 are forced in to C , with 4 = dom(2) and 2 = dom(1). The new routes to 1; 2; 3; and 4 are determined accordingly . F
  • r
example, the route from 1 to 3 is no w h1; 2; 4; 5; 3i. The p
  • ssible
mo v e f
  • f
no de 5, the in terior no de
  • f
C , partitions b
  • th
C and G(C ). W e ha v e not indicated in the gure whether 5 is a neigh b
  • r
  • f
4 after the mo v e. If
slide-14
SLIDE 14 14 / so, then G is not partitioned, and up dates from the mo v e reac h all no des in G. Therefore, in this case, the spine can b e up dated to include no des 4 and 5 at its new lo cation. On the
  • ther
hand, if 5 is not a neigh b
  • r
  • f
4, then G is partitioned, and
  • ur
algorithm determines 3 and 6, resp ectiv ely , as the spine
  • f
the remaining connected comp
  • nen
ts. Multipleno de movement When more than
  • ne
no de mo v es, w e can treat the mo v es as man y single- no de mo v es as long as non-o v erlapping neigh b
  • rho
  • ds
are aected. Complications
  • ccur
when t w
  • r
more mo v es
  • ccur
in
  • v
erlapping neigh b
  • rho
  • ds.
T
  • detect
suc h a situation, w e ha v e eac h no de app end its ID and a lo cal sequence n um b er to ev ery top
  • logy
up date that it sends
  • ut.
When an spine no de receiv es t w
  • up
dates from no des whose neigh b
  • rho
  • ds
  • v
erlap in its cop y
  • f
G (whic h ma y b e
  • ut
  • f
date),
  • r
when an spine receiv es t w
  • up
dates from the same no de in less than diam(G) time, w e assume that to
  • man
y no des are mo ving. In this case, the spine no de w aits for the no des to settle do wn, and then it initiates a new spine computation. The timeout p erio d for w aiting dep ends
  • n
the time for an up date to propagate across the net w
  • rk.
W e assume that a no de is settled do wn if it do es not send
  • ut
more than
  • ne
up date in less than diam(G) time. Pr
  • f
  • f
Corr e ctness The lemmas formalize the discussion
  • f
the preceding sections, that the OSR algorithm correctly determines all-pairs shortest paths initially , giv en a static net w
  • rk,
and that within a nite time after the last
  • f
a nite sequence
  • f
top
  • logy
c hanges, OSR correctly up dates the lo cal cop y
  • f
G's top
  • logy
at eac h spine no de. Lemma 2. With the net w
  • rk
initially static, eac h spine no de correctly deter- mines shortest paths b et w een all-pairs
  • f
no des in its lo cal cop y
  • f
G. Lemma 3. Within a nite time after a sequence
  • f
top
  • logy
c hanges, eac h spine no de has the correct top
  • logy
  • f
the connected comp
  • nen
t that con tains it.
slide-15
SLIDE 15 / 15 5. P artial-kno wledge Spine Routing (PSR) OSR not b eing practical b ecause
  • f
its need to main tain global state at eac h spine no de, w e prop
  • se
PSR, a ligh t w eigh t spine routing algorithm that uses
  • nly
lo cal state and stable non-lo cal state for computing \go
  • d"
routes rather than \optimal" routes. As men tioned in Section 1, w e use the spine as the fundamen tal infrastructure for PSR. An y partial state needed b y PSR is main tained
  • nly
at the spine no des. A detailed description
  • f
the spine and ho w it can b e used to pro vide a range
  • f
routing algorithms is giv en in Section 3. In
  • rder
to impro v e the
  • ptimalit
y
  • f
the routes that PSR computes, w e in tro duce in PSR a no v el mec hanism b y whic h information ab
  • ut
stable edges gets propagated
  • n
the spine. This mec hanism uses t w
  • t
yp es
  • f
waves (named after the w a y information propagates)
  • namely
add and delete w a v es to con v ey the stable edge information. Finally , PSR uses a LMR-lik e directed probing mec hanism for route disco v ery . In its route disco v ery mec hanism, PSR tak es a greedy approac h to compute the shortest path from the source to the destination. Hence in general, PSR can b e though t
  • f
as consisting
  • f
the follo wing three k ey comp
  • nen
ts:
  • Construction
and maintenanc e
  • f
the spine This in v
  • lv
es constructing the spine for the net w
  • rk,
main taining the spine
  • v
er top
  • logy
c hanges, and con v eying the spine structure and the domain mem b ership information to all no des in the spine.
  • The
adddelete waves Edge insertions and deletions are follo w ed b y the appropriate w a v e generation. Spine no des whic h receiv e these w a v es up date their curren t link state infor- mation (whic h w
  • uld
later b e used in an y route computation) and propagate the w a v es if necessary .
  • The
R
  • uting
me chanism The routing mec hanism in PSR consists
  • f
t w
  • distinct
comp
  • nen
ts:
  • Route
disco v ery The route disco v ery in PSR has t w
  • phases.
In the rst phase, an attempt is made to compute the complete route from the source to the destination using the curren t link state matrix. Up
  • n
failure
  • f
the rst phase, the second phase p erforms a prob e based route disco v ery that includes participation b y
  • ne
  • r
more spine no des
  • n
the spine path from the source domain to the destination domain.
slide-16
SLIDE 16 16 /
  • Reco
v ery up
  • n
route failure When a link go es do wn, PSR emplo ys t w
  • mec
hanisms in
  • rder
to reco v er from the route failure. These mec hanisms are describ ed later
  • n
in this section. Note that while PSR uses correct routes lik e DSR, it can learn progressiv ely b etter routes due to the adddelete w a v es that PSR has. The rest
  • f
this section describ es in detail eac h
  • f
the ab
  • v
e three comp
  • nen
ts
  • f
PSR in detail. State Maintaine d and Spine Maintenanc e F
  • r
a detailed description
  • f
the spine construction algorithm, refer to Sec- tion 3. Once the spine is constructed, eac h spine no de needs to main tain three pieces
  • f
information to b e later used b y the Route Disco v ery mec hanism
  • f
PSR: 1. Spine Structur e This is the structure that the construction phase comes up with. It is made use
  • f
for the directed probing phase
  • f
the route disco v ery mec hanism. 2. Domain Memb ership T able This cac hed information lists dom(v ) for eac h v in V . The route disco v ery mec hanism
  • f
PSR uses this information to nd the domain
  • f
the destination and in the prob e forw ard phase. If the en try for a v is in v alid at the time
  • f
reference, PSR do es a domain memb ership query and up dates the en try . 3. L
  • c
al Domain T
  • p
  • lo
gy The lo c al domain top
  • lo
gy
  • f
a spine no de v consists
  • f
v , the set
  • f
non-spine no des fx 62 C jv = dom(x)g, and all edges inciden t
  • n
v and its dominated no des. Due to the dynamic nature
  • f
the net w
  • rk,
the spine migh t need to b e up dated
  • n
top
  • logy
c hanges. In particular, the no de mo v emen ts in the graph can b e classied in to sev eral t yp es:
  • Non-spine
no de: let v b e a non-spine no de and let u = dom(v ).
  • Within
domain: v has some inciden t edges deleted and some inciden t edges inserted. v rep
  • rts
these c hanges to u. In addition, the
  • ther
endp
  • in
ts
  • f
the c hanged edges rep
  • rt
the c hanges to their dominators. Required add
  • r
del w a v es are initiated.
slide-17
SLIDE 17 / 17
  • In
to new domain: v mo v es from the domain
  • f
u to the domain
  • f
another spine no de u . In addition to the edge c hanges rep
  • rted
lo cally in the previ-
  • us
case, u adds v to its list
  • f
mem b ers and u deletes v from its mem b ers' list. Also, u initiates a del w a v e and u initiates an add w a v e.
  • Orphan
case: v mo v es so that none
  • f
its neigh b
  • rs
is in C . v selects its maxim um-degree neigh b
  • r
w to join C , and w asks dom(w ) to send a cop y
  • f
G to w . Note that w receiv es dom(w )'s partial information ab
  • ut
G, not the latest snapshot
  • f
G. In addition, dom(w ) adds w to its mem b ers list. Also, w sends a message to all spine no des con taining its lo cal top
  • logy
.
  • Isolation:
v mo v es a w a y from the rest
  • f
the no des. After O (diam(C )(C )) time, u kno ws that v has not mo v ed in to another no de's domain. Th us, u deduces that v has mo v ed a w a y and deletes v from mem b ers' list.
  • Leaf
spine no de: Let v b e a leaf spine no de. The mo v emen t
  • f
v generates up date messages as in the case
  • f
a non-spine no de. In addition, the no des formerly dominated b y v m ust nd new dominators. Let w b e suc h a non- spine no de. If w is adjacen t to another spine no de u, then u b ecomes dom(w ). Otherwise, if w is
  • rphaned,
then w forces its maxim um-degree neigh b
  • r
to join the spine. Finally , for those non-spine no des w , isolated from the spine b y the mo v emen t
  • f
v , these no des construct a spine among themselv es.
  • In
terior spine no de: Let v b e an in terior spine no de. The mo v emen t
  • f
v generates up date messages as in the case
  • f
a non-spine no de, and the non-spine no des formerly dominated b y v generate messages as in the case
  • f
the leaf spine no de. In addition, the mo v emen t
  • f
the in terior spine no de partitions C in to at most
  • C
(v ) comp
  • nen
ts. After the up dates ab
  • ut
inciden t spine edges
  • n
v are broadcast through C , the remaining no des in C do not kno w whether G is also partitioned. T
  • iden
tify p
  • ten
tial edges to connect the comp
  • nen
ts
  • f
C , the remaining no des in C can use lo cal information. Ho w ev er, in the w
  • rst
case, the comp
  • nen
ts
  • f
C ha v e to redo the maxim um w eigh t spanning tree algorithm. A dd and Delete Waves The motiv ation for the inclusion
  • f
these w a v es in PSR is to propagate infor- mation ab
  • ut
stable sections
  • f
the graph
  • v
er the spine. In particular, through these add and delete w a v es, long-liv ed edge information gets con v ey ed to the
slide-18
SLIDE 18 18 / spine no des. Besides ensuring that spine no des can no w use information ab
  • ut
non-adjacen t stable edges in addition to their lo cal domain top
  • logy
for route computation, con v eying information ab
  • ut
  • nly
stable edges w
  • uld
incur signi- can tly lo w er
  • v
erhead as compared to sa y link state routing. The propagation
  • f
these add/delete ripples
  • r
w a v es is done as follo ws: An add w a v e is initiated when a link comes up and a delete w a v e when a link go es do wn. T ypically , an add w a v e exp eriences a constan t dela y d at eac h hop whereas a delete w a v e is sen t through immediately to the next hop. A delete w a v e catc hing up with an add w a v e for the same edge w
  • uld
n ullify itself and the add w a v e. This com bined with the dierence in the rates at whic h add and delete w a v es propagate ensures that
  • nly
stable edge information gets con v ey ed to farther spine no des (and hence in to farther domains) as required. When a no de receiv es an add message for an edge l , it enqueues it in to the add queue (whic h is a list
  • f
messages to b e sen t
  • ut
after the constan t dela y d) if it nds the curren t state
  • f
that edge in its link state matrix to b e down. It then c hanges its link state information to reect the curren t state
  • f
that edge. On the
  • ther
hand, when a no de receiv es a delete w a v e, it propagates the delete w a v e if the state
  • f
the edge in its link state matrix is up. It then resets the state
  • f
the edge to b e down in its link state matrix. In
  • rder
to mak e this mec hanism more robust, a sequence n um b er can b e in tro duced for these w a v es. The follo wing pseudo co de represen ts what w e ha v e describ e ab
  • v
e: When a w a v e for link l with sequence n um b er i arriv es at a spine no de, the follo wing is to b e done:
  • if
i > last seq n um[l]:
  • last
seq n um[l] is mo died,
  • an
y add w a v e for link l in the add queue is remo v ed.
  • F
urther, if the incoming w a v e is:
  • add
wave: If link state[l] = \do wn", then enqueue the add w a v e
  • r
else drop it. Up date link state[l].
  • del
wave: If link state[l] = \up", then propagate the del w a v e
  • r
else drop it. Up date link state[l].
slide-19
SLIDE 19 / 19 R
  • ute
c
  • mputation
in PSR Let s b e the source requesting a route to destination d. The routing query is forw arded to the dominator
  • f
s (dom(s)). dom(s) c hec ks if the en try dom(d) is v alid. Otherwise, a dominator q uer y is broadcast
  • n
the spine. On
  • btaining
a resp
  • nse
from the curren t dominator
  • f
d, the information is stored in the lo cal cac he and is used to nd the spine p ath to dom(d). A timeout mec hanism is used if no spine no de claims to b e the dominator
  • f
d. The follo wing sequence
  • f
steps is a generalized represen tation
  • f
what hap- p ens at eac h spine no de subsequen tly: 1. The spine structure is kno wn at eac h spine no de. Also, eac h spine no de receiv es add and del w a v es from v arious edges. Hence, dom(s) forms a partial connected graph
  • f
kno wn edges. The spine edges are dropp ed from this graph to a v
  • id
the spine b ecoming a b
  • ttlenec
k. 2. If d is reac hable in this partial graph, then the route computed so far along with the shortest path to d is sen t bac k to the source. 3. If d is not reac hable, a shortest path algorithm from the curren t source s to the farthest domain to w ards d, is found in the partial graph. The query pac k et is then forw arded to the farthest domain through a p
  • ssibly
dieren t shortest path, whic h tak es the spine edges also in to accoun t. The edge w eigh ts are all considered unit y for these shortest path computations. If a farther domain cannot b e reac hed using the partial graph information, the prob e is forw arded to the next spine no de (on the w a y to the nal destination) along the spine edge. 4. The prob e pac k et
  • n
reac hing the destination is sen t bac k along the computed path to the source. A detailed algorithm for this route computation is giv en b elo w: PSR Find route: from s to t If route is in route cac he at s, then use that route If route is not in route cac he,
  • r
if cac hed route times
  • ut,
then query (s; s; d; nul l ; nul l ) to dominator dom(s) A t an y spine no de dom(i) whic h receiv es query (s t ; s; d; D ; ), if D = nul l
slide-20
SLIDE 20 20 / dom(d) computed mem b ership
  • f
d D path(d 1 ; d 2 ; ::dom(d)) where d i are spine no des and d 1 = my id G p G with spine no des remo v ed if d and s t are connected in G p
  • s
shortest path from s t to d in G p send path found message to s with r
  • ute
=
  • +
  • s
else d i farthest domain
  • f
D reac hable from s t in G p if d i = my id
  • local
route from s t to my id in G p send query (D [2]; s; d; fD [2]; ::dom(d)g;
  • +
  • local
  • D
[2]) to D [2] along spine edge from dom(i) to D [2] else
  • s
shortest path from s t to t 2 d i in G p
  • p
shortest path from dom(i) to d i in G send query ( s [l eng th( s )
  • 1];
s; d; fd i+1 ; ::dom(d)g;
  • +
  • s
  • t)
to d i along
  • p
A n A lternate Pr
  • bing
Me chanism Another approac h for routing using the spine arc hitecture, is based
  • n
using the graph induced b y the v ertices
  • n
the spine path from s to d. As
  • pp
  • sed
to the route disco v ery sc hemes prop
  • sed
earlier, the query pac k et tra v els
  • n
the spine path from s to d. On its w a y , it pic ks up edges inciden t
  • n
the v ertices
  • f
the spine path, P . A dynamic programming sc heme to k eep trac k
  • f
shortest paths from s to the no des so far tra v ersed could b e used to k eep the message complexit y
  • f
the query pac k et b
  • unded
b y O (j P j). The pro cessing
  • v
erhead at eac h no de w
  • uld
also b e O (j P j). The desired path is computed when the prob e reac hes d. This path can is then rep
  • rted
bac k to s. This algorithm do es not use global kno wledge, nor do es it p erform a greedy computation. But it signican tly impro v es the
  • ptimalit
y
  • f
routes PSR com- putes. Ho w ev er, the computation
  • v
erhead at eac h spine no de is more than in the case
  • f
the route disco v ery mec hanisms describ ed earlier. This migh t increase the route computation time.
slide-21
SLIDE 21 / 21 Link F ailur e in Ongoing Flows PSR has t w
  • mec
hanisms to deal with link failures and to reduce the impact these failures ha v e
  • n
  • ngoing
  • ws.
These t w
  • mec
hanisms are explained in detail b elo w: 1. R
  • ute
r e c
  • mputation
at the failur e p
  • int
Assuming that the link uv
  • n
the path from s to t fails, u is treated as the failure p
  • in
t and is made to recompute the route from u to the destination t. Once the route is recomputed, u up dates the source route in all pac k ets from s to t accordingly . Note that this mec hanism w
  • uld
pro v e to b e v ery ecien t if the link failure
  • ccurs
somewhere near the destination as then the recomputation time should tak e minimal time and hence, n um b er
  • f
pac k ets lost (assuming no buering at u) w
  • uld
b e v ery less. 2. Sour c e notic ation fr
  • m
the failur e p
  • int
Assuming again that uv is the link that fails, according to this mec hanism, u w
  • uld
send bac k a sour c e notic ation to s,
  • n
the receipt
  • f
whic h s stops transmission
  • f
pac k ets, recomputes new route to t, and then sends pac k ets along the new route. Note that this mec hanism w
  • uld
pro v e to b e ecien t for the case where the link failure
  • ccurs
near the source whic h essen tially w
  • uld
mean that the source receiv es the notication v ery fast and hence, n um b er
  • f
pac k ets lost w
  • uld
b e less. The com bination
  • f
the ab
  • v
e t w
  • mec
hanisms w
  • uld
reduce the impact that link failures ha v e
  • n
  • ngoing
  • ws,
and this is supp
  • rted
b y
  • ur
sim ulation results in Section 5. 6. Sim ulations F rom
  • ur
sim ulations, w e ha v e t w
  • groups
  • f
results. The rst group mea- sures ho w w ell the spine construction phases
  • f
b
  • th
OSR and PSR p erform. The results indicate that
  • ur
algorithm p erforms its computation relativ ely quic kly . The second group
  • f
results sho ws ho w OSR and PSR p erform when no des mo v e and the top
  • logy
c hanges. The results
  • f
this group again sho w that
  • ur
incre- men tal up date metho d is m uc h more ecien t than redoing the initial phase again. PSR in particular uses partial top
  • logy
information at the spine no des consisting
  • f
the spine structure, domain mem b ership table, lo cal domain top
  • logy
, and in- formation
  • btained
through the adddelete w a v es. The results also indicate that
slide-22
SLIDE 22 22 /
  • Cluster 1
Cluster 2 Cluster 3 Cluster 4 Virtual Backbone
  • Figure
3. Graph 1 is a clustered graph with four distinct clusters. No des are adjacen t if within 1 unit square
  • f
eac h
  • ther,
where the unit square is dra wn to scale in the upp er middle
  • f
the area. This gure depicts the mobilit y corresp
  • nding
to the results in T able 2. (a) Sho w the spine for the graph using spine computation, (b) Sho ws the non-spine mo v emen ts within the same domain
  • r
to another domain in dashed arro ws, and non-spine mo v emen ts to areas with no dominators in dotted arro ws, (c) Sho ws the random non-spine random mo v es in dashed arro ws, and random non-spine and leaf spine mo v es in dotted arro ws. PSR p erforms a highly eectiv e trade-o b et w een up date
  • v
erhead and shortest path computation. Spine Construction The graphs in these sim ulations mo del hosts in an area 100 b y 100 units, with the transmission range represen ted as a 20 b y 20 unit square. The graphs with 20, 25, 30, 35, 40, and 50 no des ha v e hosts randomly placed, and the graph with 58 no des has hosts clustered in quadran ts, as sho wn in Figure 3.a. T able 1 giv es the time and message complexities for initially determining the shortest-path routes b et w een all pairs
  • f
no des. The abbreviations are TMC = \theoretical message complexit y", TTC = \theoretical time complexit y ," SMC = \sim ulated message complexit y ," and STC = \sim ulated time complexit y ." F
  • r
the time complexit y , w e giv e results in b
  • th
message slots and in seconds. In
  • ur
exp erimen tal testb ed (whic h consists
  • f
  • nly
6 no des, and is th us to
  • small
to presen t in teresting p erformance results), w e ha v e P-120 noteb
  • ks
running Lin ux 2.0.30 and equipp ed with 1 Mbps Photonics Infrared net w
  • rk
cards for whic h w e custom-built the Lin ux driv er. In
  • ur
testb ed, eac h con trol message tak es ab
  • ut
10 ms to transmit, and that maxim um con trol pac k et size is 128 b ytes. Since
  • 16
in all
  • ur
sim ulations, and eac h host address is 4 b ytes, a 128 b yte pac k et is sucien t for transmitting lo cal top
  • logy
information in a single message.
slide-23
SLIDE 23 / 23 n
  • jC
j m TMC TTC SMC STC slots seconds slots seconds 20 9 5 51 238 225 0.450 250 151 1.510 25 9 7 70 361 288 0.576 439 321 3.210 30 9 7 90 448 333 0.666 528 345 3.450 35 16 8 135 595 688 1.376 595 536 5.360 40 11 10 139 751 550 1.100 808 449 4.490 50 14 15 169 1169 910 1.820 1027 622 6.220 58 9 29 116 2137 783 1.566 1257 596 5.960 T able 1 Sim ulation results for computing the spine for OSR and PSR OSR r esults T able 2 presen ts the OSR time and message complexities for up dating the spine and routing tables after single no de mo v emen ts. F
  • r
no w, w e
  • nly
mo del the mo v emen t
  • f
non-spine no des and leaf spine no des. F
  • r
these sim ulations, w e mo v ed either 10
  • r
15 no des at time 0, and then w e measured the n um b er
  • f
message and time steps un til the spine w as up dated. The \n um b er
  • f
no des aected" is the n um b er
  • f
no des whose adjacency lists are c hanged as a result
  • f
the no de mo v emen ts. The \new spine size" is the n um b er
  • f
no des in the spine after all the top
  • logy
c hanges ha v e b een up dated. Graph 1 is the 58 no de graph with 116 edges, maxim um degree 9, and jC j = 29 initially; graph 2 is the 50 no de graph with 169 edges, maxim um degree 14, and jC j = 15 initially . Figure 3.a illustrates the spine in the graph. Figure 3.b sho ws the eects
  • f
non-spine no des mo ving within their domains
  • r
in to the domains
  • f
  • ther
dominators. Finally , Figure 3.c depicts b
  • th
non-spine no des and leaf spine no des mo ving. In the ab
  • v
e sim ulations, w e did not actually sim ulate an y application trac. The purp
  • se
  • f
the sim ulations ab
  • v
e w as to compute the
  • v
erhead
  • f
basic spine routing. In the follo wing sim ulations, w e also sim ulated application trac, and w e presen t these results for the new spine routing algorithm as describ ed in Section 4. PSR r esults T able 3 compares the p erformance
  • f
PSR with the
  • ptimal
algorithm in terms
  • f
the computed path length and
  • v
erhead in v
  • lv
ed. The signican t pa- rameters for the graph
  • n
um b er
  • f
no des(n), n um b er
  • f
edges(m), n um b er
  • f
spine no des(C ), diameter
  • f
the spine(diam C ), a v erage degree ( )
  • are
sho wn
slide-24
SLIDE 24 24 / Graph no. mo v ed no. aected SMC STC new spine size slots seconds c ase 1: graph 1 10 47 164 130 1.30 29 graph 1 15 53 193 152 1.52 29 graph 2 10 46 135 122 1.22 15 graph 2 15 44 158 120 1.20 15 c ase 2: graph 1 10 37 161 163 1.63 33 graph 1 15 48 223 145 1.45 37 graph 2 10 47 152 137 1.37 20 graph 2 15 50 207 151 1.51 21 c ase 3: graph 1 10 43 151 97 0.97 31 graph 1 15 43 172 112 1.12 33 graph 2 10 40 143 114 1.14 20 graph 2 15 47 140 114 1.14 19 c ase 4: graph 1 10 42 119 94 0.94 30 graph 1 15 45 165 116 1.16 30 graph 2 10 44 97 98 0.98 17 graph 2 15 44 112 114 1.14 19 T able 2 Sim ulation results for up dating the spine in OSR when m ultiple no des mo v e in the ad-ho c net w
  • rk
sim ultaneously . Case 1: non-spine no des in same domain
  • r
to another domain. Case 2: non-spine no des in area with no dominator. Case 3: non-spine no des, all cases, including isolation. Case 4: non-spine no des and spine leaf no des, randomly . in the caption
  • f
the table con taining the results for that particular graph. F
  • r
eac h graph, w e measure as men tioned ab
  • v
e, the a v erage path length (APL) in n um b er
  • f
hops, message complexit y for route computation (MC), route compu- tation time (TC) in seconds and the spine usage ratio (SU) also in n um b er
  • f
hops. These measuremen ts are tak en for b
  • th
  • ptimal
shortest path routing and PSR. F
  • r
PSR w e measure these parameters at dieren t p
  • in
ts
  • f
time to study the impact
  • f
propagation
  • f
add w a v es. The time d used in the tables is the constan t time for whic h add w a v es are dela y ed at eac h hop.
slide-25
SLIDE 25 / 25 The coun ter-in tuitiv e increase in APL, MC and TC with increase in time in these sim ulations are due to the fact that w e are able to b ypass the spine m uc h more (as indicated b y the decrease in SU) with more top
  • logy
information. Th us the results sho wn in T able 3 indicate the near
  • ptimal
nature
  • f
PSR. APL MC TC SU
  • ptimal
2.8229 5.6459 0.350 N/A P S R 3.3988 6.8241 0.420 0.2689 P S R + 3.3494 6.7298 0.415 0.1494 P S R +2 3.3471 6.7022 0.415 0.1011 P S R +3 3.4988 6.9367 0.420 0.1000 P S R +4 3.2977 6.6390 0.415 0.0931 P S R +5 3.1195 6.3931 0.400 0.0908 P S R +6 3.1034 6.3747 0.395 0.0908 P S R +7 3.1034 6.3747 0.395 0.0908 T able 3 P erformance
  • f
PSR compared to an
  • ptimal
approac h. (n,m,C ,diam C ,Av g deg ) = (30,79,11,7,5) R LP sent r ecv d dr
  • pped
r er
  • uted
del ay 1 276 247 29 0.70 2 294 237 57 2 0.67 3 298 260 38 63 0.69 4 294 247 47 59 0.64 5 298 297 1 122 0.69 6 300 299 1 141 0.76 R LP sent r ecv d dr
  • pped
r er
  • uted
del ay 1 239 214 25 0.69 2 247 199 48 1 0.52 3 255 248 7 50 0.69 4 253 224 29 52 0.69 5 255 254 1 105 0.69 6 268 267 1 118 0.70 (a) (b) T able 4 P erformance
  • f
PSR's reco v ery mec hanism
  • n
a link failure. (n,m,C ,diam C ,Av g deg ) = (30,79,11,7,5) with link failure
  • n
path for
  • w
from no de 24 to 20 (a) input trac generated using P
  • isson
distribution (b) input trac generated using MMPP distribution T able 4 presen ts the results for the p erformance
  • f
the link-failure reco v ery mec h- anism
  • f
PSR. These results are an indication
  • f
the eect a link failure w
  • uld
ha v e
  • n
  • ngoing
  • ws
in PSR. F
  • r
an arbitrary
  • w,
w e bring do wn links that are
slide-26
SLIDE 26 26 / progressiv ely farther a w a y from the source and w e sho w the impact
  • f
that link failure in terms
  • f
n um b er
  • f
pac k ets lost, n um b er
  • f
pac k ets re-routed and dela y for subsequen t pac k ets. As can b e
  • bserv
ed from the table the relativ e lo cation
  • f
the link failure with resp ect to the source has a signican t impact
  • n
the ab
  • v
e men tioned parameters. In particular,
  • If
the link failure is v ery close to the source, the recomputation time at the no de b efore the failure is large and hence a considerable n um b er
  • f
pac k ets can p
  • ten
tially b e lost. But the source notication message, talk ed ab
  • ut
earlier in the section, reac hes the source almost immediately and hence, prev en ts a large n um b er
  • f
pac k ets from getting dropp ed.
  • If
the link failure is v ery close to the destination, the recomputation time at the no de b efore the failure is v ery small and hence v ery few pac k ets get dropp ed. But the source notication message reac hes the source with some dela y and hence the n um b er
  • f
pac k ets that get re-routed is large.
  • If
the link failure is somewhere midw a y b et w een the source and destination, b
  • th
mec hanisms (route recomputation and source notication) fail to react fast enough to prev en t loss
  • f
pac k ets and hence the n um b er
  • f
pac k ets lost and re-routed is relativ ely large. 7. Concluding remarks In conclusion, w e presen ted renemen ts to the use
  • f
a spine as an infrastruc- ture for routing in an ad ho c net w
  • rk
and
  • utlined
a framew
  • rk
for the amoun t
  • f
kno wledge main tained at eac h no de. Within this framew
  • rk,
w e appro ximate a spine for use as the spine and main tain partial global kno wledge supplemen ted b y long liv ed edge information
  • btained
through the adddelete w a v es. The resulting spine routing algorithm is a h ybrid b et w een shortest-paths routing and routing
  • n
demand. Finally , the use
  • f
the spine can also b e extended to increase the fault-tolerance
  • f
  • ur
routing algorithm, and it can also b e used to add m ulticast and broadcast routing capabilities. References [1] S. Corson, J. Mac k er, and S. Batsell, \Arc hitectural considerations for mo- bile mesh net w
  • rking,"
at In ternet DRAFT RF C V ersion 2, Ma y 1996, http://tonnant.itd.nrl.navy.mil /mmn et/mm netR FC.t xt.
slide-27
SLIDE 27 / 27 [2] B. Das and V. Bhargha v an, \Routing in ad-ho c net w
  • rks
using minim um connected domi- nating sets," in IEEE International Confer enc e
  • n
Communic ations (ICC '97), (June 1997). [3] B. Das, R. Siv akumar, and V. Bhargha v an, \Routing in ad-ho c net w
  • rks
using a virtual bac kb
  • ne,"
to app ear in 6th International Confer enc e
  • n
Computer Communic ations and Networks (IC3N '97), (Sept 1997) 1{20. [4] R. G. Gallager, P . A. Hum blet, and P . M. Spira, \A distributed algorithm for minim um- w eigh t spanning trees," A CM T r ans. Pr
  • gr
amming L ang. Systems, 5, 1 (Jan 1983) 66{77. [5] M. L. Garey and D. S. Johnson, Computers and Intr actablility: A Guide to the The
  • ry
  • f
NP-Completeness, San F rancisco: W. H. F reeman, 1979. [6] M. Gerla and J. T.-C. Tsai, \Multicluster, mobile, m ultimedia radio net w
  • rk,"
A CM J. Wir eless Networks, 1, 3 (1995) 255{265. [7] S. Guha and S. Kh uller, \Appro ximation algorithms for connected dominating sets," T ec h. Rep. 3660, Univ.
  • f
Maryland Inst. for Adv. Computer Studies{Dept.
  • f
Computer Sci., Univ.
  • f
Maryland, College P ark (June 1996). [8] D. A. Hall, \T actical In ternet System Arc hitecture for T ask F
  • rce
XXI," Pr
  • c
e e dings
  • f
the T actic al Communic ations Confer enc e, Ft. W a yne, Indiana, Ma y 1996. [9] D. B. Johnson and D. A. Maltz, \Dynamic source routing in ad ho c wireless net w
  • rks,"
in Mobile Computing, (ed. T. Imielinski and H. Korth), Klu w er Academic Publishers, 1996. [10] J. Jubin and J. D. T
  • rno
w, \The D ARP A pac k et radio net w
  • rk
proto cols," Pr
  • c
e e dings
  • f
the IEEE, 75, 1 (Jan 1987) 21{32. [11] C. Lund and M. Y annak akis, \On the hardness
  • f
appro ximating minimization problems," J. A CM, 41, 5 (Sept 1994) 960{981. [12] C. E. P erkins and P . Bhagw at, \Highly dynamic destination-sequenced distance-v ector routing (DSD V) for mobile computers," Computer Communic ations R eview, 24, 1 (A CM SIGCOMM 1994) 234{244. [13] B. Aw erbuc h, \Optimal distributed algorithms for minim um w eigh t spanning tree, coun t- ing, leader election and related problems," in Pr
  • c
e e dings
  • f
the 19th A nnual A CM Sym- p
  • sium
  • n
The
  • ry
  • f
Computing, (1987) 230{240. [14] M. F aloutsos and M. Molle, \Optimal distributed algorithm for minim um spanning trees revisited," in Pr
  • c
e e dings
  • f
the 14th A nnual A CM Symp
  • sium
  • n
Principles
  • f
Distribute d Computing, (1995) 231{237. [15] S. Kutten and D. P eleg, \F ast distributed construction
  • f
k
  • dominating
sets and applica- tions," in Pr
  • c
e e dings
  • f
the 14th A nnual A CM Symp
  • sium
  • n
Principles
  • f
Distribute d Computing, (1995) 238{249. [16] B. Das and M. C. Loui, \Algorithms for all single deletions in a minim um spanning tree, sim ultaneously ," T ec h. Rep. UILU-ENG-95-2241, A CT-136, Co
  • rd.
Sci. Lab., Univ.
  • f
Illinois, Urbana-Champaign (1995). [17] J. A. Gara y , S. Kutten, and D. P eleg, \A sub-linear time distributed algorithm for minim um-w eigh t spanning trees," in Pr
  • c
e e dings
  • f
the 34th A nnual Symp
  • sium
  • n
F
  • un-
dations
  • f
Computer Scienc e, (1993) 659{668.