EE 4272Spring, 2003 Chapter 17 Transport Protocols Connection-Oriented Transport Protocol  Reliable Network Service: Design Issues  Unreliable Network.

Slides:



Advertisements
Similar presentations
Data and Computer Communications Eighth Edition by William Stallings Lecture slides by Lawrie Brown Chapter 20 – Transport Protocols.
Advertisements

Introduction 1 Lecture 13 Transport Layer (Transmission Control Protocol) slides are modified from J. Kurose & K. Ross University of Nevada – Reno Computer.
1 Transport Protocols & TCP CSE 3213 Fall April 2015.
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.
Intermediate TCP/IP TCP Operation.
Guide to TCP/IP, Third Edition
XCYANG Transport Protocols XCYANG Department of Computer Science and Technology, Nanjing University 1 Data Communications and Networking Chapter.
Computer Networks with Internet Technology William Stallings
Data and Computer Communications Tenth Edition by William Stallings Data and Computer Communications, Tenth Edition by William Stallings, (c) Pearson Education.
TO p. 1 Spring 2006 EE 5304/EETS 7304 Internet Protocols Tom Oh Dept of Electrical Engineering Lecture 13 Transport Layer.
5/6/2015© 2010 Raymond P. Jefferis IIILect Transport Layer.
Transport Layer – TCP (Part1) Dr. Sanjay P. Ahuja, Ph.D. Fidelity National Financial Distinguished Professor of CIS School of Computing, UNF.
TELE202 Lecture 14 TCP/UDP (2) 1 Lecturer Dr Z. Huang Overview ¥Last Lecture »TCP/UDP (1) »Source: chapter 17 ¥This Lecture »TCP/UDP (2) »Source: chapter.
Computer Networks: TCP Congestion Control 1 TCP Congestion Control Lecture material taken from “Computer Networks A Systems Approach”, Fourth Edition,Peterson.
1 TCP CSE May TCP Services Flow control Connection establishment and termination Congestion control 2.
Computer Networks with Internet Technology William Stallings
Semester Copyright USM EEE442 Computer Networks Transport Protocol En. Mohd Nazri Mahmud MPhil (Cambridge, UK) BEng (Essex, UK)
Data and Computer Communications Eighth Edition by William Stallings Lecture slides by Lawrie Brown Chapter 20 – Transport Protocols.
Transport Layer 3-1 Fast Retransmit r time-out period often relatively long: m long delay before resending lost packet r detect lost segments via duplicate.
Computer Networks: TCP Congestion Control 1 TCP Congestion Control Lecture material taken from “Computer Networks A Systems Approach”, Third Ed.,Peterson.
Computer Networks : TCP Congestion Control1 TCP Congestion Control.
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.
Advanced Computer Networks: TCP Congestion Control 1 TCP Congestion Control Lecture material taken from “Computer Networks A Systems Approach”, Fourth.
TCP. Learning objectives Reliable Transport in TCP TCP flow and Congestion Control.
Gursharan Singh Tatla Transport Layer 16-May
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 Transport Layer Computer Networks. 2 Where are we?
William Stallings Data and Computer Communications Chapter 20 Transport Protocols.
6.1. Transport Control Protocol (TCP) It is the most widely used transport protocol in the world. Provides reliable end to end connection between two hosts.
TCP : Transmission Control Protocol Computer Network System Sirak Kaewjamnong.
University of the Western Cape Chapter 12: The Transport Layer.
FALL 2005CSI 4118 – UNIVERSITY OF OTTAWA1 Part 2.5 Internetworking Chapter 25 (Transport Protocols, UDP and TCP, Protocol Port Numbers)
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.
1 Introduction to Computer Networks University of ilam Dr. Mozafar Bag-Mohammadi Transport Layer.
1 TCP: Reliable Transport Service. 2 Transmission Control Protocol (TCP) Major transport protocol used in Internet Heavily used Completely reliable transfer.
1 15. Transport Protocols. Prof. Sang-Jo Yoo 2 Contents  Transport protocol  Transport Service  Protocol for reliable network service  Protocol for.
CSCI 465 D ata Communications and Networks Lecture 27 Martin van Bommel CSCI 465 Data Communications & Networks 1.
Computer Networks with Internet Technology William Stallings Chapter 06 Transport Protocols 1.
Computer Networks23-1 PART 5 Transport Layer. Computer Networks23-2 Position of Transport Layer Responsible for the delivery of a message from one process.
Spring 2009CSE Congestion Control Outline Resource Allocation Queuing TCP Congestion Control.
Data and Computer Communications Eighth Edition by William Stallings Lecture slides by Lawrie Brown Chapter 20 – Transport Protocols.
CS 6401 Congestion Control in TCP Outline Overview of RENO TCP Reacting to Congestion SS/AIMD example.
4343 X2 – The Transport Layer Tanenbaum Ch.6.
1 Computer Communication & Networks Lecture 23 & 24 Transport Layer: UDP and TCP Waleed Ejaz
IT 424 Networks2 IT 424 Networks2 Ack.: Slides are adapted from the slides of the book: “Computer Networking” – J. Kurose, K. Ross Chapter 3: Transport.
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).
Transmission Control Protocol (TCP) TCP Flow Control and Congestion Control CS 60008: Internet Architecture and Protocols Department of CSE, IIT Kharagpur.
1 TCP ProtocolsLayer name DNSApplication TCP, UDPTransport IPInternet (Network ) WiFi, Ethernet Link (Physical)
William Stallings Data and Computer Communications Chapter 17 Transport Protocols.
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
9.6 TCP Congestion Control
Congestion Control.
PART 5 Transport Layer Computer Networks.
Transport Layer Unit 5.
So far, On the networking side, we looked at mechanisms to links hosts using direct linked networks and then forming a network of these networks. We introduced.
Congestion Control in TCP
University of Houston Transport Protocols Datcom II Lecture 9
Chapter 17. Transport Protocols
Week 10 Transport Protocols
Computer Networks Protocols
Transport Layer 9/22/2019.
EEL 5718 Computer Communications
Presentation transcript:

EE 4272Spring, 2003 Chapter 17 Transport Protocols Connection-Oriented Transport Protocol  Reliable Network Service: Design Issues  Unreliable Network Service: Design Issues  TCP Congestion Control  AIMD (Additive Increase/Multiplicative Decrease)  Slow Start Connectionless Transport Protocol: UDP

EE 4272Spring, 2003 Connection-Oriented Transport Protocol Mechanisms Logical connection between TS : end-to-end transport of data, shield TS users from details of underlying systems Reliable Sequencing Network Service  virtually 100% reliable delivery by network service: e.g. reliable packet switched network using X.25  Transport service is end-to-end protocol between two systems on same network  Design Issues  Addressing  Multiplexing  Flow Control  Connection Establishment & Termination: Negotiation of optional parameters (e.g., QoS); Triggers allocation of transport entity resources (e.g., buffer space) Unreliable Network Service  E.g., Internet  More Design Issues

EE 4272Spring, 2003 Design Issues under Reliable Network Service: Addressing & Multiplexing Addressing: Target user specified by  User identification  Usually (host, port), called a socket in TCP  Port represents a particular transport service (TS) user: e.g. “DNS” port 53, “Unix talk” port 517,  see /etc/services on Unix  Host address and Network number  In an internet, a global internet address Multiplexing  Multiple users employ same transport protocol  User identified by port number or service access point (SAP)

EE 4272Spring, 2003 Design Issues : Flow Control in Transport Layer Challenges:  Longer transmission delay between transport entities (end-to-end) compared with actual transmission time  Delay in communication of flow control info  Variable transmission delay: Difficult to use timeouts Mechanisms under Reliable Network Services  Do nothing: Segments that overflow are discarded  Refuse further segments  Backpressure type of Mechanism: clumsy & coarse grained  Use fixed sliding window protocol (sequence number /window size/ACK)  Works well on reliable network: failure on ACK is taken as flow control indication  Does not work well on unreliable network  Can not distinguish between lost segment and flow control tactic  Use credit scheme

EE 4272Spring, 2003 Credit Allocation Scheme Use credit scheme  Greater control on reliable network  More effective on unreliable network  Decouples flow control from ACK  May ACK without granting credit and vice versa  Each octet has sequence number  Each transport segment has Seq number, Ack number and window size in header

EE 4272Spring, 2003 Transport Protocol within Internetworking Unreliable Network Service: e.g. Internet  Segments may get lost  Segments may arrive out of order Design Issues of Transport Protocol  Ordered Delivery  Retransmission strategy  Duplication detection  Flow control (Credit Allocation Scheme)  Connection establishment/termination  Crash recovery

EE 4272Spring, 2003 Design Issues under Unreliable Service Ordered Delivery  Segments may arrive out of order  Number segments sequentially: TCP numbers each byte sequentially  Segments are numbered by the first octet number in the segment Retransmission Strategy  Segment damaged/failed in transit  Transmitter does not know of failure  Receiver must acknowledge successful receipt  Use cumulative acknowledgement for efficiency  Time out waiting for ACK triggers re-transmission  Fixed timer: Based on understanding of network behavior  Too small leads to unnecessary re-transmissions  Too large and response to lost segments is slow  Should be a bit longer than round trip time  Can not adapt to changing network conditions  Adaptive scheme

EE 4272Spring, 2003 Duplication Detection If ACK lost, segment is re- transmitted -> duplicate Receiver must recognize duplicates Duplicate received prior to closing connection  Receiver assumes ACK lost and ACKs duplicate  Sender must not get confused with multiple ACKs  Sequence number space large enough to not cycle within maximum life of segment Duplicate received after closing connection

EE 4272Spring, 2003 Three Way Handshake: Connection Establishment in TCP

EE 4272Spring, 2003 Connection Termination Entity in CLOSE WAIT state sends last data segment, followed by FIN  FIN could arrive before last data segment ?? Remember: Internet Receiver accepts FIN  Closes connection  Loses last data segment Associate sequence number with FIN Receiver waits for all segments before FIN sequence number

EE 4272Spring, 2003 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

EE 4272Spring, 2003 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)

EE 4272Spring, 2003 Additive Increase/Multiplicative Decrease Objective: adjust to changes in the available window capacity  Instead of a fixed size window for a TCP connection New state variable per connection: CongestionWindow  limits how much data source has in transit Note: CongestionWindow is set by TCP source based on the observed congestion level Idea:  increase CongestionWindow when congestion goes down  decrease CongestionWindow when congestion goes up Question: how does the source determine whether or not the network is congested?  Answer: a timeout occurs  timeout signals that a packet was lost  packets are seldom lost due to transmission error  lost packet implies congestion

EE 4272Spring, 2003 AIMD: Additive Increase/Multiplicative Decrease SourceDestination … Algorithm  increment CongestionWindow by one packet per RTT (linear increase)  divide CongestionWindow by two whenever a timeout occurs (multiplicative decrease)

EE 4272Spring, 2003 AIMD (cont) Trace: sawtooth behavior Reason of being conservative: consequences of having too large a window are much worse than those of it being too small Note: the accurate timeout mechanism is desirable Problem: it takes too long to ramp up a connection when it is starting from scratch (cold start) KB Time (seconds)

EE 4272Spring, 2003 Slow Start Slow start increase the congestion window exponentially rather than linearly Idea:  begin with CongestionWindow = 1 packet  double CongestionWindow each RTT (increment by 1 packet for each ACK) Why “slow”?  compare with the original behavior of TCP (advertised window), not compare with “linear growth” of AIMD  Exponential growth, but slower than all at once (original TCP) Used…  when first starting connection  when connection goes dead waiting for timeout (more knowledge)  In Reality  interplay of “slow start” & “AIMD” SourceDestination …

EE 4272Spring, 2003 UDP User datagram protocol: RFC 768 Connectionless service for application level procedures  Unreliable  Delivery and duplication control not guaranteed  Adds multiplexing Advantages: reduced overhead  E.g., real time applications such as voice and telemetry