CS450 Introduc0on to Networking Lecture 14 TCP. Phu Phung Feb 13, 2015

Similar documents
10 minutes survey (anonymous)

32 bits. source port # dest port # sequence number acknowledgement number not used. checksum. Options (variable length)

Chapter 3 Transport Layer

CS 4390 Computer Networks. Pointers to Corresponding Section of Textbook

CMPE 150/L : Introduction to Computer Networks. Chen Qian Computer Engineering UCSC Baskin Engineering Lecture 9

Chapter 3 Transport Layer

Lecture 08: The Transport Layer (Part 2) The Transport Layer Protocol (TCP) Dr. Anis Koubaa

Chapter 3 Transport Layer

Chapter III: Transport Layer

Chapter 3 outline. 3.5 connection-oriented transport: TCP segment structure reliable data transfer flow control connection management

Transport Layer: outline

TCP (Part 2) Session 10 INST 346 Technologies, Infrastructure and Architecture

Correcting mistakes. TCP: Overview RFCs: 793, 1122, 1323, 2018, TCP seq. # s and ACKs. GBN in action. TCP segment structure

Computer Networking Introduction

Chapter 3- parte B outline

CSE 4213: Computer Networks II

TCP. TCP: Overview. TCP Segment Structure. Maximum Segment Size (MSS) Computer Networks 10/19/2009. CSC 257/457 - Fall

CS Lecture 1 Review of Basic Protocols

RSC Part III: Transport Layer 3. TCP

Transport Layer: Outline

CSC 401 Data and Computer Communications Networks

Chapter 3 Transport Layer

COMP 431 Internet Services & Protocols. Transport Layer Protocols & Services Outline. The Transport Layer Reliable data delivery & flow control in TCP

Computer Communication Networks Midterm Review

CC451 Computer Networks

Lecture 8. TCP/IP Transport Layer (2)

Fall 2012: FCM 708 Bridge Foundation I

CSCD 330 Network Programming

Suprakash Datta. Office: CSEB 3043 Phone: ext Course page:

CSC 4900 Computer Networks: TCP

Outline. TCP: Overview RFCs: 793, 1122, 1323, 2018, Development of reliable protocol Sliding window protocols

Chapter 3 outline. 3.5 Connection-oriented transport: TCP. 3.6 Principles of congestion control 3.7 TCP congestion control

The Transport Layer Reliable data delivery & flow control in TCP. Transport Layer Protocols & Services Outline

Chapter III: Transport Layer

CSCE 463/612 Networks and Distributed Processing Spring 2017

Transport layer. UDP: User Datagram Protocol [RFC 768] Review principles: Instantiation in the Internet UDP TCP

Outline. TCP: Overview RFCs: 793, 1122, 1323, 2018, steam: r Development of reliable protocol r Sliding window protocols

Transport layer. Review principles: Instantiation in the Internet UDP TCP. Reliable data transfer Flow control Congestion control

The Transport Layer Reliable data delivery & flow control in TCP. Transport Layer Protocols & Services Outline

Chapter 3 outline. TDTS06 Computer networks. Principles of Reliable data transfer. Reliable data transfer: getting started

Chapter 3 Transport Layer

Chapter 3 Transport Layer

CS 43: Computer Networks. 18: Transmission Control Protocol October 12-29, 2018

Routers. Session 12 INST 346 Technologies, Infrastructure and Architecture

Lecture 12: Transport Layer TCP again

TCP: Overview RFCs: 793, 1122, 1323, 2018, 2581

Lecture 5. Transport Layer. Transport Layer 1-1

Chapter 3 Transport Layer

Course on Computer Communication and Networks. Lecture 5 Chapter 3; Transport Layer, Part B

TCP: Overview RFCs: 793,1122,1323, 2018, 2581

Department of Computer and IT Engineering University of Kurdistan. Transport Layer. By: Dr. Alireza Abdollahpouri

Computer Communication Networks Midterm Review

Transmission Control Protocol

TCP : Fundamentals of Computer Networks Bill Nace

Distributed Systems. 5. Transport Protocols

Transmission Control Protocol (TCP)

Distributed Systems. 5. Transport Protocols. Werner Nutt

Lecture 11: Transport Layer Reliable Data Transfer and TCP

Foundations of Telematics

CS 43: Computer Networks. 19: TCP Flow and Congestion Control October 31, Nov 2, 2018

Transport Protocols and TCP

Chapter 3 outline. 3.5 Connection-oriented transport: TCP. 3.6 Principles of congestion control 3.7 TCP congestion control

The Transport Layer: TCP & Reliable Data Transfer

Flow and Congestion Control (Hosts)

Go-Back-N. Pipelining: increased utilization. Pipelined protocols. GBN: sender extended FSM

Application. Transport. Network. Link. Physical

CSC 8560 Computer Networks: TCP

Chapter 3 Transport Layer

Chapter 3 outline. Chapter 3: Transport Layer. Transport vs. network layer. Transport services and protocols. Internet transport-layer protocols

Chapter 3 Transport Layer

Master Course Computer Networks IN2097

TCP. 1 Administrivia. Tom Kelliher, CS 325. Apr. 2, Announcements. Assignment. Read From Last Time

Chapter 6 Transport Layer

rdt3.0: channels with errors and loss

Chapter 3: Transport Layer

CS118 Discussion 1A, Week 4. Zengwen Yuan Dodd Hall 78, Friday 10:00 11:50 a.m.

CNT 6885 Network Review on Transport Layer

Pipelined protocols: overview

internet technologies and standards

Computer Networking: A Top Down Approach

Transport Layer. <protocol, local-addr,local-port,foreign-addr,foreign-port> ϒ Client uses ephemeral ports /10 Joseph Cordina 2005

CSC358 Week 5. Adapted from slides by J.F. Kurose and K. W. Ross. All material copyright J.F Kurose and K.W. Ross, All Rights Reserved

internet technologies and standards

By Ossi Mokryn, Based also on slides from: the Computer Networking: A Top Down Approach Featuring the Internet by Kurose and Ross

CS321: Computer Networks Error and Flow Control in TCP

Linux Networking: tcp. TCP context and interfaces

Our goals: understand d principles. behind transport layer protocols in the. Internet: layer services:

Lecture 3 The Transport Control Protocol (TCP) Antonio Cianfrani DIET Department Networking Group netlab.uniroma1.it

Transport Protocols. Raj Jain. Washington University in St. Louis

6.1 Internet Transport Layer Architecture 6.2 UDP (User Datagram Protocol) 6.3 TCP (Transmission Control Protocol) 6. Transport Layer 6-1

Chapter 3 Transport Layer

Chapter 3: Transport Layer. Chapter 3 Transport Layer. Chapter 3 outline. Transport services and protocols

INF4/MSc Computer Networking. Lectures 3-4 Transport layer protocols TCP/UDP automatic repeat request

Data Communications & Networks. Session 9 Main Theme Network Congestion Causes, Effects, Controls, and TCP Applications. Dr. Jean-Claude Franchitti

CS457 Transport Protocols. CS 457 Fall 2014

Connection-oriented (virtual circuit) Reliable Transfer Buffered Transfer Unstructured Stream Full Duplex Point-to-point Connection End-to-end service

7. TCP 최양희서울대학교컴퓨터공학부

Master Course Computer Networks IN2097

LECTURE 3 - TRANSPORT LAYER

Transmission Control Protocol. ITS 413 Internet Technologies and Applications

Transcription:

CS450 Introduc0on to Networking Lecture 14 TCP Phu Phung Feb 13, 2015

Next lecture (Feb 16) Assignment 3 (No iclicker ques0ons) Wireshark links Guest lecture on Monday Feb 23 rd DNS Security Midterm exam in class 1 PM Friday, March 6 th

TCP: Overview RFCs: 793,1122,1323, 2018, 2581 point-to-point: one sender, one receiver reliable, in-order byte steam: no message boundaries pipelined: TCP congestion and flow control set window size full duplex data: bi-directional data flow in same connection MSS: maximum segment size connection-oriented: handshaking (exchange of control msgs) inits sender, receiver state before data exchange flow controlled: sender will not overwhelm receiver

TCP segment structure URG: urgent data (generally not used) ACK: ACK # valid PSH: push data now (generally not used) RST, SYN, FIN: connection estab (setup, teardown commands) Internet checksum (as in UDP) head len 32 bits source port # dest port # sequence number acknowledgement number not used U A P R S F checksum receive window application data (variable length) Urg data pointer options (variable length) counting by bytes of data (not segments!) # bytes rcvr willing to accept

TCP seq. numbers, ACKs sequence numbers: byte stream number of first byte in segment s data acknowledgements: seq # of next byte expected from other side cumulative ACK Q: how receiver handles outof-order segments A: TCP spec doesn t say, - up to implementor outgoing segment from sender source port # dest port # sequence number acknowledgement number rwnd checksum sent ACKed urg pointer window size N sender sequence number space sent, notyet usable not ACKed but not usable ( inflight ) yet sent incoming segment to sender source port # dest port # sequence number acknowledgement number A rwnd checksum urg pointer

TCP seq. numbers, ACKs Host A Host B User types C host ACKs receipt of echoed C Seq=42, ACK=79, data = C Seq=79, ACK=43, data = C Seq=43, ACK=80 host ACKs receipt of C, echoes back C simple telnet scenario

Sender sends seq#=101, with data length = 20 bytes, and receives ack = 91. What is true? A. The receiver has successfully received up to seq# 90 B. The packet with seq#=101 was lost C. The packet with seq#=91 was lost D. A and B E. A and C

TCP round trip time, timeout Q: how to set TCP timeout value? longer than RTT but RTT varies too short: premature timeout, unnecessary retransmissions too long: slow reaction to segment loss Q: how to estimate RTT? SampleRTT: measured time from segment transmission until ACK receipt ignore retransmissions SampleRTT will vary, want estimated RTT smoother average several recent measurements, not just current SampleRTT

TCP round trip time, timeout EstimatedRTT = (1- α)*estimatedrtt + α*samplertt v exponential weighted moving average v influence of past sample decreases exponentially fast v typical value: α = RTT: 0.125 gaia.cs.umass.edu to fantasia.eurecom.fr 350 RTT: gaia.cs.umass.edu to fantasia.eurecom.fr RTT (milliseconds) RTT (milliseconds) 300 250 200 150 samplertt EstimatedRTT 100 1 8 15 22 29 36 43 50 57 64 71 78 85 92 99 106 time (seconnds) time (seconds) SampleRTT Estimated RTT

TCP round trip time, timeout timeout interval: EstimatedRTT plus safety margin large variation in EstimatedRTT -> larger safety margin estimate SampleRTT deviation from EstimatedRTT: DevRTT = (1-β)*DevRTT + β* SampleRTT-EstimatedRTT (typically, β = 0.25) TimeoutInterval = EstimatedRTT + 4*DevRTT estimated RTT safety margin

What is DevRTT? A. Rela0ve difference between SampleRTT and Es0matedRTT B. Is used as a parameter for safe margin of 0meout interval C. Is used to re- calculate SampleRTT D. A and B E. A and C

Next lecture TCP Readings 3.5 Guest lecture on Monday Feb 23 rd DNS Security Midterm exam in class In class: 1 PM Friday, March 6 th

Copy right notice: These slides are adapted from J.F Kurose and K.W. Ross s ones All material copyright 1996-2012 J.F Kurose and K.W. Ross, All Rights Reserved Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley March 2012