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

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

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

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.

EE 122: Error detection and reliable transmission. Ion Stoica September 16, 2002

High Level View. EE 122: Error detection and reliable transmission. Overview. Error Detection

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

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

Point-to-Point Links. Outline Encoding Framing Error Detection Sliding Window Algorithm. Fall 2004 CS 691 1

Lecture 5. Homework 2 posted, due September 15. Reminder: Homework 1 due today. Questions? Thursday, September 8 CS 475 Networks - Lecture 5 1

CSCI-1680 Link Layer Reliability Rodrigo Fonseca

Data Link Control Protocols

Reliable Transmission

Networking Link Layer

CPE 448/548 Exam #1 (100 pts) February 14, Name Class: 448

Principles of Reliable Data Transfer

CSCI-1680 Link Layer Reliability John Jannotti

2.4 Error Detection Bit errors in a frame will occur. How do we detect (and then. (or both) frames contains an error. This is inefficient (and not

Reliable Byte-Stream (TCP)

Direct Link Networks (II)

CSE 461: Framing, Error Detection and Correction

CPE 548 Exam #1 (50 pts) February 17, 2016

Islamic University of Gaza Faculty of Engineering Department of Computer Engineering ECOM 4021: Networks Discussion. Chapter 2.

CSCI-1680 Link Layer I Rodrigo Fonseca

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

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

I. INTRODUCTION. each station (i.e., computer, telephone, etc.) directly connected to all other stations

The Transport Layer Reliability

Data Link Layer (1) Networked Systems 3 Lecture 6

L5: Building Direct Link Networks III. Hui Chen, Ph.D. Dept. of Engineering & Computer Science Virginia State University Petersburg, VA 23806

CSMC 417. Computer Networks Prof. Ashok K Agrawala Ashok Agrawala Set 4. September 09 CMSC417 Set 4 1

TCP over wireless links

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

End-to-End Protocols. End-to-End Protocols

Network Management & Monitoring

Telecom Systems Chae Y. Lee. Contents. Flow Control Error Detection/Correction Link Control (Error Control) Link Performance (Utility)

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

Problem Statement. Physical and Data Link Layer Overview. Five Tasks Encoding. Make two computers talk to each other

CSE 123: Computer Networks

Lecture 7: Flow Control"

Solutions for Chapter similar to 1 and 3

Applied Networks & Security

Inst: Chris Davison

1999, Scott F. Midkiff

DATA LINK LAYER UNIT 7.

The Data Link Layer Chapter 3

EE 122 Fall st Midterm. Professor: Lai Stoica

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

Answers to Sample Questions on Transport Layer

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

Comparison of ISO-OSI and TCP/IP Suit. Functions of Data Link Layer:

Topics. TCP sliding window protocol TCP PUSH flag TCP slow start Bulk data throughput

Data Communication & Computer Networks INFO

ETSF10 Internet Protocols Transport Layer Protocols

CS 5520/ECE 5590NA: Network Architecture I Spring Lecture 13: UDP and TCP

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

PART III. Data Link Layer MGH T MGH C I 204

Reliable Transport I: Concepts and TCP Protocol

Basic Reliable Transport Protocols

Chapter 3: Transport Layer Part A

The data link layer has a number of specific functions it can carry out. These functions include. Figure 2-1. Relationship between packets and frames.

Lecture 6. TCP services. Internet Transport Layer: introduction to the Transport Control Protocol (TCP) A MUCH more complex transport

Problem 7. Problem 8. Problem 9

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

Transport Layer Marcos Vieira

Reliable Transport I: Concepts and TCP Protocol

Lecture 15: TCP over wireless networks. Mythili Vutukuru CS 653 Spring 2014 March 13, Thursday

The Data Link Layer Chapter 3

2.1 CHANNEL ALLOCATION 2.2 MULTIPLE ACCESS PROTOCOLS Collision Free Protocols 2.3 FDDI 2.4 DATA LINK LAYER DESIGN ISSUES 2.5 FRAMING & STUFFING

Transport Layer (TCP/UDP)

The Transmission Control Protocol (TCP)

UNIT IV -- TRANSPORT LAYER

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

Overview. Data Link Technology. Role of the data-link layer. Role of the data-link layer. Function of the physical layer

CMPE 257: Wireless and Mobile Networking

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

Advanced Computer Networks. Rab Nawaz Jadoon DCS. Assistant Professor COMSATS University, Lahore Pakistan. Department of Computer Science

NWEN 243. Networked Applications. Layer 4 TCP and UDP

Problem Set Name the 7 OSI layers and give the corresponding functionalities for each layer.

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

INF Data Communication Data Link Layer

Network Management & Monitoring Network Delay

Question 1 (6 points) Compare circuit-switching and packet-switching networks based on the following criteria:

Sequence Number. Acknowledgment Number. Data

Data Link Layer: Overview, operations

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

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

Network Protocols. Transmission Control Protocol (TCP) TDC375 Autumn 2009/10 John Kristoff DePaul University 1

Computer Network (2012 Spring) Homework Answer. Chapter2

TDTS06: Computer Networks

2IC10 Computer Networks Assignments week 4

4. Error correction and link control. Contents

Analysis of TCP Latency over Wireless Links Supporting FEC/ARQ-SR for Error Recovery

Data Communication Networks Final

COMPUTER NETWORKS - Window protocols

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

COMPUTER NETWORKS - Window protocols

Transport Layer PREPARED BY AHMED ABDEL-RAOUF

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

Transcription:

Direct Link Communication I: Basic Techniques Link speed unit: bps abstraction Data Transmission ignore carrier frequency, coding etc. Point-to-point link: wired or wireless includes broadcast case

Interested in completion time: time elapsed between sending/receiving first bit Single bit: L/SOL (lower bound) latency (or propagation delay) optical fiber, wireless: exact Multiple, say S, bits: L/SOL + S/B latency + transmission time Latency vs. transmission time: which dominates? a lot to send, a little to send,... satellite, Zigbee, WLAN, broadband WAN

Reliable Transmission Principal methodology: ARQ (Automatic Repeat request) use retransmission used in both wired/wireless function duplication link layer, transport layer, etc. alternative: FEC not assured hybrid schemes

Three components: timer acknowledgment (ACK) retransmit data timer ACK

Stop-and-Wait Assumption: Frame is lost due to corruption; discarded by NIC after error detection. data data timeout ACK timeout data ACK time time data data timeout ACK data timeout ACK data ACK ACK time time

Issue of RTT (Round-Trip Time) & timer management: what is proper value of timer? RTT estimation easier for single link RTT is more well-behaved more difficult for multi-hop path in internetwork latency + queueing effect

Another key problem: not keeping the pipe full. delay-bandwidth product volume of data travelling on the link High throughput: want to keep the pipe full Stop-and-wait throughput (bps): RTT frame size (bits) throughput = frame size / RTT

Ex.: Link BW 1.5 Mbps, 45 ms RTT delay-bandwidth product: 1.5 Mbps 45 ms = 67.5 kb 8kB if frame size 1 kb, then throughput: 1024 8/0.045 = 182 kbps utilization: only 182 kbps/1500 kbps = 0.121 Solution: increase frame size brute increase of frame size can be problematic bully problem existing LAN frame standards (legacy compatible) send blocks of data, i.e., sequence of frames

Sliding Window Protocol Issues: send window/block of data Shield application process from reliability management chore exported semantics: continuous byte stream simple app abstraction: e.g., read system call Both sender and receiver have limited buffer capacity efficiency: space-bounded computation task: plug holes & flush Sender Dropped 1 2 Receiver 1 2 3 4 5 3 4 5

Simple solution when receiver has infinite buffer capacity: sender keeps sending at maximum speed receiver informs sender of holes i.e., negative ACK sender retransmits missing frames sender s buffer capacity? need for positive ACK? With finite buffer: issue of bookkeeping Flow control & congestion control: sending too much is counterproductive regulate sending rate

Set-up: Sender: SWS LAR LFS Receiver: RWS NFE LFA SWS: Sender Window Size (sender buffer size) RWS : Receiver Window Size (receiver buffer size) LAR: Last ACK Received LFS: Last Frame Sent NFE: Next Frame Expected LFA: Last Frame Acceptable

Assign sequence numbers to frames. IDs Maintain invariants: LFA NFE+1 RWS LFS LAR + 1 SWS Sender: Receive ACK with sequence number X Forwind LAR to X Flush buffer up to (but not including) LAR Send up to SWS (LFS LAR + 1) frames Update LFS

Receiver: Receive packet with sequence number Y Forwind to (new) first hole & update NFE NFE need not be Y +1 Send cumulative ACK (i.e., NFE) Flush buffer up to (but not including) NFE to application Update LFA NFE + RWS 1

ACK variants: piggyback negative ACKs selective ACKs Sequence number wrap-around problem: SWS < (MaxSeqNum + 1)/2. note: stop-and-wait is special binary case

Error Detection and Correction recall: reliable transmission over noisy channel Key problem: sender wishes to send a; transmits code word w a receiver receives w due to noise, w may, or may not, be equal to w a would like to detect error has occurred would like to correct error

Error detection problem: determine if w is a valid code word i.e., for some symbol c Σ, F (c) =w e.g., parity bit in ASCII transmission odd or even parity limitation? Error correction problem: even if w w a, recover symbol a from scrambled w correction is tougher than detection how to correct single errors for ASCII transmission? e.g., assume 21 bits available what about 14 bits?

Conceptual approach to detection & correction: Error detection: valid/legal code word set S = {w a : a Σ} can detect k-bit errors if corrupted w does not belong to S for all k-bit error patterns flipped code word cannot impersonate as valid What kind of S can satisfy these properties? e.g., ASCII with 1-bit, 2-bit,..., k-bit flips intuition?

Key idea: valid code words should not look alike well-separatedness distance between two binary strings? Error correction: suppose w a has turned into w under k-bit errors for all b Σ, calculate d(w b,w) use Hamming distance e.g., d(1011, 1101) = 2 pick c Σ with smallest d(w c,w) as answer

Ex.: 0 000 and 1 111 want to send 0, hence send 000 010 arrives: d(010, 000) = 1 & d(010, 111) = 2 conclude 000 was corrupted into 010 original data bit: 0 Obviously not fool-proof... the larger k, the more distant the code words need a roomier playing area imbed valid/legal code words

Pictorially: ball of radius r centered at w a B r (w a )={w : d(w a,w) r} well-separated code word set S layout If k bit flips, sufficient conditions for error detection and correction in terms of d(w a,w b ) for all a, b Σ?

Network protocol context: different approach to detection vs. correction error detection: use checksum and CRC codes error correction: use retransmission humans? can also use FEC; for real-time data Internet checksum: group message into 16-bit words; calculate their sum in one s complement; append checksum to message. problem?