Data Link Control Layer General Concepts Rudra Dutta ECE/CSC 570 - Fall 2010, Section 001, 601.

Slides:



Advertisements
Similar presentations
Computer Networking Error Control Coding
Advertisements

The Data Link Layer Chapter 3. Data Link Layer Design Issues Services Provided to the Network Layer Framing Error Control Flow Control.
CSE 461: Error Detection and Correction. Next Topic  Error detection and correction  Focus: How do we detect and correct messages that are garbled during.
Coding and Error Control
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,
PART III DATA LINK LAYER. Position of the Data-Link Layer.
The Data Link Layer Chapter 3. Position of the data-link layer.
The OSI Reference Model
1 K. Salah Module 4.0: Data Link Layer The Logical Link Control (LLC) sublayer –Framing –Flow Control –Error Control The Media Access Control (MAC) sublayer.
Error detection and correction
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.
Adapted from Tanenbaum's Slides for Computer Networking, 4e The Data Link Layer Chapter 3.
Error Detection and Reliable Transmission EECS 122: Lecture 24 Department of Electrical Engineering and Computer Sciences University of California Berkeley.
1/26 Chapter 6 Digital Data Communication Techniques.
Transmission Errors Error Detection and Correction
Data link layer: services
ARQ Mechanisms Rudra Dutta ECE/CSC Fall 2010, Section 001, 601.
Data and Computer Communications. The Data Link Layer.
Data Link Layer - 1 Dr. Sanjay P. Ahuja, Ph.D. Fidelity National Financial Distinguished Professor of CIS School of Computing, UNF.
1 Data Link Layer Lecture 20 Imran Ahmed University of Management & Technology.
PART III DATA LINK LAYER. Position of the Data-Link Layer.
© 2009 Pearson Education Inc., Upper Saddle River, NJ. All rights reserved. 1 Communication Reliability Asst. Prof. Chaiporn Jaikaeo, Ph.D.
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 Goal –As reliable as possible, efficient communication Point-to-Point –single connection –bits arrive in order sent Not necessarily.
Data and Computer Communications Chapter 6 – Digital Data Communications Techniques.
Data and Computer Communications by William Stallings Eighth Edition Digital Data Communications Techniques Digital Data Communications Techniques Click.
ECE453 – Introduction to Computer Networks Lecture 4 – Data Link Layer (I)
Lecture 3-2: Coding and Error Control (Cont.) ECE
COSC 3213: Computer Networks I Instructor: Dr. Amir Asif Department of Computer Science York University Section M Topics: 1. Error Detection Techniques:
1 Chapter 8. Coding and Error Control Wen-Shyang Hwang KUAS EE.
EEC4113 Data Communication & Multimedia System Chapter 5: Error Control by Muhazam Mustapha, October 2011.
CS3505: DATA LINK LAYER. data link layer  phys. layer subject to errors; not reliable; and only moves information as bits, which alone are not meaningful.
McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 Data Link Layer PART III.
1 Chapter Six - Errors, Error Detection, and Error Control Chapter Six.
COMPUTER NETWORKS Ms. Mrinmoyee Mukherjee Assistant Professor St. Francis Institute of Technology, Mount Poinsur, S.V.P Road, Borivli (west), Mumbai
Computer Science Division
Computer Networks Lecture 2: Data Link Based on slides from D. Choffnes Northeastern U. and P. Gill from StonyBrook University Revised Autumn 2015 by S.
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.
Data Link Layer. Data Link Layer Topics to Cover Error Detection and Correction Data Link Control and Protocols Multiple Access Local Area Networks Wireless.
Data Communications and Networking
1/30/ :20 PM1 Chapter 6 ─ Digital Data Communication Techniques CSE 3213 Fall 2011.
Transmission Errors Error Detection and Correction.
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.
Coding and Error Control
Lecture 4 Error Detecting and Correcting Techniques Dr. Ghalib A. Shah
Data Link Layer Objective: to achieve reliable and efficient communication between 2 adjacent machines Data link layer design issues services provided.
Data Link Layer.
Error Detection and Correction
DATA COMMUNICATION AND NETWORKINGS
Data link layer (LLC).
CIS 321 Data Communications & Networking
Data Link Layer What does it do?
Part III Datalink Layer 10.
EEC4113 Data Communication & Multimedia System Chapter 5: Error Control by Muhazam Mustapha, August 2010.
Data Link Control Layer General Concepts
Overview Jaringan Komputer (2)
Chapter 7 Error Detection and Correction
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
Error Detection and Correction
CSE 461: Framing, Error Detection and Correction
Types of Errors Data transmission suffers unpredictable changes because of interference The interference can change the shape of the signal Single-bit.
Error detection: Outline
Data Link Layer. Position of the data-link layer.
Presentation transcript:

Data Link Control Layer General Concepts Rudra Dutta ECE/CSC Fall 2010, Section 001, 601

Copyright Fall 2010, Rudra Dutta, NCSU2 Data Link Layer Perspective Second of the OSI layers Utilizes (unreliable) bitpipe Provides service to Networking layer Equipments: switch, bridge, … PDUs: “Frames”

Copyright Fall 2010, Rudra Dutta, NCSU3 Data Link Layer Services Services Provided to the Network Layer – Framing Logical bit groupings – more use at higher layers – Error Control Error control overlaps with physical layer DLC – retransmission strategies – Flow Control Matches dissimilar endpoint processing speeds Slow receiver should not be swamped by fast sender Also a backward error correction mechanism – Optionally, mediate contention for shared medium Such as Ethernet

Copyright Fall 2010, Rudra Dutta, NCSU4 Utilizing Unreliable Bitpipe Sometimes sender sends bits, sometime not Bitpipe can sometime lose bits, or “manufacture” bits How does the receiver (receiving DLC) know when bits are being received, and when not? – Must create own (DLC layer) convention (protocol) about transmission of bits – Start with preamble, end with conclusion – Creates logical groups at DLC layer - “frames” – Also serves as logical groups to encapsulate higher layer PDUs Higher layers want service in multiple-byte chunks Logical units determined by the logic of the higher layers Frame delineation - must start with (and end with) an easily recognizable set of bits that are unlikely to arise randomly due to noise

Copyright Fall 2010, Rudra Dutta, NCSU5 Framing with FLAGs FLAG is a distinctive bit pattern – Such as (01 6 0) – Must not appear inside data

Copyright Fall 2010, Rudra Dutta, NCSU6 Bit Stuffing Bit stuffing method – Delineate by pattern of many bits – Prevent pattern from occurring in data by few bits – Must be completely reversible, i.e. destuffable

Copyright Fall 2010, Rudra Dutta, NCSU7 Ethernet Frame Source address Dest. address Type... Payload FCS SFD Preamble (7 times)

Copyright Fall 2010, Rudra Dutta, NCSU8 Error Control Errors happen Dual concerns from a communication POV Detection – Can at least catch errors – ARQ strategies may come in Correction (FEC) – Better if we can – Sometimes essential due to link characteristics Involves error codes – Coding, not encryption

Copyright Fall 2010, Rudra Dutta, NCSU9 Flow Control Potential data generation and transmission may be faster than consumption – Receiver might be “overwhelmed” Fast sender, slow receiver – At E2E layer (transport, or app) – NOT at DLC/Phy level – Working communication  Must be matched at that level Realistically, must stop and wait during transmission – Channel idle for some fraction of time – Possible to proactively use some of this time – Windowed flow control DLC PHY DLC PHY NET R D DLC PHY NET TRNS APP

Copyright Fall 2010, Rudra Dutta, NCSU10 Flow Control and Error Control Flow control  if sender “gets ahead” of receiver, must retransmit Error control  may need to retransmit because of error in channel as well – Error must be detected – Only non-erroneous copy at the sender – Receiver must request a repeat – Automatic Repeat ReQuest But – sender needs to know – “Three armies problem” – Requests must sometimes be implicit

Copyright Fall 2010, Rudra Dutta, NCSU11 The Three Army Problem Acknowledgements are needed But may not be available Hence requests must sometimes be implicit – ARQ strategies - later

Error Control

Copyright Fall 2010, Rudra Dutta, NCSU13 Error Control Errors happen Dual concerns from a communication POV Detection – Can at least catch errors – ARQ strategies may come in Correction (FEC) – Better if we can – Sometimes essential due to link characteristics We shall discuss – Simple block codes – Many others: BCH, Convolution: Viterbi, Turbo, …

Copyright Fall 2010, Rudra Dutta, NCSU14 Fundamental Concepts - Redundancy Some data is actual data for error control – Note: Could be data + metadata from other POV – More data introduced expressly for the purpose of error control – “Metadata” for error control – Data and metadata must be distinguished Usually a framing issue – Metadata introduces overhead – Only data is “useful” outside error control DataECC

Copyright Fall 2010, Rudra Dutta, NCSU15 Fundamental Concepts - Rate Overhead  “rate” of a coding scheme – Rate of useful data per encoded data, < 1.0 Higher rate is more efficient Unfortunately, less likely to be good coding Expressed as a ratio of bits – Over long periods, if not constant N bitsM bits

Copyright Fall 2010, Rudra Dutta, NCSU16 Fundamental Concepts – Block If a coding scheme always codes n bits to n+m bits, – We speak of n bit blocks that are independently coded – The code is called a block code Alternative – “stream” type coding – Convolution

Copyright Fall 2010, Rudra Dutta, NCSU17 Fundamental Concepts - Distance Data given to error control can be anything – 2 n “datawords” – For each, a unique m bit code – “Codeword” (encoded data) is n+m bits Hamming distance is a measure of strength d min = number of bit corruptions that can fool the code > t for t-bit error detection > 2t for t-bit error correction

Copyright Fall 2010, Rudra Dutta, NCSU18 Efficient Use of Rate Lower rate means more overhead bits – But does not necessarily translate into higher distance Choosing appropriate codewords “smartly” can increase distance 0  00, 1  10 (does not increase robustness) 0  00, 1  11 (does) n = 1, m = 1 n = 2, m = 1 00  01  10  11  ?

Copyright Fall 2010, Rudra Dutta, NCSU19 Simple Repeat Correction is possible, but rate suffers “k out of 2k-1” kind of voting process E.g., if each bit is sent seven times, – 1 bit blocks – 2 1 datawords (‘0’ and ‘1’) – Only 2 valid codewords (‘ ’ and ‘ ’) – Hamming distance is 7 – d min is 7 if only detection is attempted – 4 if correction is attempted from any seven-bit combination – Intermediate strategies possible What is the probability of a bit being misinterpreted?

Copyright Fall 2010, Rudra Dutta, NCSU20 Parity XOR all bits of the message Append the resultant bit to the word (m = 1) Detects all single bit errors, however long the word – In fact, all odd number of bits errors – Can not correct Unfortunately, chances of errors increases Coder s 1 s 2 … s n s 1 s 2 … s n c c = s 1  s 2  …  s n, the modulo-2 sum

Copyright Fall 2010, Rudra Dutta, NCSU21 Horizontal and Vertical Parity Arrange message bits in a grid Parity bits for each row, each column Detects all single, double, triple errors Some but not all quadruple errors – Which ones? What fraction of them? Message = [ s ij ] c i = s i1  s i2  …  s ip r j = s 1j  s 2j  …  s qj s 11 s 12 s 13 s 14 c1c1 s 21 s 22 s 23 s 24 c2c2 s 31 s 32 s 33 s 34 c3c3 s 41 s 42 s 43 s 44 c4c4 r1r1 r2r2 r3r3 r4r4 c p q n = pqm = p + q + 1

Copyright Fall 2010, Rudra Dutta, NCSU22 CRC – Polynomial View Message polynomial u(x) = u 0 + u 1 x + u 2 x 2 + … + u n-1 x n-1 CRC polynomial r(x) = r 0 + r 1 x + r 2 x 2 + … + r m-1 x m-1 Code polynomial c(x) = u(x) x m + r(x) u r

Copyright Fall 2010, Rudra Dutta, NCSU23 CRC as Remainder of a Division Divisible by g Generator polynomial : g(x) = 1 + g 1 x + … + g m-1 x m-1 + x m Encoding Rule: u(x) x m r(x) = Rem { } g(x)

Copyright Fall 2010, Rudra Dutta, NCSU24 Long Division Example Remainder n=3 and m=3 g(x) = 1 + x 2 + x 3 u(x) = 1 + x 2 c(x) = ? x 3 + x x 5 + x 3 x 5 + x 4 + x 2 x 4 + x 3 + x 2 x 4 + x 3 + x x 2 + x

Copyright Fall 2010, Rudra Dutta, NCSU25 Summary DLC - framing, flow control, error control – Optionally medium access Error control – Metadata must be added to enable error detection/correction – May be integrated with encoding of data – overlap with physical layer – Block codes Encapsulates error detection/correction largely within DLC and physical layers