David Wetherall Professor of Computer Science & Engineering Introduction to Computer Networks Transport Layer Overview (§6.1.2-6.1.4)

Slides:



Advertisements
Similar presentations
Introduction 1 Lecture 13 Transport Layer (Transmission Control Protocol) slides are modified from J. Kurose & K. Ross University of Nevada – Reno Computer.
Advertisements

Transport Layer3-1 Transport Overview and UDP. Transport Layer3-2 Goals r Understand transport services m Multiplexing and Demultiplexing m Reliable data.
Transportation Layer (2). TCP full duplex data: – bi-directional data flow in same connection – MSS: maximum segment size connection-oriented: – handshaking.
TCP - Part I Relates to Lab 5. First module on TCP which covers packet format, data transfer, and connection management.
Transport Layer – TCP (Part2) Dr. Sanjay P. Ahuja, Ph.D. Fidelity National Financial Distinguished Professor of CIS School of Computing, UNF.
Transmission Control Protocol (TCP)
Fundamentals of Computer Networks ECE 478/578 Lecture #20: Transmission Control Protocol Instructor: Loukas Lazos Dept of Electrical and Computer Engineering.
CSEE W4140 Networking Laboratory Lecture 6: TCP and UDP Jong Yul Kim
1 Transport Layer Lecture 9 Imran Ahmed University of Management & Technology.
CSE551: Computer Network Review r Network Layers r TCP/UDP r IP.
CS3505 The Internet and Info Hiway transport layer protocols : TCP/UDP.
Transport Layer – TCP (Part1) Dr. Sanjay P. Ahuja, Ph.D. Fidelity National Financial Distinguished Professor of CIS School of Computing, UNF.
Chapter 7 – Transport Layer Protocols
EECC694 - Shaaban #1 lec #12 Spring Internet Transport Protocols Transmission Control Protocol (TCP):Transmission Control Protocol (TCP):
Computer Networks 2 Lecture 2 TCP – I - Transport Protocols: TCP Segments, Flow control and Connection Setup.
EEC-484/584 Computer Networks Lecture 15 Wenbing Zhao (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer.
Chapter 3: Transport Layer
EEC-484/584 Computer Networks Lecture 7 Wenbing Zhao (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer.
CMPE 150- Introduction to Computer Networks 1 CMPE 150 Fall 2005 Lecture 26 Introduction to Computer Networks.
CSE 461: Transport Layer Connections. Naming Processes/Services  Process here is an abstract term for your Web browser (HTTP), servers (SMTP),
CSEE W4140 Networking Laboratory Lecture 6: TCP and UDP Jong Yul Kim
CSCE 515: Computer Network Programming TCP Details Wenyuan Xu Department of Computer Science and Engineering.
EEC-484/584 Computer Networks Lecture 13 Wenbing Zhao (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer.
Department of Electronic Engineering City University of Hong Kong EE3900 Computer Networks Transport Protocols Slide 1 Transport Protocols.
TCP. Learning objectives Reliable Transport in TCP TCP flow and Congestion Control.
Transport Layer TCP and UDP IS250 Spring 2010
EEC-484/584 Computer Networks Lecture 13 Wenbing Zhao (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer.
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.
Process-to-Process Delivery:
TRANSPORT LAYER T.Najah Al-Subaie Kingdom of Saudi Arabia Prince Norah bint Abdul Rahman University College of Computer Since and Information System NET331.
Review: –What is AS? –What is the routing algorithm in BGP? –How does it work? –Where is “policy” reflected in BGP (policy based routing)? –Give examples.
TCP/IP: Basics1 User Datagram Protocol (UDP) Another protocol at transport layer is UDP. It is Connectionless protocol i.e. no need to establish & terminate.
IP and Errors IP Best Effort Datagrams can be: –Lost –Delayed –Duplicated –Delivered out of order –Corrupted.
1 7-Oct-15 OSI transport layer CCNA Exploration Semester 1 Chapter 4.
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.
Transport Layer: UDP, TCP
Fall 2005 By: H. Veisi Computer networks course Olum-fonoon Babol Chapter 6 The Transport Layer.
Transport Layer3-1 Chapter 3: Transport Layer Our goals: r understand principles behind transport layer services: m multiplexing/demultipl exing m reliable.
1 Introduction to Computer Networks University of ilam Dr. Mozafar Bag-Mohammadi Transport Layer.
CCNA 1 v3.0 Module 11 TCP/IP Transport and Application Layers.
Transport Layer 3-1 Chapter 3 Outline r 3.1 Transport-layer services r 3.2 Multiplexing and demultiplexing r 3.3 Connectionless transport: UDP.
Chapter 3: Transport Layer Our goals: r understand principles behind transport layer services: m multiplexing/demultipl exing m reliable data transfer.
Connection Establishment and Termination. Tcpdump tcpdump is a common packet analyzer that runs under the command line. It allows the user to intercept.
MULTIPLEXING/DEMULTIPLEXING, CONNECTIONLESS TRANSPORT.
Transport Protocols.
1 End-to-End Protocols User Datagram Protocol (UDP) Transmission Control Protocol(TCP)
4343 X2 – The Transport Layer Tanenbaum Ch.6.
IP1 The Underlying Technologies. What is inside the Internet? Or What are the key underlying technologies that make it work so successfully? –Packet Switching.
1 Computer Communication & Networks Lecture 23 & 24 Transport Layer: UDP and TCP Waleed Ejaz
TCP/IP1 Address Resolution Protocol Internet uses IP address to recognize a computer. But IP address needs to be translated to physical address (NIC).
Computer Networks 1000-Transport layer, TCP Gergely Windisch v spring.
2: Transport Layer 11 Transport Layer 1. 2: Transport Layer 12 Part 2: Transport Layer Chapter goals: r understand principles behind transport layer services:
1 14-Jun-16 S Ward Abingdon and Witney College CCNA Exploration Semester 1 OSI transport layer CCNA Exploration Semester 1 Chapter 4.
Two Transport Protocols Available Transmission Control Protocol (TCP) User Datagram Protocol (UDP) Provides unreliable transfer Requires minimal – Overhead.
© 2006 Cisco Systems, Inc. All rights reserved.Cisco Public 1 OSI transport layer CCNA Exploration Semester 1 – Chapter 4.
3. END-TO-END PROTOCOLS (PART 1) Rocky K. C. Chang Department of Computing The Hong Kong Polytechnic University 22 March
UDP: User Datagram Protocol. What Can IP Do? Deliver datagrams to hosts – The IP address in a datagram header identify a host – treats a computer as an.
Chapter 3 outline 3.1 Transport-layer services
5. End-to-end protocols (part 1)
Process-to-Process Delivery, TCP and UDP protocols
Process-to-Process Delivery:
CPEG514 Advanced Computer Networkst
Transport Protocols: TCP Segments, Flow control and Connection Setup
Introduction to Computer Networks
Transport Protocols: TCP Segments, Flow control and Connection Setup
Process-to-Process Delivery: UDP, TCP
Transport Layer 9/22/2019.
Presentation transcript:

David Wetherall Professor of Computer Science & Engineering Introduction to Computer Networks Transport Layer Overview (§ )

CSE 461 University of Washington2 Where we are in the Course Starting the Transport Layer! – Builds on the network layer to deliver data across networks for applications with the desired reliability or quality Physical Link Network Transport Application

Recall Transport layer provides end-to-end connectivity across the network CSE 461 University of Washington3 TCP IP app IP IP Ethernet TCP IP Ethernet app RouterHost

CSE 461 University of Washington4 Recall (2) Segments carry application data across the network Segments are carried within packets within frames IPTCP App, e.g., HTTP Segment Packet Frame

CSE 461 University of Washington5 Transport Layer Services Provide different kinds of data delivery across the network to applications UnreliableReliable MessagesDatagrams (UDP) BytestreamStreams (TCP)

Comparison of Internet Transports TCP is full-featured, UDP is a glorified packet CSE 461 University of Washington6 TCP (Streams)UDP (Datagrams) ConnectionsDatagrams Bytes are delivered once, reliably, and in order Messages may be lost, reordered, duplicated Arbitrary length contentLimited message size Flow control matches sender to receiver Can send regardless of receiver state Congestion control matches sender to network Can send regardless of network state

CSE 461 University of Washington7 User Datagram Protocol (UDP) Used by apps that don’t want reliability or bytestreams – Voice-over-IP (unreliable) – DNS, RPC (message-oriented) – DHCP (bootstrapping) (If application wants reliability and messages then it has work to do!)

CSE 461 University of Washington8 Datagram Sockets Client (host 1)Server (host 2) Time request reply

CSE 461 University of Washington9 Datagram Sockets (2) Client (host 1)Server (host 2) Time 1: socket 2: bind 1: socket 6: sendto 3: recvfrom* 4: sendto 5: recvfrom* 7: close *= call blocks request reply

CSE 461 University of Washington10 UDP Buffering App Port Mux/Demux App Application Transport (TCP) Network (IP) packet Message queues Ports

CSE 461 University of Washington11 UDP Header Uses ports to identify sending and receiving application processes Datagram length up to 64K Checksum (16 bits) for reliability

CSE 461 University of Washington12 Topic How to set up connections – We’ll see how TCP does it SYN! ACK! Network SYNACK!

CSE 461 University of Washington13 Connection Establishment Both sender and receiver must be ready before we start the transfer of data – Need to agree on a set of parameters – e.g., the Maximum Segment Size (MSS) This is signaling – It sets up state at the endpoints – Like “dialing” for a telephone call

CSE 461 University of Washington14 Three-Way Handshake Used in TCP; opens connection for data in both directions Each side probes the other with a fresh Initial Sequence Number (ISN) – Sends on a SYNchronize segment – Echo on an ACKnowledge segment Chosen to be robust even against delayed duplicates Active party (client) Passive party (server)

CSE 461 University of Washington15 Three-Way Handshake (2) Three steps: – Client sends SYN(x) – Server replies with SYN(y)ACK(x+1) – Client replies with ACK(y+1) – SYNs are retransmitted if lost Sequence and ack numbers carried on further segments Active party (client) Passive party (server) SYN (SEQ=x) SYN (SEQ=y, ACK=x+1) (SEQ=x+1, ACK=y+1) Time

CSE 461 University of Washington16 Three-Way Handshake (3) Suppose delayed, duplicate copies of the SYN and ACK arrive at the server! – Improbable, but anyhow … Active party (client) Passive party (server) SYN (SEQ=x) (SEQ=x+1, ACK=z+1)

CSE 461 University of Washington17 Three-Way Handshake (4) Suppose delayed, duplicate copies of the SYN and ACK arrive at the server! – Improbable, but anyhow … Connection will be cleanly rejected on both sides Active party (client) Passive party (server) SYN (SEQ=x) SYN (SEQ=y, ACK=x+1) (SEQ=x+1, ACK=z+1) X X REJECT

CSE 461 University of Washington18 Topic How to release connections – We’ll see how TCP does it Network FIN!

CSE 461 University of Washington19 Connection Release Orderly release by both parties when done – Delivers all pending data and “hangs up” – Cleans up state in sender and receiver Key problem is to provide reliability while releasing – TCP uses a “symmetric” close in which both sides shutdown independently

CSE 461 University of Washington20 TCP Connection Release Two steps: – Active sends FIN(x), passive ACKs – Passive sends FIN(y), active ACKs – FINs are retransmitted if lost Each FIN/ACK closes one direction of data transfer Active party Passive party

CSE 461 University of Washington21 TCP Connection Release (2) Two steps: – Active sends FIN(x), passive ACKs – Passive sends FIN(y), active ACKs – FINs are retransmitted if lost Each FIN/ACK closes one direction of data transfer Active party Passive party 1 2 FIN (SEQ=x) (SEQ=y, ACK=x+1) (SEQ=x+1, ACK=y+1) FIN (SEQ=y, ACK=x+1)