Lecture 7: Flow & Media Access Control"

Similar documents
Lecture 7: Flow Control"

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

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

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

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

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

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

Reliable Transport : Fundamentals of Computer Networks Bill Nace

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

Data Link Layer: Overview, operations

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

Principles of Reliable Data Transfer

Reliable Data Transfer

ERROR AND FLOW CONTROL. Lecture: 10 Instructor Mazhar Hussain

ECE697AA Lecture 3. Today s lecture

Data Link Layer, Part 5 Sliding Window Protocols. Preface

CHANNEL CODING 1. Introduction

Data Link Layer. Goals of This Lecture. Engineering Questions. Outline of the Class

CSC 401 Data and Computer Communications Networks

CSCI-1680 Link Layer Reliability John Jannotti

Link Layer: Retransmissions

Link Layer. (continued)

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

CSCI-1680 Link Layer Reliability Rodrigo Fonseca

ECE 4450:427/527 - Computer Networks Spring 2017

Computer Network. Direct Link Networks Reliable Transmission. rev /2/2004 1

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

Direct Link Networks (II)

Networking Link Layer

Data Link Control Protocols

CS 43: Computer Networks. 27: Media Access Contd. December 3, 2018

TCP over wireless links

CSCD 330 Network Programming

Communication Networks

Data Communications. Automatic Repeat Request Medium Access Control

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

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

ELEN Network Fundamentals Lecture 15

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

Lecture 10: Transpor Layer Principles of Reliable Data Transfer

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

16.682: Communication Systems Engineering. Lecture 17. ARQ Protocols

CMPE 257: Wireless and Mobile Networking

CSE 461: Introduction to Computer Communication Networks. Chunjong Park

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

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

STEVEN R. BAGLEY PACKETS

Basic Reliable Transport Protocols

Networked Systems and Services, Fall 2017 Reliability with TCP

ECE 435 Network Engineering Lecture 10

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

Chapter 11 Data Link Control 11.1

Improving Reliable Transport and Handoff Performance in Cellular Wireless Networks

The Data Link Layer Chapter 3

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

Message, Segment, Packet, and Frame Link-layer services Encoding, framing, error detection, transmission control Error correction and flow control

rdt2.0 has a fatal flaw!

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

Data Link Layer: Multi Access Protocols

Physical Layer. Medium Access Links and Protocols. Point-to-Point protocols. Modems: Signaling. Modems Signaling. Srinidhi Varadarajan

Networked Systems and Services, Fall 2018 Chapter 3

Networked Systems and Services, Fall 2018 Chapter 2. Jussi Kangasharju Markku Kojo Lea Kutvonen

TCP: Flow and Error Control

Reliable Transport I: Concepts and TCP Protocol

Chapter 3: Transport Layer Part A

1-1. Switching Networks (Fall 2010) EE 586 Communication and. November 8, Lecture 30

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

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

CSCI-1680 Link Layer I Rodrigo Fonseca

The Transport Layer Multiplexing, Error Detection, & UDP

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

Lecture 11: Transport Layer Reliable Data Transfer and TCP

Goals of Today s Lecture. Adaptors Communicating

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

Sliding Window Protocols, Connection Management, and TCP Reliability

UNIT IV -- TRANSPORT LAYER

Links Reading: Chapter 2. Goals of Todayʼs Lecture. Message, Segment, Packet, and Frame

The Data Link Layer Chapter 3

Links. CS125 - mylinks 1 1/22/14

Transport Layer (TCP/UDP)

DualRTT: Enhancing TCP Performance During Delay Spikes

DATA LINK LAYER UNIT 7.

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

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

CSC 4900 Computer Networks: The Link Layer

Question. Reliable Transport: The Prequel. Don t parse my words too carefully. Don t be intimidated. Decisions and Their Principles.

Lecture 11 Overview. Last Lecture. This Lecture. Next Lecture. Medium Access Control. Flow and error control Source: Sections , 23.

NWEN 243. Networked Applications. Layer 4 TCP and UDP

The GBN sender must respond to three types of events:

Chapter Six. Errors, Error Detection, and Error Control. Data Communications and Computer Networks: A Business User s Approach Seventh Edition

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

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

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

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

Chapter 3 Transport Layer

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

Reliable Transmission

Transcription:

Lecture 7: Flow & Media Access Control" CSE 123: Computer Networks Alex C. Snoeren HW 2 due next Wednesday!

Lecture 7 Overview" Flow control Go-back-N Sliding window Methods to share physical media: multiple access Fixed partitioning Random access Channelizing mechanisms 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 2 Data 3 ACK 0 ACK 2 ACK 3 Data 2 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 2 Data 3 ACK 0 Data 2 Data 3 ACK 0 ACK 2 ACK 3 Data 2 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 2 Data 3 Data 4 Data 2 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 2 Data 3 Data 4 ACK 0 Receiver Don t bother waiting Receipt of duplicate acknowledgement (dupack) indicates loss Retransmit immediately Data 2 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

Forward Error Correction" Use erasure codes to redundantly encode k data frames into m>k encoded frames Why do it at the frame level? E.g., Reed Solomon Codes, Tornado codes Multicast/broadcast encoded frames speculatively A receiver can reconstruct message from any k frames in the set of m encoded frames 14

A Digital Fountain " File Transmission 0 hours 1 hour 2 hours 3 hours User 1 User 2 4 hours 5 hours 15

Fixed Partitioning" Need to share media with multiple nodes (n) Multiple simultaneous conversations A simple solution Divide the channel into multiple, separate channels Channels are physically separate Bitrate of the channel is split across channels Nodes can only send/receive on their assigned channel Several different ways to do it Multiple Access madlibs 16

Frequency Division (FDMA)" Divide bandwidth of f Hz into n channels each with bandwidth f/n Hz Easy to implement, but unused subchannels go idle Used by traditional analog cell phone service, radio, TV Amplitude Amplitude Frequency Frequency 17

Time Division (TDMA)" Divide channel into rounds of n time slots each Assign different hosts to different time slots within a round Unused time slots are idle Used in GSM cell phones & digital cordless phones Example with 1-second rounds n=4 timeslots (250ms each) per round Host # 1 2 3 1 2 3 4 2 4 1 sec 1 sec 1 sec 18

Code Division (CDMA)" Do nothing to physically separate the channels All stations transmit at same time in same frequency bands One of so-called spread-spectrum techniques Sender modulates their signal on top of unique code Sort of like the way Manchester modulates on top of clock The bit rate of resulting signal much lower than entire channel Receiver applies code filter to extract desired sender All other senders seem like noise with respect to signal Used in newer digital cellular technologies 19

Partitioning Visualization" FDMA TDMA power power CDMA power Courtesy Takashi Inoue 20

For Next Time" Keep reading 2.6 in P&D Start on Homework 2 Keep going on the project 21