Chapter 11 Data Link Control PDF

Document Details

InnocuousProsperity8709

Uploaded by InnocuousProsperity8709

Abu Dhabi University

Tags

data communication networking data link control computer science

Summary

This document provides a detailed explanation of Data Link Control in Computer Networking. It covers key concepts like framing, flow control, and error control, along with various protocols in the context of data communications and networks. The document is suitable for undergraduate-level computer science students or professionals.

Full Transcript

Chapter 11 Data Link Control 11.1 Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. 11-1 FRAMING The data link layer needs to pack bits into frames, so that each frame is distinguishable from another. Our postal system practi...

Chapter 11 Data Link Control 11.1 Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. 11-1 FRAMING The data link layer needs to pack bits into frames, so that each frame is distinguishable from another. Our postal system practices a type of framing. The simple act of inserting a letter into an envelope separates one piece of information from another; the envelope serves as the delimiter. Topics discussed in this section: Fixed-Size Framing Variable-Size Framing 11.2 Figure 11.1 A frame in a character-oriented protocol 11.3 Figure 11.2 Byte stuffing and unstuffing Byte stuffing is the process of adding 1 extra byte whenever there is a flag or escape character in the text. Ask about that 11.4 Figure 11.3 A frame in a bit-oriented protocol Bit stuffing is the process of adding one extra 0 whenever five consecutive 1s follow a 0 in the data, so that the receiver does not mistake the pattern 0111110 for a flag. 11.5 Figure 11.4 Bit stuffing and unstuffing 11.6 11-2 FLOW AND ERROR CONTROL The most important responsibilities of the data link layer are flow control and error control. Collectively, these functions are known as data link control. Topics discussed in this section: Flow Control Error Control 11.7 Note ❑ Flow control refers to a set of procedures used to restrict the amount of data that the sender can send before waiting for acknowledgment. ❑ Error control in the data link layer is based on automatic repeat request, which is the retransmission of data. 11.8 11-3 PROTOCOLS Now let us see how the data link layer can combine framing, flow control, and error control to achieve the delivery of data from one node to another. The protocols are normally implemented in software by using one of the common programming languages. 11.9 Figure 11.5 Taxonomy of protocols discussed in this chapter 11.10 11-5 NOISY CHANNELS Although the Stop-and-Wait Protocol gives us an idea of how to add flow control to its predecessor, noiseless channels are nonexistent. We discuss three protocols in this section that use error control. Topics discussed in this section: Stop-and-Wait Automatic Repeat Request Go-Back-N Automatic Repeat Request Selective Repeat Automatic Repeat Request 11.11 Note ❑Error correction in Stop-and-Wait ARQ is done by keeping a copy of the sent frame and retransmitting of the frame when the timer expires. ❑ In Stop-and-Wait ARQ: ❑ we use sequence numbers to number the frames. The sequence numbers are based on modulo-2 arithmetic. ❑ In Stop-and-Wait ARQ, the acknowledgment number always announces in modulo-2 arithmetic the sequence number of the next frame expected. 11.12 Figure 11.11 Flow diagram for an example of Stop-and-Wait ARQ. Frame 0 is sent and acknowledged. Frame 1 is lost and resent For each frame we have a timer after the time-out. The resent frame 1 is acknowledged and the timer stops. Frame 0 is sent and acknowledged, but the acknowledgment is lost. The sender has no idea if the frame or the acknowledgment is lost, so after the time- out, it resends frame 0, which is acknowledged. Discard frame 0 because we already received it 11.13 Example 11.4 Assume that, in a Stop-and-Wait ARQ system, the bandwidth of the line is 1 Mbps, and 1 bit takes 20 ms to make a round trip. What is the bandwidth-delay product? If the system data frames are 1000 bits in length, what is the utilization percentage of the link? Solution The bandwidth-delay product is The system can send 20,000 bits during the time it takes for the data to go from the sender to the receiver and then back again. However, the system sends only 1000 bits. We can say that the link utilization is only 1000/20,000, or 5 percent. For this reason, for a link with a high bandwidth or long delay, the use of Stop-and-Wait ARQ wastes the capacity of the link. 11.14 Example 11.5 What is the utilization percentage of the link in Example 11.4 if we have a protocol that can send up to 15 frames before stopping and worrying about the acknowledgments? Solution The bandwidth-delay product is still 20,000 bits. The system can send up to 15 frames or 15,000 bits during a round trip. This means the utilization is 15,000/20,000, or 75 percent. Of course, if there are damaged frames, the utilization percentage is much less because frames have to be resent. 11.15 Note In the Go-Back-N Protocol, the sequence numbers are modulo 2m, where m is the size of the sequence number field in bits. 11.16 Figure 11.12 Send window for Go-Back-N ARQ 11.17 Note ❑The send window is an abstract concept defining an imaginary box of size 2m−1 with three variables: Sf, Sn, and Ssize. ❑ The send window can slide one or more slots when a valid acknowledgment arrives. 11.18 Figure 11.13 Receive window for Go-Back-N ARQ 11.19 Note The receive window is an abstract concept defining an imaginary box of size 1 with one single variable Rn. The window slides when a correct frame has arrived; sliding occurs one slot at a time. 11.20 Figure 11.15 Window size for Go-Back-N ARQ Worst case Mod 4 (IDK) After that the receiver would send an acknowledgment for 3 So, the Sn will move to 3, since they received the acknowledgment for that Better choice The Sn sent the frame of 0 (the first one) which is wrong because the Rn is expecting to receive another frame of 0 11.21 Note In Go-Back-N ARQ, the size of the send window must be less than 2m; the size of the receiver window is always 1. 11.22 Figure 11.16 Flow diagram for Example 11.6 This is an example of a case where the forward channel is reliable, but the reverse is not. No data frames are lost, but some ACKs are delayed, and one is lost. 11.23 Figure 11.17 Flow diagram for Example 11.7 Scenario showing what happens when a frame is lost. 11.24 Figure 11.18 Send window for Selective Repeat ARQ 11.25 Figure 11.19 Receive window for Selective Repeat ARQ 11.26 Figure 11.21 Selective Repeat ARQ, window size The receiver will accept 0 because they thought it is the frame that they want… but it is not 11.27 Note In Selective Repeat ARQ, the size of the sender and receiver window must be at most one-half of 2m. 11.28 Figure 11.22 Delivery of data in Selective Repeat ARQ 11.29 Figure 11.23 Flow diagram for Example 11.8 Scenario showing how Selective Repeat behaves when a frame is lost. QUESTION IN THE FINAL EXAM 11.30 11-6 HDLC High-level Data Link Control (HDLC) is a bit-oriented protocol for communication over point-to-point and multipoint links. It implements the ARQ mechanisms we discussed in this chapter. Topics discussed in this section: Configurations and Transfer Modes Frames Control Field 11.31 Figure 11.27 HDLC frames Control field format for the different frame types 11.32 ◼ Information (I) frames carry user data. ◼ Supervisory (S) frames are used for flow and error control. ◼ Unnumbered (U) frames are used for links. ◼ I-frames carry user data. ◼ S-frames are used for flow and error control. The following types of S-frames are defined: ◼ RR (Receive Ready) frames are used to acknowledge the receipt of I-frames. ◼ REJ (Reject) frames are used to reject I-frames that contain errors. ◼ RNR (Receive Not Ready) frames are used to indicate that the receiver is not ready to receive I-frames. ◼ U-frames are used for link management and other miscellaneous purposes. The following types of U-frames are defined: ◼ UI (Unnumbered Information) frames are used to carry control information. ◼ SET frames are used to set link parameters. ◼ DISC frames are used to disconnect the link. 11.33 Figure 11.31 Example of piggybacking with error Figure 11.31 shows an exchange in which a frame is lost. Node B sends three data frames (0, 1, and 2), but frame 1 is lost. When node A receives frame 2, it discards it and sends a REJ frame for frame 1. Note that the protocol being used is Go-Back-N 2 means I n with the special use of an REJ frame as a frame 2 NAK frame. The NAK frame does two 1 means se things here: It confirms the receipt of frame frame 1 to 0 and declares that frame 1 and any following frames must be resent. Node B, after receiving the REJ frame, resends frames 1 and 2. Node A acknowledges the receipt by sending an RR frame (ACK) with acknowledgment number 3. 11.34 11-7 POINT-TO-POINT PROTOCOL Although HDLC is a general protocol that can be used for both point-to-point and multipoint configurations, one of the most common protocols for point-to-point access is the Point-to-Point Protocol (PPP). PPP is a byte-oriented protocol. Topics discussed in this section: Framing Transition Phases Multiplexing Multilink PPP 11.35 Figure 11.32 PPP frame format PPP is a byte-oriented protocol using byte stuffing with the escape byte 01111101. 11.36 Figure 11.33 Transition phases 11.37 Figure 11.35 LCP packet encapsulated in a frame 11.38 Table 11.2 LCP packets 11.39 Table 11.3 Common options 11.40 Figure 11.36 PAP (Password Authentication Protocol packets encapsulated in a PPP frame 11.41 Figure 11.37 CHAP packets encapsulated in a PPP frame 11.42 Figure 11.38 Internet Protocol Control Protocol (IPCP) packet encapsulated in PPP frame Code value for IPCP packets 11.43

Use Quizgecko on...
Browser
Browser