Adapted from Tanenbaum's Slides for Computer Networking, 4e The Data Link Layer Chapter 3.

Slides:



Advertisements
Similar presentations
Chapter 3 The Data Link Layer.
Advertisements

The Data Link Layer Chapter 3. Data Link Layer Design Issues Services Provided to the Network Layer Framing Error Control Flow Control.
Chapter 3 The Data Link Layer.
Chapter 3: The Datalink Layer CS 455/555. Topics to be covered Design Issues Error detection and correction Elementary datalink protocols Sliding window.
Error-Detecting Codes Calculation of the polynomial code checksum.
Chapter 3 The Data Link Layer.
EEC-484/584 Computer Networks Lecture 6 Wenbing Zhao
CSC 3352 Computer Communications Chapter 3&41 The Link Layer Has 2 main Components The Data Link Layer Medium Access Control (MAC) Examples:SLIP, PPP,
EEC-484/584 Computer Networks Lecture 8 Wenbing Zhao (Part of the slides are based on materials supplied by Dr. Louise Moser at UCSB and.
CMPE 150- Introduction to Computer Networks 1 CMPE 150 Fall 2005 Lecture 12 Introduction to Computer Networks.
CMPE 150- Introduction to Computer Networks 1 CMPE 150 Fall 2005 Lecture 13 Introduction to Computer Networks.
The Data Link Layer Chapter 3. Position of the data-link layer.
The OSI Reference Model
CMPE 150- Introduction to Computer Networks 1 CMPE 150 Fall 2005 Lecture 11 Introduction to Computer Networks.
Circuit Switching (a) Circuit switching. (b) Packet switching.
The Data Link Layer. Data Link Layer Design Issues Services Provided to the Network Layer Framing Error Control Flow Control.
CMPE 150 – Winter 2009 Lecture 6 January 22, 2009 P.E. Mantey.
CSC 450/550 Part 2: The Data Link Layer. CSC 450/550 Summary Part A Functions (1)Functions of the data link layer (2)Framing (3)Error control (3.1) Error.
EEC-484/584 Computer Networks Lecture 7 Wenbing Zhao (Part of the slides are based on materials supplied by Dr. Louise Moser at UCSB and.
The Data Link Layer Chapter 3. Data Link Layer Design Issues Services Provided to the Network Layer Framing Error Control Flow Control.
7/2/2015Errors1 Transmission errors are a way of life. In the digital world an error means that a bit value is flipped. An error can be isolated to a single.
20101 The Data Link Layer Chapter Design Issues Controls communication between 2 machines directly connected by “wire”-like link Services Provided.
EEC-484/584 Computer Networks Lecture 7 Wenbing Zhao (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer.
1 The Data Link Layer Chapter 3. 2 Data Link Layer Algorithms for achieving reliable, efficient communication between two adjacent machines. Adjacent.
The Data Link Layer Chapter 3. Data Link Layer Design Issues a) Services Provided to the Network Layer b) Framing c) Error Control d) Flow Control.
Chi-Cheng Lin, Winona State University CS 313 Introduction to Computer Networking & Telecommunication Data Link Layer Part I – Designing Issues and Elementary.
Error Coding Transmission process may introduce errors into a message.  Single bit errors versus burst errors Detection:  Requires a convention that.
Chapter 3 THE DATA LINK LAYER
CEN 4500 Data Communications Instructor: S. Masoud Sadjadi sadjadi At cs Dot fiu Dot edu Chapter 3: The Data Link.
ICOM 6115©Manuel Rodriguez-Martinez ICOM 6115 – Computer Networks and the WWW Manuel Rodriguez-Martinez, Ph.D. Lecture 14.
Cyclic Code. Linear Block Code Hamming Code is a Linear Block Code. Linear Block Code means that the codeword is generated by multiplying the message.
Data Link Layer: Error Detection and Correction
THE DATA LINK LAYER Chapter 3 1. H YBRID M ODEL The hybrid reference model to be used in this book. 2.
Data Link Layer. Data Link Layer Design Issues Services Provided to the Network Layer Framing Error Control Flow Control.
Data Link Layer : Services, Framing, Error Detection and Correction2.
The data link layer. Data Link Layer Design Issues Services Provided to the Network Layer Framing Error Control Flow Control.
The Data Link Layer. Functions of the Data Link Layer Provide service interface to the network layer Dealing with transmission errors Error detection.
The Data Link Layer. Functions of the Data Link Layer Provide service interface to the network layer Frame delineation Dealing with transmission errors.
The Data Link Layer Chapter 3 10/28/2015www.noteshit.com1.
ECE453 – Introduction to Computer Networks Lecture 4 – Data Link Layer (I)
Data Link Layer Savera Tanwir. Data Link Layer Design Issues Services Provided to the Network Layer Framing Error Control Flow Control.
Computer Communication & Networks Lecture 9 Datalink Layer: Error Detection Waleed Ejaz
CHAPTER 3: DATA LINK CONTROL Flow control, Error detection – two dimensional parity checks, Internet checksum, CRC, Error control, Transmission efficiency.
The Data Link Layer Chapter 3 1/21/2016www.ishuchita.com1.
Transmission Errors Error Detection and Correction.
COMPUTER NETWORKS. Unit -2 Continue... Physical Layer Connection –Oriented Networks : X.25 Relay Frames Types of cables Co-axial Fiber optics Twisted.
Computer Networks, Fifth Edition by Andrew Tanenbaum and David Wetherall, © Pearson Education-Prentice Hall, 2011 The Data Link Layer Chapter 3.
Network Layer4-1 Chapter 5: The Data Link Layer Our goals: r understand principles behind data link layer services: m error detection, correction m sharing.
Data Link Layer. Link Layer The data unit to be transmited at the link layer is called a frame. Why link layer? How can it know where a frame begins and.
1 The Data Link Layer A. S. Tanenbaum Computer Networks W. Stallings Data and Computer Communications Chapter 3.
Computer Networks NYUS FCSIT Spring 2008 Igor TRAJKOVSKI, Ph.D. Associate Professor
The Data Link Layer RIS 251 Dr. ir. S.S. Msanjila.
Chapter 3 The Data Link Layer.
The Data Link Layer.
Data Link Layer Objective: to achieve reliable and efficient communication between 2 adjacent machines Data link layer design issues services provided.
Data Link Layer.
Chapter 3 Review on Data Link Layer
Data Link Layer What does it do?
Chapter 3 – Part 1 The Data Link Layer.
Chapter 3 – Part 2 The Data Link Layer.
Overview Jaringan Komputer (2)
Chapter 3 The Data Link Layer.
CS412 Introduction to Computer Networking & Telecommunication
The Data Link Layer Chapter
Data Link Layer Objective: to achieve reliable and efficient communication between 2 adjacent machines Data link layer design issues services provided.
Data Link Layer Objective: to achieve reliable and efficient communication between 2 adjacent machines Data link layer design issues services provided.
EEC-484/584 Computer Networks
Data Link Layer. Position of the data-link layer.
Presentation transcript:

Adapted from Tanenbaum's Slides for Computer Networking, 4e The Data Link Layer Chapter 3

Data Link Layer Design Issues Services Provided to the Network Layer Framing Error Control Flow Control

Functions of the Data Link Layer Provide service interface to the network layer Dealing with transmission errors Regulating data flow Slow receivers not swamped by fast senders

Functions of the Data Link Layer (2) Relationship between packets and frames.

Services Provided to Network Layer (a) Virtual communication. (b) Actual communication.

Services Provided to Network Layer (2) Placement of the data link protocol.

Framing A character stream. (a) Without errors. (b) With one error.

Framing (2) (a) A frame delimited by flag bytes. (b) Four examples of byte sequences before and after stuffing.

Framing (3) Bit stuffing (a) The original data. (b) The data as they appear on the line. (c) The data as they are stored in receiver’s memory after destuffing.

Error Detection and Correction Error-Correcting Codes Error-Detecting Codes Key idea: redundant (additional) bits (use only 2 m out of 2 n code words) Key metrics: how many errors can be corrected/detected; what burst length

Hamming Distance Some codes words are valid; others are invalid Hamming distance between two code words is number of bits that must be flipped to change from one to the other If Hamming distance is d then d single bit errors needed to change one word to the other Hamming distance of a code is the minimum Hamming distance between two valid code words Detecting one single-bit error requires a distance 2 code; how does this generalize? Correcting one single-bit error requires a distance 3 code; how does this generalize?

Parity Schemes Parity bits: choose a rule Even parity – each codeword has even number of 1’s Odd parity – each codeword has odd number of 1’s Always transmit according to the rule On receipt, if rule is violated, word is invalid Can also do “vertical parity” over whole block to achieve single-bit error correction

CRC Schemes CRC – Cyclic Redundancy Check or polynomial code Consider bits of a message to be coefficients of a polynomial M(x) 1011 – 1x 3 + 0x 2 + 1x 1 + 1x 0 Of course real messages will be much longer and hence of higher degree Agree on a small-degree generator polynomial G(x) of degree r Note: G(x) has r digits to the right of the leading 1, hence r+1 total Divide x r M(x) by G(x) using modulo 2 division (no carries or borrows) getting the remainder polynomial R(x) Transmit T(x) = x r M(x) - R(x); note that this has remainder 0 when divided by G(x) Receiver rejects frame if the remainder it computers is not 0

Error-Detecting Codes Calculation of the polynomial code checksum.

CRC Properties Easily computed with feedback shift register hardware Detects any single-bit error Proper choice of G(x) gives detection of any two bit errors Proper choice of G(x) gives detection of any odd number of bit errors Detects any burst error of length <= r; Why? Received message is T(x)+E(x) for some error polynomial E(x) If E(x) represents a burst of length <= r then it can be written as x i (F(x)) where the degree of F(x) is < r If G(x) has an x 0 term it can’t divide x i and no degree r polynomial divides a polynomial of degree < r

Elementary Data Link Protocols Important to read pp – set up the coding conventions used in what follows An Unrestricted Simplex Protocol No buffer limits, no errors A Simplex Stop-and-Wait Protocol Add buffer limits A Simplex Protocol for a Noisy Channel Add channel errors

Protocol Definitions Continued  Some definitions needed in the protocols to follow. These are located in the file protocol.h.

Protocol Definitions (ctd.) Some definitions needed in the protocols to follow. These are located in the file protocol.h.

Unrestricted Simplex Protocol

Simplex Stop-and- Wait Protocol

A Simplex Protocol for a Noisy Channel A positive acknowledgement with retransmission protocol. Continued 

A Simplex Protocol for a Noisy Channel (ctd.) A positive acknowledgement with retransmission protocol.

Sliding Window Protocols Why? Efficiency – bandwidth*delay product Efficiency – when errors occur A One-Bit Sliding Window Protocol A Protocol Using Go Back N A Protocol Using Selective Repeat

Sliding Window Protocols (2) A sliding window of size 1, with a 3-bit sequence number. (a) Initially. (b) After the first frame has been sent. (c) After the first frame has been received. (d) After the first acknowledgement has been received.

A One-Bit Sliding Window Protocol Continued 

A One-Bit Sliding Window Protocol (ctd.)

A One-Bit Sliding Window Protocol (2) Two scenarios for protocol 4. (a) Normal case. (b) Abnormal case. The notation is (seq, ack, packet number). An asterisk indicates where a network layer accepts a packet.

A Protocol Using Go Back N Pipelining and error recovery. Effect on an error when (a) Receiver’s window size is 1. (b) Receiver’s window size is large.

Sliding Window Protocol Using Go Back N Continued 

Sliding Window Protocol Using Go Back N Continued 

Sliding Window Protocol Using Go Back N Continued 

Sliding Window Protocol Using Go Back N

Sliding Window Protocol Using Go Back N (2) Simulation of multiple timers in software.

A Sliding Window Protocol Using Selective Repeat Continued 

A Sliding Window Protocol Using Selective Repeat (2)

A Sliding Window Protocol Using Selective Repeat (3) Continued 

A Sliding Window Protocol Using Selective Repeat (4)

A Sliding Window Protocol Using Selective Repeat (5) (a) Initial situation with a window size seven. (b) After seven frames sent and received, but not acknowledged. (c) Initial situation with a window size of four. (d) After four frames sent and received, but not acknowledged.

Protocol Verification Finite State Machined Models Petri Net Models

Finite State Machined Models (a) State diagram for protocol 3. (b) Transmissions.

Petri Net Models A Petri net with two places and two transitions.

Petri Net Models (2) A Petri net model for protocol 3.

Example Data Link Protocols HDLC – High-Level Data Link Control The Data Link Layer in the Internet

High-Level Data Link Control Frame format for bit-oriented protocols.

High-Level Data Link Control (2) Control field of (a) An information frame. (b) A supervisory frame. (c) An unnumbered frame.

The Data Link Layer in the Internet A home personal computer acting as an internet host.

PPP – Point to Point Protocol The PPP full frame format for unnumbered mode operation.

PPP – Point to Point Protocol (2) A simplified phase diagram for bring a line up and down.

PPP – Point to Point Protocol (3) The LCP frame types.