Routing Algorithms for Rapidly Fluctuating Networks

VIΔίκτυα και Επικοινωνίες

6 Οκτ 2011 (πριν από 6 χρόνια και 9 μήνες)

721 εμφανίσεις

Routing in rapidly uctuating networks present new challenges. Conventional algorithms will fail in this setting because there will be too many up- dates generated and the network state has very short temporal validity. Also, we argue that a single path metric is not robust enough to the rapid uctuations and will often result in sub- optimal routing decisions. In this work, we pro- pose a multi-path metric - an approximate esti- mate of stochastic connectivity. We show why this is always a better metric albeit more dicult to compute than a single path metric. We are currently setting up experiments to validate our algorithms.

Routing Algorithms for Rapidly Fluctuating Networks
Arka Bhattacharya
Computer Science Division
University of California
Berkeley,CA 94720
Shaunak Chatterjee
Computer Science Division
University of California
Berkeley,CA 94720
Routing in rapidly uctuating networks present
new challenges.Conventional algorithms will fail
in this setting because there will be too many up-
dates generated and the network state has very
short temporal validity.Also,we argue that a
single path metric is not robust enough to the
rapid uctuations and will often result in sub-
optimal routing decisions.In this work,we pro-
pose a multi-path metric - an approximate esti-
mate of stochastic connectivity.We show why
this is always a better metric albeit more dicult
to compute than a single path metric.We are
currently setting up experiments to validate our
1 Introduction
Conventional routing algorithms depend very heavily on
stability of link costs.Commonly used algorithms such
as OSPF (Ordinary Shortest Path First ) for wired net-
works and OLSR ( Ordinary Link State Routing protocol
) for wireless,are examples of link state algorithms which
broadcast updates throughout the network whenever a link
state changes.In most such algorithms,the state of the
link is assumed to be binary ( UP or DOWN ),or may
have an associated cost ( such as amount of congestion ).
In both cases,the state of a link is assumed to persist for
some time and hence not expected to change by the time
the update message reaches other nodes.Also,most com-
mon routing algorithms such as AODV,DVR,etc carry
out best-path routing,i.e they maintain the best path to
each of the other nodes in the network and route packets
along that path.
Wireless networks have nowadays become ubiquitous.
While various applications and usefulness of wireless net-
works have been well documented,the fact that they use
electro-magnetic waves over air for transmission of data
leave them open to external interference.Anything from
switching on a microwave oven to a packet being trans-
mitted by another wireless channel can cause interference.
Hence the guarantee of a packet being delivered success-
fully to the next hop through a wireless link ( also known
as PRR - Packet Reception Ratio ) uctuates rapidly.
Among others,there are two major problems which such
uctuating networks face.(1) Any link-state ( or distance
vector ) algorithm will fail as too many updates will be
sent throughout the network.(2) Any best path metric
will fail because the current best path might temporarily
become extremely bad;and (3) Updates about the change
in state of a link might not be temporally valid,i.e by
the time the control message describing the state of the
link reaches a particular node,the link-state may have
changed again.
There exist many routing algorithms for wireless networks
with capabilities of scoping link update messages.There
exist routing protocols which impose a hierarchy on the
topology,such as BVR [2] which directs packets to par-
ticular beacon nodes,Landmark routing [8] which directs
packets to certain nodes marked as landmarks and S4 [5]
which modies landmark routing in certain ways to provide
mathematical guarantees of stretch.There exist back-
pressure algorithms [6] where congestion and path failure
are indicated by the packet queues getting full and CTP [3]
where which uses adaptive beaconing and non-decreasing
path costs from source to destination to route packets.
Each of the above-mentioned algorithms have its own ad-
vantages and shortcomings,but none of them will per-
form eciently under the scenario of rapidly uctuating
links.XL [4] is a routing algorithm which incorporates
update suppression mechanisms,but is designed primar-
ily for wired networks.Hence,certain features in rapidly
uctuating wireless networks renders it useless.However,
our paper uses a lot of the techniques used in XL,the
details of which are provided in section 4.1.
Most of the problems mentioned could be solved if one had
knowledge about the model of uctuation of a wireless link
.However,despite a lot of studies extensively document-
ing link churn [7],no concrete model has been found.The
Beta-factor paper [9] reports that 802.15.4 links are bursty
and provide a metric to capture the burstiness but most
long distance communication takes place over 802.11.Also
[1] mentions that most 802.11 links are stochastic and do
not follow any well known model.All this leads to a
deeper scientic question - how does one maintain routes
and routing state when there is a prohibitive amount of
churn in the network?
In this paper,we present an insight into a\connectiv-
ity"or multi-path metric,which maintains multiple routes
from a node to its close neighbors,and thereby takes ad-
vantage of the redundancy in the graph.Each collection
of paths to a particular nearby node is termed as a hyper-
link.Hyperlinks are only maintained to nodes in a C-hop
neighborhood,since there is an overhead required in main-
taining the alternate paths in a hyperlink (the same short-
comings to single best-path routing applies ).Maintaining
short alternate paths is key to successful routing.Also
,a multi-path metric has an added advantage of having
lower sensitivity to a link-state change,thus enabling the
network to throttle most updates.The multi-path metric
along with an XL style routing over hyperlinks results in
throttling of a large number of unwanted and irrelevant
link updates.
The paper is organized as follows:Section 2 describes the
problem formulation in details.Section 3 compares the
multipath\connectivity"metric against a single path met-
ric.Section 4 enumerates the overall algorithm and com-
bines it with XL.Section 5 describes other multi path met-
rics.Section 6 presents some issues with XL which makes
our algorithm performance bad.We present our results in
Section 7 and outline some future work in Section 8.
2 Problem Formulation
We consider a network represented by a graph.Let (G;P)
represent a graph where G is the set of nodes and P is a
formof adjacency matrix.P
is the probability of a packet
being successfully sent directly from node i to node j.In
a rapidly uctuating network,P
can potentially change
very frequently.We also assume that nodes i and j are
always aware of the current value of P
In this scenario,the task is to devise a routing algorithm
which is robust to frequent changes in the network state.
The assumptions we make are the following:
 A link's P
value could uctuate too frequently for
the entire network to be updated about its current
state at any point of time.
 A lot of links could be uctuating,so the control mes-
sage overhead for a conventional algorithm could be
Thus,in this setting,all nodes in the network can never
have a consistent view of the network,since the overhead
is too high,and some updates will be invalid by the time
they reach a node.
3 Connectivity vs single path metric
In deterministic cost based networks,the optimal route
is the shortest path between the source node S and des-
tination node D.In a stochastic network,the analogous
measure could be the maximumlikelihood path.If we con-
sider the negative log likelihood values,then the maximum
likelihood path becomes the minimum cost path (shortest
path).However,in a stochastic network what we really
care about is not the maximum likelihood path but the
probability of any path existing between s and d.The de-
cision of which path to use can be made locally based on
current information (also sampled locally).
This point can be illustrated through an example (see Fig-
ure 1).When a packet needs to be sent from node S to
node D,the two choices available are via nodes X-Y or via
P-Q.The maximum likelihood metric suggest the path
through X and Y since that path is individually is better
than all the paths available through P and Q.However,it
is more likely at any given point of time,that a path will
exist via the P-Q route than via the X-Y route (where
there is only one possible path).Thus,the probability of
successfully delivering a packet is increased by choosing to
send the packet to P rather than sending it to X.
Figure 1:An example where the maximumlikelihood path
is dierent from the maximum connectivity path.
Hence,an intuitive metric could be the one mentioned be-
fore - the probability of a path existing between a source
node S and a destination node D.However,in the gen-
eral case,dening this value as a function of constituent
edge availability values can be semantically infeasible.This
is because it is dicult to account for paths which share
edges.It is easier to compute this probability value if the
paths are disjoint.Also,if all the paths between S and
D pass through a common point X,then the probabil-
ity of a path existing between S and D (say P(SD)) can
be decomposed into P(SX) and P(XD),where P(SD) =
P(SX) P(XD).
Since the exact computation is often infeasible,we choose
to use a proxy function which we term the\connectivity"
metric.This metric is dened by a set of edge-disjoint
paths between a pair of nodes.The formal denition is:
conn(S;D) = 1 
(1 path
al(S;D;i)) (1)
where S and D are nodes and path
al(S;D;i) is the like-
lihood of the i
most likely path between S and D.This
metric is a lower bound for the actual probability of a path
existing between S and D.It can be shown that if we chose
any K random edge-disjoint paths between S and D,then
the connectivity metric dened by them would be lesser
than or equal to the one dened by the K shortest (most
likely) paths.Thus,this is the best approximation to the
actual value using K edge-disjoint paths.
Computing the new metric requires information about
edges on all the K most likely paths.If we want to main-
tain this metric between all pairs of nodes (i.e.globally),
then the path lengths could be arbitrarily long and updates
(of frequent uctuations) would need to be sent across the
entire network.This is a very expensive proposition since
the control overhead would be too large.Also,since the
uctuations are frequent,the time taken for the update
about a particular link to reach a far away node might be
more than the time of the next uctuation of that link.
In this case,the information that reaches the node is al-
ready invalid.We need to reduce the amount of updates
being sent around,and at the same time,ensure that a
large portion of the updates reach the relevant nodes be-
fore the information becomes invalid.This can be done by
considering local paths.
Let us add a constraint that any path that we consider be-
tween a pair of nodes S and D have to be within C hops.
This automatically ensures that the updates for computing
the connectivity metric are only locally scoped.This could
even be done through local ooding for small values of C.
Once we use these\local"paths to compute the connec-
tivity metric,node pairs which do not have short paths (of
C hops or less) between them are considered to not have
a direct'hyperlink'between them.After these hyperlinks
are created,we use Dijkstra's algorithm to perform nor-
mal link-state routing.Thus,the main idea here is to not
maintain global redundant paths since the updates will not
be received soon enough to make well-informed decisions.
Saving on the control overhead is also an important con-
sideration for this decision.
4 Using Hyperlinks with XL
Now that we have a basic setup of forming hyperlinks and
then performing a so-called\hyperlink-state"routing,we
can use existing update suppression schemes.We chose to
work with the XL (an approximate link state) algorithm
since it proposes an update suppression scheme while still
providing performance guarantees.
4.1 XL:the algorithm
XL or Approximate Link State algorithm [ CITATION ] is
a link-state algorithm which aims at lowering the number
of control messages sent by the network by suppressing
updates fromcertain parts of the network,and maintaining
slightly sub-optimal paths as a trade-o.XL sends out link
updates only
1.when the update is a cost increase ( i.e bad news )
2.when the link is used in the node's shortest-path route
to another node in the network.This update is only
sent to the next hop node in that route.
3.when propagating the new link cost improves cost to
any destination from the a node by a factor of (1+)
,where  is a design parameter.Lower values of 
tends to maintain more optimal paths and suppress
less updates,while higher values of  maintain more
sub-optimal paths while suppressing more updates.
XL proves that the three constraints ensure soundness ( i.e
if XL reports a path from node uto node v in the network,
the path exists ) and completeness ( i.e if there is a path
between node u to node v in the network,XL will nd it ).
Also,the paper provides guarantees that any path main-
tained by a node as a result of the XL routing algorithm
will have a stretch within a nite bound ( parameterized
by  ).The authors simulate the XL algorithm on vari-
ous types of graphs and show the improvement in number
of control messages sent through the network.Conditions
(1) and (2) maintain soundness and completeness,while
condition (3) ensures a bounded stretch.
4.2 Putting together the overall routing
Although we have primarily discussed the\connectivity"
metric to form hyperlinks,we can potentially use any mul-
tipath metric to form our hyperlinks and the overall algo-
rithm can operate with such dierent choices of metrics.
Hence in the general version of the algorithm,we only refer
to a general multipath metric,instead of the\connectiv-
ity"metric specically.
Link Estimation We assume that every node gets the
following information about every link (edge) attached to
1.Any attached link's availability probability value
2.Current state of an attached link
Topology Formation I:Hyperlinks Parameters
C:maximum length of a path (in hops) K:number of al-
ternate paths considered
For each node pair P,Q,
1.Find the K edge-disjoint shortest paths from P to Q
of length C hops or less.
2.Create a hyperlink from P to Q using a multi-path
3.Upon receiving updates about links,recompute the K
shortest paths and update the hyperlink value.
No hyperlink exists between a pair of nodes if there does
not exist any path between them of length C hops of less.
Topology Formation II:Route creation
1.Replace original links with hyperlinks (as described in
the previous segment) to form the hyperlink graph H.
2.Use Dijkstra's algorithm to nd the shortest path be-
tween every pair of nodes in H.
Update Dissemination
1.Flood the local C hop neighborhood about the change
in a link's value.
2.Recompute the hyperlink values for every relevant
node pair (aected by the changes propagated as
3.Send out updates about hyperlink changes following
XL rules (S1,S2,C1).
1.When a packet arrives,identify the immediate hyper-
link destination.
2.Send it to the current available neighbor (including
itself,i.e.waiting and not sending) which presents
the best chance of reaching the hyperlink destination.
The next subsection how to decide which is the best avail-
able neighbor.
4.3 Finding the best available neighbor
We explored a few options for making this decision.Let
the source of the hyperlink be S and the destination of
the hyperlink be D.X
are the K immediate
neighbors along the K shortest paths from S to D and X
is the neighbor along the best path.
Firstly,we checked the rst edge along the K shortest
paths (from best to worst) and sent the packet to the rst
such node which was reachable via an available edge.This
approach tries to minimize waiting time and will work well
when the K alternate paths are of similar cost.However,
the problem with this approach is that if the second best
path is a lot worse than the best path,then it is often
wiser to wait for the rst link along the best path to be-
come available rather than sending it along an alternate
This insight led us to our second (improved) criterion.This
works as follows.Sort the K paths in increasing order
based on their X
(i=1;:::;K) to D path cost.Sample
in this sorted order,the S  X
link until you nd one
available.Let this X
node be denoted as X
S X1 D path cost is lower than X
wait else send it to X
5 Various multi path metrics
5.1 More about the connectivity metric
5.1.1 The good
The\connectivity"metric is more'resilient'to changes.
The amount of change in a single path metric when a
link on that path changes is much more than the amount
of change on the\connectivity"metric.The tradeo is
that the\connectivity"metric changes (albeit by small
amounts) much more frequently since many more links are
constituents of the hyperlink.However,we have empiri-
cally observed that the benet is more prominent.We set
up a simulation for a hyperlink similar in topology to the
one shown in Figure 3 but with more redundant paths be-
tween A and D.We varied each edge value randomly (at
random time intervals) and compared the maximum like-
lihood (ML) path metric against the\connectivity"met-
ric.The\connectivity"metric had a higher mean and a
lower variance as shown in Figure 2.This lower variance
also implies longer temporal validity when we are ready
to tolerate small errors in our routing decisions (and this
is inevitable since exact information cannot be propagated
quickly enough).
5.1.2 The bad
Although the\connectivity"metric seems appealing intu-
itively,it suers from a basic aw.It can lead to loops.An
Figure 2:The connectivity metric has a lower variance and
higher mean than the ML path
example demonstrating this is shown in Figure 3.Consider
the hyperlink AD.Since all the 3 paths are equivalent,
a packet arriving at A and going to D is routed to B
Once at B
,the optimal route to D is now through the
hyperlinks B
A and AD.Analytically the reason for
this is that a hyperlink cost (AD) can be lower than the
cost of a constituent hyperlink (B
D).This is not the
case with normal link costs.
However,analysing the semantic reason behind the loop
formation is more interesting.The\connectivity"metric is
semantically analogous to sampling a path atomically.At
A,if we could sample the availability of AB
a priori,and then send it down a selected path (using
source-based routing) to D,where the edges would retain
their state (up or down) until we reach D,then this met-
ric would have been appropriate.However,we assume
that atomiticity lasts one time step or one hop.Edges can
change state after every time step.Hence,we allow the
routing decision to potentially change at every time step
as well (hence no source based routing).
Figure 3:An example demonstrating how the connectivity
metric can lead to loops
Using the\connectivity"metric,we detected a lot of loops
in our experiments.Loops will be formed whenever the
best among the K shortest (lowest in cost) paths consti-
tuting a hyperlink have comparable cost.To remove loops,
the approach we adopted was we dened a modied version
5.2 Expected Connectivity
Let us use the same example (see Figure 3) with rede-
ned edge costs to distinguish between paths.c(AB
) =
) = y
) = z
) = x

) = y
 C
) = z
 A) = x
 A) =
A) = z
.Also assume x
 y
 z
The new multi path metric dening the cost of the hyper-
link AD is:x
+(1 x
+(1 y
This metric re ects the expected cost of a path from A to
D.If AB
,which is the rst link along the best path,is
available (probability x
) then the cost is x
if it is unavailable (probability 1 x
),and if AB
rst link along the next best path,is available (probability
),then the cost is y
and so on.
This metric semantically captures the single time step
atomicity that we assume and hence removes loops.How-
ever,we still encountered a few loops in our experiments
because of the uctuations.All guarantees of loop avoid-
ance only work when the network has reached steady state.
Our network is often not in steady state (since dierent
nodes have not yet received information which has been
sent their way by the update dissemination scheme).The
results that we have reported are based on this metric.
5.3 Expected Time metric
An alternate multi path metric that we have devised is
based on the expected number of time steps to go from
one node to another since (often) the most important met-
ric is average transmission time.It can be shown that
the expected number of time steps required to transmit a
packet across a link whose availability is x is 1=x.Hence,
the expected number of time steps to send a packet along
D is 1=x
.This also means
that this cost is additive along a path.
The routing scheme is required to compute the expected
transmission time across a hyperlink.Let the routing
scheme be that we forward the packet along an alternate
path only when the expected time along the remaining
path is less than the expected time along the best path.If
that is not the case,then we wait for a time step.The deci-
sion at the next time step is taken using the same criterion.
It is straightforward to derive an expression for computing
the expected time considering K edge-disjoint paths.The
calculation is very similar to the previous metric and hence
is omitted.
6 Issues with XL
While XL,with its provable correctness,gives an ideal
framework to implement the concept of multi-path or hy-
perlink routing,there are a few points which make XL
highly unsuitable for use in a rapidly uctuating stochastic
network.First,at each node XL maintains the lowest-ever
cost of a link,and sends out an update when the current
link cost is better than the lowest cost by a factor of .
In stochastic networks,where links may assume extremely
low costs momentarily,one has to set a very high value of
to enable the nodes to suppress link updates.Very high
tends to yield highly sub-optimal paths.Second,condi-
tion (1) of XL,which sends out every bit of bad news is also
not suited to stochastic networks,where a link value might
uctuate and the cost may increase often.This problem is
compounded by the fact that one link may be part of mul-
tiple hyperlinks,and the cost of a link increasing slightly
will adversely aect the cost of all the hyperlinks of which
it is a constituent - resulting in the generation of a large
number of updates.
7 Experiments
In this section,we evaluate the performance of the\con-
nectivity"metric from two aspects - its role in lowering
the average packet delivery time,and its role in lessening
sensitivity to rapid link uctuation.The experiments are
performed on graphs of size 10,20,30 and 40 nodes.Five
instances of each size were generated - each having dier-
ent amounts of redundancy.Also,we wanted to capture
the performance of the\connectivity"metric under low,
moderate and extremely high update suppression scenar-
ios - and hence each instance was run for three values of
( 0.1,0.5 and 0.9 ).
7.1 Simulator
To simulate the algorithms developed,we built a discrete-
time simulator.The initial graph topologies were gener-
ated by random sampling.The change of the probability
value on an edge is termed henceforth was termed as an
\event".A list of events were described in an events le,
which was fed into the simulator at run-time,along with
the le containing the initial graph topology.The simula-
tor does not perform the initial formation of the link and
hyperlink routing tables in a distributed manner,since we
are not bothered about the one-time overhead required to
freshly build up a routing table.Instead,the simulator
takes a centralized view of the system,and informs all
nodes about the its routing tables and the accurate C-hop
view at the start time of the simulation.At every time
instant,a global function samples all the links of the graph
to assign the value'UP'or'DOWN'to each of them.A
packet can only be sent through an'UP'link.A packet
le containing the source,destination and time of genera-
tion of each packet is given to the simulator as an input.
The simulator also takes as input values of C ( the number
of hops for which each node will attempt to maintain an
accurate view and a path diversity metric ),K ( the max-
imum number of edge-disjoint alternate paths to maintain
to each node in a node's C-hop neighborhood ) and (
the suppression factor,as mentioned in XL ).The simula-
tor outputs the average packet delivery time,the number
of hyperlink and link control update messages which are
propagated through the network,and the redundancy of
the graph.
7.2 Results
This subsection reports and analyzes the various plots gen-
erated to evaluate the main objectives behind coming up
with the above algorithm,viz.whether the connectivity
metric is able to suppress updates due to its low sensi-
tivity to link value changes,whether the overhead due to
maintaining multiple paths is reduced when there is more
redundancy in the graph,whether the multi-path metric
can take advantage of alternate paths in times of link fail-
ure to route packets faster,and whether redundancy has
any eect on packet transmission times.In all of the re-
sults discusses hence,the overhead refers to the number
of hyperlink updates.The number of link updates are not
taken into account,as they remain constant across K for a
certain value of C,and hence provide uninteresting conclu-
sions.Also,note that C=1,K=1 boils down to ordinary
link state algorithm (akin to OSPF).
7.2.1 Increase of Overhead with multi-paths
Figure 4 shows the percentage dierence in the overhead
of maintaining various alternate paths within a 2 and a
3-hop neighborhood from the simple C=1 case ( ordinary
link state with same suppression algorithms).The average
message overhead in a graph is taken to be the number
of hyperlink update messages per node per event.As ex-
pected,the average number of hyperlink updates sent by
nodes when C=2 and C=3 for K=1,2 and 3 are all higher
than an ordinary link-state algorithm equipped with the
same suppression techniques.As the suppression rate gets
higher,the number of control updates sent by nodes when
C=2 and 3 decreases,until at =0.9,the nodes actually
send out lesser updates than an ordinary link-state algo-
rithm.Since the sensitivity of hyperlinks to link value uc-
tuations is really small,a suppression factor of 0.9 requires
that a large number of constituent links of a hyperlink have
to change for the hyperlink to send out updates.Also,for
cases where =0.5,for C=2 and C=3,one nds that main-
taining 2 edge-disjoint paths actually help in sending out
lesser updates.While this is a little counter-intuitive an
explanation maybe as follows:a lot more links become
critical links ( constituent of one of the alternate paths
maintained by a node ) when K=3.Hence,the uctuation
of a single link aects the values of multiple hyperlinks,and
hence more updates are sent out.
Figure 4:Analysis of control overhead compared to
7.2.2 Change of Average Packet Delivery Time
with multi-paths
Figure 5 shows the Average Packet Delivery Time analogue
to Fig 1.The values shown on the graph are the percent-
age dierences from C=1( ordinary link state algorithm
with the suppression algorithms ).Surprisingly,the avg.
time required by packets to complete their trip seems to in-
crease,albeit slightly ( mostly within 10%).In most cases,
it is only when K=2 that there are improvements in aver-
age packet delivery time.The better performance of K=2
was seen in section 7.2.1 as well.This seems to suggest
that having alternate paths instead of a single path within
a hyperlink is better,but having more than one alternate
path involves a larger overhead and does not guarantee
better packet delivery times.
Figure 5:Analysis of average packet delivery time com-
pared to C=1,K=1
7.2.3 Change of Overhead with redundancy
An aspect which had not been considered in the graphs
plotted so far was the amount of inherent redundancy in
the graph.From Figure 6,it becomes evident that more
the redundancy in the graph,lower is the overhead when
maintaining a multi-path metric as compared to a single-
path metric.The data represented in the graph is averaged
over all C values.The percentage dierence from K=1 is
reported.Each redundancy value on the X-axis has three
pairs of columns,accounting for =0,1,0.5 and 0.9 from
left to right respectively.This graph conrms the objec-
tive that we set out to achieve - which was to harness the
power of redundancy in graphs.For lower values of redun-
dancy the overheads incurred by maintaining multi-paths
are higher as expected.In such cases,the benets of low
sensitivity of hyperlinks is obscured by the fact that there
are fewer number of redundant paths in the graph.At
higher values of redundancy,the eect of hyperlinks in sup-
pressing link value uctuations is more pronounced.Also,
the gains become larger as the redundancy is increased,
proving the value for having a hyperlink metric.
Figure 6:variation of control overhead with increase in
7.2.4 Change of Average Packet Delivery Time
with redundancy
Figure 7 is the analogue of Figure 6,only that it reports
the Average Packet Delivery Time.The graphs point out
that in more cases than not,keeping alternate paths pay
o,even at low redundancy.In almost all cases,when
maintaining redundant paths have proved to be worse,it
is when three disjoint paths are maintained ( K=3).This
seems to indicate that keeping one primary path and one
alternate path may be the most optimal solution.Main-
taining more than 3 edge-disjoint paths may often lead to
suboptimal decisions.
Figure 7:variation of average packet delivery time with
increase in redundancy
7.3 Conclusions and Caveat
All of the above results are to be taken with a pinch of salt.
The improved performance under greater redundancy has
been shown as a ratio to the case K=1 for the correspond-
ing values of C.In other words the base case of K=1 for
higher values of C implies that one is essentially maintain-
ing a larger local view,and choosing only one path to each
node in its C-hop neighborhood.Figures 6 and 7 prove
that if a node maintains a larger view,it essentially needs
to maintain alternate paths to make use of the extra in-
formation overhead.Also Figures 4 and 5 seem to suggest
that in the average case the control message overhead is
higher and path improvements are not signicant.How-
ever,when we throw in redundancy into the graph - the
scenario changes,and there is a greater scope for suppress-
ing updates and route along multi-paths.
Figure 8:comparison of average control overhead for all
values of C and K with increase in redundancy
Figure 8 and Figure 9 show comparison for overhead and
Figure 9:comparison of average packet delivery time for
all values of C and K with increase in redundancy
packet delivery time respectively for values of C and K
for graphs of dierent redundancy ( the values being aver-
aged across dierent values of ).The set of blue columns
denote the case of C=1 ( corresponding to ordinary link-
state algorithm ),the set of brown columns denote the
C=2 case,and the set of green columns denote the C=3
case.These graphs are meant to clear up the dierences
in the inferences from Figures 4-7.Figures 8 and 9 clearly
show,that the overhead and the average time required for
delivery of a packet for a particular value of redundancy is
often worse in the case of higher C and K,for any value
of redundancy.It is only that when one is maintaining a
higher value of C ( i.e a node is maintaining extra infor-
mation,maybe for orthogonal purposes ),higher values of
K gives better all-round results.
8 Future work
There are several directions in which this work can be
taken forward.Modifying XL renders its correctness proof
null and void.It would be a challenge to come up with a
theoretical correctness proof for the algorithm described.
Also,one need not maintain a C-hop information for ev-
ery node.Having a criteria whereby nodes may select the
amount of state information to maintain ( based on local
redundancy ) is key to reducing the number of updates.
The expected time metric ( or an improved version of it
along similar lines ) captures the semantics of fast packet
delivery - and hence might be expected to give better re-
sults.Also,various facets of percolation theory might be
applicable to such stochastic networks - it is a direction
worth exploring.
The author would like to thank Scott Shenker for sharing
with us his vision of rapidly uctuating networks and also
for his invaluable help in formulating this problem.The
authors are also grateful to David Culler for helping us
focus on the right bits and to Ion Stoica for his valuable
[1] John C.Bicket,Daniel Aguayo,Sanjit Biswas,and
Robert Morris.Architecture and evaluation of an un-
planned 802.11b mesh network.In MOBICOM,pages
[2] Rodrigo Fonseca,Sylvia Ratnasamy,Jerry Zhao,
Cheng Tien Ee,David E.Culler,Scott Shenker,and
Ion Stoica.Beacon vector routing:Scalable point-to-
point routing in wireless sensornets.In NSDI,2005.
[3] Omprakash Gnawali,Rodrigo Fonseca,Kyle Jamieson,
David Moss,and Philip Levis.Collection tree protocol.
In SenSys,pages 1{14,2009.
[4] Kirill Levchenko,Georey M.Voelker,Ramamohan
Paturi,and Stefan Savage.Xl:an ecient network
routing algorithm.In SIGCOMM,pages 15{26,2008.
[5] Yun Mao,Feng Wang,Lili Qiu,Simon S.Lam,and
Jonathan M.Smith.S4:Small state and small stretch
routing protocol for large wireless sensor networks.In
[6] Scott Moeller,Avinash Sridharan,Bhaskar Krishna-
machari,and Omprakash Gnawali.Routing without
routes:the backpressure collection protocol.In IPSN,
pages 279{290,2010.
[7] Jorge Ortiz and David E.Culler.Multichannel relia-
bility assessment in real world wsns.In IPSN,pages
[8] Guangyu Pei,Mario Gerla,and Xiaoyan Hong.Lan-
mar:landmark routing for large scale wireless ad hoc
networks with group mobility.In MobiHoc,pages 11{
[9] Kannan Srinivasan,Maria A.Kazandjieva,Saatvik
Agarwal,and Philip Levis.The beta-factor:measuring
wireless link burstiness.In SenSys,pages 29{42,2008.