User Datagram Protocol
|
|
- Rose Hardy
- 6 years ago
- Views:
Transcription
1 Topics Transport Layer TCP s three-way handshake TCP s connection termination sequence TCP s TIME_WAIT state TCP and UDP buffering by the socket layer 2
2 Introduction UDP is a simple, unreliable datagram protocol TCP is a sophisticated, reliable byte-stream protocol Understanding these protocols help you make better decisions when developing applications that utilize the transport layer Additionally, understanding services provided by these protocols enables you know what must be handled in the application 3
3 The Big Picture 4
4 User Datagram Protocol Simple, unreliable, connectionless, datagram service Application writes a message to the UDP socket, the message is encapsulated in an UDP packet, then further encapsulated in an IP datagram, and sent to its destination NO guarantee UDP will reach its destination or that the packet order will be preserved Extra functionality can be built into the application: acknowledgments, timeouts, retransmissions, etc. UDP differs from TCP in that it has a specified length. TCP is a byte-stream protocol with no record boundaries 5
5 Transmission Control Protocol TCP provides connections between clients and servers Typical communication: 1) TCP client establishes connection; 2) exchanges data; 3) terminates connection TCP provides reliability: -When TCP sends data it requires an acknowledgement (ACK) -If an ACK is not received, TCP retransmits the data and increases the timeout window -After several retransmissions TCP will give up 6
6 Transmission Control Protocol (Continued) TCP DOES NOT guarantee that the data will be received by the other endpoint That s impossible! It delivers data to the other endpoint if possible, and notifies the user if it is not possible (by giving up on retransmissions) Thus, TCP can t be described as a 100% reliable protocol; it provides reliable delivery of data or a reliable notification of failure 7
7 Transmission Control Protocol (Continued) TCP contains algorithms to dynamically estimate the round-trip-time (RTT) between a client and a server This tells TCP how long to wait for an ACK Which is greater - the RTT of a LAN or WAN? TCP continuously estimates the RTT of a given connection, because the RTT is affected by traffic variations TCP also sequences data by associating sequence numbers with ever byte it sends 8
8 Transmission Control Protocol (Continued) For Example: If an application writes 2,048 bytes to a TCP socket, causing TCP to send two segments: first with sequence number 1-1,024 and the second with sequence numbers 1,025 2,048 If the segment arrives out of order, the receiving TCP will reorder the segments based on sequence number before passing them up to the application layer Sequence numbers also protects against processing duplicate segments 9
9 Transmission Control Protocol (Continued) TCP provides a full-duplex connection with flow control TCP tells its peer exactly how many bytes of data it is willing to accept from the peer at any one time This is called the advertised window At any time, the window is the amount of room currently available in the receive buffer This guarantees that the sender can t overflow the receiver s buffer As data is received by the sender, the window size decreases, but as the receiving application reads data from the buffer, the window size increases A window size of 0 implies that that the receive buffer is full and waiting for the application to read data 10
10 TCP Connection Establishment: Three Way Handshake The minimum number of packets required for this exchange is three The acknowledgment number in an ACK is the next expected sequence number for the end sending the ACK 11
11 TCP Connection Establishment: Three Way Handshake Consider the following scenario when a TCP connection is established: Server must be prepared to accept connection usually done by calling socket, bind, and listen (this is called a passive open) Client issues an active open by calling connect. This causes the TCP client to send a synchronize segment (SYN) This tells the server the clients initial sequence number Normally contains no data, just and IP header, a TCP header, and possibly options The server must acknowledge (ACK) the client s SYN and the server must also send its own SYN (this is done in one segment) Contains the initial sequence number for the data that the server will send The Client must acknowledge the server s SYN 12
12 TCP Connection Establishment: Three Way Handshake - Ethereal 13
13 TCP Connection Termination 15
14 TCP Connection Termination Since a FIN and ACK are required in both directions, four segments are normally used Steps 2 and 3 may be combined Between steps 2 and 3 it is possible for data to flow from the end doing the passive close to the end doing the active close. This is called a halfclose The sending of each FIN occurs when a socket is closed 16
15 TCP Connection Termination - Ethereal 17
16 TCP State Transition Diagram 18
17 TCP State Transition Diagram (Continued) The operation of TCP with regard to connection establishment and connection termination can be specified with a state transition diagram Total of 11 different states Rules of TCP dictate the transitions from one state to another Example: An application performs an active open in the CLOSED state TCP sends a SYN and the new state is SYN_SENT. If TCP next receives a SYN with an ACK, it sends and ACK an the new state is ESTABLISHED. The two arrows leaving from the ESTABLISHED state deal with the termination of a connection If an application calls close before receiving a FIN (an active close), the transition is to the FIN_WAIT_1 state If an application receives a FIN while in the ESTABLISHED (a passive close), the transition is to the CLOSE_WAIT state 19
18 Watching The Packets 20
19 Watching The Packets Example: client announces am MSS of 536 and server announces MSS of 1460 it s okay for the MSS to be different in each direction A MSS of 1460 is common for IPv4 on Ethernet A connection is established and a request is sent to the server It is assumed that the request fits into a single TCP segment The server processes the request and sends a reply (again assuming that it fits in a single TCP segment) Notice that the acknowledgement of the request is sent with the server s reply this is called piggybacking Piggybacking normally takes place when the time it takes the server to process the request and generate the reply is less than 200ms Finally, the connection is closed with four segments notice that the client enters the TIME_WAIT state How would this diagram look if it were UDP? 21
20 TIME_WAIT State The duration that an endpoint remains in this state is twice the maximum segment lifetime (MSL), sometimes called 2MSL Every implementation of TCP must choose a value for the MSL Normally between 30 seconds and 2 minutes MSL is the maximum amount of time that any given IP datagram can live in a network This time is bounded because of the 8-bit hop limit in the IP header, the time-to-live (TTL) field A packet can get lost in the network as a result of routing anomalies: routers crashing If the packet gets lost, and is retransmitted due a timeout, and suddenly the packet is found and transmitted to the destination, the duplicate is called a lost duplicate or a wandering duplicate. TCP must handle these scenarios 22
21 TIME_WAIT State (Continued) Two reasons for the TIME_WAIT state: 1) To implement TCP s full-duplex connection termination reliably : To Illustrate this, let s assume that the final ACK was lost The server will resend the final FIN, so the client must maintain state information, allowing it to resend the final ACK If it did not maintain state, the client would respond with a reset, which would be interpreted by the server as an error In order to terminate both directions cleanly, TCP musts correctly handle the loss of any of the four connection termination sessions This example shows why the end that does the active close, is the end that goes into the TIME_WAIT state because it may have to retransmit the final ACK 23
22 TIME_WAIT State (Continued) Two reasons for the TIME_WAIT state: 2) To allow old duplicate segments to expire in the network To Illustrate this, let s assume we have a TCP connection between :1500 and :21. This connection is closed and some time later another connection is made using the exact same IP addresses and ports The later connection is called an incarnation of the previous connection TCP must prevent old duplicates from a connection from reappearing at some later time and being misinterpreted as belonging to a new incarnation of the same connection To do this TCP will not initiate a new incarnation of a connection if it is in the TIME_WAIT state This ensures that all duplicates from precious incarnations of the connection have expired in the network 24
23 Buffer Sizes and Limitations Certain limits affect the size of IP datagrams: The maximum size of an IPv4 datagram is 65,536 bytes due to its 16-but total length field Many networks have a maximum transmission unit (MTU) which can be dictated by hardware. For example, the Ethernet MTU is 1500 bytes. The minimum link MTU for IPv4 is 68 bytes. The smallest MTU in the path between two hosts is called the path MTU. Normally, the Ethernet MTU of 1500 bytes is the path MTU. When an IP datagram is to be sent out an interface, if the size of the datagram exceeds the link MTU, fragmentation is performed. Fragments are normally reassembled until they reach their final destination. If the don t fragment (DF) bit is set in the IPv4 header, it specifies that the data must not be fragmented. A router receives this packet and has a link with a smaller MTU sends an ICMP error back to sender. 31
24 Buffer Sizes and Limitations (Continued) TCP has a maximum segment size (MSS) that announced to the peer TCP the maximum amount of TCP data that the peer can send per segment The MSS is usually set to the interface MTU minus the fixed sizes of the IP ad TCP headers On Ethernet it s
25 TCP Output Every TCP socket has a send buffer, and we can change the size of it using the SO_SNDBUF option When an application calls write, the kernel copies all the data to from the application buffer to the send buffer If there is insufficient room in the send buffer for all the application s data, the process is put to sleep 33
26 TCP Output (Continued) The kernel does not return from the write until every byte of the application data has been written into the send buffer TCP takes the data in the socket send buffer and sends it to the peer TCP. The peer TCP must acknowledge the data, and as the ACKs arrive from the peer, only then can our TCP discard the acknowledged data from the socket send buffer TCP sends the data in MSS-sized chunks or smaller, adding a TCP header to each segment 34
27 UDP Output With UDP the socket send buffer doesn t exist It has a socket send buffer size, but this is just an upper limit on the maximum-sized UDP datagram Since UDP is unreliable it does not need to keep a copy of the applications data in a buffer UDP packets are more likely to get fragmented than TCP 35
28 TCP Header Bit ( 32 Bits) SOURCE PORT DESTINATION PORT 20 BYTES HEADER LENGTH UNUSED SEQUENCE NUMBER ACKNOWLEDGEMENT NUMBER U R G A C K FLAGS P S H R S T S Y N F I N WINDOW CHECKSUM URGENT POINTER OPTIONS + PADDING 38
29 TCP Header - Ethereal 39
30 TCP Header Details Source Port (16 bits) source TCP user Destination Port (16 bits) destination TCP user Sequence Number (32 bits) sequence number of the first data octet in this segment except when SYN flag is set. If SYN is set this field is the initial sequence number (ISN) Acknowledgement Number (32 bits) a piggybacked acknowledgement, contains the sequence number of the next data octet that the TCP entity expects to receive Header Length (4 bits) number of 32 bit words in the header Unused (6 bits) unused 40
31 TCP Header Details (Continued) Flags (6 bits) URG urgent pointer field significant. ACK - acknowledgement field significant. * PSH push function. RST reset the connection. SYN synchronize the sequence numbers. FIN - no more data from sender. Window (16 bits) flow control credit allocation contains the number of data octets beginning with the one indicated in the acknowledgement field that the receiver is willing to accept. Checksum (16 bits) an error detection calculated over header and data. Urgent Pointer (16 bits) points to the last BYTE in a sequence of urgent data. Options (variable) optional features. * Data Stream Push Note: Normally TCP decides when sufficient data has accumulated to form a segment for transmission. The user can require TCP to transmit all outstanding data up to and including that labeled with a push flag. 41
32 Figure TCP Options TCP/IP Protocol Suite 90
33 TCP OPTIONS SINGLE BYTE: END OF OPTION (Only one may be used and is only necessary if the very last byte of the last 32 bit word is not already the end of an option) NO OPERATION (Used for Padding/aligning an option on a 16 bit or a 32 bit boundary) MULTIPLE BYTE: MAXIMUM SEGMENT SIZE: ID CODE LENGTH WINDOW SCALE FACTOR: BYTE VALUE BYTE VALUE TIMESTAMP (USED IN ROUND TRIP TIME CALCULATIONS): 42
34 Figure End-of-option option TCP/IP Protocol Suite 91
35 TCP Options Each SYN can contain TCP options. Commonly used options include the following: MSS option TCP sending the SYN announces its maximum segment size. That is, the maximum amount of data that it is willing to accept in each TCP segment, on this connection. It s possible to set it using the TCP_MAXSEG socket option. Window Scale option The maximum TCP window size available is 65, 535, because of the corresponding field in the header occupies 16 bits. High-speed and high-delay links need a larger window size to maximize throughput. This options says that the window in the TCP header must be scaled. Up to 14 more bits can be used, scaling the window to about 1 GB Timestamp option - Used in high-speed connections to prevent possible data corruption caused by old, delayed, or duplicated segments. 14
36 Summary We discussed the transport layer in detail Specifics about the TCP s three-way handshake were covered Specifics about TCP s connection termination sequence were discussed We discussed the TCP s TIME_WAIT state We also covered the TCP and UDP buffering by the socket layer 43
Transport Layer Marcos Vieira
Transport Layer 2014 Marcos Vieira Transport Layer Transport protocols sit on top of network layer and provide Application-level multiplexing ( ports ) Error detection, reliability, etc. UDP User Datagram
More informationECE4110 Internetwork Programming. Introduction and Overview
ECE4110 Internetwork Programming Introduction and Overview 1 EXAMPLE GENERAL NETWORK ALGORITHM Listen to wire Are signals detected Detect a preamble Yes Read Destination Address No data carrying or noise?
More informationNetworking Technologies and Applications
Networking Technologies and Applications Rolland Vida BME TMIT Transport Protocols UDP User Datagram Protocol TCP Transport Control Protocol and many others UDP One of the core transport protocols Used
More informationCS419: Computer Networks. Lecture 10, Part 2: Apr 11, 2005 Transport: TCP mechanics (RFCs: 793, 1122, 1323, 2018, 2581)
: Computer Networks Lecture 10, Part 2: Apr 11, 2005 Transport: TCP mechanics (RFCs: 793, 1122, 1323, 2018, 2581) TCP as seen from above the socket The TCP socket interface consists of: Commands to start
More informationNETWORK PROGRAMMING. Instructor: Junaid Tariq, Lecturer, Department of Computer Science
NETWORK PROGRAMMING CSC- 341 Instructor: Junaid Tariq, Lecturer, Department of Computer Science 6 Lecture CHAPTER 2: THE TRANSPORT LAYER : TCP AND UDP Contents Introduction UDP: User Datagram Protocol
More informationIntroduction to TCP/IP networking
Introduction to TCP/IP networking TCP/IP protocol family IP : Internet Protocol UDP : User Datagram Protocol RTP, traceroute TCP : Transmission Control Protocol HTTP, FTP, ssh What is an internet? A set
More informationComputer Network Programming. The Transport Layer. Dr. Sam Hsu Computer Science & Engineering Florida Atlantic University
Computer Network Programming The Transport Layer Dr. Sam Hsu Computer Science & Engineering Florida Atlantic University The Transport Layer The Big Picture Overview of TCP/IP protocols TCP Packet Exchanges
More informationUser Datagram Protocol (UDP):
SFWR 4C03: Computer Networks and Computer Security Feb 2-5 2004 Lecturer: Kartik Krishnan Lectures 13-15 User Datagram Protocol (UDP): UDP is a connectionless transport layer protocol: each output operation
More informationQUIZ: Longest Matching Prefix
QUIZ: Longest Matching Prefix A router has the following routing table: 10.50.42.0 /24 Send out on interface Z 10.50.20.0 /24 Send out on interface A 10.50.24.0 /22 Send out on interface B 10.50.20.0 /22
More informationSequence Number. Acknowledgment Number. Checksum. Urgent Pointer plus Sequence Number indicates end of some URGENT data in the packet
TCP Urgent Source Port Destination Port Sequence Number Acknowledgment Number HdrLen Reserved UA P RS F Checksum Window Size Urgent Pointer Urgent Pointer plus Sequence Number indicates end of some URGENT
More information7. TCP 최양희서울대학교컴퓨터공학부
7. TCP 최양희서울대학교컴퓨터공학부 1 TCP Basics Connection-oriented (virtual circuit) Reliable Transfer Buffered Transfer Unstructured Stream Full Duplex Point-to-point Connection End-to-end service 2009 Yanghee Choi
More informationTCP/IP Networking. Part 4: Network and Transport Layer Protocols
TCP/IP Networking Part 4: Network and Transport Layer Protocols Orientation Application Application protocol Application TCP TCP protocol TCP IP IP protocol IP IP protocol IP IP protocol IP Network Access
More informationConnection-oriented (virtual circuit) Reliable Transfer Buffered Transfer Unstructured Stream Full Duplex Point-to-point Connection End-to-end service
최양희서울대학교컴퓨터공학부 Connection-oriented (virtual circuit) Reliable Transfer Buffered Transfer Unstructured Stream Full Duplex Point-to-point Connection End-to-end service 1 2004 Yanghee Choi 2 Addressing: application
More informationConnections. Topics. Focus. Presentation Session. Application. Data Link. Transport. Physical. Network
Connections Focus How do we connect processes? This is the transport layer Topics Naming processes Connection setup / teardown Flow control Application Presentation Session Transport Network Data Link
More informationMobile Transport Layer Lesson 02 TCP Data Stream and Data Delivery
Mobile Transport Layer Lesson 02 TCP Data Stream and Data Delivery 1 TCP Data Stream Consists of bytes Delivered using a virtual connection between sockets Each socket has the port number and IP address
More informationChapter 6. What happens at the Transport Layer? Services provided Transport protocols UDP TCP Flow control Congestion control
Chapter 6 What happens at the Transport Layer? Services provided Transport protocols UDP TCP Flow control Congestion control OSI Model Hybrid Model Software outside the operating system Software inside
More informationCSC 634: Networks Programming
CSC 634: Networks Programming Lecture 03: Review of Basic Networking Concepts (TCP/UDP) Instructor: Haidar M. Harmanani Recap 7-Layer OSI Model 7 6 5 4 3 2 1 Application Presentation (kinds of compression)
More information05 Transmission Control Protocol (TCP)
SE 4C03 Winter 2003 05 Transmission Control Protocol (TCP) Instructor: W. M. Farmer Revised: 06 February 2003 1 Interprocess Communication Problem: How can a process on one host access a service provided
More informationTCP: Transmission Control Protocol RFC 793,1122,1223. Prof. Lin Weiguo Copyleft 2009~2017, School of Computing, CUC
TCP: Transmission Control Protocol RFC 793,1122,1223 Prof. Lin Weiguo Copyleft 2009~2017, School of Computing, CUC Nov. 2017 TCP/IP Protocol Stack Application Layer FTP, Telnet, HTTP, Transport Layer TCP,
More informationECE 650 Systems Programming & Engineering. Spring 2018
ECE 650 Systems Programming & Engineering Spring 2018 Networking Transport Layer Tyler Bletsch Duke University Slides are adapted from Brian Rogers (Duke) TCP/IP Model 2 Transport Layer Problem solved:
More informationCS457 Transport Protocols. CS 457 Fall 2014
CS457 Transport Protocols CS 457 Fall 2014 Topics Principles underlying transport-layer services Demultiplexing Detecting corruption Reliable delivery Flow control Transport-layer protocols User Datagram
More informationTCP : Fundamentals of Computer Networks Bill Nace
TCP 14-740: Fundamentals of Computer Networks Bill Nace Material from Computer Networking: A Top Down Approach, 6 th edition. J.F. Kurose and K.W. Ross Administrivia Lab #1 due now! Reminder: Paper Review
More informationTCP and Congestion Control (Day 1) Yoshifumi Nishida Sony Computer Science Labs, Inc. Today's Lecture
TCP and Congestion Control (Day 1) Yoshifumi Nishida nishida@csl.sony.co.jp Sony Computer Science Labs, Inc 1 Today's Lecture Part1: TCP concept Part2: TCP detailed mechanisms Part3: Tools for TCP 2 1
More informationTransport Over IP. CSCI 690 Michael Hutt New York Institute of Technology
Transport Over IP CSCI 690 Michael Hutt New York Institute of Technology Transport Over IP What is a transport protocol? Choosing to use a transport protocol Ports and Addresses Datagrams UDP What is a
More informationTSIN02 - Internetworking
TSIN02 - Internetworking Literature: Lecture 4: Transport Layer Forouzan: ch 11-12 Transport layer responsibilities UDP TCP 2004 Image Coding Group, Linköpings Universitet 2 Transport layer in OSI model
More informationInformation Network 1 TCP 1/2
Functions provided by the transport layer Information Network 1 TCP 1/2 Youki Kadobayashi NAIST! Communication between processes " designation of process " identification of inter-process channel! Interface
More informationCSE 461 The Transport Layer
CSE 461 The Transport Layer The Transport Layer Focus How do we (reliably) connect processes? This is the transport layer Topics Naming end points UDP: unreliable transport TCP: reliable transport Connection
More informationSimulation of TCP Layer
39 Simulation of TCP Layer Preeti Grover, M.Tech, Computer Science, Uttrakhand Technical University, Dehradun ABSTRACT The Transmission Control Protocol (TCP) represents the most deployed transport protocol
More informationTransmission Control Protocol. ITS 413 Internet Technologies and Applications
Transmission Control Protocol ITS 413 Internet Technologies and Applications Contents Overview of TCP (Review) TCP and Congestion Control The Causes of Congestion Approaches to Congestion Control TCP Congestion
More informationITS323: Introduction to Data Communications
ITS323: Introduction to Data Communications Sirindhorn International Institute of Technology Thammasat University Prepared by Steven Gordon on 23 May 2012 ITS323Y12S1L13, Steve/Courses/2012/s1/its323/lectures/transport.tex,
More informationIntroduc)on to Computer Networks
Introduc)on to Computer Networks COSC 4377 Lecture 7 Spring 2012 February 8, 2012 Announcements HW3 due today Start working on HW4 HW5 posted In- class student presenta)ons No TA office hours this week
More informationLast Class. CSE 123b Communications Software. Today. Naming Processes/Services. Transmission Control Protocol (TCP) Picking Port Numbers.
CSE 123b Communications Software Spring 2002 Lecture 4: Connections and Flow Control Stefan Savage Last Class We talked about how to implement a reliable channel in the transport layer Approaches ARQ (Automatic
More informationTSIN02 - Internetworking
Lecture 4: Transport Layer Literature: Forouzan: ch 11-12 2004 Image Coding Group, Linköpings Universitet Lecture 4: Outline Transport layer responsibilities UDP TCP 2 Transport layer in OSI model Figure
More informationKent State University
CS 4/54201 Computer Communication Network Kent State University Dept. of Computer Science www.mcs.kent.edu/~javed/class-net06f/ 1 A Course on Networking and Computer Communication LECT-10, S-2 IP- Internet
More informationApplied Networks & Security
Applied Networks & Security TCP/IP Protocol Suite http://condor.depaul.edu/~jkristof/it263/ John Kristoff jtk@depaul.edu IT 263 Spring 2006/2007 John Kristoff - DePaul University 1 ARP overview datalink
More informationCSCI-1680 Transport Layer I Rodrigo Fonseca
CSCI-1680 Transport Layer I Rodrigo Fonseca Based partly on lecture notes by David Mazières, Phil Levis, John Jannotti Today Transport Layer UDP TCP Intro Connection Establishment From Lec 2: OSI Reference
More informationIslamic University of Gaza Faculty of Engineering Department of Computer Engineering ECOM 4021: Networks Discussion. Chapter 5 - Part 2
Islamic University of Gaza Faculty of Engineering Department of Computer Engineering ECOM 4021: Networks Discussion Chapter 5 - Part 2 End to End Protocols Eng. Haneen El-Masry May, 2014 Transport Layer
More informationCSCI-GA Operating Systems. Networking. Hubertus Franke
CSCI-GA.2250-001 Operating Systems Networking Hubertus Franke frankeh@cs.nyu.edu Source: Ganesh Sittampalam NYU TCP/IP protocol family IP : Internet Protocol UDP : User Datagram Protocol RTP, traceroute
More informationTCP = Transmission Control Protocol Connection-oriented protocol Provides a reliable unicast end-to-end byte stream over an unreliable internetwork.
Overview Formats, Data Transfer, etc. Connection Management (modified by Malathi Veeraraghavan) 1 Overview TCP = Transmission Control Protocol Connection-oriented protocol Provides a reliable unicast end-to-end
More informationCSCI-1680 Transport Layer I Rodrigo Fonseca
CSCI-1680 Transport Layer I Rodrigo Fonseca Based partly on lecture notes by David Mazières, Phil Levis, John Janno< Today Transport Layer UDP TCP Intro Connection Establishment Transport Layer "#$ -##$
More informationOSI Transport Layer. objectives
LECTURE 5 OSI Transport Layer objectives 1. Roles of the Transport Layer 1. segmentation of data 2. error detection 3. Multiplexing of upper layer application using port numbers 2. The TCP protocol Communicating
More informationTSIN02 - Internetworking
Lecture 4: Transport Layer Literature: Forouzan: ch 11-12 2004 Image Coding Group, Linköpings Universitet Lecture 4: Outline Transport layer responsibilities UDP TCP 2 Transport layer in OSI model Figure
More informationStream Control Transmission Protocol
Chapter 13 Stream Control Transmission Protocol Objectives Upon completion you will be able to: Be able to name and understand the services offered by SCTP Understand SCTP s flow and error control and
More informationTSIN02 - Internetworking
Lecture 4: Outline Literature: Lecture 4: Transport Layer Forouzan: ch 11-12 RFC? Transport layer introduction UDP TCP 2004 Image Coding Group, Linköpings Universitet 2 The Transport Layer Transport layer
More informationTransmission Control Protocol (TCP)
Transmission Control Protocol (TCP) Antonio Carzaniga Faculty of Informatics University of Lugano May 3, 2005 Outline Intro to TCP Sequence numbers and acknowledgment numbers Timeouts and RTT estimation
More informationSome slides courtesy David Wetherall. Communications Software. Lecture 4: Connections and Flow Control. CSE 123b. Spring 2003.
CSE 123b Communications Software Spring 2003 Lecture 4: Connections and Flow Control Stefan Savage Some slides courtesy David Wetherall Administrativa Computer accounts have been setup You can use the
More informationEEC-682/782 Computer Networks I
EEC-682/782 Computer Networks I Lecture 16 Wenbing Zhao w.zhao1@csuohio.edu http://academic.csuohio.edu/zhao_w/teaching/eec682.htm (Lecture nodes are based on materials supplied by Dr. Louise Moser at
More informationIntroduction to Networks and the Internet
Introduction to Networks and the Internet CMPE 80N Announcements Project 2. Reference page. Library presentation. Internet History video. Spring 2003 Week 7 1 2 Today Internetworking (cont d). Fragmentation.
More informationCSE/EE 461 Lecture 13 Connections and Fragmentation. TCP Connection Management
CSE/EE 461 Lecture 13 Connections and Fragmentation Tom Anderson tom@cs.washington.edu Peterson, Chapter 5.2 TCP Connection Management Setup assymetric 3-way handshake Transfer sliding window; data and
More informationTransport Protocols. Raj Jain. Washington University in St. Louis
Transport Protocols Raj Jain Washington University Saint Louis, MO 63131 Jain@cse.wustl.edu These slides are available on-line at: http://www.cse.wustl.edu/~jain/cse473-05/ 16-1 Overview q TCP q Key features
More informationLecture 20 Overview. Last Lecture. This Lecture. Next Lecture. Transport Control Protocol (1) Transport Control Protocol (2) Source: chapters 23, 24
Lecture 20 Overview Last Lecture Transport Control Protocol (1) This Lecture Transport Control Protocol (2) Source: chapters 23, 24 Next Lecture Internet Applications Source: chapter 26 COSC244 & TELE202
More informationI TCP 1/2. Internet TA: Connection-oriented (virtual circuit) Connectionless (datagram) (flow control) (congestion control) TCP Connection-oriented
I TCP 1/2 TA: Connection-oriented (virtual circuit) Connectionless (datagram) (flow control) (congestion control) Internet TCP Connection-oriented UDP Connectionless IP + TCP (connection-oriented) (byte
More informationTransport Layer. Application / Transport Interface. Transport Layer Services. Transport Layer Connections
Application / Transport Interface Application requests service from transport layer Transport Layer Application Layer Prepare Transport service requirements Data for transport Local endpoint node address
More informationUnit 2.
Unit 2 Unit 2 Topics Covered: 1. PROCESS-TO-PROCESS DELIVERY 1. Client-Server 2. Addressing 2. IANA Ranges 3. Socket Addresses 4. Multiplexing and Demultiplexing 5. Connectionless Versus Connection-Oriented
More informationThe Transport Layer. Part 1
The Transport Layer Part 1 2 OVERVIEW Part 1 User Datagram Protocol Transmission Control Protocol ARQ protocols Part 2 TCP congestion control Mowgli XTP SCTP WAP 3 Transport Layer Protocols Connect applications
More informationInternet Layers. Physical Layer. Application. Application. Transport. Transport. Network. Network. Network. Network. Link. Link. Link.
Internet Layers Application Application Transport Transport Network Network Network Network Link Link Link Link Ethernet Fiber Optics Physical Layer Wi-Fi ARP requests and responses IP: 192.168.1.1 MAC:
More informationUDP and TCP. Introduction. So far we have studied some data link layer protocols such as PPP which are responsible for getting data
ELEX 4550 : Wide Area Networks 2015 Winter Session UDP and TCP is lecture describes the two most common transport-layer protocols used by IP networks: the User Datagram Protocol (UDP) and the Transmission
More informationCCNA Exploration Network Fundamentals. Chapter 04 OSI Transport Layer
CCNA Exploration Network Fundamentals Chapter 04 OSI Transport Layer Updated: 05/05/2008 1 4.1 Roles of the Transport Layer 2 4.1 Roles of the Transport Layer The OSI Transport layer accept data from the
More informationCSEP 561 Connections. David Wetherall
CSEP 561 Connections David Wetherall djw@cs.washington.edu Connections Focus How do we (reliably) connect processes? This is the transport layer Topics Naming processes Connection setup / teardown Sliding
More informationTCP. TCP: Overview. TCP Segment Structure. Maximum Segment Size (MSS) Computer Networks 10/19/2009. CSC 257/457 - Fall
TCP Kai Shen 10/19/2009 CSC 257/457 - Fall 2009 1 TCP: Overview connection-oriented: handshaking (exchange of control msgs) to initialize sender, receiver state before data exchange pipelined: multiple
More information6.1 Internet Transport Layer Architecture 6.2 UDP (User Datagram Protocol) 6.3 TCP (Transmission Control Protocol) 6. Transport Layer 6-1
6. Transport Layer 6.1 Internet Transport Layer Architecture 6.2 UDP (User Datagram Protocol) 6.3 TCP (Transmission Control Protocol) 6. Transport Layer 6-1 6.1 Internet Transport Layer Architecture The
More informationTransport Protocols. ISO Defined Types of Network Service: rate and acceptable rate of signaled failures.
Transport Protocols! Type A: ISO Defined Types of Network Service: Network connection with acceptable residual error rate and acceptable rate of signaled failures. - Reliable, sequencing network service
More informationIS370 Data Communications and Computer Networks. Chapter 5 : Transport Layer
IS370 Data Communications and Computer Networks Chapter 5 : Transport Layer Instructor : Mr Mourad Benchikh Introduction Transport layer is responsible on process-to-process delivery of the entire message.
More informationCCNA 1 Chapter 7 v5.0 Exam Answers 2013
CCNA 1 Chapter 7 v5.0 Exam Answers 2013 1 A PC is downloading a large file from a server. The TCP window is 1000 bytes. The server is sending the file using 100-byte segments. How many segments will the
More informationThe Transport Layer. Internet solutions. Nixu Oy PL 21. (Mäkelänkatu 91) Helsinki, Finland. tel fax.
The Transport Layer Nixu Oy PL 21 (Mäkelänkatu 91) 00601 Helsinki, Finland tel. +358 9 478 1011 fax. +358 9 478 1030 info@nixu.fi http://www.nixu.fi OVERVIEW User Datagram Protocol Transmission Control
More informationCS 716: Introduction to communication networks th class; 7 th Oct Instructor: Sridhar Iyer IIT Bombay
CS 716: Introduction to communication networks - 18 th class; 7 th Oct 2011 Instructor: Sridhar Iyer IIT Bombay Reliable Transport We have already designed a reliable communication protocol for an analogy
More informationTransport Layer. Gursharan Singh Tatla. Upendra Sharma. 1
Transport Layer Gursharan Singh Tatla mailme@gursharansingh.in Upendra Sharma 1 Introduction The transport layer is the fourth layer from the bottom in the OSI reference model. It is responsible for message
More informationNT1210 Introduction to Networking. Unit 10
NT1210 Introduction to Networking Unit 10 Chapter 10, TCP/IP Transport Objectives Identify the major needs and stakeholders for computer networks and network applications. Compare and contrast the OSI
More informationTransport Layer. -UDP (User Datagram Protocol) -TCP (Transport Control Protocol)
Transport Layer -UDP (User Datagram Protocol) -TCP (Transport Control Protocol) 1 Transport Services The transport layer has the duty to set up logical connections between two applications running on remote
More informationGuide To TCP/IP, Second Edition UDP Header Source Port Number (16 bits) IP HEADER Protocol Field = 17 Destination Port Number (16 bit) 15 16
Guide To TCP/IP, Second Edition Chapter 5 Transport Layer TCP/IP Protocols Objectives Understand the key features and functions of the User Datagram Protocol (UDP) Explain the mechanisms that drive segmentation,
More informationIntroduction to Internet. Ass. Prof. J.Y. Tigli University of Nice Sophia Antipolis
Introduction to Internet Ass. Prof. J.Y. Tigli University of Nice Sophia Antipolis What about inter-networks communications? Between LANs? Ethernet?? Ethernet Example Similarities and Differences between
More informationChapter 24. Transport-Layer Protocols
Chapter 24. Transport-Layer Protocols 23.1 Introduction 23.2 User Datagram Protocol 23.3 Transmission Control Protocol 23.4 SCTP Computer Networks 24-1 Position of Transport-Layer Protocols UDP is an unreliable
More informationEnd-to-End Protocols. End-to-End Protocols
End-to-End Protocols UDP (User Datagram Protocol) (Transport Control Protocol) Connection Establishment/Termination Sliding Window Revisit Flow Control Adaptive Retransmission End-to-End Protocols Limitations
More informationTransport Protocols & TCP TCP
Transport Protocols & TCP CSE 3213 Fall 2007 13 November 2007 1 TCP Services Flow control Connection establishment and termination Congestion control 2 1 TCP Services Transmission Control Protocol (RFC
More informationUNIT IV -- TRANSPORT LAYER
UNIT IV -- TRANSPORT LAYER TABLE OF CONTENTS 4.1. Transport layer. 02 4.2. Reliable delivery service. 03 4.3. Congestion control. 05 4.4. Connection establishment.. 07 4.5. Flow control 09 4.6. Transmission
More informationCS4700/CS5700 Fundamentals of Computer Networks
CS4700/CS5700 Fundamentals of Computer Networks Lecture 14: TCP Slides used with permissions from Edward W. Knightly, T. S. Eugene Ng, Ion Stoica, Hui Zhang Alan Mislove amislove at ccs.neu.edu Northeastern
More informationCSE 461 Connections. David Wetherall
CSE 461 Connections David Wetherall djw@cs.washington.edu Connections Focus How do we (reliably) connect processes? This is the transport layer Topics Naming processes TCP / UDP Connection setup / teardown
More informationLecture 3: The Transport Layer: UDP and TCP
Lecture 3: The Transport Layer: UDP and TCP Prof. Shervin Shirmohammadi SITE, University of Ottawa Prof. Shervin Shirmohammadi CEG 4395 3-1 The Transport Layer Provides efficient and robust end-to-end
More informationECE 435 Network Engineering Lecture 15
ECE 435 Network Engineering Lecture 15 Vince Weaver http://web.eece.maine.edu/~vweaver vincent.weaver@maine.edu 26 October 2016 Announcements HW#5 due HW#6 posted Broadcasts on the MBONE 1 The Transport
More informationCSE/EE 461 Lecture 14. Connections. Last Time. This Time. We began on the Transport layer. Focus How do we send information reliably?
CSE/EE 461 Lecture 14 Connections Last Time We began on the Transport layer Focus How do we send information reliably? Topics ARQ and sliding windows Application Presentation Session Transport Network
More informationChapter 2 - Part 1. The TCP/IP Protocol: The Language of the Internet
Chapter 2 - Part 1 The TCP/IP Protocol: The Language of the Internet Protocols A protocol is a language or set of rules that two or more computers use to communicate 2 Protocol Analogy: Phone Call Parties
More informationChapter 5 End-to-End Protocols
Chapter 5 End-to-End Protocols Transport layer turns the host-to-host packet delivery service of the underlying network into a process-to-process communication channel Common properties that application
More informationTCP/IP Protocol Suite 1
TCP/IP Protocol Suite 1 Stream Control Transmission Protocol (SCTP) TCP/IP Protocol Suite 2 OBJECTIVES: To introduce SCTP as a new transport-layer protocol. To discuss SCTP services and compare them with
More informationSequence Number. Acknowledgment Number. Data
CS 455 TCP, Page 1 Transport Layer, Part II Transmission Control Protocol These slides are created by Dr. Yih Huang of George Mason University. Students registered in Dr. Huang's courses at GMU can make
More informationReliable Transport I: Concepts and TCP Protocol
Reliable Transport I: Concepts and TCP Protocol Stefano Vissicchio UCL Computer Science COMP0023 Today Transport Concepts Layering context Transport goals Transport mechanisms and design choices TCP Protocol
More informationWhat is TCP? Transport Layer Protocol
UNIT IV TRANSPORT LAYER Duties of transport layer Multiplexing Demultiplexing Sockets User Datagram Protocol (UDP) Transmission Control Protocol (TCP) Congestion Control Quality of services (QOS) Integrated
More informationUnix Network Programming
Unix Network Programming Remote Communication Dr Hamed Vahdat-Nejad Network Applications Types: Client Server Exampels: A web browser (client) Ap communicating with a Web server An FTP client Fetching
More informationCSC 401 Data and Computer Communications Networks
CSC 401 Data and Computer Communications Networks Transport Layer Connection Oriented Transport: TCP Sec 3.5 Prof. Lina Battestilli Fall 2017 Transport Layer Chapter 3 Outline 3.1 Transport-layer Services
More informationReliable Byte-Stream (TCP)
Reliable Byte-Stream () Outline Connection Establishment/Termination Sliding Window Revisited Flow Control Adaptive Timeout Simple Demultiplexer (UDP) Header format Note 16 bit port number (so only 64K
More informationTransport Layer: outline
Transport Layer: outline Transport-layer services Multiplexing and demultiplexing Connectionless transport: UDP Principles of reliable data transfer Connection-oriented transport: TCP Segment structure
More informationCCNA R&S: Introduction to Networks. Chapter 7: The Transport Layer
CCNA R&S: Introduction to Networks Chapter 7: The Transport Layer Frank Schneemann 7.0.1.1 Introduction 7.0.1.2 Class Activity - We Need to Talk Game 7.1.1.1 Role of the Transport Layer The primary responsibilities
More informationCSEP 561 Connections. David Wetherall
CSEP 561 Connections David Wetherall djw@cs.washington.edu Connections Focus How do we (reliably) connect processes? This is the transport layer Topics Naming processes TCP / UDP Connection setup / teardown
More informationTCP /IP Fundamentals Mr. Cantu
TCP /IP Fundamentals Mr. Cantu OSI Model and TCP/IP Model Comparison TCP / IP Protocols (Application Layer) The TCP/IP subprotocols listed in this layer are services that support a number of network functions:
More informationII. Principles of Computer Communications Network and Transport Layer
II. Principles of Computer Communications Network and Transport Layer A. Internet Protocol (IP) IPv4 Header An IP datagram consists of a header part and a text part. The header has a 20-byte fixed part
More informationEEC-484/584 Computer Networks. Lecture 16. Wenbing Zhao
EEC-484/584 Computer Networks Lecture 16 wenbing@ieee.org (Lecture nodes are based on materials supplied by Dr. Louise Moser at UCSB and Prentice-Hall) Outline 2 Review Services provided by transport layer
More informationCS 356: Computer Network Architectures. Lecture 17: End-to-end Protocols and Lab 3 Chapter 5.1, 5.2. Xiaowei Yang
CS 356: Computer Network Architectures Lecture 17: End-to-end Protocols and Lab 3 Chapter 5.1, 5.2 Xiaowei Yang xwy@cs.duke.edu Transport protocols Before: How to deliver packet from one host to another
More informationMultiple unconnected networks
TCP/IP Life in the Early 1970s Multiple unconnected networks ARPAnet Data-over-cable Packet satellite (Aloha) Packet radio ARPAnet satellite net Differences Across Packet-Switched Networks Addressing Maximum
More informationCMSC 417. Computer Networks Prof. Ashok K Agrawala Ashok Agrawala. October 25, 2018
CMSC 417 Computer Networks Prof. Ashok K Agrawala 2018 Ashok Agrawala Message, Segment, Packet, and Frame host host HTTP HTTP message HTTP TCP TCP segment TCP router router IP IP packet IP IP packet IP
More informationTCP Overview. Connection-oriented Byte-stream
TCP Overview Connection-oriented Byte-stream app writes bytes TCP sends segments app reads bytes Full duplex Flow control: keep sender from overrunning receiver Congestion control: keep sender from overrunning
More informationEE 610 Part 2: Encapsulation and network utilities
EE 610 Part 2: Encapsulation and network utilities Objective: After this experiment, the students should be able to: i. Understand the format of standard frames and packet headers. Overview: The Open Systems
More information