Transport Layer Unit 5.

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

Prentice HallHigh Performance TCP/IP Networking, Hassan-Jain Chapter 2 TCP/IP Fundamentals.
EE 4272Spring, 2003 Chapter 17 Transport Protocols Connection-Oriented Transport Protocol  Under Reliable Network Service  Design Issues  Under Unreliable.
Transmission Control Protocol (TCP)
Guide to TCP/IP, Third Edition
The Transport Layer Chapter 6. The TCP Segment Header TCP Header.
The Transport Layer Chapter 6. The Transport Service Services Provided to the Upper Layers Transport Service Primitives Berkeley Sockets An Example of.
William Stallings Data and Computer Communications 7 th Edition (Selected slides used for lectures at Bina Nusantara University) Transport Layer.
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.
EE 4272Spring, 2003 Chapter 17 Transport Protocols Connection-Oriented Transport Protocol  Reliable Network Service: Design Issues  Unreliable Network.
Gursharan Singh Tatla Transport Layer 16-May
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?
1 Chapter 1 OSI Architecture The OSI 7-layer Model OSI – Open Systems Interconnection.
TCP : Transmission Control Protocol Computer Network System Sirak Kaewjamnong.
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.
FALL 2005CSI 4118 – UNIVERSITY OF OTTAWA1 Part 2.5 Internetworking Chapter 25 (Transport Protocols, UDP and TCP, Protocol Port Numbers)
1 The Internet and Networked Multimedia. 2 Layering  Internet protocols are designed to work in layers, with each layer building on the facilities provided.
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 Layer Moving Segments. Transport Layer Protocols Provide a logical communication link between processes running on different hosts as if directly.
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.
1 Version 3.1 Module 10 Intermediate TCP/IP (Layer 4)
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
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).
Computer Networks 1000-Transport layer, TCP Gergely Windisch v spring.
1 Chapter 24 Internetworking Part 4 (Transport Protocols, UDP and TCP, Protocol Port Numbers)
Distributed Systems 11. Transport Layer
The Transport Layer Implementation Services Functions Protocols
Chapter 9: Transport Layer
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.
William Stallings Data and Computer Communications
Instructor Materials Chapter 9: Transport Layer
Introduction to Networks
5. End-to-end protocols (part 1)
Module 1 UDP & TCP.
Transport Layer.
Process-to-Process Delivery, TCP and UDP protocols
PART 5 Transport Layer Computer Networks.
Chapter 6 The Transport Layer.
The Transport Layer Chapter
Chapter 6: Transport Layer (Part I)
TCP Transport layer Er. Vikram Dhiman LPU.
Introduction of Transport Protocols
Net 431: ADVANCED COMPUTER NETWORKS
Process-to-Process Delivery:
Dr. John P. Abraham Professor UTPA
Advanced Computer Networks
Dr. John P. Abraham Professor UTPA
CPEG514 Advanced Computer Networkst
Chapter 17. Transport Protocols
Process-to-process delivery UDP TCP SCTP
Transport Protocols: TCP Segments, Flow control and Connection Setup
Introduction to Computer Networks
The Transport Layer Chapter 6.
Transport Protocols: TCP Segments, Flow control and Connection Setup
Process-to-Process Delivery: UDP, TCP
Computer Networks Protocols
The TCP/IP Model.
Transport Layer 9/22/2019.
EEL 5718 Computer Communications
Presentation transcript:

Transport Layer Unit 5

Introduction The transport layer is the fourth layer from the bottom in the OSI reference model. It is responsible for message delivery from process running in source computer to the process running in the destination computer. Transport layer does not perform any function in the intermediate nodes. It is active only in the end systems. Transport Layer is responsible for delivery of entire message from one process running on source to another process running on destination. This is called process-to process delivery.

Transport Layer Design Issue The transport layer delivers the message from one process to another process running on two different hosts. Thus, it has to perform number of functions to ensure the accurate delivery of message. The various functions of transport layer are: Establishing, Maintaining & Releasing Connection Addressing Data Transfer Flow Control Error Control Congestion Control

Establishing, Maintaining & Releasing Connection: The transport layer establishes, maintains & releases end-to-end transport connection on the request of upper layers. Establishing a connection involves allocation of buffers for storing user data, synchronizing the sequence numbers of packets etc. A connection is released at the request of upper layer.

Addressing: In order to deliver the message from one process to another, an addressing scheme is required. Several process may be running on a system at a time. In order to identify the correct process out of the various running processes, transport layer uses an addressing scheme called por number. Each process has a specific port number.

Data Transfer: Transport layer breaks user data into smaller units and attaches a transport layer header to each unit forming a TPDU (Transport Layer Data Unit). The TPDU is handed over to the network layer for its delivery to destination. The TPDU header contains port number, sequence number, acknowledgement number, checksum and other fields

Flow Control: Like data link layer, transport layer also performs flow control. However, flow control at transport layer is performed end-to-end rather than node-to-node. Transport Layer uses a sliding window protocol to perform flow control.

Error Control: Transport layer also provides end-to-end error control facility. Transport layer deals with several different types of errors: Error due to damaged bits. Error due to non delivery of TPDUs. Error due to duplicate delivery of TPDUs. Error due to delivery of TPDU to a wrong destination.

Congestion Control: Transport layer also handles congestion in the networks. Several different congestion control algorithms are used to avoid congestion

Transport Layer Services Transport layer protocols can provide two types of services: Connection Oriented Service Connectionless Service

Connection Oriented Service: In connection oriented service, a connection is first established between sender and the receiver. Then, transfer of user data takes place. At the end, connection is released. The connection oriented service is generally reliable. Transport layer protocols that provide connection oriented service are TCP and SCTP (Stream Control Transmission Protocol).

Connectionless Service: In the service, the packets are sent from sender to receiver without the establishment of connection. In such service, packets are not numbered. The packets may be lost, corrupted, delayed or disordered. Connectionless service is unreliable. Transport layer protocol that provides this service is UDP.

TCP Services & Mechanisms Reliable communication service between pairs of processes Across variety of reliable and unreliable networks and internets Connection establishment Three way handshake Between pairs of ports Data transfer Logical stream of octets Flow control by credit allocation of number of octets Data buffered at transmitter and receiver Connection termination TCP users issues CLOSE primitive Transport entity sets FIN flag on last segment sent

TCP Congestion Control Window management AIMD Slow Start Retransmission timer management Estimate round trip delay by observing pattern of delay Set time to value somewhat greater than estimate Simple average Exponential average RTT Variance Estimation (Jacobson’s algorithm)

User Datagram Protocol (UDP) The Internet protocol suite supports a connectionless transport protocol, UDP (User Datagram Protocol). UDP provides a way for applications to send encapsulated IP datagram and send them without having to establish a connection. UDP transmits segments consisting of an 8-byte header followed by the payload. The two ports serve to identify the end points within the source and destination machines. When a UDP packet arrives, its payload is handed to the process attached to the destination port. This attachment occurs when BIND primitive or something similar is used, as we saw in Figure for TCP (the binding process is the same for UDP). In fact, the main value of having UDP over just using raw IP is the addition of the source and destination ports. Without the port fields, the transport layer would not know what to do with the packet. With them, it delivers segments correctly.

Performance Issues Performance problems. Measuring network performance. System design for better performance. Fast TPDU processing. Protocols for future high-performance networks.

Performance Problems in Computer Networks Some performance problems, such as congestion, are caused by temporary resource overloads. If more traffic suddenly arrives at a router than the router can handle, congestion will build up and performance will suffer. Network Performance Measurement The basic loop used to improve network performance contains the following steps: 1. Measure the relevant network parameters and performance. 2. Try to understand what is going on. 3. Change one parameter. System Design for Better Performance Measuring and tinkering can often improve performance considerably, but they cannot substitute for good design in the first place. A poorly-designed network can be improved only so much. Beyond that, it has to be redesigned from scratch.

Rules related to system design: Rule #1: CPU Speed Is More Important Than Network Speed Rule #2: Reduce Packet Count to Reduce Software Overhead Rule #3: Minimize Context Switches Rule #4: Minimize Copying Rule #5: You Can Buy More Bandwidth but Not Lower Delay Rule #6: Avoiding Congestion Is Better Than Recovering from It Rule #7: Avoid Timeouts Fast TPDU Processing TPDU processing overhead has two components: overhead per TPDU and overhead per byte. Both must be attacked. The key to fast TPDU processing is to separate out the normal case (one-way data transfer) and handle it specially. Although a sequence of special TPDUs is needed to get into the ESTABLISHED state, once there, TPDU processing is straightforward until one side starts to close the connection.

Protocols for Gigabit Networks The problem is that many protocol designers simply assumed, without stating it, that the time to use up the entire sequence space would greatly exceed the maximum packet lifetime. Consequently, there was no need to even worry about the problem of old duplicates still existing when the sequence numbers wrapped around. At gigabit speeds, that unstated assumption fails.