DTN Routing CMPE 257 Philip P. Mathew 11/6/2015 DTN • Delay and Disruption Tolerant Networks. • Contact between nodes within the network may not be available.

Download Report

Transcript DTN Routing CMPE 257 Philip P. Mathew 11/6/2015 DTN • Delay and Disruption Tolerant Networks. • Contact between nodes within the network may not be available.

DTN Routing
CMPE 257
Philip P. Mathew
11/6/2015
1
DTN
• Delay and Disruption Tolerant Networks.
• Contact between nodes within the network
may not be available for long durations.
• Long duration link failures.
• End to end paths may not be available always.
11/6/2015
2
DTN examples
• Mobile sensor networks for tracking wild life.
• Inter planetary networks.
• Military or Disaster recovery networks
deployed in an area with limited coverage
11/6/2015
3
Routing Objectives
• Maximize the probability of message delivery
• Minimum use of storage resources
• Maximum energy efficiency.
• Minimize hop count and reduce the message
delivery latency.
11/6/2015
4
Routing Challenges
• No end-to-end path.
– Traditional MANET Ad-hoc routing protocols like
AODV and DSR would fail.
• Prolonged link failures.
• Forced discarding of data when buffers are
exhausted.
• Routing Loops.
• Frequent topology changes due to the mobility of
the nodes.
11/6/2015
5
DTN Routing
• Store and forward method for routing.
– Nodes maintain buffers for message storing.
• Queues are maintained for message
management.
• ACKS are piggybacked on messages.
11/6/2015
6
DTN Routing Classifications
• Protocols that Replicate Packets
– Epidemic
– Spray & Wait
– Prophet
– Rapid
• Protocols that Forward single copy of Packets
– Simple Graph
– Moby space
– Oracle based (Jane et al)
11/6/2015
7
Epidemic Routing
• Random pair wise exchange of message
between mobile ad-hoc nodes.
• Each node maintains a buffer for messages
originating from the host.
• Each node maintains buffer for messages
stored on behalf of other nodes.
11/6/2015
8
Epidemic Routing – Msg Id
• Messages are identified by a unique identifier.
• Message id is 32 bit, 16 bit host identifier and
16 bit message identifier.
• A hash table indexes this list of messages,
using the message identifier as the key.
• Summary vector bitmap maintained by hosts,
indicates the entries filled in the hash table.
11/6/2015
9
Epidemic –Msg Exchange
• Hosts exchange summary vector.
– Based on summary vector, hosts requests copies
of messages that it has not seen.
• Hosts have complete autonomy in accepting a
message.
• Hosts reject messages,
– if the message size is larger than a specific size.
– if the messages are destined to a specific host.
11/6/2015
10
Epidemic Routing – Msgs
• Messages are associated with hop count.
• Hop count is similar to IP TTL field
• ACK field requests an acknowledgement for a
message received.
• ACK’s are piggybacked on messages.
11/6/2015
11
Epidemic Routing – Msg Buffer
• Message buffer size at a node is limited.
• Buffer is implemented as a FIFO
• Differentiated QOS for distributing the buffer
space efficiently among hosts.
11/6/2015
12
Epidemic – performance*
11/6/2015
13
Epidemic – Performance*
11/6/2015
14
Epidemic - conclusion
• A higher delivery rate require larger memory
resources.
• A method for identifying dead messages and
purge them saves resources.
• Employing a good QOS mechanism to allocate
priority queuing improve performance.
11/6/2015
15
PREP
• Prioritized epidemic routing
• Prioritize bundles based on
– cost to destination
– Cost from source
– Expiry time
– Generation time
– Average availability of the nodes
11/6/2015
16
PREP - Continue
• Average availability of the nodes is
epidemically distributed to other nodes.
• Two modular independent components
– A topology awareness scheme that enable the
routing cost from a source to destination.
– Average Availability metrics (AA) associated with
each link.
11/6/2015
17
PREP - AA
• AA measure the average amount of time in
the near future the link would be available
– T is the time in the most recent past for which
up/down information is available
– T is a configured “max window” time.
– T = min(T , T ).
– T be the total time within T that the link was
“up”.
a
m
i
a
m
up
i
– AAds = Tup/Ti
11/6/2015
18
PREP-LSA
• Link State Advertisement messages advertises
links and AA of links.
• Each LSA is associated with incremental
version number.
• LSA is disseminated using epidemic routing.
• Whenever there is a change in AA above or
below a threshold an LSA is generated.
11/6/2015
19
Bundle drop policy
• A bundle is a data unit or data and meta data
of a session.
• Each bundle is associated with a drop priority.
• Drop priority is based on
– the cost of lowest cost path from Src to Dest
• High drop priority is given to bundles that
have the high cost from Src to Dest.
• When buffers are full, bundles with higher
drop priority are dropped first.
11/6/2015
20
Bundles transmission Priority
• Transmission priority Pt, is based on two
factors.
– The peer to which the transmission is to be done
has a smaller cost to destination, smaller cost
higher priority.
– Time to expire field of the bundle, low value of
TTL, high priority.
• Bundles with low value of Pt (high priority),
gets transmitted first.
11/6/2015
21
PREP - performance
• Delivery rate
– 20% better than Epidemic.
– 54 % better than AODV.
• Delivery rate independent of the transmission
range.
• Low storage parameter
– Delivery rate of epidemic falls linearly
– PREP remains almost flat.
11/6/2015
22
Spray & Wait
• Sprays message copies until enough copies are
sprayed with guarantee for delivery.
• When enough copies have been sprayed, the
nodes change to direct transmission.
• Two phases
– Spray phase, L copies of the message are spread
initially.
– Wait phase, if destination is not found during the
spraying phase, each node carrying a copy of the
message, does direct transmission.
11/6/2015
23
Spray & Wait
• Spray & Wait performs fewer transmission
that Epidemic.
• Contention is low under high traffic loads.
• Optimal delivery delay.
• Highly scalable despite changes in network
size.
11/6/2015
24
Binary Spray and Wait
• Copies n/2 copies out of the n messages (n >
1) to the next node encountered (which
don’t have any copies of n).
• If n == 1, node does direct transmission
11/6/2015
25
Spray and Wait Protocol
• Choosing L to achieve the expected delay.
– The minimum number of copies Lmin, needed for
Spray and Wait to achieve an expected delay at
most aEDopt is independent of the size of the
network N and transmission range K, and only
depends on a and the number of nodes M to
destination.
– Estimating L when network parameters are
unknown.
11/6/2015
26
Spray and Wait performance
• Spray & Wait overcome the short comings of
Epidemic and flooding based schemes.
• Spray & Wait outperforms other schemes in
terms of delivery delay and completed
transactions.
• Highly scalable as the network connectivity
level increases.
11/6/2015
27
Prophet Routing
• Probabilistic DTN Routing Protocol
– History of encounters
– Transitivity algorithm for communication.
• Alternative to epidemic routing
– Lower buffer space and bandwidth demand
– Equal or better performance when the above
resources are limited.
11/6/2015
28
Delivery Predictability Vector
• PROPHET uses a probability vector for message
exchange.
• Delivery predictability is established at every
node , for each known destinations of the node.
• 0 <= P(A, B) < = 1, indicates the probability for
node A message exchange to node B.
• Vector contain Delivery Predictability
information.
• Two prophet nodes exchange summary vectors.
11/6/2015
29
Summary Vector
• Summary vectors contain the identifiers for
the bundles each node carries
• Delivery Predictability information for the
destinations known by the node.
• Internal Delivery Predictability vector is
updated
11/6/2015
30
Computation of Delivery Predictability
• Delivery Predictability zero for nodes that don’t have
any delivery predictability stored.
• Nodes often encountered have a high delivery
predictability.
– P(A,B) = P(A,B)_old + ( 1 - P_(A,B)_old ) * P_encounter,
P_encounter >= 0 and <=1.
• Delivery predictability values age, if the nodes do not
encounter for a long time.
P_(A,B) = P_(A,B)_old * gamma^K
Gamma is the aging constant
K is the numer of time units elapased after the last time the
matrix was aged.
11/6/2015
31
Delivery Predictability
• Delivery predictability is transitive.
– P_(A,C) = P_(A,C)_old + ( 1 - P_(A,C)_old ) *
P_(A,B) * P_(B,C) * beta.
Where beta is a scaling constant for transitivity, beta
>=0 and beta <= 1.
11/6/2015
32
Optimizations
• A list of NUM_P delivery predictabilities are
kept for every node.
– When a new delivery predictability is computed
the oldest one is discarded.
– The average of NUM_P delivery predictabilities
– The newest value of delivery predictability is used
for computations.
– Average is used for forwarding decisions
11/6/2015
33
Optimizations
• Exponential Weighted Moving Average of the
delivery predictability is used for forwarding
decisions.
• Forwarding strategies and queueing decisions
depending on the special conditions of the
nodes.
• For neighbor discovery and maintenance
PROPHET uses lower layers neighbor discovery
protocol.
11/6/2015
34
Protocol
• Neighbor discovery
• Information Exchange Phase.
– Uses Routing Information base dictionary TLV.
• Parameters for computing delivery
predictability.
Parameter
Recommended Value
P_encounter
.75
beta
.25
gamma
.99
11/6/2015
35
Protocol
•
•
•
•
•
Nodes receive Bundle offer TLV.
Nodes send Bundle offer TLV
Nodes request Bundle request TLV.
Pass custody of a bundle to another node.
PROPHET ACK’s.
11/6/2015
36
Queuing Policies
• Evict First In First Out (FIFO).
• Evict Most Forwarded First (MOFO).
• Evict Most Favorably Forwarded First (MOPR).
– Keep a variable FAV for each bundle in the queue,
initialized to zero. Each time the bundle is forwarded,
update FAV.
– FAV_new = FAV_old + P (Predictability Metric)
• Evict Shortest Life Time First (SHLI).
• Evict Least Probable First (LEPR) (Low delivery
probability).
11/6/2015
37
Security Considerations
• Attack prevention solution.
– Sending nodes sign all bundles.
11/6/2015
38
RAPID
• Resource Allocation Protocol for Intentional
DTN problem.
• Allocates resources to packets to optimize an
adminstrator specified routing metric.
• Bandwidth is allocated to a set of packets.
• Oppurtunistic replication of packets.
11/6/2015
39
RAPID • Tracks network resources through a control
plane.
• Uses an in-band channel for exchanging
network information among nodes.
• Uses a fraction of the bandwidth for
exchanging network info.
• RAPID computes the effect of replication on
the routing while accounting for resource
constraints (Intentional routing).
11/6/2015
40
RAPID – structural comparison
Method
Routing Type
Storage
Bandwidth
Epidemic
Replication
Unlimited
Unlimited
Spray & Wait
Replication
Unlimited
Unlimited
Prophet
Replication
Finite
Unlimited
Jain et al
Forwarding
Finite
Finite
RAPID
Replication
Finite
Finite
Modified Dijikstra
Forwarding
Unlimited
Unlimited
11/6/2015
41
RAPID - design
• Computes a per packet Utility function to optimize a
particular routing metrics.
• Replicate packets that results in high per packet utility
function.
• The bandwidth is taken into account.
• Parameters
– Di – Packet i, expected delay
– Ti - Time since creation of i
• Ti + Ai
– ai - Random variable that determine the remaining time to
deliver.
– Ai – Expected remaining time E(ai).
– Mxz – Intermeeting time between nodes x and z.
11/6/2015
42
RAPID - Protocol
• rapid(X, Y ):
• Step 1. Initialization:
– Obtain metadata from Y about packets in its buffer as well as
metadata it collected over past meetings (detailed in Section
• Step 2. Direct delivery:
– Deliver packets destined to Y in decreasing order of creation times.
• Step 3. Replication:
– For each packet i in node X’s buffer.
• (a) If i is already in Y ’s buffer (as determined from the metadata), ignore i.
• (b) Estimate marginal utility, Ui/si, of replicating i to Y .
• (c) Replicate packets in decreasing order of marginal utility.
• Step 4. Termination:
– End transfer when out of radio range or all packets replicated.
11/6/2015
43
RAPID - Performance
11/6/2015
44
RAPID - Performance
11/6/2015
45
RAPID - Performance
11/6/2015
46
RAPID performance
11/6/2015
47
References
•
Epidemic Routing for Partially-Connected Ad Hoc Networks
Amin Vahdat and David Becker, Department of Computer Science Duke University
•
Prioritized Epidemic Routing for Opportunistic Networks
Ram Ramanathan, Richard Hansen, Prithwish Basu,Regina Rosales-Hain,Rajesh Krishnan
•
•
Spray and Wait: An Efficient Routing Scheme for Intermittently Connected Mobile Networks
Thrasyvoulos, Spyropoulos,Konstantinos Psounis, Cauligi S. Raghavendra
•
Probabilistic Routing Protocol for Intermittently Connected Networks
draft-irtf-dtnrg-prophet-06, A. Lindgren,A. Doria
July 12, 2010
•
DTN Routing as a Resource Allocation Problem
Aruna Balasubramanian Brian Neil Levine Arun Venkataramani
October 25, 2009
11/6/2015
48