FALL 2005CSI 4118 – UNIVERSITY OF OTTAWA1 Part 2.5 Internetworking Chapter 25 (Transport Protocols, UDP and TCP, Protocol Port Numbers)

Slides:



Advertisements
Similar presentations
Umut Girit  One of the core members of the Internet Protocol Suite, the set of network protocols used for the Internet. With UDP, computer.
Advertisements

© 2007 Pearson Education Inc., Upper Saddle River, NJ. All rights reserved.1 Computer Networks and Internets with Internet Applications, 4e By Douglas.
Guide to TCP/IP, Second Edition1 Guide To TCP/IP, Second Edition Chapter 5 Transport Layer TCP/IP Protocols.
CCNA – Network Fundamentals
© 2007 Cisco Systems, Inc. All rights reserved.Cisco Public ITE PC v4.0 Chapter 1 1 OSI Transport Layer Network Fundamentals – Chapter 4.
CSCI 4550/8556 Computer Networks
Transmission Control Protocol (TCP)
Intermediate TCP/IP TCP Operation.
Guide to TCP/IP, Third Edition
Chapter 7 – Transport Layer Protocols
- Reliable Stream Transport Service
© 2007 Cisco Systems, Inc. All rights reserved.Cisco Public 1 Version 4.0 OSI Transport Layer Network Fundamentals – Chapter 4.
UNIT 07 Process – to – Process Delivery: UDP,TCP and SCTP
TDC365 Spring 2001John Kristoff - DePaul University1 Internetworking Technologies Transmission Control Protocol (TCP)
Spring 2000John Kristoff1 Transport Layer Computer Networks.
Autumn 2000John Kristoff1 Transport Layer Computer Networks.
TDC375 Winter 03/04 John Kristoff - DePaul University 1 Network Protocols Transmission Control Protocol (TCP)
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.
Process-to-Process Delivery:
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.
1 Chapter Internetworking Part 4 (Transport Protocols, UDP and TCP, Protocol Port Numbers)
1 Transport Layer Computer Networks. 2 Where are we?
Transportation Protocols: UDP, TCP & RTP
CECS 474 Computer Network Interoperability Notes for Douglas E. Comer, Computer Networks and Internets (5 th Edition) Tracy Bradley Maples, Ph.D. Computer.
IP and Errors IP Best Effort Datagrams can be: –Lost –Delayed –Duplicated –Delivered out of order –Corrupted.
FALL 2005CSI 4118 – UNIVERSITY OF OTTAWA1 Part 2.6 UDP Principles (Chapter 24) (User Datagram Protocol)
TCP Lecture 13 November 13, TCP Background Transmission Control Protocol (TCP) TCP provides much of the functionality that IP lacks: reliable service.
26-TCP Dr. John P. Abraham Professor UTPA. TCP  Transmission control protocol, another transport layer protocol.  Reliable delivery  Tcp must compensate.
University of the Western Cape Chapter 12: The Transport Layer.
SMUCSE 4344 transport layer. SMUCSE 4344 transport layer end-to-end protocols –transport code runs only on endpoint hosts encapsulates network communications.
Section 5: The Transport Layer. 5.2 CS Computer Networks John Mc Donald, Dept. of Computer Science, NUI Maynooth. Introduction In the previous section.
TCP1 Transmission Control Protocol (TCP). TCP2 Outline Transmission Control Protocol.
The Transmission Control Protocol (TCP) Application Services (Telnet, FTP, , WWW) Reliable Stream Transport (TCP) Connectionless Packet Delivery.
Transport Control Protocol (TCP) Features of TCP, packet loss and retransmission, adaptive retransmission, flow control, three way handshake, congestion.
1 TCP: Reliable Transport Service. 2 Transmission Control Protocol (TCP) Major transport protocol used in Internet Heavily used Completely reliable transfer.
23.1 Chapter 23 Process-to-Process Delivery: UDP, TCP, and SCTP Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
Institute of Technology Sligo - Dept of Computing Chapter 12 The Transport Layer.
Chapter 24 Transport Control Protocol (TCP) Layer 4 protocol Responsible for reliable end-to-end transmission Provides illusion of reliable network to.
Computer Networks23-1 PART 5 Transport Layer. Computer Networks23-2 Position of Transport Layer Responsible for the delivery of a message from one process.
NET 221D:COMPUTER NETWORKS FUNDAMENTALS Lecture : Transport Layer: Behrouz A. Forouzan” Data communications and Networking 1.
Transmission Control Protocol (TCP) BSAD 146 Dave Novak Sources: Network+ Guide to Networks, Dean 2013.
ECE 4110 – Internetwork Programming
Guide to TCP/IP Fourth Edition
1 End-to-End Protocols User Datagram Protocol (UDP) Transmission Control Protocol(TCP)
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 User Datagram Protocol. 2 Transport Protocols Provide logical communication between application processes running on different hosts Run on end hosts.
1 Computer Communication & Networks Lecture 23 & 24 Transport Layer: UDP and TCP Waleed Ejaz
Data Communications and Networks Chapter 6 – IP, UDP and TCP ICT-BVF8.1- Data Communications and Network Trainer: Dr. Abbes Sebihi.
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).
Spring 2006 CPE : Transport Layer Overview2-1 Special Topics in Computer Engineering The Transport Layer in the Internet: Overview Some of these.
Two Transport Protocols Available Transmission Control Protocol (TCP) User Datagram Protocol (UDP) Provides unreliable transfer Requires minimal – Overhead.
3. END-TO-END PROTOCOLS (PART 1) Rocky K. C. Chang Department of Computing The Hong Kong Polytechnic University 22 March
1 Chapter 24 Internetworking Part 4 (Transport Protocols, UDP and TCP, Protocol Port Numbers)
Process-to-Process Delivery, TCP and UDP protocols
PART 5 Transport Layer Computer Networks.
Internet and Intranet Protocols and Applications
Transport Layer Unit 5.
Process-to-Process Delivery:
Dr. John P. Abraham Professor UTPA
Dr. John P. Abraham Professor UTPA
Process-to-Process Delivery: UDP, TCP
UDP Principles (Chapter 24) (User Datagram Protocol)
Transport Layer 9/22/2019.
Presentation transcript:

FALL 2005CSI 4118 – UNIVERSITY OF OTTAWA1 Part 2.5 Internetworking Chapter 25 (Transport Protocols, UDP and TCP, Protocol Port Numbers)

FALL 2005CSI 4118 – UNIVERSITY OF OTTAWA2 Transport Protocol Separate layer of protocol stack Conceptually between Application IP

FALL 2005CSI 4118 – UNIVERSITY OF OTTAWA3 Terminology IP Provides computer-to-computer communication Source and destination addresses are computers Called machine-to-machine Transport Protocols Provide application-to-application communication Need extended addressing mechanism to identify applications Called end-to-end

FALL 2005CSI 4118 – UNIVERSITY OF OTTAWA4 Transport Protocol Functionality Identify sending and receiving applications Optionally provide Reliability Flow control Congestion control Note: not all transport protocols provide above facilities

FALL 2005CSI 4118 – UNIVERSITY OF OTTAWA5 Two Transport Protocols Available Transmission Control Protocol (TCP) User Datagram Protocol (UDP) Major differences Interface to applications Functionality

FALL 2005CSI 4118 – UNIVERSITY OF OTTAWA6 User Datagram Protocol (UDP) Provides unreliable transfer Requires minimal Overhead Computation Communication Best for LAN applications

FALL 2005CSI 4118 – UNIVERSITY OF OTTAWA7 UDP Details Connectionless service paradigm Message-oriented interface Each message encapsulated in IP datagram UDP header identifies Sending application Receiving application

FALL 2005CSI 4118 – UNIVERSITY OF OTTAWA8 Identifying An Application Cannot extend IP address No unused bits Cannot use OS-dependent quantity Process ID Task number Job name Must work on all computer systems

FALL 2005CSI 4118 – UNIVERSITY OF OTTAWA9 Identifying an Application (continued) Invent new abstraction Used only with TCP/IP Identifies sender and receiver unambiguously Technique Each application assigned unique integer Called protocol port number

FALL 2005CSI 4118 – UNIVERSITY OF OTTAWA10 Protocol Ports Server Follows standard Always uses same port number Uses lower port numbers Client Obtains unused port from protocol software Uses higher port numbers

FALL 2005CSI 4118 – UNIVERSITY OF OTTAWA11 Protocol Port Example Domain name server application is assigned port 53 Application using DNS obtains port UDP datagram sent from application to DNS server has Source port number Destination port number 53 When DNS server replied, DP datagram has Source port number 53 Destination port number 28900

FALL 2005CSI 4118 – UNIVERSITY OF OTTAWA12 Transmission Control Protocol (TCP) Major transport protocol used in Internet Heavily used Completely reliable transfer

FALL 2005CSI 4118 – UNIVERSITY OF OTTAWA13 TCP Features Connection-oriented service Point-to-point Full-duplex communication Stream interface Stream divided into segments for transmission Each segment encapsulated in IP datagram Uses protocol ports to identify applications

FALL 2005CSI 4118 – UNIVERSITY OF OTTAWA14 TCP Feature Summary TCP provides a completely reliable (no data duplication or loss), connection- oriented, full-duplex stream transport service that allows two application programs to form a connection, send data in either direction, and then terminate the connection.

FALL 2005CSI 4118 – UNIVERSITY OF OTTAWA15 Relationship Between TCP And Other Protocols TCP on one computer uses IP to communicate with TCP on another computer

FALL 2005CSI 4118 – UNIVERSITY OF OTTAWA16 Apparent Contradiction IP offers best-effort (unreliable) delivery TCP uses IP TCP provides completely reliable transfer How is this possible?

FALL 2005CSI 4118 – UNIVERSITY OF OTTAWA17 Achieving Reliability Reliable connection startup Reliable data transmission Graceful connection shutdown

FALL 2005CSI 4118 – UNIVERSITY OF OTTAWA18 Reliable Data Transmission Positive acknowledgment Receiver returns short message when data arrives Called acknowledgment Retransmission Sender starts timer whenever message is transmitted If timer expires before acknowledgment arrives, sender retransmits message

FALL 2005CSI 4118 – UNIVERSITY OF OTTAWA19 Illustration of Retransmission

FALL 2005CSI 4118 – UNIVERSITY OF OTTAWA20 How Long Should TCP Wait Before Retransmitting? Time for acknowledgment to arrive depends on Distance to destination Current traffic conditions Multiple connections can be open simultaneously Traffic conditions change rapidly

FALL 2005CSI 4118 – UNIVERSITY OF OTTAWA21 Important Point The delay required for data to reach a destination and an acknowledgment to return depends on traffic in the internet as well as the distance to the destination. Because it allows multiple application programs to communication with multiple destinations concurrently, TCP must handle a variety of delays that can change rapidly

FALL 2005CSI 4118 – UNIVERSITY OF OTTAWA22 Solving the Retransmission Problem Keep estimate of round trip time on each connection Use current estimate to set retransmission timer Known as adaptive retransmission Key to TCP’s success

FALL 2005CSI 4118 – UNIVERSITY OF OTTAWA23 Illustration of Adaptive Retransmission Timeout depends on current round-trip estimate

FALL 2005CSI 4118 – UNIVERSITY OF OTTAWA24 TCP Flow Control Receiver Advertises available buffer space Called window Sender Can send enough data to fill an entire window before acknowledgement arrives

FALL 2005CSI 4118 – UNIVERSITY OF OTTAWA25 Window Advertisement Each acknowledgment carries new window information Called window advertisement Can be zero (called closed window) Interpretation: I have received up through X, and can take Y more octets

FALL 2005CSI 4118 – UNIVERSITY OF OTTAWA26 Illustration of Window Advertisement

FALL 2005CSI 4118 – UNIVERSITY OF OTTAWA27 Startup and Shutdown Connection startup Must be reliable Connection shutdown Must be graceful Difficult

FALL 2005CSI 4118 – UNIVERSITY OF OTTAWA28 Why Startup/Shutdown Difficult Segments can be Lost Duplicated Delayed Delivered out of order Either side can crash Either side can reboot Need to avoid duplicate “shutdown” message from affecting later connection

FALL 2005CSI 4118 – UNIVERSITY OF OTTAWA29 TCP’s Startup/Shutdown Solution Uses three-message exchange Known as 3-way handshake Necessary and sufficient for Unambiguous, reliable startup Unambiguous, graceful shutdown SYN used for startup FIN used for shutdown

FALL 2005CSI 4118 – UNIVERSITY OF OTTAWA30 Illustration of 3-Way Handshake

FALL 2005CSI 4118 – UNIVERSITY OF OTTAWA31 TCP Segment Format All TCP segments have same format Data Acknowledgment SYN (startup) FIN (shutdown) Segment divided into two parts Header Payload area (zero or more bytes of data)

FALL 2005CSI 4118 – UNIVERSITY OF OTTAWA32 TCP Segment Format (continued) Header contains Protocol port numbers to identify Sending application Receiving application Bits to specify items such as SYN FIN ACK Fields for window advertisement, acknowledgment, etc.

FALL 2005CSI 4118 – UNIVERSITY OF OTTAWA33 Illustration of TCP Segment Sequence number specifies where in stream data belongs Few segments contain options

FALL 2005CSI 4118 – UNIVERSITY OF OTTAWA34 Summary Transport protocols fit between applications and Internet Protocol Two transport protocols in TCP/IP suite User Datagram Protocol (UDP) Transmission Control Protocol (TCP) UDP Unreliable Message-oriented interface

FALL 2005CSI 4118 – UNIVERSITY OF OTTAWA35 Summary (continued) TCP Major transport protocol used in Internet Complete reliability Stream-oriented interface Uses adaptive retransmission

FALL 2005CSI 4118 – UNIVERSITY OF OTTAWA36 Summary (continued) Protocol ports Integers Used to identify sending and receiving applications Allow unambiguous, simultaneous communication with multiple applications