Transcript Chap 11

Chapter 11
Data Link
Control
(DLC)
Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
Chapter 11: Outline
111.1 DLC SERVICES
111.2 DATA-LINK LAYER PROTOCOLS
111.3 HDLC
111.4 PPP
11-1 DLC SERVICES
The data link control (DLC) deals with procedures
for communication between two
adjacent nodes.
11.3
11-1 DLC SERVICES
Data link control functions include
Framing,
● Flow control, and
● Error control
●
11.4
11.1 Framing (encapsulation)
The data-link layer packs bits into frames so that each
frame is distinguishable from another frame.
.
11.5
11.1 Framing
The 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.
11.6
11.1 Framing
Framing in the data-link layer separates a message by
encapsulating a sender address and a destination
address into a header.
11.7
11.1 Framing
Framing in the data-link layer separates a message by
encapsulating a sender address and a destination
address into a header.
11.8
11.1 Framing
Framing techniques include
Character oriented framing (8 bit characters)
● Bit oriented framing
●
11.9
11.1 Framing
Frames may have a particular bit pattern between
frames to help identify the start and end of a frame.
This kind of special bit pattern is referred to as a
“flag”
11.10
Figure 11.1: A frame in a character-oriented protocol
11.11
11.1 Framing
Problem: the flag bit pattern could appear in the data
portion of the frame.
The problem is solved by stuffing (inserting) a special
byte pattern known as an Escape-character into the
data.
11.12
Figure 11.2: Byte stuffing and unstuffing
11.13
Figure 11.3: A frame in a bit-oriented protocol
11.14
Bit Stuffing

Bit oriented frames face the same issue as
byte-oriented frames – the flag pattern
can appear in the data.

This is resolved by bit stuffing.
Bit Stuffing

A zero bit is inserted after 5-consecutive
one-bits.
Figure 111.4: Bit stuffing and unstuffing
11.17
11.2 Flow and Error Control
Flow control and error control were introduced in
Chapter 9
The data-link layer handles flow control and error
control.
11.18
Figure 111.5: Flow control at the data link layer
11.19
Example 111.1
Example of flow control:
A single memory slot is used to hold information for the
receiver node at the data-link layer.
●
When this single slot is empty, the data-link layer sends a
request to the sender-node to send the next frame.
●
11.20
11-2 DATA-LINK LAYER PROTOCOLS
Traditionally four protocols have been defined for
the data-link layer to deal with flow and error
control:
1.Simple,
2.Stop-and-Wait,
3.Go-Back-N, and
4.Selective-Repeat.
11.21
11-2 DATA-LINK LAYER PROTOCOLS
1. Simple
2.Stop-and-Wait
The first two protocols are common at the data-link
layer, the last two are no longer used.
11.22
Figure 11.6: (Optional slide) Finite State Machine Diagram
11.23
11.2.1 Simple Protocol
Our first protocol is a simple protocol with neither
flow nor error control.
Assume that the receiver can immediately handle any
frame it receives. (The receiver can never be
overwhelmed with incoming frames. )
11.24
Figure 11.7: Simple protocol (no flow control)
11.25
Figure 11.8: Finite State Machine for the simple protocol (event,
action)
11.26
Example 11.2
Figure 11.9 shows an example of communication using
the Simple Protocol.
The sender sends frames one after another without even
thinking about the receiver (no error or flow control).
11.27
Figure 11.9: Flow diagram for Example 111.2
11.28
111.2.2 Stop-and-Wait Protocol
The Stop-and-Wait protocol uses both flow and error
control.
The sender sends one frame at a time and waits for an
acknowledgment before sending the next one.
Corrupted frames are detected with a CRC to each
data frame.
11.29
Figure 11.10: Stop-and-wait Protocol
11.30
Figure 11.11: FSM for the stop-and-wait protocol (events & actions)
11.31
Example 11.3
Figure 11.12 shows an example. The first frame is sent
and acknowledged. The second frame is sent, but lost.
After time-out, it is resent. The third frame is sent and
acknowledged, but the acknowledgment is lost. The frame
is resent. However, there is a problem with this scheme.
The network layer at the receiver site receives two copies of
the third packet, which is not right. In the next section, we
will see how we can correct this problem using sequence
numbers and acknowledgment numbers.
11.32
Figure 11.12: Flow diagram for Example 11.3
11.33
Example 11.4
Figure 11.13 shows how adding sequence numbers and
acknowledgment numbers can prevent duplicates.
1.The first frame is sent and acknowledged.
2.The second frame is sent, but lost. After time-out, it is
resent.
3.The third frame is sent and acknowledged, but the
acknowledgment is lost. The frame is resent.
11.34
Figure 11.13: Flow diagram for Example 11.4
11.35
11.2.3
The simple & stop-n-wait protocols are designed for
unidirectional half-duplex communication.
11.36
11.2.3 Piggybacking
More efficient two way communication can be
achieved by sending data back with each
acknowledgment. This is called piggybacking.
11.37
11-3 High-level Data Link Control
HDLC is a bit-oriented protocol for communication
over point-to-point and multipoint links.
HDLC implements the Stop-and-Wait protocol.
11.38
11-3 High-level Data Link Control
HDLC is the basis for other practical protocols such
as
X.25 (old protocol)
● Some wireless protocols
● Frame relay (becoming rare)
●
11.39
11.3.1 Transfer Modes
HDLC provides two common transfer modes that can
be used in different configurations:
normal response mode (NRM) and
● asynchronous balanced mode (ABM).
●
11.40
Normal Response Mode

Almost never used


The primary node has control of
communication
The secondary nodes must get approval from
the primary mode before sending data.
Figure 11.14: Normal response mode (IBM X.25)
11.42
Asynchronous Balanced Mode

Each node acts as a peer (both nodes can
send and receive)
Figure 11.15: Asynchronous balanced mode (frame relay)
11.44
11.3.2 HDLC Framing
HDLC defines three types of frames:
1. I-frames, information frames,
2. S-frames, supervisory frames, and
3. U-frames, unnumbered frames.
11.45
HDLC Frame

Frames have up to 6 fields





Stop, end flags
Address
Control (figure 11.17)
Data
The FCS section is the frame check sequence,
used for error detetion.
Figure 11.16: Schematic of the HDLC frames
11.47
Control Field


The control field is used for flow control
and error control.
P/F means either Pole or the frame is final.
Figure 11.17: Control field format for the different frame types
11.49
Example 11.5
Figure 11.18 shows how U-frames can be used for
connection establishment and connection release. Node A
asks for a connection with a set asynchronous balanced
mode (SABM) frame; node B gives a positive response
with an unnumbered acknowledgment (UA) frame. After
these
two exchanges, data can be transferred between the two
nodes (not shown in the figure). After data transfer, node A
sends a DISC (disconnect) frame to release the
connection; it is confirmed by node B responding with a
UA (unnumbered acknowledgment).
11.50
Figure 111.18: Example of connection and disconnection
11.51
Example 11.6
Figure 11.19 shows two exchanges using piggybacking.
The first is the case where no error has occurred; the
second is the case where an error has occurred and some
frames are discarded.
11.52
Figure 111.19: Example of piggybacking with and without error
11.53
11-4 PPP
A common protocol for point-to-point access is the
Point-to-Point Protocol (PPP).
11.54
11-4 PPP
Many broadband Internet users use PPP,
DSL is an example.
11.55
111.4.1 Services
The designers of PPP have included several services
to make it suitable for various applications
11.56
111.4.2 Framing
PPP uses a character-oriented (or byte-oriented)
frame. Figure 111.20 shows the format of a PPP
frame.
11.57
Figure 111.20: PPP frame format
11.58
11.4.3 PPP
Payload field has a default maximum of 1500 bytes.
11.59
111.4.3 Transition Phases
A PPP connection goes through phases which can be
shown in a transition phase diagram (see Figure
111.21).
11.60
Figure 111.21: Transition phases
11.61
111.4.4 Multiplexing
Although PPP is a link-layer protocol, it uses another
set of protocols to establish the link, authenticate the
parties involved, and carry the network-layer data.
11.62
111.4.4 Multiplexing
Three sets of protocols are defined to make PPP
powerful:
1.the Link Control Protocol (LCP),
2.two Authentication Protocols (APs), and
3.several Network Control Protocols (NCPs).
Skip to last slide
11.63
Figure 111.22: Multiplexing in PPP
11.64
Figure 111.23: LCP packet encapsulated in a frame
11.65
Table 111.1: LCP Packets
11.66
Table 111.2: Common options
11.67
Figure 111.24: PAP packets encapsulated in a PPP frame
11.68
Figure 111.25: CHAP packets encapsulated in a PPP frame
11.69
Figure 111.26: IPCP packet encapsulated in PPP frame
11.70
Table 111.3: Code values for IPCP Packets
11.71
Figure 111.27: IP datagram encapsulated in a PPP frame
11.72
Figure 111.28: Multilink PPP
11.73
Example 111.7
Let us go through the phases followed by a network layer
packet as it is transmitted through a PPP connection.
Figure 111.29 shows the steps. For simplicity, we assume
unidirectional movement of data from the user site to the
system site (such as sending an e-mail through an ISP).
11.74
Figure 111.29: An example
11.75