380 likes | 490 Views
Chapter 10: Reliable Transport in Delay Tolerant Networks. Arshad Ali 1 , Manoj Panda 1 , Lucile Sassatelli 2 , Tijani Chahed 1 , and Eitan Altman 3. 1 Telecom SudParis Evry, France, 2 I3S Université Nice Sophia-Antipolice, France 3 Inria Sophia-Antipolice, France. Outline.
E N D
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 • Due to long distances between planets/satellite and Earth • Round trip time ranges from minutes to hours • High Channel Error Rates • Bandwidth Asymmetry • 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 • Worse in DTNs: suffers from frequent and prolonged link failure • Misinterprets the large delays as congestion • Misinterprets losses due to corruption and noise as congestion • 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 • TP-Planet [4] • Saratoga [100] • DTTP [82] • Partially Reliable Transport • 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] • Also known as Custody Transfer • Partial reliability over single hop connections [81] • 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 • ICMP packets [90] • Long propagation delays • Closed loop control is ineffective • Open loop approach is taken [71] • High mobility is accounted for in • 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, N0relays • Inter meeting times are exponential • The protocol is organized in cycles • At the beginning of each cycle • i= missing degree of freedom • M = number of information packets • The source generates MiRandom 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 timei,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 • number of information packets, M • Coding field size, q • Cycle time-out and spreading time are included in each RLC • Buffer expiry time-out is generated afreash at relays • An RLC is • 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 = successiveinter-meeting time between two relays • βs = successiveinter-meeting time between the source and a relay • βd = successiveinter-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 • The source begins spreading a new packet in next cycle • If transmission is not successful during a 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, βdare 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+ ti,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 (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, ti,S, ti,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., te= 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, ti,S, ti,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 (tM) and mean file transfer time (TM) suggests that optimal settings of the parameters Mi, ti,S, ti,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