Ch10_slides

advertisement
Chapter 10:
Reliable Transport in
Delay Tolerant Networks
Arshad Ali1, Manoj Panda1, Lucile Sassatelli2,
Tijani Chahed1, and Eitan Altman3
1Telecom
SudParis Evry, France,
2I3S Université Nice Sophia-Antipolice, France
3Inria Sophia-Antipolice, France
Outline






Delay Tolerant Networks
Transport Layer Issues and TCP limitations
Transport Proposals for Deep Space
Transport Proposals for Terrestrial DTNs
A New Reliable Transport using ACKs and
Coding
Conclusion
Delay Tolerant Networks (DTNs)

Class of networks characterized by
–

Intermittent connectivity and/or large transfer delays
Applications of DTNs
–
–
–
–
–
–
–
–
Military battlefield networks
Sensor networks for wildlife tracking
Inter-planetary networks
Remote rural area (village) networks
Social networks
Vehicular ad hoc networks
Underwater networks
Airborne networks
Transport Issues in Deep Space

Long Propagation Delay
–
–


High Channel Error Rates
Bandwidth Asymmetry
–
–

Due to long distances between planets/satellite and Earth
Round trip time ranges from minutes to hours
High asymmetry in forward and return link bandwidth
Ratio of bandwidth of forward to reverse channels is 1000:1
Intermittent Connectivity
–
–
Extremely high latency links
Extended disconnected durations
Transport Issues in Terrestrial DTNs





Intermittent connectivity
Short contact duration
High mobility
Unknown mobility patterns
Energy and storage exhaustion
Challenges for Transport Protocol
Design in DTNs


New engineering needed to meet user
requirement in a cost effective way
User requirement
–
–

Reliability
Minimal transfer delays
Costs
–
–
Energy
Buffer space
Unsuitablity of TCP in DTNs

TCP is not suitable for intermittently connected networks
–
–
Requires at least one stable end-to-end path which may not exist
in wireless networks
Misinterprets losses due to link failures as due to congestion

–
–
Misinterprets the large delays as congestion
Misinterprets losses due to corruption and noise as congestion


Worse in DTNs: suffers from frequent and prolonged link failure
Cross-layer signaling approach to solve above issue cannot work in
DTNs due to opportunistic routing
This motivates the need for a new approach
–
which offers reliability in such an environment
Transport Proposals


Most works are on routing, very little on (reliable) transport
Deep space communication protocols
–
–
–
–
–
–
–

TP-Planet [4], Licklider Transmission Protocol (LTP) [81]
Deep-Space Transport Protocol (DS-TP) [71], Bundle Protocol [85]
Space Communication Protocol Standards – Transport Protocol (SCPS-TP) [90]
Saratoga [100], CCSDS File Delivery Protocol (CFDP) [21]
Delay-Tolerant Transport Protocol (DTTP) [82]
Reliability through custody transfer [31]
LTP-T [35], RCP-Planet [34]
Terrestrial DTN protocols
–
–
–
–
–
PCMP [69]
Protocol enhancements [84]
Acknowledgment appoaches [44]
Storage congestion avoidance approaches [86,87]
Multiperiod spraying approach to optimize dissemination efficiency [16]
Classification based on Reliability

Reliable Transport
–
–
–

Partially Reliable Transport
–
–
–

TP-Planet [4]
Saratoga [100]
DTTP [82]
BP [85,31]
LTP [81]
LTP-T [35]
Unreliable Transport
–
–
RCP-Planet [34]
DTTP [82]
Method of Reliability

How reliability is ensured
–
–
End-to-end [4]
Hop-by-hop [85,31,35,100,82,44]

–
Partial reliability over single hop connections [81]


–
–
Also known as Custody Transfer
Divide data into reliable and unreliable blocks
Retransmissions based reliability
Cumulative and Selective ACKs [82]
ACK methods: Active receipt, passive receipt, network
bridged [44]
Error Recovery

Error recovery by retransmissons
–
–
Double Automatic Retransmission (DAR):
fast and efficient hole-filling [71].
Selective Negative Acknowledgment (SNACK)
for reliable retransmission of data, proactive
fragmentation, HOLESTOFILL [100]
Connection State Management

Connection state management by
–
–
–
–
ICMP packets [90]
PCMP: Keeping the connection alive for some
time even with link disruption [70]
Link state monitoring by signal strength [90]
Avoiding connection aborts during disconnection
periods [84]
Congestion Control and
Bandwidth Asymmetry

Congestion control by
–
–

Additive Increase Multiplicative Decrease (AIMD)
[4]
TCP-Vegas type open loop rate control mode
using SNACKs [90]
Bandwidth asymmetry resolved by
–
–
–
Delayed SACK [4]
Header compression and SNACKs [90]
SNACKs [71]
Other Features

Flow rate control by
–

Long propagation delays
–
–


Closed loop control is ineffective
Open loop approach is taken [71]
High mobility is accounted for in
–

ICMP packets [90]
PCMP [70]
Storage congestion avoidance [86,87]
Buffer management [54,55]
A New Reliable Transport Proposal

We proposed a new reliable transport protocol
–
–

Based on coding and acknowledgments (ACKs)
ACKs reflect missing Degrees of Freedom (DoFs)
at the destination
Analysis of the proposal and optimization
–
–
–
Obtain a fluid-limit model
Apply Differential Evolution (DE) for optimization
To minimize the end-to-end round trip delay
Setting

1 source, 1 destination, N0 relays
–


The protocol is organized in cycles
At the beginning of each cycle
–
–
–
–


Inter meeting times are exponential
i = missing degree of freedom
M = number of information packets
The source generates Mi Random Linear Combinations (RLCs)
The source gives one RLC to an empty relay upon meeting
Relays replicate RLCs in an epidemic manner
Each RLC has an expiry time-out
–
βe = exponential expiry rate of RLCs
Algorithm


Initialization: M = i
While i > 0
–
–
–
–
–
–
–


A new cycle begins with i missing DoFs. The source sends Mi RLCs back to back. Each time an
empty relay meets the source, the source gives a new RLC to the relay until Mi RLCs have been
sent.
Each RLC is spread for a duration, called the spreading time i,S.
Each time a relay meets the destination, the destination sends an ACK informing the source how
many DoFs are still needed to recover the M information packets.
After emitting the Mi-th RLC, the source waits for a duration i,S to let the Mi-th RLC spread in the
network, and then waits further for a duration i,W , called the waiting time. The purpose of the
waiting time is to allow the ACKs to reach the source.
Replication of the RLCs stops during the ACK-wait phase. However, replication of the ACKs
continues throughout the cycle. A copy of an RLC is retained in a relay buer only for a duration e,
whereas a copy of an ACK is retained in the relay buer throughout the cycle.
The cycle lasts for a total duration i
At the end of the cycle: (i) all the relays drop the copy of the RLC or ACK they have, and (ii) the
source considers the minimum of the missing DoFs indicated by all the ACKs it has received during
the cycle. Let the minimum of the missing DoFs indicated by the ACKs be j.
Update i = j
End While
Structure of a Cycle

Cycle duration:

i,W = ACK wait time



i,S = spreading time of each RLC
Between tMi + i,S, and i only ACKs spread
At the end of the cycle
–
the source determines the missing degrees of freedom
Implementation Issues


Nodes can implement our scheme without being time synchronous
Source and destination (by handshaking) must agree on
–
–



Cycle time-out and spreading time are included in each RLC
Buffer expiry time-out is generated afreash at relays
An RLC is
–
–


number of information packets, M
Coding field size, q
spread till RLC-spread phase and
dropped at the earliest of cycle or buffer expiry time-outs
Cycle time-out is copied from RLCs by the destination and
subsequently included in ACKs as well
Connection release: the source informs the destination to clear all
variables corresponding to flow under consideration
Analytical Modeling and
Performance Optimization

We explain our analytical method in a step by step manner as follows
–




Single packet transfer, M packets transfer (without coding), our proposal
Single and M packet transfer cases without coding are simplified
versions of our proposal to explain the method of deriving fluid-limits
Background on fluid-limit models (Appendices A and B of the paper)
Formal derivation of the fluid-limit in the simplest case (Appendix C of
the paper).
Notation
–
–
–
βr = successive inter-meeting time between two relays
βs = successive inter-meeting time between the source and a relay
βd = successive inter-meeting time between the destination and a relay
Single Packet Transfer




Source wants to send one packet to destination
There is no coding and no buffer expiry at relay nodes
A cyclic scheme with a constant timeout period T > 0
If transmission is successful during a cycle
–

If transmission is not successful during a cycle
–

The source begins spreading a new packet in next cycle
The source repeats the same packet in next cycle
All the nodes drop the copy of the packet or ACK at the end of
each cycle
Single Packet Transfer

Packet Replication:
–
–
–

Empty relay gets a copy of the packet from the source.
Empty relay gets a copy of the packet from a relay who has the packet.
The destination receives the packet from a relay who has packet.
ACK Replication:
–
–
–
–
–
The destination sends an ACK for every received copy of the packet.
The destination replaces the copy of the packet at the relay, which brings
the packet to the destination, by an ACK.
Empty relay gets a copy of an ACK from another relay who has an ACK
A relay with copy of the packet replaces its packet with ACK when it meets
with a relay with an
When a relay, which has a copy of the ACK meets with the source, the
source receives the ACK.
Single Packet Transfer





x(t) = fraction of nodes having copy of the
packet
y(t) = fraction of nodes having copy of ACK
βr, βs, βd are meeting rates
λr = N0 βr, λs = N0 βs, λd = N0 βd
Fluid-limit equations
Single Packet Transfer

Delay distribution
– PX(t) = probability that the destination has received the packet by time t
– PY(t) = probability that the source has received the ACK by time t

Performance optimization
–
The rate at which packets are reliably transferred (with the source
receiving back the ACK) under the cyclic scheme with timeout T is
given by
–
This rate can be interpreted as the throughput in packets/time and its
inverse can be interpreted as the mean delay to transfer a single packet.
M Packet Transfer without Coding



Source wishes to send M packets to the
destination through the N0 relays.
Packets are indexed by k, k = 1, 2, …,M
The destination sends an ACK of type k for
every received copy of packet of type k.
M Packet Transfer

Packet and ACK replication
–
–
–
The source spreads each of the M packets with
equal probability.
The relay which brings a copy of packet k to the
destination replaces its copy of packet k by ACK
k.
When relay i, which has a copy of ACK k, meets
with another relay j, which has a copy of packet k,
packet k in relay j is replaced by ACK k.
M Packet Transfer

Fluid-limit equations

Delay distribution

Performance optimization
Our Scheme:
RLC Replication










There are Mi > M RLCs, when a cycle begins with i missing DoF
tk = time at which RLC k is sent by the source.
When a relay with a copy of RLC k meets with an empty relay during
(tk,tk+ i,S) the empty relays gets a copy of RLC k
An empty relay gets RLC from another relay who has a RLC
When two nodes, which have different RLCs, meet, then there is no
exchange.
Each RLC is spread for a duration of spreading time
A copy of an RLC is retained in a relay buffer only for a buffer time-out
period.
Re-infection is allowed.
Replication of the RLCs occur only during the RLC-spread phase
the empty relay gets a copy of RLC k
Our Scheme:
ACK Replication







There are i ACKs, when a cycle begins with i missing DoF
When the destination receives an RLC, it updates the missing DoFs,
generates an ACK indicating the missing DoF, and the RLC in the
relay gets replaced with the latest ACK.
When the destination is in a state with l, it gives ACK m to all the
relays it meets, be they empty or not, except to those who already
have ACK l.
When a relay with ACK l meets an empty relay, the empty relay gets a
copy of ACK l
When a relay with more recent ACK meets another relay with less
recent ACK, then other relay’s ACK is replaced by more recent ACK
ACK 0 also replaces the RLCs, since ACK 0 indicates complete
reception of the le and no more RLCs are required to reach the
destination.
Replication of the ACKs continues throughout the cycle.
Analysis and Optimization

Analysis of the scheme
–
–

Derive a fluid-limit model
Derive mean completion time
Joint optimization of the number of RLCs to
be sent in one cycle, spreading time of RLCs,
ACK wait time
–
to minimize the mean completion time of a file
Fluid Model (RLC Replication)
Fluid Model (ACK Replication)
Ql(i)(t) represents the probability that the number of
missing DoFs at the destination at time t is l
Sequences of Cycles

Pij = transition probability from state i to j

Ti = mean time to reach state 0 starting from state i
Sequence of Cycles



Objective: minimize TM
Optimization over parameters {Mi, i,S, i,W},
i = 1,2,…,M
Our optimization method is recursive due to
above equation
Parameter Setting







Number of packets to be transferred M = 5
Number of relay nodes N0 = 100
Inter meeting rate = 0.05
Buffer expiry timeout is varied
i.e., e = 1, 2, 3, 4, 5, 6 units of time
RLCs are generated with binary random coefficients
Simulation results averaged over 1000 runs
Developed a MATLAB based simulation
Results:
Mean File Transfer Time

Comparison of mean file transfer time from simulations under
the optimal settings with the file transfer time provided by the
optimal procedure.
Results:
Mean File Transfer Time



Mean file transfer times from simulations, under the optimal
settings of the parameters Mi, i,S, i,W, are in excellent
agreement with the optimal mean file transfer times.
This validates our overall procedure of minimization of mean
file transfer time based on our fluid-limit model.
The closeness of cycle duration (M) and mean file transfer time
(TM) suggests that optimal settings of the parameters Mi, i,S,
i,W are such that the transfer is mostly complete in just one
cycle with high probability.
Conclusion

First part: provide a holistic picture of the research efforts
towards designing and developing transport protocols for DTN
environments
–
–
–

Transport layer issues
Limitations of traditional transport protocols
survey of the literature on transport protocols and proposals aimed
at DTNs
Second part: Proposal of a new reliable transport scheme for
DTNs based on the use of ACKs and coding
–
–
Modeling the evolution of the network under our scheme using a
fluid-limit approach
Computation of optimal parameters for our reliable transport
scheme
Download