Lecture 7: Flow Control"

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

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

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

Lecture 7: Flow & Media Access Control"

Lecture 4: CRC & Reliable Transmission. Lecture 4 Overview. Checksum review. CRC toward a better EDC. Reliable Transmission

Communications Software. CSE 123b. CSE 123b. Spring Lecture 3: Reliable Communications. Stefan Savage. Some slides couresty David Wetherall

The Transport Layer Reliability

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

Principles of Reliable Data Transfer

Reliable Transport : Fundamentals of Computer Networks Bill Nace

CS43: Computer Networks Reliable Data Transfer. Kevin Webb Swarthmore College October 5, 2017

ERROR AND FLOW CONTROL. Lecture: 10 Instructor Mazhar Hussain

ECE697AA Lecture 3. Today s lecture

Reliable Data Transfer

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

CSE/EE 461. Sliding Windows and ARQ. Last Time. This Time. We finished up the Network layer Internetworks (IP) Routing (DV/RIP, LS/OSPF)

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

EECS 122, Lecture 19. Reliable Delivery. An Example. Improving over Stop & Wait. Picture of Go-back-n/Sliding Window. Send Window Maintenance

CSC 401 Data and Computer Communications Networks

CSE 461: Introduction to Computer Communication Networks. Chunjong Park

CSCD 330 Network Programming

Data Link Control Protocols

Basic Reliable Transport Protocols

The flow of data must not be allowed to overwhelm the receiver

rdt2.0 has a fatal flaw!

Chapter 3: Transport Layer Part A

Data Link Layer, Part 5 Sliding Window Protocols. Preface

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

Recap. More TCP. Congestion avoidance. TCP timers. TCP lifeline. Application Presentation Session Transport Network Data Link Physical

The Transport Layer Multiplexing, Error Detection, & UDP

Sliding Window Protocols, Connection Management, and TCP Reliability

Chapter 11 Data Link Control 11.1

Direct Link Networks (II)

16.682: Communication Systems Engineering. Lecture 17. ARQ Protocols

CMSC 417. Computer Networks Prof. Ashok K Agrawala Ashok Agrawala. October 11, 2018

Announcements. 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

TCP over wireless links

Lecture 10: Transpor Layer Principles of Reliable Data Transfer

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

6.033 Lecture 12 3/16/09. Last time: network layer -- how to deliver a packet across a network of multiple links

Error Detection Codes. Error Detection. Two Dimensional Parity. Internet Checksum Algorithm. Cyclic Redundancy Check.

Chapter 3 Transport Layer

STEVEN R. BAGLEY PACKETS

Internet Networking recitation #10 TCP New Reno Vs. Reno

DualRTT: Enhancing TCP Performance During Delay Spikes

ECE 435 Network Engineering Lecture 10

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

Lecture 11: Transport Layer Reliable Data Transfer and TCP

Reliable Transport I: Concepts and TCP Protocol

ELEN Network Fundamentals Lecture 15

10.1 REVIEW QUESTIONS

NWEN 243. Networked Applications. Layer 4 TCP and UDP

Impact of transmission errors on TCP performance. Outline. Random Errors

Chapter III: Transport Layer

Computer Networks. Sándor Laki ELTE-Ericsson Communication Networks Laboratory

Overview. TCP congestion control Computer Networking. TCP modern loss recovery. TCP modeling. TCP Congestion Control AIMD

Communication Networks

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

Direct Link Communication I: Basic Techniques. Data Transmission. ignore carrier frequency, coding etc.

Networking Link Layer

Networked Systems and Services, Fall 2018 Chapter 3

ICS 451: Today's plan. Sliding Window Reliable Transmission Acknowledgements Windows and Bandwidth-Delay Product Retransmission Timers Connections

CSCE 463/612 Networks and Distributed Processing Spring 2018

Chapter 3: Transport Layer

Networked Systems and Services, Fall 2017 Reliability with TCP

CRC. Implementation. Error control. Software schemes. Packet errors. Types of packet errors

Transport Layer (TCP/UDP)

Chapter 3 Transport Layer

UNIT IV -- TRANSPORT LAYER

TCP: Flow and Error Control

CMSC 332 Computer Networks Reliable Data Transfer

Contents. CIS 632 / EEC 687 Mobile Computing. TCP in Fixed Networks. Prof. Chansu Yu

CSC 4900 Computer Networks: TCP

Mobile Transport Layer Lesson 10 Timeout Freezing, Selective Retransmission, Transaction Oriented TCP and Explicit Notification Methods

CMPE 257: Wireless and Mobile Networking

Flow Control, and Congestion Control

Chapter 3. The Data Link Layer. Wesam A. Hatamleh

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

Administrivia. FEC vs. ARQ. Reliable Transmission FEC. Last time: Framing Error detection. FEC provides constant throughput and predictable delay

TDTS06: Computer Networks

Transport Layer Marcos Vieira

Chapter 11 Data Link Control 11.1

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

The GBN sender must respond to three types of events:

Computer Networking Introduction

CS457 Transport Protocols. CS 457 Fall 2014

Outline. EEC-484/584 Computer Networks. Data Link Layer Design Issues. Framing. Lecture 6. Wenbing Zhao Review.

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

Chapter 11 Data Link Control 11.1

Outline Computer Networking. TCP slow start. TCP modeling. TCP details AIMD. Congestion Avoidance. Lecture 18 TCP Performance Peter Steenkiste

The Data Link Layer Chapter 3

DATA LINK LAYER UNIT 7.

Fast Retransmit. Problem: coarsegrain. timeouts lead to idle periods Fast retransmit: use duplicate ACKs to trigger retransmission

CS321: Computer Networks Congestion Control in TCP

CSC 4900 Computer Networks: Reliable Data Transport

TCP : Fundamentals of Computer Networks Bill Nace

The Transport Layer: TCP & Reliable Data Transfer

Announcements Computer Networking. Outline. Transport Protocols. Transport introduction. Error recovery & flow control. Mid-semester grades

Transport Protocols Reading: Sections 2.5, 5.1, and 5.2

Transcription:

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 << prop. delay How bad? Want to utilize all available bandwidth Need to keep more data in flight How much? Remember the bandwidth-delay product? Also limited by quality of timeout (how long?) 3

Pipelined Transmission" Sender Receiver Sender Receiver Data 0 Data 0 Data 1 Data 1 Data 3 ACK 0 ACK 2 ACK 3 Data 3 ACK 0 Ignored! Keep multiple packets in flight Allows sender to make efficient use of the link Sequence numbers ensure receiver can distinguish frames Duplicate acknowledgements signal loss ACK the highest consecutive frame received Ignore (for now) non-sequential frames 4

Go-Back-N" Sender Receiver Sender Receiver Data 0 Data 0 Data 1 Data 1 Data 3 ACK 0 Data 3 ACK 0 ACK 2 ACK 3 Data 4 Retransmit from point of loss upon duplicate ACK Packets between loss event and retransmission are ignored Also go-back-n if a timeout event occurs ACKs are cumulative Acknowledge current frame and all previous ones 5

Send Window" T imeout Sender Data 0 Data 1 Data 3 Data 4 Data 3 Data 4 ACK 0 Receiver Bound on number of outstanding packets Window opens upon receipt of new ACK Window resets entirely upon a timeout Limits amount of waste Still lots of duplicates We can do better with selective retransmission Go-Back-N Example with window size 3 6

Sliding Window" Single mechanism that supports: Multiple outstanding packets Reliable delivery In-order delivery Flow control At the core of all modern ARQ protocols Stop-and-Wait is a special case Receive window size of one 7

Sliding Window Sender" Sender: Window Size Window bounds outstanding unacked data Implies need for buffering at sender Last ACK applies to in-order data What to do on a timeout? Last ACK Last Sent Go-Back-N: send all unacknowledged data on timeout Selective Repeat: timer per packet, resend as needed 8

Sliding Window Receiver" Receiver: Receive Window Receiver buffers too: data may arrive out-of-order or faster than can be consumed flow control Receiver ACK choices: Last Received Largest Accepted Cumulative, Selective (exempt missing frames), Negative 9

Deciding When to Retransmit" How do you know when a packet has been lost? Ultimately sender uses timers to decide when to retransmit But how long should the timer be? Too long: inefficient (large delays, poor use of bandwidth) Too short: may retransmit unnecessarily (causing extra traffic) Right timer is based on the round-trip time (RTT) Which can vary greatly for reasons well see later 10

Can we shortcut the timeout?" Timeout is long in practice If packets are usually in order then out-of-order ACKs imply that a packet was lost Negative ACK» Receiver requests missing packet Fast retransmit» When sender receives multiple duplicate acknowledgements resends missing packet 11

Fast retransmit" Sender Data 0 Data 1 Data 3 Data 4 ACK 0 Receiver Don t bother waiting Receipt of duplicate acknowledgement (dupack) indicates loss Retransmit immediately Used in TCP Need to be careful if frames can be reordered 12

Is ARQ the Only Way?" No. We could use redundancy Send additional data to compensate for lost packets Why not use retransmission? Broadcast media with lots of receivers» If each one ACK/NAK then hard to scale Lots of messages Lots of state» Heterogeneous receivers E.g., variable quality wireless reception Highly lossy or very long delay channels (e.g., satellite) 13

For Next Time" Keep reading 2.6 in P&D Keep going on the project NO CLASS MONDAY! 14