You are on page 1of 36

Advanced Computer

Networks (CS ZG525)


BITS Pilani
Pilani Campus

Virendra S Shekhawat
Department of Computer Science and Information Systems

BITS Pilani
Pilani Campus

First Semester 2015-2016


Lecture-15 [11th Oct 2015]

Agenda
Routing in DTNs: Taxonomy and Design

[CH-27]

Reading
Routing in Delay Tolerant Networks by Sushant Jain, 2004
conferences.sigcomm.org/sigcomm/2004/papers/p299-jain111111.pdf

Replication Based Routing Protocols for DTNs

[CH-28]

Reading
Routing in Delay/Disruption Tolerant Networks: A taxonomy, Survey and
Challenges by Yue Cao, 2012
ukchinab4g.ac.uk/sites/default/files/5_Achievements/journal/routing_de
lay.pdf
3
First Sem 2015-16

Advanced Computer Networks CS ZG525

BITS Pilani, Pilani Campus

Routing Taxonomy

4
First Sem 2015-16

Advanced Computer Networks CS ZG525

BITS Pilani, Pilani Campus

DTN Routing Taxonomy


Random Routing
Epidemic
Two Hop Routing
Spray and Wait

Prediction based Routing


Based on past encounter statistics
ProPhet Routing, MaxProp, RAPID

Coding based Routing


Source Coding
Network Coding
5
First Sem 2015-16

Advanced Computer Networks CS ZG525

BITS Pilani, Pilani Campus

Opportunistic Routing

Graph is disconnected and/or time-varying


Set of contacts C: unknown
Set of nodes V: often unknown too
Basic Principle
When two nodes meet one another, they must
decide whether to forward a message, and/or to
carry it further
Store-and-forward Store-carry-and forward
6

First Sem 2015-16

Advanced Computer Networks CS ZG525

BITS Pilani, Pilani Campus

Why different routing


protocols?
Traditional routing protocols do not work well in
environments prone to frequent and long lived
disruptions
Basic assumptions used in these are
Almost always connected network
End to end path is exists between two end points

How DTN environment is different


Path may never be available between end points
Store-carry-forward A set of independent
opportunistic forwarding decisions will attempt to
eventually deliver messages to destinations
7
First Sem 2015-16

Advanced Computer Networks CS ZG525

BITS Pilani, Pilani Campus

Basic Primitives of
Opportunistic Routing
Message Replication
Greedy Replication
Controlled Replication
Utility based Replication

Message Forwarding
Based on absolute utility criterion
Based on relative utility criterion

Message Coding
Source Coding
Network Coding
8
First Sem 2015-16

Advanced Computer Networks CS ZG525

BITS Pilani, Pilani Campus

Routing Objectives or Metrics


Delivery Ratio: It is given by the ratio between the
number of delivered messages and the number of
generated messages.
Overhead Ratio: It is given by the ratio between the
number of message transmissions required for delivery
and the total number of messages delivered.

Delivery Delay: It is given by the time duration between


the messages generation and their delivery.
9
First Sem 2015-16

Advanced Computer Networks CS ZG525

BITS Pilani, Pilani Campus

Message Replication[1]
Message Replication- A relay X carrying a copy of msg m
can decide to spawn a new copy of m and forward it to
the newly encountered node, Y
1. If the new neighbor does not have a copy of this msg
2. If node have buffer space available
3. If the context of the two nodes allows

Greedy Replication- A node decides to forward a msg m


based on 1 and 2 only
e.g. Epidemic routing
+ Minimum average message delay
- Consuming maximum network resources
10
First Sem 2015-16

Advanced Computer Networks CS ZG525

BITS Pilani, Pilani Campus

Epidemic Routing[1]
Give a message copy to every node encountered
essentially: flooding in a disconnected context
D

E
D

C
11
First Sem 2015-16

Advanced Computer Networks CS ZG525

BITS Pilani, Pilani Campus

Epidemic Routing[2]
How many transmissions (per message)?
At least N
All nodes receive the message

What is the delay?


Minimum among all possible routing schemes
If NO resource constraints (bandwidth, buffer space)

12
First Sem 2015-16

Advanced Computer Networks CS ZG525

BITS Pilani, Pilani Campus

Message Replication [2]


Controlled Replication- A node decides to forward a
msg m based on all three conditions (i.e. 1,2 and 3
shown in slide no. 8)
Context keeps track on the number of copies to be created
Copy-limited replication: each msg copy generated is
accompanied by a number of forwarding tokens (e.g. spray &
wait)
Time-limited replication: each new message generated (say at
time Ts) may be further replicated to nodes (other than the
destination) only for an amount of time Trep
Probability-limited replication: a node decides to forward a
copy of a msg to any node it encounters with a specific
probability, P
13
First Sem 2015-16

Advanced Computer Networks CS ZG525

BITS Pilani, Pilani Campus

Reducing the Overhead of


Epidemic
Randomized Flooding (Gossiping)
Give message to neighbor with a probability p 1
p = 1) epidemic
p = 0) direct transmission
+ Fewer transmissions
- For long duration, transmissions = O(N)

Other flooding-based variants:


Each node forward up to Kmax times
Self-limiting epidemic (SLEF)
14
First Sem 2015-16

Advanced Computer Networks CS ZG525

BITS Pilani, Pilani Campus

2-hop Scheme: Version 1


When message created at source
Forward to destination if within range
Forward to a neighbor relay if destination not in range

Relay: forward only to destination


Transmissions per message
At most 2

Delay?
Finite if each node meets every other nodeeventually
15
First Sem 2015-16

Advanced Computer Networks CS ZG525

BITS Pilani, Pilani Campus

2-hop Scheme: Version 2


Source gives a copy to any relay encountered
Relays can only give copy to destination
D

E
Relay C cannot FWD to B
B

D
Src

Dst

Relay C can FWD to Dst


C

Avg Transmissions per msg = (N-1)/2


First Sem 2015-16

Advanced Computer Networks CS ZG525

16
BITS Pilani, Pilani Campus

Spray and Wait (Binary


Spraying)
Use forwarding tokens; SRC starts with L tokens
L=1
When
L = 1, can only forward to DST
D

E
L=1

L=1

L=1
B

L=4
D
Src

D
D

L=2
L=2

Dst

C
17
First Sem 2015-16

Advanced Computer Networks CS ZG525

BITS Pilani, Pilani Campus

Spray & Wait: Analysis


L (e.g. L = 10) copies might be
Too little if number of nodes M is large (e.g. 10000) =>
almost 2-hop.v1
Too many if number of nodes M small (e.g. 20) => almost
epidemic

Analytical equation for S&W delay as a function of L/M


Choose desired L (tradeoff delay vs. transmissions)

What if number of nodes is unknown?


Estimate number of nodes online
18
First Sem 2015-16

Advanced Computer Networks CS ZG525

BITS Pilani, Pilani Campus

Message Replication[3]
Utility based replication- the forwarding decision
depends on the context of the current custodian and
that of the candidate relay node
Uncontrolled utility based replication: e.g. A node forwards a
new copy to a new neighbor only if the neighbor has a high
enough probability of the future encounter with the
destination (used to improve epidemic routing)
Controlled utility based replication: e.g. Number of replicas of
a message delivered to a relay node can be decided based
upon the ratio of encounter value that the relay advertises

19
First Sem 2015-16

Advanced Computer Networks CS ZG525

BITS Pilani, Pilani Campus

Utility Functions
Destination Dependent

Age of last encounter


History of past encounters
Pattern of location visited
Social networks
Traditional Routing Table Entry

Destination Independent

Amount of mobility
Node resources
Cooperative behavior
Trustworthiness

First Sem 2015-16

Advanced Computer Networks CS ZG525

20
BITS Pilani, Pilani Campus

Prophet Routing
Like Epidemic routing, but maintains a probability of
delivery for each node pair p(i,D)
Node i copies message to j only if p(j,D) > p(i,D)
Algorithm:
Path Probability

Per Hop Probability


Contact with Dest D

D
p(i,D) = 1

No Contact with Dest D

Contact with j

D
i

p(i,D) * t, ( < 1)

D
i

p(i,D) = f(p(i,D),p(j,D))

21

First Sem 2015-16

Advanced Computer Networks CS ZG525

BITS Pilani, Pilani Campus

Past Encounters: Encounter


Frequency
Last encounter not necessarily representative
Consider:
Node A meets D every 10min, last saw D before 5min
Node B meets D every 1h, last saw D before 1min

Use frequency: p(i,D) = # encounters(i,D) / Timewindow


Consider
Node A meets D every 10min, for 1sec each time
Node B meets D every 20min, for 2min each time

Use total contact duration: p(i,D) = Timeconnected / Timewindow


Consider
Node A meets D every 10 min
Node B meets D in bursts: average = 10min, average during burst =
1min, last meeting before 30sec

Prediction Becomes Complex!


First Sem 2015-16

Advanced Computer Networks CS ZG525

22
BITS Pilani, Pilani Campus

Message Forwarding
By message forwarding, a node relinquishes its copy
of msg and ceases to be one of its custodians
Forwarding can be done based on a utility function or in
a probabilistic manner
If a node i carrying a msg copy for a destination d
encounters a node j with no copy of the msg then
Uj(d) >Uth (Absolute utility criterion)
Uj(d) > Ui(d) (Relative utility criterion)
e.g. If utility function is lower than a certain threshold, nodes
with highest mobility to move farthest in the network are
chosen as relays
23
First Sem 2015-16

Advanced Computer Networks CS ZG525

BITS Pilani, Pilani Campus

Message Coding
Message can be coded at the source (aka source coding)
or in the network (aka network coding)
Source coding- Increases delivery reliability and
reducing worst case delay
Network Coding-A way to increase the capacity of the
wireless networks

24
First Sem 2015-16

Advanced Computer Networks CS ZG525

BITS Pilani, Pilani Campus

Reducing the overhead of


epidemic: Network Coding[1]
Coding may combine one or more packets

x1
Incoming links

x2

x3
x2
x1

x3
x2
x1

Outgoing links

x3
Store-and-forward
First Sem 2015-16

Advanced Computer Networks CS ZG525

25
BITS Pilani, Pilani Campus

Reducing the overhead of


epidemic: Network Coding[2]
Coding may combine one or more packets

Incoming links

x3
x2
x1

f(x1,x2,x3)

Outgoing links

Network Coding
First Sem 2015-16

Advanced Computer Networks CS ZG525

26
BITS Pilani, Pilani Campus

Coding Packets: A simple


example

XOR: The simplest combination:

msg x1:

f(x 1 , x 2 ) x1 x 2

msg x2:

f(x1,x2):

27
First Sem 2015-16

Advanced Computer Networks CS ZG525

BITS Pilani, Pilani Campus

Coding Packets: A simple


example

XOR: The simplest combination:

msg x1:

f(x 1 , x 2 ) x1 x 2

msg x2:

f(x1,x2):

28
First Sem 2015-16

Advanced Computer Networks CS ZG525

BITS Pilani, Pilani Campus

De-coding Packets: A simple


example

Assume node that send x1 receives the coded packet f(x1,x2)

msg x1:

f(x1,x2):

msg x2:

29
First Sem 2015-16

Advanced Computer Networks CS ZG525

BITS Pilani, Pilani Campus

Network Coding for Wireless


Broadcast nature of medium: natural ground
for network coding
A x2
B x1

A x2
B x1

B x1
A x2

No coding: delay = 4
First Sem 2015-16

Advanced Computer Networks CS ZG525

30
BITS Pilani, Pilani Campus

Network Coding for Wireless


Broadcast nature of medium: natural ground
for network coding
x1 x 2

B x1

x1 x 2

A x2
B x1

A x2

x1 x 2

Coding: delay = 3
First Sem 2015-16

Advanced Computer Networks CS ZG525

31
BITS Pilani, Pilani Campus

MAXPROP (1/2)
Motivated by pedestrian mobility and city vehicles (busses)
Addressed resources issues considering vehicles
Bulky equipment
energy

Maintains ordered destination based queues


Ordered by the estimated likelihood of a future transitive path to that
destination

Assumes
Unlimited buffer for own messages per node
Fixed size buffer for relaying messages
No topology knowledge/control

32
First Sem 2015-16

Advanced Computer Networks CS ZG525

BITS Pilani, Pilani Campus

MAXPROP (2/2)
Communication steps (flooding-based!):

1. Neighbor Discovery
(no knowledge of when the next opportunity to communicate will be)

2. Data Transfer
a)
b)
c)
d)
e)
f)

Transfer packets destined for neighbor peer


Transfer routing information
Acknowledge any delivered data
Prioritize young relayed packets (with lower hop counts)
Send un-transmitted packets by estimated delivery likelihood
Ensure only new packets are sent

3. Storage Management
(expunge packets to accommodate the relay buffers)
33
First Sem 2015-16

Advanced Computer Networks CS ZG525

BITS Pilani, Pilani Campus

RAPID Protocol
RAPID: Resource Allocation Protocol for Intentional DTN
Routing
Goal: Intentionally affect a single routing metric (e.g.
average delay, missed deadlines, and maximum delay)
Method: Utility function (Ui) based replication(Ui is
defined as expected contribution of packet i to this
metric)
Average Delay Optimization: Ui = - D(i)
The protocol replicates the packet that results in the greatest
decrease in delay among all packets in its buffer
34
First Sem 2015-16

Advanced Computer Networks CS ZG525

BITS Pilani, Pilani Campus

Challenges and Open Issues


Need for a framework to compare various routing
approaches
Congestion control in DTNs
Prediction based approaches still needs to be
investigated more
Multicasting and any-casting in DTNs is still untouched
Capturing mobility characteristics and topology control
is the biggest challenges so far
35
First Sem 2015-16

Advanced Computer Networks CS ZG525

BITS Pilani, Pilani Campus

Thank You !

36
First Sem 2015-16

Advanced Computer Networks CS ZG525

BITS Pilani, Pilani Campus

You might also like