1 / 29

Lecture 7 Transport Layer

Lecture 7 Transport Layer. Objectives: Describe characteristics of the TCP and UDP protocols, including port numbers and their uses. Explain how TCP session establishment and termination processes facilitate reliable communication.

tryna
Download Presentation

Lecture 7 Transport Layer

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Lecture 7Transport Layer Objectives: • Describe characteristics of the TCP and UDP protocols, including port numbers and their uses. • Explain how TCP session establishment and termination processes facilitate reliable communication. • Explain how TCP protocol data units are transmitted and acknowledged to guarantee delivery. • Explain the UDP client processes to establish communication with a server.

  2. Transportation of DataRole of the Transport Layer

  3. Transportation of DataRole of the Transport Layer The Transport Layer is responsible for establishing a temporary communication session between two applications and delivering data between them. TCP/IP uses two protocols to achieve this: • Transmission Control Protocol (TCP) • User Datagram Protocol (UDP) Primary Responsibilities of Transport layer Protocols • Tracking the individual communication between applications on the source and destination hosts • Segmenting data for manageability and reassembling segmented data into streams of application data at the destination • Identifying the proper application for each communication stream

  4. Transportation of DataConversation Multiplexing Segmenting the data • Enables many different communications, from many different users, to be interleaved (multiplexed) on the same network, at the same time. • Provides the means to both send and receive data when running multiple applications. • Header added to each segment to identify it.

  5. Transportation of DataTransport Layer Protocols Transmission Control Protocol (TCP) • Provides reliable delivery ensuring that all of the data arrives at the destination.  • Uses acknowledged delivery and other processes to ensure delivery • Makes larger demands on the network – more overhead User Datagram Protocol (UDP) • Provides just the basic functions for delivery – no reliability • Less overhead

  6. Transportation of Data TCP or UDP • There is a trade-off between the value of reliability and the burden it places on the network. • Application developers choose the transport protocol based on the requirements of their applications. • Applications that use TCP: HTTP, FTP, SMTP, Telnet • Applications that use UDP: DHCP, DNS, SNMP, TFTP, VoIP, IPTV

  7. Introducing TCP and UDPIntroducing TCP Transmission Control Protocol (TCP) • RFC 793 • Connection-oriented – creating a session between source and destination • Reliable delivery – retransmitting lost or corrupt data • Ordered data reconstruction – numbering and sequencing of segments • Flow control - regulating the amount of data transmitted • Stateful protocol – keeping track of the session

  8. Introducing TCP and UDPIntroducing UDP Applications that use UDP: • Domain Name System (DNS) • Video Streaming • Voice over IP (VoIP)

  9. Introducing TCP and UDPSeparating Multiple Communications

  10. Introducing TCP and UDPTCP and UDP Port Addressing

  11. Introducing TCP and UDPTCP and UDP Port Addressing

  12. Introducing TCP and UDPnetstat • Used to examine TCP connections that are open and running on a networked host • 6 sessions • 1 client • Browsing different web sites

  13. TCP CommunicationTCP Server Processes

  14. TCP CommunicationTCP Connection Establishment Three-Way Handshake • Establishes that the destination device is present on the network. • Verifies that the destination device has an active service and is accepting requests on the destination port number that the initiating client intends to use for the session. • Informs the destination device that the source client intends to establish a communication session on that port number.

  15. TCP CommunicationTCP Connection Establishment

  16. TCP CommunicationTCP Session Termination Four steps • when the client has no more data to send, it sends a segment with the FIN flag set • the server responds with an ACK to acknowledge receipt of the FIN to terminate the session • the server sends a FIN to the client to terminate the session • the client responds with an ACK to acknowledge the FIN request from the server

  17. TCP CommunicationTCP Session Termination

  18. Reliability and Flow ControlOrdered Delivery Sequence numbers are used to reassemble segments into original order

  19. Reliability and Flow ControlAcknowledgement and Window Size The sequence number and acknowledgement number are used together to confirm receipt. Window Size - The amount of data that a source can transmit before an acknowledgement must be received.

  20. Reliability and Flow ControlWindow Size and Acknowledgements

  21. Reliability and Flow ControlCongestion Avoidance

  22. UDP CommunicationUDP Low Overhead vs. Reliability UDP • Simple protocol that provides the basic transport layer functions • Used by applications that can tolerate small loss of data • Used by applications that cannot tolerate delay Used by • Domain Name System (DNS) • Simple Network Management Protocol (SNMP) • Dynamic Host Configuration Protocol (DHCP) • Trivial File Transfer Protocol (TFTP) • IP telephony or Voice over IP (VoIP) • Online games

  23. UDP CommunicationDatagram Reassembly

  24. UDP CommunicationUDP Server and Client Processes • UDP-based server applications are assigned well-known or registered port numbers. • UDP client process randomly selects port number from range of dynamic port numbers as the source port.

  25. Animation • 7212 TCP server processes • 7213 TCP connection establishment • 7217 TCP session termination • 7234 UDP client processes Activity • 712.11 TCP/UDP characteristics • 7118 TCP or UDP? • 7219 TCP connection establishment/termination

  26. Introduction to Networks Chapter 7: Transport Layer Further Exploration …

  27. TCP CommunicationTCP Three-Way Handshake – Step 1 • Step 1: The initiating client requests a client-to-server communication session with the server.

  28. TCP CommunicationTCP Three-Way Handshake – Step 2 • Step 2: The server acknowledges the client-to-server communication session and requests a server-to-client communication session.

  29. TCP CommunicationTCP Three-Way Handshake – Step 3 • Step 3: The initiating client acknowledges the server-to-client communication session.

More Related