National Aeronautics and Space Administration 1 Licklider Transmission Protocol (LTP): An Overview Scott Burleigh Jet Propulsion Laboratory California.

Slides:



Advertisements
Similar presentations
Computer Networks TCP/IP Protocol Suite.
Advertisements

Reconsidering Reliable Transport Protocol in Heterogeneous Wireless Networks Wang Yang Tsinghua University 1.
Congestion Control and Fairness Models Nick Feamster CS 4251 Computer Networking II Spring 2008.
Network Fundamentals – Chapter 4 Sandra Coleman, CCNA, CCAI
Jet Propulsion Laboratory California Institute of Technology Disruption Tolerant Network Technology Flight Validation Report by Ross M. Jones Jet Propulsion.
Laboratório de Teleprocessamento e Redes1 Unix Network Programming Prof. Nelson Fonseca
CCNA – Network Fundamentals
© 2008 Cisco Systems, Inc. All rights reserved.Cisco ConfidentialPresentation_ID 1 Chapter 7: Transport Layer Introduction to Networking.
Lecture 7 Transport Layer
BZUPAGES.COM 1 User Datagram Protocol - UDP RFC 768, Protocol 17 Provides unreliable, connectionless on top of IP Minimal overhead, high performance –No.
Copyright 1999, S.D. Personick. All Rights Reserved. Telecommunications Networking II Lecture 32 Transmission Control Protocol (TCP) Ref: Tanenbaum pp:
1 TCP CSE May TCP Services Flow control Connection establishment and termination Congestion control 2.
TDC365 Spring 2001John Kristoff - DePaul University1 Internetworking Technologies Transmission Control Protocol (TCP)
William Stallings Data and Computer Communications 7 th Edition (Selected slides used for lectures at Bina Nusantara University) Transport Layer.
Data Communications Architecture Models. What is a Protocol? For two entities to communicate successfully, they must “speak the same language”. What is.
TCP. Learning objectives Reliable Transport in TCP TCP flow and Congestion Control.
EE 4272Spring, 2003 Chapter 17 Transport Protocols Connection-Oriented Transport Protocol  Reliable Network Service: Design Issues  Unreliable Network.
Transport Layer TCP and UDP IS250 Spring 2010
Process-to-Process Delivery:
Planes, Trains and DTN (Delay Tolerant Networking) Ashton G. Vaughs Jet Propulsion Laboratory Copyright 2009 California Institute of Technology Government.
1 Chapter Internetworking Part 4 (Transport Protocols, UDP and TCP, Protocol Port Numbers)
1 Transport Layer Computer Networks. 2 Where are we?
1 Semester 2 Module 10 Intermediate TCP/IP Yuda college of business James Chen
Jaringan Komputer Dasar OSI Transport Layer Aurelio Rahmadian.
© 2008 Cisco Systems, Inc. All rights reserved.Cisco ConfidentialPresentation_ID 1 Chapter 7: Transport Layer Introduction to Networking.
COMT 4291 Communications Protocols and TCP/IP COMT 429.
© 2009 The MITRE Corporation. All rights reserved. Joint DTN / SOIS Meeting April 22, 2009 Colorado Springs, CO.
Paper Group: 12 Data Transport in Challenged Networks Above papers are original works of respective authors, referenced here for academic purposes only.
3: Transport Layer3b-1 TCP: Overview RFCs: 793, 1122, 1323, 2018, 2581 r full duplex data: m bi-directional data flow in same connection m MSS: maximum.
UDT: UDP based Data Transfer Protocol, Results, and Implementation Experiences Yunhong Gu & Robert Grossman Laboratory for Advanced Computing / Univ. of.
SMUCSE 4344 transport layer. SMUCSE 4344 transport layer end-to-end protocols –transport code runs only on endpoint hosts encapsulates network communications.
Fundamentals of Computer Networks ECE 478/578 Lecture #19: Transport Layer Instructor: Loukas Lazos Dept of Electrical and Computer Engineering University.
Delay-Tolerant Networking (DTN)
FALL 2005CSI 4118 – UNIVERSITY OF OTTAWA1 Part 2.5 Internetworking Chapter 25 (Transport Protocols, UDP and TCP, Protocol Port Numbers)
Copyright 2002, S.D. Personick. All Rights Reserved.1 Telecommunications Networking II Topic 20 Transmission Control Protocol (TCP) Ref: Tanenbaum pp:
TCP1 Transmission Control Protocol (TCP). TCP2 Outline Transmission Control Protocol.
Transport Layer Moving Segments. Transport Layer Protocols Provide a logical communication link between processes running on different hosts as if directly.
1 TCP: Reliable Transport Service. 2 Transmission Control Protocol (TCP) Major transport protocol used in Internet Heavily used Completely reliable transfer.
LTP for Reliable Telecommand-2 (NGU WG) Scott Burleigh, JPL November 1, 2011 Boulder.
1 CS 4396 Computer Networks Lab TCP – Part II. 2 Flow Control Congestion Control Retransmission Timeout TCP:
NASA AMS Prototyping Activities Scott Burleigh Jet Propulsion Laboratory, California Institute of Technology 11 March 2008.
Department of Electronic Engineering City University of Hong Kong EE3900 Computer Networks Protocols and Architecture Slide 1 Use of Standard Protocols.
20 November 2008 SB-1 First Look at the Deep Impact DTN Experiment (DINET) Scott Burleigh Jet Propulsion Laboratory California Institute of Technology.
Transport Protocols.
Transport Layer: Sliding Window Reliability
1 Version 3.1 Module 10 Intermediate TCP/IP (Layer 4)
01_NF_Ch04 – OSI Transport Layer ( 傳輸層 ) Source: CCNA Exploration.
© Janice Regan, CMPT 128, CMPT 371 Data Communications and Networking Congestion Control 0.
McGraw-Hill Chapter 23 Process-to-Process Delivery: UDP, TCP Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
TCP/IP1 Address Resolution Protocol Internet uses IP address to recognize a computer. But IP address needs to be translated to physical address (NIC).
Transmission Control Protocol (TCP) TCP Flow Control and Congestion Control CS 60008: Internet Architecture and Protocols Department of CSE, IIT Kharagpur.
1 Chapter 24 Internetworking Part 4 (Transport Protocols, UDP and TCP, Protocol Port Numbers)
TCP - Part II.
Delay-Tolerant Networking (DTN)
Lecture (2).
Instructor Materials Chapter 9: Transport Layer
By, Nirnimesh Ghose, Master of Science,
COMP 431 Internet Services & Protocols
AMS Prototyping Activities
PART 5 Transport Layer Computer Networks.
Chapter 6 The Transport Layer.
The Transport Layer Chapter
DTN Bundle Protocol on the IETF Standards Track
Introduction of Transport Protocols
Process-to-Process Delivery:
The Transport Layer Chapter 6.
Process-to-Process Delivery: UDP, TCP
Proposed DTN WG Charter Items
Presentation transcript:

National Aeronautics and Space Administration 1 Licklider Transmission Protocol (LTP): An Overview Scott Burleigh Jet Propulsion Laboratory California Institute of Technology 23 April 2009

National Aeronautics and Space Administration 2 What it is A retransmission protocol for delay-tolerant reliable communication between two adjacent points in a network. Descended from the acknowledged transmission procedures of CFDP, the CCSDS File Delivery Protocol. Originally designed to serve as a “convergence-layer” protocol for the interplanetary leg(s) of an end-to-end path in a delay- tolerant network (DTN). –Runs just above link layer, e.g., CCSDS Telemetry/Telecommand. May also be useful for some kinds of terrestrial applications, running above UDP/IP.

National Aeronautics and Space Administration Bundle Protocol: routing, custody transfer 3 Where it fits in TCP CCSDS TM/TC file transfer, messaging, etc. PPP, Ethernet, , SONET… CCSDS Prox-1 LTP encap IP UDP

National Aeronautics and Space Administration 4 Chronology Late 2000 – initial LTP design drafts circulated within DTN team. February 2002 – CFDP approved by CCSDS. December 2003 – Mani Ramadas (Ohio University) volunteers to work on an Internet Draft for LTP. March 2004 – Stephen Farrell (Trinity College, Dublin) joins up. 12 May 2004 – first LTP Internet Draft posted. Summer of 2004 – Stephen writes first implementation in C August 2005 – Mani releases reference implementation in Java. 1 December 2006 – Chris Krupiarz (Johns Hopkins University Applied Physics Lab) reports on MESSENGER flight software testbed exercise of an LTP implementation in C. October 2008 – Deep Impact Network Experiment demonstrates the use of LTP on-board a spacecraft in interplanetary space

National Aeronautics and Space Administration 5 Features Can handle very large bandwidth-delay product. Tolerates lengthy, irregular interruption of link without data loss. –Handle variation in round-trip time due to start and stop of contact. Minimizes overhead on low-capacity and/or asymmetric links. –Selective NAKs. Aggregation of small client service data units into larger blocks, acknowledged at block granularity. Optional accelerated retransmission: multiple checkpoints per transmitted block, or interim reports prior to reception of checkpoint. Partial reliability: checkpointing and retransmission for only the first N bytes of a block, and N can be zero. Extension mechanism is built into the specification. –Currently defined extension segments implement security.

National Aeronautics and Space Administration 6 How it works A block of client service data to be transmitted is divided into segments. When the segments are transmitted, one or more are flagged as checkpoints. When a checkpoint is received, the receiver returns a report of cumulative reception for that block. –Reports acknowledge checkpoints and either signal successful reception or else trigger retransmission. –Reports are explicitly acknowledged. Reports and checkpoints are on timers, are retransmitted if not acknowledged. Known changes in remote peer’s transmission state may dynamically revise timers. Deferred transmission. Multiple transmissions between two peers may be in progress concurrently.

National Aeronautics and Space Administration 7 OWLT no mutual visibility (timer suspended) timeout interval deliver block to client

National Aeronautics and Space Administration 8 OWLT Original countdown timer (A) transmit original segment (B) receive original segment, queue ACK (C) transmit ACK (D) receive ACK (S) remote engine suspends transmission (R) remote engine resumes transmission (sender) (receiver) queuing (etc.) margin time signal propagation time delay for suspended transmission Timer revision (1 of 3)

National Aeronautics and Space Administration 9 OWLT Original countdown timer (C) transmit ACK (S) remote engine suspends transmission (R) remote engine resumes transmission (sender) (receiver) (B) receive original segment, queue ACK queuing (etc.) margin time signal propagation time delay for suspended transmission Timer revision (2 of 3) (A) transmit original segment (D) receive ACK

National Aeronautics and Space Administration 10 OWLT Original countdown timer (S) remote engine suspends transmission (R) remote engine resumes transmission OWLT adjusted countdown timer queuing (etc.) margin time signal propagation time delay for suspended transmission (C’) transmit ACK (D’) receive ACK (sender) (receiver) (C) transmit ACK (B) receive original segment, queue ACK Timer revision (3 of 3) (A) transmit original segment (D) receive ACK

National Aeronautics and Space Administration 11 LTP vs TCP (1 of 2) TCPLTP architectural elements One durable, unbounded connection per pair of ports. “Window” is buffer of bytes in transit on connection. One temporary, bounded session per transmission unit. “Block” is buffer of bytes in transit within session. acknowledgmentsACKs on ranges of bytes in window; SACK optional. Selective NAKs on ranges of bytes in block. configuration of communication Connections are dynamically opened, parameters negotiated. No connection protocol. Parameters are managed and asserted. demuxPort number. Different port number at receiver for each connection. Session number. Any number of sessions may be delivering to the same client. concurrencyNumber of concurrent open connections is typically limited by number of FDs. Number of concurrently open sessions is limited by available space, possibly management.

National Aeronautics and Space Administration 12 LTP vs TCP (2 of 2) TCPLTP sites of retransmission End-to-end. Retransmission sites are co-located with applications. Point-to-point. Retransmission sites are co-located with routers. delivery orderBytes delivered in-order within connection. Bytes delivered in-order within session, but sessions may complete out of order. timersTimeout interval computed from RTT history. Timeout interval computed from known OWLT and link state schedule. flow controlNumber of unacknowledged bytes in buffer is limited by each connection’s window size. Number of unacknowledged bytes in all blocks is limited by max block size and max number of sessions. congestion controlControl window size for each connection; slow start, AIMD. No congestion control; bundle protocol may do rate control.

National Aeronautics and Space Administration 13 Status of specifications Three LTP Internet Drafts began IRSG review in April of 2007, were published as Internet RFCs in September of 2008: –"Licklider Transmission Protocol - Motivation", RFC 5325 –"Licklider Transmission Protocol - Specification", RFC 5326 –"Licklider Transmission Protocol - Extensions", RFC 5327

National Aeronautics and Space Administration 14 Implementations Stephen Farrell’s implementation in C++ Mani Ramadas’s implementation in Java APL implementation in C JPL implementation in C, used for DINET Successful interoperation tests: –Between C++ and Java implementations at November 2006 IETF meeting in San Diego –Between C++ and JPL implementations at March 2008 IETF meeting in Philadelphia

National Aeronautics and Space Administration 15 Tracking the work Home page – Mailing list –

National Aeronautics and Space Administration 16 Acknowledgment Part of this work was carried out at the Jet Propulsion Laboratory, California Institute of Technology, under a contract with the National Aeronautics and Space Administration.