BSIT – IVA
IT13 – Data Communication and Networking
X - - - - - - - - - - - - - - - - - - - - - x
DATA LINK CONTROL
Our discussion so far has concerned sending signals over a transmission link. For effective digital data communications, much more is needed to control and manage the exchange. In this Chapter, we shift our emphasis to that of sending data over a data communications link. To achieve the necessary control, a layer of logic is added above the physical interfacing discussed in Chapter 5; this logic is referred to as data link control or a data link control protocol. When a data link control protocol is used, the transmission medium between systems is referred to as a data link. To see the need for data link control, we list some of the requirements and objectives for effective data communication between two directly connected transmitting-receiving stations:
Frame synchronization. Data are sent in blocks called frames. The beginning and end of each frame must be recognizable. We briefly introduced this topic with the discussion of synchronous frames (Figure 5.2).
Flow control. The sending station must not send frames at a rate faster then the receiving station can absorb them.
Error control. Any bit errors introduced by the transmission system must be corrected.
Addressing. On a multipoint line, such as a local area network (LAN), the identity of the two stations involved in a transmission must be specified.
Control and data on same link. It is usually not desirable to have a physically separate communications path for control information. Accordingly, the receiver must be able to distinguish control information from the data being transmitted.
Link management. The initiation, maintenance, and termination of a sustained data exchange requires a fair amount of coordination and cooperation among stations. Procedures for the management of this exchange are required.
None of these requirements is satisfied by the physical interfacing techniques described in Chapter 6. We shall see in this chapter that a data link protocol that satisfies these requirements is a rather complex affair. We begin by looking at three key mechanisms that are part of data link control: flow control, error detection, and error control. Following this background information, we look at the most important example of a data link control protocol: HDLC (high-level data link control). This protocol is important for two reasons: First, it is a widely used standardized data link control protocol. And secondly, HDLC serves as a baseline from which virtually all other important data link control protocols are derived. Following a detailed examination of HDLC, these other protocols are briefly surveyed. Finally, an appendix to this chapter addresses some performance issues relating to data link control. FLOW CONTROL
Flow control is a technique for assuring that a transmitting entity does not overwhelm a receiving entity with data. The receiving entity typically allocates a data buffer of some maximum length for a transfer. When data are received, the receiver must do a certain amount of processing before passing the data to the higher-level software. In the absence of flow control, the receiver's buffer may fill up and overflow while it is processing old data. To begin, we examine mechanisms for flow control in the absence of errors. The model we will use is depicted in Figure 6.la, which is a vertical-time sequence diagram. It has the advantages of showing time dependencies and illustrating the correct send-receive relationship. Each arrow represents a single frame transiting a data link between two stations. The data are sent in a sequence of frames with each frame containing a portion of the data and some control information.
FIGURE 6.1 Model of frame transmission.
For now, we assume that all frames that are transmitted are successfully received; no...