Discussion: Messaging

Slides:



Advertisements
Similar presentations
TCP/IP MODEL Maninder Kaur
Advertisements

Introduction 1 Lecture 13 Transport Layer (Transmission Control Protocol) slides are modified from J. Kurose & K. Ross University of Nevada – Reno Computer.
Umut Girit  One of the core members of the Internet Protocol Suite, the set of network protocols used for the Internet. With UDP, computer.
Transmission Control Protocol (TCP)
BZUPAGES.COM 1 User Datagram Protocol - UDP RFC 768, Protocol 17 Provides unreliable, connectionless on top of IP Minimal overhead, high performance –No.
Transport Layer – TCP (Part1) Dr. Sanjay P. Ahuja, Ph.D. Fidelity National Financial Distinguished Professor of CIS School of Computing, UNF.
TCP/IP Protocol Suite 1 Chapter 13 Upon completion you will be able to: Stream Control Transmission Protocol Be able to name and understand the services.
TCP/IP Protocol Suite 1 Chapter 13 Upon completion you will be able to: Stream Control Transmission Protocol Be able to name and understand the services.
Introduction to Transport Layer. Transport Layer: Motivation A B R1 R2 r Recall that NL is responsible for forwarding a packet from one HOST to another.
Stream Control Transmission Protocol 網路前瞻技術實驗室 陳旻槿.
TCP/IP Basics A review for firewall configuration.
Gursharan Singh Tatla Transport Layer 16-May
What Can IP Do? Deliver datagrams to hosts – The IP address in a datagram header identify a host IP treats a computer as an endpoint of communication Best.
Chapter 16 Stream Control Transmission Protocol (SCTP)
TRANSPORT LAYER T.Najah Al-Subaie Kingdom of Saudi Arabia Prince Norah bint Abdul Rahman University College of Computer Since and Information System NET331.
1 Chapter 16 Protocols and Protocol Layering. 2 Protocol  Agreement about communication  Specifies  Format of messages (syntax)  Meaning of messages.
26-TCP Dr. John P. Abraham Professor UTPA. TCP  Transmission control protocol, another transport layer protocol.  Reliable delivery  Tcp must compensate.
David Wetherall Professor of Computer Science & Engineering Introduction to Computer Networks Transport Layer Overview (§ )
1 Transport Protocols Relates to Lab 5. An overview of the transport protocols of the TCP/IP protocol suite. Also, a short discussion of UDP.
Transport Control Protocol (TCP) Features of TCP, packet loss and retransmission, adaptive retransmission, flow control, three way handshake, congestion.
Lecture 4 Overview. Ethernet Data Link Layer protocol Ethernet (IEEE 802.3) is widely used Supported by a variety of physical layer implementations Multi-access.
Our pre-TAPS work on transport services Michael Welzl TAPS, 92 nd IETF meeting 23. March 2015.
Teacher:Quincy Wu Presented by: Ying-Neng Hseih
Stream Control Transmission Protocol
4343 X2 – The Transport Layer Tanenbaum Ch.6.
TCP/IP Protocol Suite 1 Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Chapter 16 Stream Control Transmission.
Data Communications and Networks Chapter 6 – IP, UDP and TCP ICT-BVF8.1- Data Communications and Network Trainer: Dr. Abbes Sebihi.
Computer Networks 1000-Transport layer, TCP Gergely Windisch v spring.
1 Chapter 24 Internetworking Part 4 (Transport Protocols, UDP and TCP, Protocol Port Numbers)
Ch23 Ameera Almasoud 1 Based on Data Communications and Networking, 4th Edition. by Behrouz A. Forouzan, McGraw-Hill Companies, Inc., 2007.
Chapter 3 outline 3.1 Transport-layer services
DMET 602: Networks and Media Lab
Fast Retransmit For sliding windows flow control we waited for a timer to expire before beginning retransmission of a packet TCP uses an additional mechanism.
Michael Welzl , Distributed and Parallel Systems Group
Introduction to Networks
Chapter 16 Stream Control Transmission Protocol (SCTP)
5. End-to-end protocols (part 1)
Transport Layer.
Long-haul Transport Protocols
TCP.
The Transport Layer is Dead – Long Live the Transport Layer!
TCP.
PART 5 Transport Layer Computer Networks.
Process-to-Process Delivery:
Flow Control.
TCP - Part I Karim El Defrawy
Transport Layer Unit 5.
THE TRANSPORT LAYER Scott Garland COSC 352.
CSCI-1680 Transport Layer I
Transport Protocols Relates to Lab 5. An overview of the transport protocols of the TCP/IP protocol suite. Also, a short discussion of UDP.
Stream Control Transmission Protocol (SCTP)
Falling Back! … and: a Functional Decomposition of Post-Sockets
Process-to-Process Delivery:
CS412 Introduction to Computer Networking & Telecommunication
Dr. John P. Abraham Professor UTPA
NT1210 Introduction to Networking
A Minimal Set of Transport Services for TAPS Systems draft-ietf-taps-minset-00 Michael Welzl, Stein-Gjessing IETF
Dr. John P. Abraham Professor UTPA
CPEG514 Advanced Computer Networkst
CS4470 Computer Networking Protocols
Protocols and Protocol Layering
TCP - Part I Relates to Lab 5. First module on TCP which covers packet format, data transfer, and connection management.
Introduction to Computer Networks
A Minimal Set of Transport Services for TAPS Systems draft-ietf-taps-minset-02 Michael Welzl, Stein Gjessing IETF
Process-to-Process Delivery: UDP, TCP
Protocols and Protocol Layering
draft-ietf-taps-transports-usage-03
Transport Layer 9/22/2019.
Parameters & Defaults:
How Applications (Will Hopefully Soon) Use the Internet
Presentation transcript:

Discussion: Messaging Michael Welzl TAPS @ IETF 98 Chicago, 28.3.2017

From draft-gjessing-taps-minset-04 Transport features that require app knowledge + allow fall-back to TCP Sending Reliably transfer data, with congestion control Reliably transfer a message, with congestion control Unreliably transfer a message Configurable Message Reliability Choice between unordered (potentially faster) or ordered delivery of messages Request not to bundle messages Specifying a key id to be used to authenticate a message Request not to delay the acknowledgement (SACK) of a message Receiving Receive data (with no message delineation) Information about partial message arrival Makes no sense when we don’t get messages.

Sending messages, receiving a bytestream Can we make this combination work? Be compatible to TCP but still benefit from messages? Alternative not very attractive: always telling an application “sorry, you only get a stream here” is not much different than saying “sorry, use TCP instead” Let’s minimize # hoops an app developer has to jump through Message-oriented TCP apps already frame their data Unnecessary to repeat this in transport layer Requirement to tell receiver app “here is your complete message” creates a major limitation and is often unnecessary

Application-Framed (AFra-)Bytestream Normal TCP-like bytestream API Optional: some additional information provided by sender app Sender app: hands over a stream of bytes, informs transport about frame boundaries and requirements (order, reliability, ..) Delimited frames stay intact, in order More relaxed rules possible between frames Delimiters assumed to be known by application Receiver app: receives stream of bytes App-level delimiters turn it into messages TCP = special case: no delimiters used Can talk to “normal” TCP applications on both sides

Unordered message delivery: SCTP Sender app Receiver app Msg 3 Msg 1 Msg 2 Msg 3 App-defined header. Could also be e.g. implicit knowledge about size Msg 1 Msg 2 App knows how to identify messages Inform where frame ends API Inform where frame begins Configure: “unordered” Just a byte stream! API Block 1 Block 3 Block 2 Block 1 Block 2 Block 3

Unordered message delivery: TCP Sender app Receiver app Msg 3 Msg 1 Msg 2 Msg 2 Msg 1 Msg 3 App knows how to identify messages Inform where frame ends Inform where frame begins Configure: “unordered” … TCP just ignores this! API Just a byte stream! API Block 1 Block 3 Block 2 Block 1 Block 2 Block 3

Unreliable unordered msg delivery: SCTP Sender app Receiver app Msg 3 Msg 3 Msg 2 Msg 2 Msg 1 App knows how to identify messages Inform where frame ends API Inform where frame begins Configure: “unreliable, unordered” Just a byte stream! API Block 1 Block 3 Block 2 Block 2 Block 3

Unreliable unordered msg delivery: TCP Sender app Receiver app Msg 3 Msg 1 Msg 2 Msg 2 Msg 1 Msg 3 App knows how to identify messages Inform where frame ends Inform where frame begins Configure: “unreliable, unordered” … TCP just ignores this! API Just a byte stream! API Block 1 Block 3 Block 2 Block 1 Block 2 Block 3

Unreliable message delivery: SCTP, large messages Sender app Receiver app Msg 3 Msg 2 Msg 1 Inform where frame ends API Inform where block begins Configure: “Unreliable” API Packets Block 1 Block 3 Block 2

Unreliable message delivery: SCTP, large messages Sender app Receiver app Msg 2 App knows how to identify messages API Just a byte stream! API SCTP Block 1 Block 3 Block 2 Packets

Questions, comments?

Discussion: Early data transmission Michael Welzl TAPS @ IETF 98 Chicago, 28.3.2017

From draft-gjessing-taps-minset-04 Transport features that require app knowledge + allow fall-back to TCP Hand over a message to transfer (possibly multiple times) before connection establishment This is TCP (TFO) Hand over a message to transfer during connection establishment This is SCTP sending data together with Cookie-Echo, or TCP sending data on SYN without TFO no duplication

Proposal in draft-gjessing-taps-minset-04 Flow is created before connecting or listening Allows for some early configuration At this stage, deal with early data App can... hand over a message say whether it prefers “before” (case 1) or “during” (case 2) establishment query for the maximum amount of data that it can possibly expect to have transmitted before or during connection establishment

Questions, comments?