Download - The Data Link Layer
![Page 1: The Data Link Layer](https://reader036.vdocument.in/reader036/viewer/2022062816/5681683d550346895dde0b7a/html5/thumbnails/1.jpg)
The Data Link Layer
![Page 2: The Data Link Layer](https://reader036.vdocument.in/reader036/viewer/2022062816/5681683d550346895dde0b7a/html5/thumbnails/2.jpg)
Functions of the Data Link Layer
• Provide service interface to the network layer• Frame delineation• Dealing with transmission errors
• Error detection and correction codes• Positive and negative acknowledgements• Timers
• Regulating data flow• Slow receivers not swamped by fast senders
![Page 3: The Data Link Layer](https://reader036.vdocument.in/reader036/viewer/2022062816/5681683d550346895dde0b7a/html5/thumbnails/3.jpg)
Functions of the Data Link Layer
Relationship between packets and frames.
![Page 4: The Data Link Layer](https://reader036.vdocument.in/reader036/viewer/2022062816/5681683d550346895dde0b7a/html5/thumbnails/4.jpg)
Data Link Layer Services
• Unacknowledged connectionless service • Acknowledged connectionless service• Acknowledged connection-oriented service
![Page 5: The Data Link Layer](https://reader036.vdocument.in/reader036/viewer/2022062816/5681683d550346895dde0b7a/html5/thumbnails/5.jpg)
Frame Delimiting
• Character count• Flag bytes with byte stuffing• Starting and ending flags, with bit stuffing
![Page 6: The Data Link Layer](https://reader036.vdocument.in/reader036/viewer/2022062816/5681683d550346895dde0b7a/html5/thumbnails/6.jpg)
Framing
A character stream. (a) Without errors. (b) With one error.
![Page 7: The Data Link Layer](https://reader036.vdocument.in/reader036/viewer/2022062816/5681683d550346895dde0b7a/html5/thumbnails/7.jpg)
Framing
(a) A frame delimited by flag bytes.(b) Four examples of byte sequences before and after stuffing.
![Page 8: The Data Link Layer](https://reader036.vdocument.in/reader036/viewer/2022062816/5681683d550346895dde0b7a/html5/thumbnails/8.jpg)
Framing
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.
![Page 9: The Data Link Layer](https://reader036.vdocument.in/reader036/viewer/2022062816/5681683d550346895dde0b7a/html5/thumbnails/9.jpg)
Error Detection and Correction
• Error-Correcting Codes• Error-Detecting Codes
![Page 10: The Data Link Layer](https://reader036.vdocument.in/reader036/viewer/2022062816/5681683d550346895dde0b7a/html5/thumbnails/10.jpg)
Hamming Distance
• Hamming distance between codewords X and Y, is the number of ones in
• The number of detected bit errors is d if d+1 is the minimum Hamming distance between two codes.
• The number of corrected bit errors is d if 2d+1 is the minimum Hamming distance between two codes.
YX
![Page 11: The Data Link Layer](https://reader036.vdocument.in/reader036/viewer/2022062816/5681683d550346895dde0b7a/html5/thumbnails/11.jpg)
Error Correction
• Codeword Y is calculated from generation matrix G, and block of data X: Y=XG=[x1,x2,…,xm]·Gmxn • At the receiver side the syndrom is found that detects and correct an error using check parity matrix H:
S=Y’HT
![Page 12: The Data Link Layer](https://reader036.vdocument.in/reader036/viewer/2022062816/5681683d550346895dde0b7a/html5/thumbnails/12.jpg)
Error correction
• For generation and parity check matrices it should hold
GHT=0• If G=[Im|P]
Then H=[-PT|In-m]
• Here I is unity matrix, n is the codeword length, and m=n-k is the data block length
![Page 13: The Data Link Layer](https://reader036.vdocument.in/reader036/viewer/2022062816/5681683d550346895dde0b7a/html5/thumbnails/13.jpg)
Error correction: Hamming Code
• In Hamming code the codeword length is 2m-1-1, the number of added bits is 2m-1-m-1 • Parity check matrix comprises all possible column vectors. For example for m=4
101010111001101111000
H
![Page 14: The Data Link Layer](https://reader036.vdocument.in/reader036/viewer/2022062816/5681683d550346895dde0b7a/html5/thumbnails/14.jpg)
Error Detection Code: CRC• Data block and codeword represented by polynomials.
• If data block is X(x)=b0+b1x+…+bm-1xm-1, codeword is Y(x)=X(x)xk-mod(X(x), G(x)), where G(x) is a generator polynomial of order k.
• At the receiver side, codeword polynomial is divided by G(x). If the reminder is non-zero, an error is detected.
![Page 15: The Data Link Layer](https://reader036.vdocument.in/reader036/viewer/2022062816/5681683d550346895dde0b7a/html5/thumbnails/15.jpg)
Error-Detecting Codes
Calculation of the polynomial code checksum.
![Page 16: The Data Link Layer](https://reader036.vdocument.in/reader036/viewer/2022062816/5681683d550346895dde0b7a/html5/thumbnails/16.jpg)
Elementary Data Link Protocols
• An Unrestricted Simplex Protocol• A Simplex Stop-and-Wait Protocol• A Simplex Protocol for a Noisy Channel
with Frame Sequence Numbers
![Page 17: The Data Link Layer](https://reader036.vdocument.in/reader036/viewer/2022062816/5681683d550346895dde0b7a/html5/thumbnails/17.jpg)
Sliding Window Protocols
• A One-Bit Sliding Window Protocol• A Protocol Using Go Back N• A Protocol Using Selective Repeat
![Page 18: The Data Link Layer](https://reader036.vdocument.in/reader036/viewer/2022062816/5681683d550346895dde0b7a/html5/thumbnails/18.jpg)
Sliding Window Protocols
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.
![Page 19: The Data Link Layer](https://reader036.vdocument.in/reader036/viewer/2022062816/5681683d550346895dde0b7a/html5/thumbnails/19.jpg)
Sliding Window Protocols
Pipelining and error recovery. Effect on an error when(a) Go back N (Wrec=1)(b) Selective Repeat
![Page 20: The Data Link Layer](https://reader036.vdocument.in/reader036/viewer/2022062816/5681683d550346895dde0b7a/html5/thumbnails/20.jpg)
Sliding Window Protocol Timers
Simulation of multiple timers in software.
![Page 21: The Data Link Layer](https://reader036.vdocument.in/reader036/viewer/2022062816/5681683d550346895dde0b7a/html5/thumbnails/21.jpg)
A Sliding Window Protocol Using Selective Repeat
Wrec ≤ (Smax+1)/2
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.
![Page 22: The Data Link Layer](https://reader036.vdocument.in/reader036/viewer/2022062816/5681683d550346895dde0b7a/html5/thumbnails/22.jpg)
Example Data Link Protocols
• HDLC - High-level Data Link Control• PPP – Point-to-Point Protocol
![Page 23: The Data Link Layer](https://reader036.vdocument.in/reader036/viewer/2022062816/5681683d550346895dde0b7a/html5/thumbnails/23.jpg)
High-Level Data Link Control
Frame format for bit-oriented protocols.
![Page 24: The Data Link Layer](https://reader036.vdocument.in/reader036/viewer/2022062816/5681683d550346895dde0b7a/html5/thumbnails/24.jpg)
High-Level Data Link Control
Control field of (a) An information frame.(b) A supervisory frame.
Type: RECEIVE READY, REJECT, RECEIVE NOT READY, SELECTIVE REPEAT
(c) An unnumbered frame.Type: DISCONNECT, SNRP (set normal response mode), SABM (set asynchronous balanced mode), FRAME REJECT
![Page 25: The Data Link Layer](https://reader036.vdocument.in/reader036/viewer/2022062816/5681683d550346895dde0b7a/html5/thumbnails/25.jpg)
The Data Link Layer in the Internet
A home personal computer acting as an internet host.
![Page 26: The Data Link Layer](https://reader036.vdocument.in/reader036/viewer/2022062816/5681683d550346895dde0b7a/html5/thumbnails/26.jpg)
PPP – Point to Point Protocol
The PPP full frame format for unnumbered mode operation.Protocol: Link Control Protocol (LCP), Network Control Protocol (NCP),
IP, IPX, Appletalk, CLNP
![Page 27: The Data Link Layer](https://reader036.vdocument.in/reader036/viewer/2022062816/5681683d550346895dde0b7a/html5/thumbnails/27.jpg)
PPP – Point to Point Protocol
A simplified phase diagram for bring a line up and down.
![Page 28: The Data Link Layer](https://reader036.vdocument.in/reader036/viewer/2022062816/5681683d550346895dde0b7a/html5/thumbnails/28.jpg)
PPP – Point to Point Protocol
The LCP frame types.