Chapter 7 - Data Link Control Protocols 9e
description
Transcript of Chapter 7 - Data Link Control Protocols 9e
![Page 1: Chapter 7 - Data Link Control Protocols 9e](https://reader034.fdocuments.us/reader034/viewer/2022051208/5471f9e3b4af9fcd0a8b4d50/html5/thumbnails/1.jpg)
Data Link Control ProtocolsCEN 220/CIS 192 Advanced Data Communications and NetworkingData and Computer Communications, W. Stallings 9/E, Chapter 7
![Page 2: Chapter 7 - Data Link Control Protocols 9e](https://reader034.fdocuments.us/reader034/viewer/2022051208/5471f9e3b4af9fcd0a8b4d50/html5/thumbnails/2.jpg)
Data Link Control Protocols“Great and enlightened one,” said Ten-teh, as soon as his stupor was lifted, “has this person delivered his message competently, for his mind was still a seared vision of snow and sand and perchance his tongue has stumbled?”“Bend your ears to the wall,” replied the Emperor, “and be assured.”
—Kai Lung's Golden Hours, Earnest Bramah
![Page 3: Chapter 7 - Data Link Control Protocols 9e](https://reader034.fdocuments.us/reader034/viewer/2022051208/5471f9e3b4af9fcd0a8b4d50/html5/thumbnails/3.jpg)
Data Link Control ProtocolsWhen sending data, to achieve control, a layer of logic is added above the physical layer
data link control or a data link control protocol
To manage exchange of data over a link: frame synchronization flow control error control addressing control and data link management
![Page 4: Chapter 7 - Data Link Control Protocols 9e](https://reader034.fdocuments.us/reader034/viewer/2022051208/5471f9e3b4af9fcd0a8b4d50/html5/thumbnails/4.jpg)
Flow ControlEnsure sending entity does not overwhelm receiving entity
prevent buffer overflowInfluenced by:
transmission time• time taken to emit all bits into medium
propagation time• time for a bit to traverse the link
Assumption is all frames are successfully received with no frames lost or arriving with errors
![Page 5: Chapter 7 - Data Link Control Protocols 9e](https://reader034.fdocuments.us/reader034/viewer/2022051208/5471f9e3b4af9fcd0a8b4d50/html5/thumbnails/5.jpg)
Model of Frame Transmission
![Page 6: Chapter 7 - Data Link Control Protocols 9e](https://reader034.fdocuments.us/reader034/viewer/2022051208/5471f9e3b4af9fcd0a8b4d50/html5/thumbnails/6.jpg)
Stop and WaitSimplest form of flow control
Works well for a message sent in a few large frames
stop and wait becomes inadequate if large block of data is split into small frames by source
![Page 7: Chapter 7 - Data Link Control Protocols 9e](https://reader034.fdocuments.us/reader034/viewer/2022051208/5471f9e3b4af9fcd0a8b4d50/html5/thumbnails/7.jpg)
Stop and Wait Link Utilization
![Page 8: Chapter 7 - Data Link Control Protocols 9e](https://reader034.fdocuments.us/reader034/viewer/2022051208/5471f9e3b4af9fcd0a8b4d50/html5/thumbnails/8.jpg)
Sliding Windows Flow ControlAllows multiple numbered frames to be in transit
receiver has buffer W long transmitter sends up to W frames without ACK ACK includes number of next frame expected sequence number is bounded by size of field (k)
• frames are numbered modulo 2k
• giving max window size of up to 2k – 1 receiver can ACK frames without permitting further
transmission (Receive Not Ready) must send a normal acknowledge to resume
If have full-duplex link, can piggyback acks
![Page 9: Chapter 7 - Data Link Control Protocols 9e](https://reader034.fdocuments.us/reader034/viewer/2022051208/5471f9e3b4af9fcd0a8b4d50/html5/thumbnails/9.jpg)
Sliding Window Diagram
![Page 10: Chapter 7 - Data Link Control Protocols 9e](https://reader034.fdocuments.us/reader034/viewer/2022051208/5471f9e3b4af9fcd0a8b4d50/html5/thumbnails/10.jpg)
Sliding Window Example
![Page 11: Chapter 7 - Data Link Control Protocols 9e](https://reader034.fdocuments.us/reader034/viewer/2022051208/5471f9e3b4af9fcd0a8b4d50/html5/thumbnails/11.jpg)
Error Control TechniquesDetection and correction of errors such as:
lost frames-a frame fails to arrive at the other side
damaged frames-frame arrives but some of the bits are in error
![Page 12: Chapter 7 - Data Link Control Protocols 9e](https://reader034.fdocuments.us/reader034/viewer/2022051208/5471f9e3b4af9fcd0a8b4d50/html5/thumbnails/12.jpg)
Automatic Repeat Request (ARQ)Collective name for error control mechanisms
Effect of arq is to turn an unreliable data link into a reliable one
Versions of arq are: stop-and-wait go-back-N selective-reject
![Page 13: Chapter 7 - Data Link Control Protocols 9e](https://reader034.fdocuments.us/reader034/viewer/2022051208/5471f9e3b4af9fcd0a8b4d50/html5/thumbnails/13.jpg)
Stop and Wait ARQSource transmits single frameWaits for ack
• no other data can be sent until destination’s reply arrives
If frame received is damaged, discard it transmitter has timeout if no ACK within timeout, retransmit
If ack is damaged, transmitter will not recognize transmitter will retransmit receiver gets two copies of frame use alternate numbering and ACK0 / ACK1
![Page 14: Chapter 7 - Data Link Control Protocols 9e](https://reader034.fdocuments.us/reader034/viewer/2022051208/5471f9e3b4af9fcd0a8b4d50/html5/thumbnails/14.jpg)
Stop and Wait ARQ
![Page 15: Chapter 7 - Data Link Control Protocols 9e](https://reader034.fdocuments.us/reader034/viewer/2022051208/5471f9e3b4af9fcd0a8b4d50/html5/thumbnails/15.jpg)
Go-Back-N ARQMost commonly used error controlBased on sliding-windowUse window size to control number of outstanding framesIf no error, ack as usualIf error, reply with rejection
destination will discard that frame and all future frames until frame in error is received correctly
transmitter must go back and retransmit that frame and all subsequent frames
![Page 16: Chapter 7 - Data Link Control Protocols 9e](https://reader034.fdocuments.us/reader034/viewer/2022051208/5471f9e3b4af9fcd0a8b4d50/html5/thumbnails/16.jpg)
Go Back N - Handling Damaged frame
error in frame i so receiver rejects frame i transmitter retransmits frames from i
Lost frame frame i lost and either• transmitter sends i+1 and receiver gets frame i+1 out
of sequence and rejects frame i • or transmitter times out and sends ACK with P bit set
which receiver responds to with ACK i transmitter then retransmits frames from i
![Page 17: Chapter 7 - Data Link Control Protocols 9e](https://reader034.fdocuments.us/reader034/viewer/2022051208/5471f9e3b4af9fcd0a8b4d50/html5/thumbnails/17.jpg)
Go Back N - Handling
![Page 18: Chapter 7 - Data Link Control Protocols 9e](https://reader034.fdocuments.us/reader034/viewer/2022051208/5471f9e3b4af9fcd0a8b4d50/html5/thumbnails/18.jpg)
Selective-Reject (ARQ)Also called selective retransmissionOnly rejected frames are retransmittedSubsequent frames are accepted by the receiver and bufferedMinimizes retransmissionReceiver must maintain large enough bufferMore complex logic in transmitter
less widely used
Useful for satellite links with long propagation delays
![Page 19: Chapter 7 - Data Link Control Protocols 9e](https://reader034.fdocuments.us/reader034/viewer/2022051208/5471f9e3b4af9fcd0a8b4d50/html5/thumbnails/19.jpg)
Go-Back-N vs.Selective
Reject
![Page 20: Chapter 7 - Data Link Control Protocols 9e](https://reader034.fdocuments.us/reader034/viewer/2022051208/5471f9e3b4af9fcd0a8b4d50/html5/thumbnails/20.jpg)
High Level Data Link Control (HDLC)
![Page 21: Chapter 7 - Data Link Control Protocols 9e](https://reader034.fdocuments.us/reader034/viewer/2022051208/5471f9e3b4af9fcd0a8b4d50/html5/thumbnails/21.jpg)
HDLC Transfer Modes
![Page 22: Chapter 7 - Data Link Control Protocols 9e](https://reader034.fdocuments.us/reader034/viewer/2022051208/5471f9e3b4af9fcd0a8b4d50/html5/thumbnails/22.jpg)
HDLC Frame Structure
uses synchronous transmission transmissions are in the form of frames single frame format used
![Page 23: Chapter 7 - Data Link Control Protocols 9e](https://reader034.fdocuments.us/reader034/viewer/2022051208/5471f9e3b4af9fcd0a8b4d50/html5/thumbnails/23.jpg)
Flag Fields and Bit StuffingDelimit frame at both ends with 01111110 Receiver hunts for flag sequence to synchronizeBit stuffing used to avoid confusion with data containing flag sequence 01111110
0 inserted after every sequence of five 1s if receiver detects five 1s it checks next bit if next bit is 0, it is deleted (was stuffed bit) if next bit is 1 and seventh bit is 0, accepted as flag if sixth and seventh bits 1, sender is indicating abort
![Page 24: Chapter 7 - Data Link Control Protocols 9e](https://reader034.fdocuments.us/reader034/viewer/2022051208/5471f9e3b4af9fcd0a8b4d50/html5/thumbnails/24.jpg)
Address FieldIdentifies secondary station that transmitted or will receive frameUsually 8 bits longMay be extended to multiples of 7 bits
leftmost bit indicates if is the last octet (1) or not (0)
Address 11111111 allows primary to broadcast
![Page 25: Chapter 7 - Data Link Control Protocols 9e](https://reader034.fdocuments.us/reader034/viewer/2022051208/5471f9e3b4af9fcd0a8b4d50/html5/thumbnails/25.jpg)
Control Field
Different frame types Information - data transmitted to user (next layer up)
• flow and error control piggybacked on information frames Supervisory - ARQ when piggyback is not used Unnumbered - supplementary link control functions
First 1-2 bits of control field identify frame type
![Page 26: Chapter 7 - Data Link Control Protocols 9e](https://reader034.fdocuments.us/reader034/viewer/2022051208/5471f9e3b4af9fcd0a8b4d50/html5/thumbnails/26.jpg)
Control FieldUse of poll/final (p/f) bit depends on contextIn command frame p bit set to 1 to solicit (poll) response from peerIn response frame f bit set to 1 to indicate response to soliciting commandSequence number usually 3 bits
can extend to 8 bits as shown below
![Page 27: Chapter 7 - Data Link Control Protocols 9e](https://reader034.fdocuments.us/reader034/viewer/2022051208/5471f9e3b4af9fcd0a8b4d50/html5/thumbnails/27.jpg)
Information & Frame Check Sequence (FCS) Fields
![Page 28: Chapter 7 - Data Link Control Protocols 9e](https://reader034.fdocuments.us/reader034/viewer/2022051208/5471f9e3b4af9fcd0a8b4d50/html5/thumbnails/28.jpg)
HDLC OperationConsists of exchange of i-frames, s-frames and u-frames
Involves three phases
![Page 29: Chapter 7 - Data Link Control Protocols 9e](https://reader034.fdocuments.us/reader034/viewer/2022051208/5471f9e3b4af9fcd0a8b4d50/html5/thumbnails/29.jpg)
HDLC Operation Example
![Page 30: Chapter 7 - Data Link Control Protocols 9e](https://reader034.fdocuments.us/reader034/viewer/2022051208/5471f9e3b4af9fcd0a8b4d50/html5/thumbnails/30.jpg)
HDLC Operation Example
![Page 31: Chapter 7 - Data Link Control Protocols 9e](https://reader034.fdocuments.us/reader034/viewer/2022051208/5471f9e3b4af9fcd0a8b4d50/html5/thumbnails/31.jpg)
SummaryData link protocols
– frame synchronization
– flow control● stop-and-wait, sliding window● ACK frame● error control
– lost frame, damaged frame
– stop-and-wait, go-back-N, selective-reject ARQs
HDLC
– NRM, ABM,ARM