Title: Chapter 11 Data Link Control
1Chapter 11 Data Link Control
- Framing
- Flow and Error Control
- Protocols
- Noiseless Channels
- Noisy Channels
- HDLC
- Point-to-Point Protocol
2Framing
- Data link layer needs to pack bits into frames,
so that each frame is distinguishable from
another - Separate a message from one source to a
destination, or from other messages to other
destinations, by adding a sender address and a
destination address - Fixed-size framing ATM (Chapter 18)
- Variable-size framing
- Need a way to define the end of the frame and the
beginning of the next - Character-oriented approach and bit-oriented
approach
3Character-Oriented Protocols
- Byte stuffing process of adding 1 extra byte
whenever there is a flag or escape character in
the text
4Bit-Oriented Protocols
- Bit stuffing process of adding one extra 0
whenever five consecutive 1s follow a 0 in the
data
5Flow and Error Control
- Data link control flow control error control
- Flow control refers to a set of procedures used
to restrict the amount of data that the sender
can send before waiting for acknowledgement - Error control in the data link layer is based on
automatic repeat request (ARQ), which is the
retransmission of data - ACK, NAK(Negative ACK), Piggybacking (ACKs and
NAKs in data frames)
6Noiseless Channels Simplest Protocol
- Simplest protocol with no flow or error control
7Simplest Protocol
8Stop-and-Wait Protocol
- Simple tokens of ACK and flow control added
9Stop-and-Wait Protocol
10Stop-and-Wait Protocol Example
11Noisy Channels Stop-and-Wait ARQ
- Stop-and-wait Automatic Repeat Request (ARQ)
- 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 - Acknowledgment number always announces in
modulo-2 arithmetic the sequence number of the
next frame expected.
12Stop-and-Wait ARQ
13Stop-and-Wait ARQ
14Stop-and-Wait ARQ
15Stop-and-Wait ARQ Example
16Go-Back-N ARQ
- Pipelining improves the efficiency of the
transmission - In the Go-Back-N Protocol, the sequence numbers
are modulo 2m, where m is the size of the
sequence number field in bits - 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.
17Go-Back-N ARQ
- Receive window for Go-Back-N ARQ
- 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.
18Go-Back-N ARQ
- Sliding windows, Timers, ACK, Resending a frame
19Go-Back-N ARQ Send Window Size
- 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 - Stop-and-Wait ARQ is a special case of Go-Back-N
ARQ in which the size of the send window is 1
20Go-Back-N ARQ Sender Algorithm
21Go-Back-N ARQ Receiver Algorithm
22Go-Back-N ARQ Example 1
23Go-Back-N ARQ Example 2
24Selective Repeat ARQ
25Selective Repeat ARQ
26Selective Repeat ARQ Window Size
- The size of the sender and receiver window must
be at most one-half of 2m
27Selective Repeat ARQ Sender-Site Algorithm
28Selective Repeat ARQ Receiver-Site Algorithm
29Selective Repeat ARQ Example
30Piggybacking
- To improve the efficiency of the bidirectional
protocols - Piggybacking in Go-Back-N ARQ
31HDLC
- High-level Data Link Control
- Two common transfer mode normal response mode
(NRM) and asynchronous balanced mode (ABM)
32HDLC Frames
- I(information)-frames, S(supervisory)-frames,
U(unnumbered frame)-frames - Flag field 01111110 to identify both the
beginning and the end of a frame and serve as
synchronization pattern for receiver - FCS field 2- or 4-byte ITU-T CRC for error
detection
33HDLC Frames
- Control Field 1- or 2-byte segment of the frame
used for flow and error control - Determine the type of frame and define its
functionality - Control field for I-frame P/F (poll/final bit
for primary/secondary)
34HDLC Frames
- Control field for S-frame
- Receive ready (RR), Receive not ready (RNR),
Reject (REJ) Selective reject (SREJ)
35HDLC Frames
- Control field for U-frame
36HDLC Example 1
- Connection and disconnection
37HDLC Example 2
- Piggybacking without error
38HDLC Example 3
39HDLC Bit Stuffing and Unstuffing
40Point-to-Point Protocol PPP
- One of the most common protocols for
point-to-point access - Many Internet users who need to connect their
home computer to the server of an Internet
service provider use PPP - A point-to-point link protocol is required to
control and manage the transfer of data - PPP defines/provides
- the format of the frame to be exchanged between
devices - how two devices negotiate the establishment of
the link and the exchange of data - how network layer data are encapsulated in the
data link frame - how two devices can authenticate each other
- multiple network layer services
- connection over multiple links
- Network address configuration
- But, several services are missing for simplicity
- no flow control, simple error control (detection
and discard), no sophisticate addressing for
multipoint configuration
41PPP Frame
- Flag 01111110 the same as HDLC, but it treated
as a byte because of PPP is a byte-oriented
protocol - Address 11111111 (broadcast address)
- Control No need because PPP has no flow control
and limited error control - PPP is a byte-oriented protocol using byte
stuffing with the escape byte 01111101
42PPP Transition States
43PPP Multiplexing
- PPP uses another set of other protocols to
establish the link, authenticate the parties, and
carry the network layer data - Three sets of protocols defined for powerful PPP
LCP, two APs, several NCPs
44LCP Encapsulated in a Frame
45LCP Common Options
- Options are inserted in the information field of
the configuration packets
46Authentication
- Authentication means validating the identity of a
user who needs to access - PPP is designed for use over dial-up links
- ? User authentication is necessary
- PPP has two protocols for authentication
- Password Authentication Protocol (PAP)
- Challenge Handshake Authentication Protocol (CHAP)
47Password Authentication Protocol (PAP)
48Challenge Handshake Authentication Protocol (CHAP)
- Three-way hand-shaking authentication protocol
with greater security than PAP
49Network Control Protocol NCP
- PPP is a multiple-network layer protocol.
- It can carry a network data packet from protocols
defined by the Internet, OSI, Xerox, DECnet,
AppleTalk, Novel - IPCP (IP Control Protocol)
- Configures the link used to carry IP packets in
the Internet
50IPCP Packet
IP Datagram in a PPP frame
51Multiple PPP
52Example (1)
53Example (2)