Zequn Huang CISC856 Sophie Che Dept. Computer and Information Science University of Delaware 11/20/2012 (some slides courtesy of Lloyd Wood) Thank Sophie Che for her slides Outline Introduction DTN background Saratoga Protocol Saratoga Transactions What’s Saratoga? Developed by Surrey Satellite Technology to transfer remote-sensing imagery from its IPbased satellites to ground. Saratoga is a lightweight transport protocol that can also be Delay Tolerant Network (DTN) convergence layer. Original Use Case Disaster Monitoring Constellation (DMC) Used for rapid daily large-area imaging Can observe effects of natural disasters fires in California, 28 October 2003 (UK-DMC) DMC in use: after Hurricane Katrina, 05 In this image, dry land is red. Flooded and damaged land is shown as brown DMC is working as part of the United Nations International Charter for Space and Major Disasters Today’s Internet Successful at interconnecting communication devices across the globe Based on TCP/IP protocol suite Connected in end-to-end, low-delay paths between sources and destinations Low error rates and relatively symmetric bidirectional data rates Evolving Wireless Networks Outside the Internet Support long and variable delays, arbitrarily long periods of link disconnection, high error rates, and large bidirectional data-rate asymmetries Examples Terrestrial civilian networks connecting mobile wireless devices Wireless military battlefield networks connecting troops, aircraft, satellites, and sensors Outer-space networks, such as the InterPlaNetary (IPN) Internet project Interplanetary Network Imagine If I say a “Hi” to you and you hear it after 9 Hours !!!!! Interplanetary Network Mars Mars Mars Earth Why Delay-Tolerant Network ? The Internet’s underlying assumptions Continuous, bidirectional end-to-end path Short round-trips Symmetric data rates Low error rates The characteristics of evolving and potential networks Intermittent connectivity Long or variable delay Asymmetric data rates High error rates New architectural concept is needed! Store-And-Forward Message Switching The problems of DTNs can be overcome by store- and-forward massage switching DTN routers need persistent storage for their queues because A communication link may not be available for a long time One node may send or receive data much faster or more reliably than the other node A message, once transmitted, may need to be retransmitted for some reasons Layers in DTN DTN TCP/IP Protocol Suite Application Application DTN Bundle Layer Transport Layer Transport Layer IP IP Link Layer Link Layer MAC/Channel Physical Layer Where is Saratoga in DTN An IP-based convergence layer transport protocols that it uses to move data across different networks Using UDP as a starting point Why not using TCP? DTN has the features No congestion Long delay Asymmetric data rate Application DTN Bundle Layer Convergence Layer (Saratoga) UDP IP Link Layer MAC/Channel Basic Saratoga Design SNACK Flood data No congestion control Scalable on file size transferred Compatible on IPv4 and IPv6 Basic Saratoga design Flood data packets out as fast as possible ACKs are Selective Negative ACK (SNACKs) indicating the gap to fill with resent data. File sender can require ACK from file reciver TCP with SACK after timeout Timer TCP Sender TCP Receiver start 100199 stop start timeout stop s e n d e r loss timer expires r e c e i v e r 100- 200199 299 100- 200199 299 100- 200199 299 300 400399 499 400- 500499 599 100- 200- 300- 400- 500199 299 399 499 599 File Offset Descriptor Length is fixed within a transfer, but vary between different transfers How to design a scalable file transfer protocol able to handle any size file? Solved this problem with 16/32/64/128-bit pointers Supported Size Max File Size 16 bits 2^16 = 64 K 32 bits 2^32 = 4G 64 bits 2^64 128 bits 2^128 Saratoga Packets BEACON Sent periodically Advertise nodes’ presence, capabilities, and desires Ask for a download, upload, REQUEST directory listing, or deletion operation _get_, _put_, _getdir_, _delete_ Sent at start of transaction METADATA Description of the file Specify the max supported file size Saratoga Packets (cont’d) DATA STATUS Actual file data being transferred Use chosen maximum file size MAY request an ack Responds to REQUEST or DATA. Can signal list of unreceived data to sender during a transfer Data Packet Format Status Packet Format (HOLESTOFILL) An example Saratoga Transactions GET without loss REQUEST Transfer accepted METADATA DATA #1 DATA #2 DATA #3 DATA #4 DATA #5 DATA #6 completed HOLESTOFILL Request an ack GET with loss REQUEST Transfer accepted X Indicate a loss METADATA DATA #1 DATA #2 DATA #3 HOLESTOFILL for #2 DATA #2 completed Request an ack HOLESTOFILL Request an ack GET with Inactivity Timer Start timer REQUEST METADATA Reset timer Reset timer Reset timer Store the file for possible resuming later DATA #1 HOLESTOFILL DATA #2 No connection any longer GET with Inactivity Timer (cont’d) REQUEST METADATA DATA #1 HOLESTOFILL DATA #2 DATA #3 DATA #4 Request an ack Start timer DATA #5 Cease to send DATA GET being Rejected Transfer rejected An error code is sent The transaction is terminated REQUEST METADATA PUT METADATA Transfer accepted HOLESTOFILL DATA #1 DATA #2 DATA #3 DATA #4 DATA #5 DATA #6 completed HOLESTOFILL Request an ack DELETE A REQUEST packet including the file path to be deleted Trigger a HOLESTOFILL with a status code Reference Saratoga: a Delay-Tolerant Networking convergence layer with efficient link utilization Delay-Tolerant Networks(DTN) A Tutorial TCP Selective Negative Acknowledgment over IEEE 802.11 Wireless Networks Saratoga: A Scalable Data Transfer Protocol draft-wood-tsvwg-saratoga-12 Video http://www.youtube.com/watch?v=XTmYm3gMYO Q Questions? Ref: draft-wood-tsvwg-saratoga-02