Lecture 6: The Transport Layer

Size: px
Start display at page:

Download "Lecture 6: The Transport Layer"

Transcription

1 Lecture 6: The Transport Layer

2 Reliable data delivery No lost data No duplicate data Computer Networks, Fall

3 applicabon transport network link physical Computer Networks, Fall

4 message app rdt_send() deliver_data() H t transport reliable data delivery network unreliable data delivery Computer Networks, Fall

5 rdt_send() deliver_data() app transport network network transport app Computer Networks, Fall

6 await rdt_send ( data ) data packet = make ( data ) udt_send ( packet ) Computer Networks, Fall

7 await rdt_rcv ( packet ) packet data = extract ( packet ) deliver_data ( data ) Computer Networks, Fall

8 Checksum Redundant informabon e.g., the binary sum of all data bytes sender adds checksum to each segment Used to detect (+correct) data corrupbon receiver recomputes checksum to detect corrup=on (poten=ally uses checksum to correct corrup=on) Computer Networks, Fall

9 rdt_send() NACK ACK deliver_data() Computer Networks, Fall

10 await data rdt_send ( data ) packet = make ( data ) udt_send ( packet ) rdt_rcv ( packet ) && is NACK ( packet ) udt_send ( packet ) await (N)ACK rdt_rcv ( packet ) && is ACK ( packet ) Computer Networks, Fall

11 rdt_rcv ( packet ) && corrupt( packet ) udt_send ( NACK ) rdt_rcv ( packet ) && not_corrupt ( packet ) udt_send ( ACK ) data = extract ( packet ) deliver_data ( data ) await packet Computer Networks, Fall

12 Acknowledgment Feedback from receiver to sender receiver determines whether segment corrupted sends posi=ve or nega=ve ACK Use to overcome data corrupbon if receiver sends a nega=ve ACK, sender retransmits Computer Networks, Fall

13 NACK Computer Networks, Fall

14 ?A?K Computer Networks, Fall

15 ACK seq# 1 Computer Networks, Fall

16 await data rdt_send ( data ) udt_send ( packet ) rdt_rcv ( packet ) && is NACK ( packet ) udt_send ( packet ) await (N)ACK rdt_rcv ( packet ) && is ACK ( packet ) Computer Networks, Fall

17 await data 0 rdt_send ( data ) udt_send ( packet ) rdt_rcv ( packet ) && is NACK ( packet ) udt_send ( packet ) await (N)ACK rdt_rcv ( packet ) && is ACK ( packet ) await (N)ACK await data 1 Computer Networks, Fall

18 rdt_rcv ( packet ) && corrupt ( packet ) udt_send ( NACK ) await packet rdt_rcv ( packet ) && not_corrupt ( packet ) udt_send ( ACK ) deliver_data ( data ) Computer Networks, Fall

19 rdt_rcv ( packet ) && corrupt ( packet ) udt_send ( NACK ) rdt_rcv ( packet ) && has_seq# ( 0 ) && not_corrupt ( packet ) udt_send ( ACK ) deliver_data ( data ) await packet 0 await packet 1 rdt_rcv ( packet ) && has_seq# ( 1 ) && not_corrupt ( packet ) udt_send ( ACK ) deliver_data ( data ) Computer Networks, Fall

20 NACK Computer Networks, Fall

21 ACK 1 Computer Networks, Fall

22 ACK 0 seq# 1 Computer Networks, Fall

23 ACK 1 Computer Networks, Fall

24 Sequence numbers An idenbfier for segments sender includes a sequence number in each segment receiver includes a sequence number in each ACK Used to disambiguate between segments sender indicates whether it sends new segment receiver indicates which was the last segment that was correctly received Computer Networks, Fall

25 X Bmeout! Computer Networks, Fall

26 X Bmeout! Computer Networks, Fall

27 X Bmeout! ACK 0 seq# 1 Computer Networks, Fall

28 Bmeout! ACK 0 seq# 1 ACK 0 Computer Networks, Fall

29 Timeout + ACK Timeout = an expected ACK is late the receiver communicates to the sender which was the last correct packet it received Used to overcome data loss if the sender s =meout expires, the sender retransmits Computer Networks, Fall

30 RDT elements Checksums detect data corrup=on at receiver ACKs + retransmissions overcome data corrup=on Timeouts + ACKs + retransmissions overcome data loss Computer Networks, Fall

31 transmission RTT ACK 0 transmission seq# 1 RTT ACK 1 Computer Networks, Fall

32 transmission rate R=1 Gbps segment size L = 1000 bytes transmission delay = L / R = 8 usec propagabon delay = 15 msec Computer Networks, Fall

33 0.008 msec 30 msec ACK 0 Busy for = sender/channel ublizabon Computer Networks, Fall

34 Sender ublizabon Stop and wait: poor sender ublizabon the sender does nothing while wai=ng for the receiver s ACK or the =meout Computer Networks, Fall

35 seq# 1 seq# 2 seq# 3 ACK 0 ACK 1 ACK 2 ACK 3 seq# 4 seq# 5 seq# 6 seq# 7 window size N = 4 Computer Networks, Fall

36 transmission seq# 1 seq# 2 RTT ACK 0 seq# 3 Busy for trans. N trans. + RTT Computer Networks, Fall

37 Sender ublizabon Stop and wait: poor sender ublizabon the sender does nothing while wai=ng for the receiver s ACK or the =meout Pipelining: becer ublizabon the sender sends up to N unacked segments N = sliding window size Computer Networks, Fall

38 seq# 1 seq# 2 seq# 3 ACK 0 ACK 1 ACK 2 ACK 3 seq# 4 seq# 5 seq# 6 seq# 7 Computer Networks, Fall

39 Bmeout for packet 2! seq# 1 seq# 2 seq# 3 ACK 0 X ACK 1 ACK 1 seq# 2 seq# 3 seq# 4 seq# 5 seq# 4 seq# 5 Computer Networks, Fall X X X

40 GobackN The receiver accepts 0 outoforder segments ACKs are cumulabve an ACK for segment 10 indicates that all segments un=l and including 10 have been received When the sender retransmits, it retransmits all the unacked segments Computer Networks, Fall

41 0 1 2 seq# 1 seq# 2 seq# 3 X ACK 0 ACK 1 ACK 3 seq# 4 seq# Bmeout for seq# 2 7 segment 2! Computer Networks, Fall

42 SelecBve Repeat The receiver accepts N1 outoforder packets ACKs are selecbve an ACK for segment 10 indicates that segment 10 has been received When the sender retransmits, it retransmits only one segment Computer Networks, Fall

43 Pipelining protocols GobackN the receiver accepts 0 outoforder segments the receiver sends cumula=ve ACKs the sender retransmits all unacked segments SelecBve repeat (SR) the receiver accepts N1 outoforder segments the receiver sends selec=ve ACKs the sender retransmits one segment Computer Networks, Fall

ELEN Network Fundamentals Lecture 15

ELEN Network Fundamentals Lecture 15 ELEN 4017 Network Fundamentals Lecture 15 Purpose of lecture Chapter 3: Transport Layer Reliable data transfer Developing a reliable protocol Reliability implies: No data is corrupted (flipped bits) Data

More information

CSC 401 Data and Computer Communications Networks

CSC 401 Data and Computer Communications Networks CSC 401 Data and Computer Communications Networks Transport Layer Principles of Reliable Data Transfer Sec 3.4 Prof. Lina Battestilli 2017 Fall Transport Layer Chapter 3 Outline 3.1 Transport-layer Services

More information

Principles of Reliable Data Transfer

Principles of Reliable Data Transfer Principles of Reliable Data Transfer 1 Reliable Delivery Making sure that the packets sent by the sender are correctly and reliably received by the receiver amid network errors, i.e., corrupted/lost packets

More information

Chapter 3 Transport Layer

Chapter 3 Transport Layer Chapter 3 Transport Layer Lec 9: Reliable Data Transfer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley March 2012 All material copyright 1996-2012 J.F Kurose

More information

Internet transport-layer protocols. Transport services and protocols. Sending and receiving. Connection-oriented (TCP) Connection-oriented

Internet transport-layer protocols. Transport services and protocols. Sending and receiving. Connection-oriented (TCP) Connection-oriented Transport services and protocols Internet -layer protocols logical communication between processes protocols run in end systems send side: breaks app messages into segments, passes to layer rcv side: reassembles

More information

Chapter 3: Transport Layer

Chapter 3: Transport Layer Chapter 3: Transport Layer Chapter goals: understand principles behind transport layer services: multiplexing/demultiplex ing reliable data transfer flow control congestion control instantiation and implementation

More information

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

Chapter 3 outline. 3.5 connection-oriented transport: TCP segment structure reliable data transfer flow control connection management Chapter 3 outline 3.1 transport-layer services 3.2 multiplexing and demultiplexing 3.3 connectionless transport: UDP 3.4 principles of reliable data transfer 3.5 connection-oriented transport: TCP segment

More information

Chapter 3: Transport Layer Part A

Chapter 3: Transport Layer Part A Chapter 3: Transport Layer Part A Course on Computer Communication and Networks, CTH/GU The slides are adaptation of the slides made available by the authors of the course s main textbook 3: Transport

More information

CSCE 463/612 Networks and Distributed Processing Spring 2018

CSCE 463/612 Networks and Distributed Processing Spring 2018 CSCE 463/612 Networks and Distributed Processing Spring 2018 Transport Layer II Dmitri Loguinov Texas A&M University February 27, 2018 Original slides copyright 1996-2004 J.F Kurose and K.W. Ross 1 Chapter

More information

Chapter 3 Transport Layer

Chapter 3 Transport Layer Chapter 3 Transport Layer A note on the use of these Powerpoint slides: We re making these slides freely available to all (faculty, students, readers). They re in PowerPoint form so you see the animations;

More information

The Transport Layer Multiplexing, Error Detection, & UDP

The Transport Layer Multiplexing, Error Detection, & UDP CPSC 852 Internetworking The Transport Layer Multiplexing, Error Detection, & UDP Michele Weigle Department of Computer Science Clemson University mweigle@cs.clemson.edu http://www.cs.clemson.edu/~mweigle/courses/cpsc852

More information

The Transport Layer Reliability

The Transport Layer Reliability The Transport Layer Reliability CS 3, Lecture 7 http://www.cs.rutgers.edu/~sn4/3-s9 Srinivas Narayana (slides heavily adapted from text authors material) Quick recap: Transport Provide logical communication

More information

Reliable Transport : Fundamentals of Computer Networks Bill Nace

Reliable Transport : Fundamentals of Computer Networks Bill Nace Reliable Transport 14-740: Fundamentals of Computer Networks Bill Nace Material from Computer Networking: A Top Down Approach, 6 th edition. J.F. Kurose and K.W. Ross Administration Stuff is due HW #1

More information

CMSC 332 Computer Networks Reliable Data Transfer

CMSC 332 Computer Networks Reliable Data Transfer CMSC 332 Computer Networks Reliable Data Transfer Professor Szajda Last Time Multiplexing/Demultiplexing at the Transport Layer. How do TCP and UDP differ? UDP gives us virtually bare-bones access to the

More information

Transport services and protocols. Chapter 3 outline. Internet transport-layer protocols Chapter 3 outline. Multiplexing/demultiplexing

Transport services and protocols. Chapter 3 outline. Internet transport-layer protocols Chapter 3 outline. Multiplexing/demultiplexing Chapter 3 outline 3.1 Transport-layer services 3.2 Multiplexing and demultiplexing 3.3 Connectionless : UDP 3.4 Principles of reliable data transfer 3.5 Connection-oriented : TCP segment structure reliable

More information

CSC 4900 Computer Networks: Reliable Data Transport

CSC 4900 Computer Networks: Reliable Data Transport CSC 4900 Computer Networks: Reliable Data Transport Professor Henry Carter Fall 2017 Last Time Multiplexing/Demultiplexing at the Transport Layer. How do TCP and UDP differ? UDP gives us virtually bare-bones

More information

CS 3516: Computer Networks

CS 3516: Computer Networks Welcome to CS 3516: Computer Networks Prof. Yanhua Li Time: 9:00am 9:50am M, T, R, and F Location: AK 219 Fall 2018 A-term 1 Some slides are originally from the course materials of the textbook Computer

More information

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

CSC358 Week 4. Adapted from slides by J.F. Kurose and K. W. Ross. All material copyright J.F Kurose and K.W. Ross, All Rights Reserved CSC358 Week 4 Adapted from slides by J.F. Kurose and K. W. Ross. All material copyright 1996-2016 J.F Kurose and K.W. Ross, All Rights Reserved Logistics Assignment 1 due this Friday Office hour on Feb

More information

CS 3516: Advanced Computer Networks

CS 3516: Advanced Computer Networks Welcome to CS 3516: Advanced Computer Networks Prof. Yanhua Li Time: 9:00am 9:50am M, T, R, and F Location: Fuller 320 Fall 2017 A-term 1 Some slides are originally from the course materials of the textbook

More information

COSC4377. Useful Linux Tool: screen

COSC4377. Useful Linux Tool: screen Lecture 10 Useful Linux Tool: screen Alternative to having multiple ssh/putty screens, you can have multiple virtual screens within the same session. To open a screen session: ~$ screen To suspend the

More information

CC451 Computer Networks

CC451 Computer Networks CC451 Computer Networks Lecture 5 Transport Layer Transport Layer 3-1 Chapter 3 Transport Layer A note on the use of these ppt slides: We re making these slides freely available to all (faculty, students,

More information

file:///c:/users/hpguo/dropbox/website/teaching/fall 2017/CS4470/H...

file:///c:/users/hpguo/dropbox/website/teaching/fall 2017/CS4470/H... 1 of 9 11/26/2017, 11:28 AM Homework 3 solutions 1. A window holds bytes 2001 to 5000. The next byte to be sent is 3001. Draw a figure to show the situation of the window after the following two events:

More information

TCP : Fundamentals of Computer Networks Bill Nace

TCP : Fundamentals of Computer Networks Bill Nace TCP 14-740: Fundamentals of Computer Networks Bill Nace Material from Computer Networking: A Top Down Approach, 6 th edition. J.F. Kurose and K.W. Ross Administrivia Lab #1 due now! Reminder: Paper Review

More information

Transport Layer. Application / Transport Interface. Transport Layer Services. Transport Layer Connections

Transport Layer. Application / Transport Interface. Transport Layer Services. Transport Layer Connections Application / Transport Interface Application requests service from transport layer Transport Layer Application Layer Prepare Transport service requirements Data for transport Local endpoint node address

More information

Chapter 3 Transport Layer

Chapter 3 Transport Layer Chapter 3 Transport Layer Reti degli Elaboratori Canale AL e MZ Prof.ssa Chiara Petrioli a.a. 2016/2017 We thank for the support material Prof. Kurose-Ross All material copyright 1996-2012 J.F Kurose and

More information

CSC 401 Data and Computer Communications Networks

CSC 401 Data and Computer Communications Networks CSC 401 Data and Computer Communications Networks Transport Layer Pipelined Reliable Data Transfer Protocols: Go-Back-N and Selective Repeat Sec 3.4.2-3.4.3 Prof. Lina Battestilli Fall 2017 Transport Layer

More information

Transport layer. Our goals: Understand principles behind transport layer services: Learn about transport layer protocols in the Internet:

Transport layer. Our goals: Understand principles behind transport layer services: Learn about transport layer protocols in the Internet: Transport layer Our goals: Understand principles behind transport layer services: Multiplexing/demultiplexing Reliable data transfer Flow control Congestion control Learn about transport layer protocols

More information

CSE 3214: Computer Network Protocols and Applications Transport Layer (Part 2) Chapter 3 outline. UDP checksum. Port numbers

CSE 3214: Computer Network Protocols and Applications Transport Layer (Part 2) Chapter 3 outline. UDP checksum. Port numbers CSE 3214: Computer Network Protocols and Applications Transport Layer (Part 2) Dr. Peter Lian, Professor Department of Computer Science and Engineering York University Email: peterlian@cse.yorku.ca Office:

More information

Transport layer: Outline

Transport layer: Outline Transport layer Our goals: Understand principles behind transport layer services: Multiplexing/demultiplexing Reliable data transfer Flow control Congestion control Learn about transport layer protocols

More information

Lecture 10: Transpor Layer Principles of Reliable Data Transfer

Lecture 10: Transpor Layer Principles of Reliable Data Transfer Lecture 10: Transpor Layer Principles of Reliable Data Transfer COMP 332, Spring 2018 Victoria Manfredi Acknowledgements: materials adapted from Computer Networking: A Top Down Approach 7 th edition: 1996-2016,

More information

Computer Networks & Security 2016/2017

Computer Networks & Security 2016/2017 Computer Networks & Security 2016/2017 Transport Layer (04) Dr. Tanir Ozcelebi Courtesy: Kurose & Ross Courtesy: Forouzan TU/e Computer Science Security and Embedded Networked Systems Transport Layer Our

More information

Reliable transmission

Reliable transmission Reliable transmission CSCI 466: Networks Keith Vertanen Fall 2011 Ge/ng connected thus far Physical connec8vity Aggrega8ng bits into frames Detec8ng errors in frames Message 1001 1010 M(x) = x 7 + x 4

More information

UNIVERSITÄT DES SAARLANDES Fachrichtung 6.2 Informatik Prof. Dr.-Ing. Holger Hermanns

UNIVERSITÄT DES SAARLANDES Fachrichtung 6.2 Informatik Prof. Dr.-Ing. Holger Hermanns UNIVERSITÄT DES SAARLANDES Fachrichtung 6.2 Informatik Prof. Dr.-Ing. Holger Hermanns U N S A I V E R S R A V I I T A S S E N S I MoDeST Tutorial This document provides a tutorial for MoDeST, a modeling

More information

Last time. Mobility in Cellular networks. Transport Layer. HLR, VLR, MSC Handoff. Introduction Multiplexing / demultiplexing UDP 14-1

Last time. Mobility in Cellular networks. Transport Layer. HLR, VLR, MSC Handoff. Introduction Multiplexing / demultiplexing UDP 14-1 Last time Mobility in Cellular networks HLR, VLR, MSC Handoff Transport Layer Introduction Multiplexing / demultiplexing UDP 14-1 This time Reliable Data Transfer Midterm review 14-2 Chapter 3 outline

More information

Computer Networking. Reliable Transport. Reliable Transport. Principles of reliable data transfer. Reliable data transfer. Elements of Procedure

Computer Networking. Reliable Transport. Reliable Transport. Principles of reliable data transfer. Reliable data transfer. Elements of Procedure Computer Networking Reliable Transport Prof. Andrzej Duda duda@imag.fr Reliable Transport Reliable data transfer Data are received ordered and error-free Elements of procedure usually means the set of

More information

rdt2.0 has a fatal flaw!

rdt2.0 has a fatal flaw! rdt2. has a fatal flaw! rdt2.1:, handles garbled ACK/NAKs what happens if ACK/NAK corrupted? doesn t know what happened at! can t just retransmit: possible duplicate handling duplicates: retransmits current

More information

The Transmission Control Protocol (TCP)

The Transmission Control Protocol (TCP) The Transmission Control Protocol (TCP) Application Services (Telnet, FTP, e-mail, WWW) Reliable Stream Transport (TCP) Unreliable Transport Service (UDP) Connectionless Packet Delivery Service (IP) Goals

More information

Data Communications & Networks. Session 6 Main Theme Reliable Data Transfer. Dr. Jean-Claude Franchitti

Data Communications & Networks. Session 6 Main Theme Reliable Data Transfer. Dr. Jean-Claude Franchitti Data Communications & Networks Session 6 Main Theme Reliable Data Transfer Dr. Jean-Claude Franchitti New York University Computer Science Department Courant Institute of Mathematical Sciences Adapted

More information

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

Chapter 3 outline. TDTS06 Computer networks. Principles of Reliable data transfer. Reliable data transfer: getting started Chapter 3 outline TDTS06 Computer networks Lecture 4: Transport layer II Reliable data delivery and TCP Jose M. Peña, jospe@ida.liu.se IDA/ADIT, LiU 2009-08-28 3.1 Transport-layer services 3.2 Multiplexing

More information

ECE697AA Lecture 3. Today s lecture

ECE697AA Lecture 3. Today s lecture ECE697AA Lecture 3 Transport Layer: TCP and UDP Tilman Wolf Department of Electrical and Computer Engineering 09/09/08 Today s lecture Transport layer User datagram protocol (UDP) Reliable data transfer

More information

Course on Computer Communication and Networks. Lecture 4 Chapter 3; Transport Layer, Part A

Course on Computer Communication and Networks. Lecture 4 Chapter 3; Transport Layer, Part A Course on Computer Communication and Networks Lecture 4 Chapter 3; Transport Layer, Part A EDA344/DIT 423, CTH/GU Based on the book Computer Networking: A Top Down Approach, Jim Kurose, Keith Ross, Addison-Wesley.

More information

Course on Computer Communication and Networks. Lecture 4 Chapter 3; Transport Layer, Part A

Course on Computer Communication and Networks. Lecture 4 Chapter 3; Transport Layer, Part A Course on Computer Communication and Networks Lecture 4 Chapter 3; Transport Layer, Part A EDA344/DIT 420, CTH/GU Based on the book Computer Networking: A Top Down Approach, Jim Kurose, Keith Ross, Addison-Wesley.

More information

Announcement. Homework 1 due last night, how is that? Will discuss some problems in the lecture next week

Announcement. Homework 1 due last night, how is that? Will discuss some problems in the lecture next week Announcement Homework 1 due last night, how is that? Will discuss some problems in the lecture next week Should have completed at least part II of project 1 Homework 2 will be out next week Review of Previous

More information

Distributed Systems. 5. Transport Protocols

Distributed Systems. 5. Transport Protocols Distributed Systems 5. Transport Protocols Werner Nutt 1 5. Transport Protocols 5.1 Transport-layer Services 5.1 Transport-layer Services 5.2 Multiplexing and Demultiplexing 5.3 Connectionless Transport:

More information

CSCD 330 Network Programming

CSCD 330 Network Programming CSCD 330 Network Programming Lecture 10 Transport Layer Continued Spring 2018 Reading: Chapter 3 Some Material in these slides from J.F Kurose and K.W. Ross All material copyright 1996-2007 1 Last Time.

More information

Lecture 7: Flow Control"

Lecture 7: Flow Control Lecture 7: Flow Control" CSE 123: Computer Networks Alex C. Snoeren No class Monday! Lecture 7 Overview" Flow control Go-back-N Sliding window 2 Stop-and-Wait Performance" Lousy performance if xmit 1 pkt

More information

Foundations of Telematics

Foundations of Telematics Foundations of Telematics Chapter 3 Transport Layer Acknowledgement: These slides have been prepared by J.F. Kurose and K.W. Ross Foundations of Telematics (AMW SS 2010): 03 Transport Layer 1 Chapter 3:

More information

Reliable Data Transfer

Reliable Data Transfer Reliable Data Transfer Kai Shen Reliable Data Transfer What is reliable data transfer? guaranteed arrival no error in order delivery Why is it difficult? unreliable underlying communication channel, which

More information

RSC Part III: Transport Layer 3. TCP

RSC Part III: Transport Layer 3. TCP RSC Part III: Transport Layer 3. TCP Redes y Servicios de Comunicaciones Universidad Carlos III de Madrid These slides are, mainly, part of the companion slides to the book Computer Networking: A Top Down

More information

Distributed Systems. 5. Transport Protocols. Werner Nutt

Distributed Systems. 5. Transport Protocols. Werner Nutt Distributed Systems 5. Transport Protocols Werner Nutt 1 5. Transport Protocols 5.1 Transport-layer Services 5.1 Transport-layer Services 5.2 Multiplexing and Demultiplexing 5.3 Connectionless Transport:

More information

Lecture 5: Flow Control. CSE 123: Computer Networks Alex C. Snoeren

Lecture 5: Flow Control. CSE 123: Computer Networks Alex C. Snoeren Lecture 5: Flow Control CSE 123: Computer Networks Alex C. Snoeren Pipelined Transmission Sender Receiver Sender Receiver Ignored! Keep multiple packets in flight Allows sender to make efficient use of

More information

UNIT IV -- TRANSPORT LAYER

UNIT IV -- TRANSPORT LAYER UNIT IV -- TRANSPORT LAYER TABLE OF CONTENTS 4.1. Transport layer. 02 4.2. Reliable delivery service. 03 4.3. Congestion control. 05 4.4. Connection establishment.. 07 4.5. Flow control 09 4.6. Transmission

More information

PROBLEMSAND EXERCISES

PROBLEMSAND EXERCISES Departamento de Tecnología Electrónica Computer Networking Unit 3: Transport layer PROBLEMSAND EXERCISES Transport Layer 95 Pr1: port numbers Suppose that the client A initiates a TCP connection to a Web

More information

Chapter III: Transport Layer

Chapter III: Transport Layer Chapter III: Transport Layer UG3 Computer Communications & Networks (COMN) Myungjin Lee myungjin.lee@ed.ac.uk Slides copyright of Kurose and Ross rdt2.0 has a fatal flaw! what happens if ACK/NAK corrupted?

More information

Rdt2.0: channel with packet errors (no loss!)

Rdt2.0: channel with packet errors (no loss!) Rdt2.0: channel with packet errors (no loss!) What mechanisms do we need to deal with error? Error detection Add checksum bits Feedback Acknowledgements (ACKs): receiver explicitly tells sender that packet

More information

Lecture 9: Transpor Layer Overview and UDP

Lecture 9: Transpor Layer Overview and UDP Lecture 9: Transpor Layer Overview and UDP COMP 332, Spring 2018 Victoria Manfredi Acknowledgements: materials adapted from Computer Networking: A Top Down Approach 7 th edition: 1996-2016, J.F Kurose

More information

CSCI Topics: Internet Programming Fall 2008

CSCI Topics: Internet Programming Fall 2008 CSCI 491-01 Topics: Internet Programming Fall 2008 Transport Layer Derek Leonard Hendrix College October 15, 2008 Original slides copyright 1996-2007 J.F Kurose and K.W. Ross 1 Chapter 3: Roadmap 3.1 Transport-layer

More information

CSC 8560 Computer Networks: Transport Layer

CSC 8560 Computer Networks: Transport Layer CSC 8560 Computer Networks: Transport Layer Professor Henry Carter Fall 2017 Last Time... Sockets programming API TCP and UDP look different. Remember, there is no connect() in UDP - just start sending

More information

CS 655 System and Network Architectures and Implementation. Module 3 - Transport

CS 655 System and Network Architectures and Implementation. Module 3 - Transport CS 655 System and Network Architectures and Implementation Module 3 - Transport Martin Karsten mkarsten@uwaterloo.ca 3-1 Notice Some slides and elements of slides are taken from third-party slide sets.

More information

Lecture 5. Transport Layer. Transport Layer 1-1

Lecture 5. Transport Layer. Transport Layer 1-1 Lecture 5 Transport Layer Transport Layer 1-1 Agenda The Transport Layer (TL) Introduction to TL Protocols and Services Connectionless and Connection-oriented Processes in TL Unreliable Data Transfer User

More information

CSC 4900 Computer Networks: TCP

CSC 4900 Computer Networks: TCP CSC 4900 Computer Networks: TCP Professor Henry Carter Fall 2017 Project 2: mymusic You will be building an application that allows you to synchronize your music across machines. The details of which are

More information

NWEN 243. Networked Applications. Layer 4 TCP and UDP

NWEN 243. Networked Applications. Layer 4 TCP and UDP NWEN 243 Networked Applications Layer 4 TCP and UDP 1 About the second lecturer Aaron Chen Office: AM405 Phone: 463 5114 Email: aaron.chen@ecs.vuw.ac.nz Transport layer and application layer protocols

More information

Communication Networks

Communication Networks Communication Networks Prof. Laurent Vanbever Exercises week 4 Reliable Transport Reliable versus Unreliable Transport In the lecture, you have learned how a reliable transport protocol can be built on

More information

CS 43: Computer Networks. 16: Reliable Data Transfer October 8, 2018

CS 43: Computer Networks. 16: Reliable Data Transfer October 8, 2018 CS 43: Computer Networks 16: Reliable Data Transfer October 8, 2018 Reading Quiz Lecture 16 - Slide 2 Last class We are at the transport-layer protocol! provide services to the application layer interact

More information

CS 421: Computer Networks SPRING MIDTERM I April 7, minutes

CS 421: Computer Networks SPRING MIDTERM I April 7, minutes CS 421: Computer Networks SPRING 24 MIDTERM I April 7, 24 12 minutes Name: Student No: 1) a) Consider a 1 Mbits/sec channel with a 1 msec one-way propagation delay. We want to transfer a file of size 8

More information

Chapter 2: outline. 2.1 principles of network applications app architectures app requirements

Chapter 2: outline. 2.1 principles of network applications app architectures app requirements Chapter 2: outline 2.1 principles of network applications app architectures app requirements 2.2 Web and HTTP 2.3 FTP 2.4 electronic mail SMTP, POP3, IMAP 2.5 DNS 2.6 P2P applications 2.7 socket programming

More information

Topic 5a Transport. Why a transport layer? Transport Layer" Why a transport layer? " Why a transport layer? " Topic 5 1. Computer Networking

Topic 5a Transport. Why a transport layer? Transport Layer Why a transport layer?  Why a transport layer?  Topic 5 1. Computer Networking Computer Networking Lent Term M/W/F - midday LT in Gates Building Slide Set 4 Andrew W Moore andrewmoore@clcamacuk February 04 Our goals: understand principles behind transport layer services: mulnplexing/

More information

3.4 Principles of Reliable Data Transfer

3.4 Principles of Reliable Data Transfer 204 CHAPTER 3 TRANSPORT LAYER provides error checking, it does not do anything to recover from an error. Some implementations of UDP simply discard the damaged segment; others pass the damaged segment

More information

Chapter 3 Transport Layer

Chapter 3 Transport Layer Chapter 3 Transport Layer These slides are adapted from the original slides provided by J.Kurose and K.W Ross. All material copyright 1996-2012 J.F Kurose and K.W. Ross, All Rights Reserved Computer Networking:

More information

The GBN sender must respond to three types of events:

The GBN sender must respond to three types of events: Go-Back-N (GBN) In a Go-Back-N (GBN) protocol, the sender is allowed to transmit several packets (when available) without waiting for an acknowledgment, but is constrained to have no more than some maximum

More information

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

CMPE 150/L : Introduction to Computer Networks. Chen Qian Computer Engineering UCSC Baskin Engineering Lecture 8 CMPE 150/L : Introduction to Computer Networks Chen Qian Computer Engineering UCSC Baskin Engineering Lecture 8 1 A lot of students have been having difficulty seeing the HTTP packets generated when navigating

More information

Chapter 3 Transport Layer

Chapter 3 Transport Layer Chapter 3 Transport Layer A note on the use of these Powerpoint slides: We re making these slides freely available to all (faculty, students, readers). They re in PowerPoint form so you see the animations;

More information

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

COMP 431 Internet Services & Protocols. Transport Layer Protocols & Services Outline. The Transport Layer Reliable data delivery & flow control in TCP COMP 431 Internet Services & Protocols Transport Layer Protocols & Services Outline The Transport Layer Reliable data delivery & flow control in TCP Jasleen Kaur Fundamental transport layer services» Multiplexing/Demultiplexing»

More information

Lecture - 14 Transport Layer IV (Reliability)

Lecture - 14 Transport Layer IV (Reliability) Computer Networks and Internet Protocol Prof. Sandip Chakraborthy Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur Lecture - 14 Transport Layer IV (Reliability)

More information

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

Lecture 08: The Transport Layer (Part 2) The Transport Layer Protocol (TCP) Dr. Anis Koubaa NET 331 Computer Networks Lecture 08: The Transport Layer (Part 2) The Transport Layer Protocol (TCP) Dr. Anis Koubaa Reformatted slides from textbook Computer Networking a top-down appraoch, Fifth Edition

More information

Department of Computer and IT Engineering University of Kurdistan. Data Communication Netwotks (Graduate level) Data Link Layer

Department of Computer and IT Engineering University of Kurdistan. Data Communication Netwotks (Graduate level) Data Link Layer Department of Computer and IT Engineering University of Kurdistan Data Communication Netwotks (Graduate level) Data Link Layer By: Dr. Alireza Abdollahpouri Data Link Layer 2 Data Link Layer Application

More information

Announcements. No book chapter for this topic! Slides are posted online as usual Homework: Will be posted online Due 12/6

Announcements. No book chapter for this topic! Slides are posted online as usual Homework: Will be posted online Due 12/6 Announcements No book chapter for this topic! Slides are posted online as usual Homework: Will be posted online Due 12/6 Copyright c 2002 2017 UMaine Computer Science Department 1 / 33 1 COS 140: Foundations

More information

Page 1. Goals for Today" Discussion" Example: Reliable File Transfer" CS162 Operating Systems and Systems Programming Lecture 11

Page 1. Goals for Today Discussion Example: Reliable File Transfer CS162 Operating Systems and Systems Programming Lecture 11 Goals for Today" CS162 Operating Systems and Systems Programming Lecture 11 Reliability, Transport Protocols" Finish e2e argument & fate sharing Transport: TCP/UDP Reliability Flow control October 5, 2011

More information

Lecture 7: Sliding Windows. CSE 123: Computer Networks Geoff Voelker (guest lecture)

Lecture 7: Sliding Windows. CSE 123: Computer Networks Geoff Voelker (guest lecture) Lecture 7: Sliding Windows CSE 123: Computer Networks Geoff Voelker (guest lecture) Please turn in HW #1 Thank you From last class: Sequence Numbers Sender Receiver Sender Receiver Timeout Timeout Timeout

More information

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

32 bits. source port # dest port # sequence number acknowledgement number not used. checksum. Options (variable length) Chapter 3 outline 3.1 Transport-layer services 3.2 Multiplexing and demultiplexing 3.3 Connectionless transport: UDP 3.4 Principles of reliable data transfer 3.5 Connectionoriented transport: TCP segment

More information

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

Chapter 3 outline. 3.5 Connection-oriented transport: TCP. 3.6 Principles of congestion control 3.7 TCP congestion control Chapter 3 outline 3.1 Transport-layer services 3.2 Multiplexing and demultiplexing 3.3 Connectionless transport: UDP 3.4 Principles of reliable data transfer 3.5 Connection-oriented transport: TCP segment

More information

CS519: Computer Networks. Lecture 5, Part 1: Mar 3, 2004 Transport: UDP/TCP demux and flow control / sequencing

CS519: Computer Networks. Lecture 5, Part 1: Mar 3, 2004 Transport: UDP/TCP demux and flow control / sequencing : Computer Networks Lecture 5, Part 1: Mar 3, 2004 Transport: UDP/TCP demux and flow control / sequencing Recall our protocol layers... ... and our protocol graph IP gets the packet to the host Really

More information

CSE 489/589 Programming Assignment 2

CSE 489/589 Programming Assignment 2 CSE 489/589 Programming Assignment 2 Objective In a given simulator, implement three reliable data transport protocols: Alternating-Bit (ABT), Go-Back-N (GBN), and Selective- Repeat (SR). 2 Outline Part

More information

Fall 2012: FCM 708 Bridge Foundation I

Fall 2012: FCM 708 Bridge Foundation I Fall 2012: FCM 708 Bridge Foundation I Prof. Shamik Sengupta Instructor s Website: http://jjcweb.jjay.cuny.edu/ssengupta/ Blackboard Website: https://bbhosted.cuny.edu/ Intro to Computer Networking Transport

More information

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

Chapter 3: Transport Layer. Chapter 3 Transport Layer. Chapter 3 outline. Transport services and protocols Chapter 3 Transport Layer A note on the use of these ppt slides: We re making these slides freely available to all (faculty, students, readers). They re in PowerPoint form so you can add, modify, and delete

More information

Computer Networking. Lent Term M/W/F 11- midday LT1 in Gates Building. Slide Set 4. Andrew W. Moore

Computer Networking. Lent Term M/W/F 11- midday LT1 in Gates Building. Slide Set 4. Andrew W. Moore Computer Networking Lent Term M/W/F 11- midday LT1 in Gates Building Slide Set 4 Andrew W. Moore andrew.moore@cl.cam.ac.uk February 2014 1 Topic 5a Transport Our goals: understand principles behind transport

More information

Chapter III: Transport Layer

Chapter III: Transport Layer Chapter III: Transport Layer UG3 Computer Communications & Networks (COMN) Mahesh Marina mahesh@ed.ac.uk Slides thanks to Myungjin Lee and copyright of Kurose and Ross Transport services and protocols

More information

Primi%ves for Achieving Reliability 3035/GZ01 Networked Systems Kyle Jamieson

Primi%ves for Achieving Reliability 3035/GZ01 Networked Systems Kyle Jamieson Primi%ves for Achieving Reliability 3035/GZ01 Networked Systems Kyle Jamieson Department of Computer Science University College London Today Two fundamental problems in networking: 1. How can two en,,es

More information

Lecture 6: Reliable Transmission. CSE 123: Computer Networks Alex Snoeren (guest lecture) Alex Sn

Lecture 6: Reliable Transmission. CSE 123: Computer Networks Alex Snoeren (guest lecture) Alex Sn Lecture 6: Reliable Transmission CSE 123: Computer Networks Alex Snoeren (guest lecture) Alex Sn Lecture 6 Overview Finishing Error Detection Cyclic Remainder Check (CRC) Handling errors Automatic Repeat

More information

Lecture 8. TCP/IP Transport Layer (2)

Lecture 8. TCP/IP Transport Layer (2) Lecture 8 TCP/IP Transport Layer (2) Outline (Transport Layer) Principles behind transport layer services: multiplexing/demultiplexing principles of reliable data transfer learn about transport layer protocols

More information

Chapter 3 Transport Layer

Chapter 3 Transport Layer Chapter 3 Transport Layer Reti degli Elaboratori Canale AL Prof.ssa Chiara Petrioli a.a. 2013/2014 We thank for the support material Prof. Kurose-Ross All material copyright 1996-2012 J.F Kurose and K.W.

More information

CSE 123: Computer Networks Alex C. Snoeren. HW 1 due NOW!

CSE 123: Computer Networks Alex C. Snoeren. HW 1 due NOW! CSE 123: Computer Networks Alex C. Snoeren HW 1 due NOW! Automatic Repeat Request (ARQ) Acknowledgements (ACKs) and timeouts Stop-and-Wait Sliding Window Forward Error Correction 2 Link layer is lossy

More information

CS 640 Introduction to Computer Networks. Role of data link layer. Today s lecture. Lecture16

CS 640 Introduction to Computer Networks. Role of data link layer. Today s lecture. Lecture16 Introduction to Computer Networks Lecture16 Role of data link layer Service offered by layer 1: a stream of bits Service to layer 3: sending & receiving frames To achieve this layer 2 does Framing Error

More information

CSC 401 Data and Computer Communications Networks

CSC 401 Data and Computer Communications Networks CSC 401 Data and Computer Communications Networks Transport Layer Connection Oriented Transport: TCP Sec 3.5 Prof. Lina Battestilli Fall 2017 Transport Layer Chapter 3 Outline 3.1 Transport-layer Services

More information

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

Lecture 3 The Transport Control Protocol (TCP) Antonio Cianfrani DIET Department Networking Group netlab.uniroma1.it Lecture 3 The Transport Control Protocol (TCP) Antonio Cianfrani DIET Department Networking Group netlab.uniroma1.it TCP segment structure URG: urgent data (generally not used) ACK: ACK # valid PSH: push

More information

Chapter 3 Transport Layer

Chapter 3 Transport Layer Chapter 3 Transport Layer A note on the use of these ppt slides: We re making these slides freely available to all (faculty, students, readers). They re in PowerPoint form so you can add, modify, and delete

More information

No book chapter for this topic! Slides are posted online as usual Homework: Will be posted online Due 12/6

No book chapter for this topic! Slides are posted online as usual Homework: Will be posted online Due 12/6 Announcements No book chapter for this topic! Slides are posted online as usual Homework: Will be posted online Due 12/6 Copyright c 2002 2017 UMaine School of Computing and Information S 1 / 33 COS 140:

More information

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

TCP. TCP: Overview. TCP Segment Structure. Maximum Segment Size (MSS) Computer Networks 10/19/2009. CSC 257/457 - Fall TCP Kai Shen 10/19/2009 CSC 257/457 - Fall 2009 1 TCP: Overview connection-oriented: handshaking (exchange of control msgs) to initialize sender, receiver state before data exchange pipelined: multiple

More information

Transport Layer: outline

Transport Layer: outline Transport Layer: outline Transport-layer services Multiplexing and demultiplexing Connectionless transport: UDP Principles of reliable data transfer Connection-oriented transport: TCP Segment structure

More information

Data Link Layer, Part 5 Sliding Window Protocols. Preface

Data Link Layer, Part 5 Sliding Window Protocols. Preface Data Link Layer, Part 5 Sliding Window Protocols These slides are created by Dr. Yih Huang of George Mason University. Students registered in Dr. Huang's courses at GMU can make a single machine-readable

More information