Llc-802.2
Llc-802.2
Control (LLC)
IEEE 802.2
LLC
Introduction
Client-Server
Communications
Services
Generic Error
Logical Link Control (LLC)
Controls
Generic Flow
Controls IEEE 802.2
LLC2 Basics
LLC2 Frames
1/63
Logical Link
Control (LLC)
IEEE 802.2 Outline
LLC
Introduction
Client-Server
Communications
Services
Generic Error
Controls
Generic Flow 1 LLC
Controls
LLC2 Basics Introduction
LLC2 Frames
Client-Server Communications
Services
Generic Error Controls
Generic Flow Controls
LLC2 Basics
LLC2 Frames
2/63
Logical Link
Control (LLC)
IEEE 802.2 Outline
LLC
Introduction
Client-Server
Communications
Services
Generic Error
Controls
Generic Flow 1 LLC
Controls
LLC2 Basics Introduction
LLC2 Frames
Client-Server Communications
Services
Generic Error Controls
Generic Flow Controls
LLC2 Basics
LLC2 Frames
3/63
Logical Link
Control (LLC)
IEEE 802.2 LLC Motivation
LLC
Introduction • The IEEE defines in its standard 802.2 an LLC layer that can
Client-Server
Communications be used over several IEEE MAC technologies, in particular,
Services
Generic Error
Controls
over IEEE 802.3.
Generic Flow
Controls
• First problem to solve: IEEE 802.3 (MAC layer of Ethernet)
LLC2 Basics
LLC2 Frames
does not provide any way of multiplexing
communications.
4/63
Logical Link
Control (LLC)
IEEE 802.2 LLC Mupliplexing
LLC
Introduction
Client-Server
Communications
Services
Generic Error
Controls Spanning
SNA ...
• In LLC, users are
Generic Flow Tree Protocol
(from IBM)
Controls
LLC2 Basics
(STP) distinguished
SAP=0x42 SAP=0x04
LLC2 Frames
(multiplexed) with
Logical Link Control (LLC) IEEE 802.2
an identifier called
IEEE 802.3 IEEE 802.11 MAC Service Access
...
Ethernet WLAN Layers Point (SAP).
5/63
Logical Link
Control (LLC)
IEEE 802.2 LLC Encapsulation I
LLC
Introduction • The LLC Protocol Data Units are called LPDUs.
Client-Server
Communications
Services
• LPDUs are encapsulated inside MAC frames.
Generic Error
Controls • LPDUs = LLC overhead + LLC user data.
Generic Flow
Controls
LLC2 Basics
• The LLC header contains SAPs.
LLC2 Frames
Users of LLC
LLC User Msg SAP=0x88
6/63
Logical Link
Control (LLC)
IEEE 802.2 LLC Encapsulation II
LLC
Introduction
Client-Server • The encapsulation of LLC PDUs over Ethernet (IEEE
Communications
Services
Generic Error
802.3 frame) looks like this:
Controls
Generic Flow LLC (IEEE 802.2) encapsulated on an IEEE 802.3 frame
Controls
LLC2 Basics (Bytes) 7 1 6 6 2 1 1 1 or 2 43 - 1497 4
LLC2 Frames
S DST SRC
SAP user
Preamble F MAC MAC Length DSAP SSAP CONTROL FCS
D Address Address
data
7/63
Logical Link
Control (LLC)
IEEE 802.2 LLC Interfaces and Services
LLC
• The MAC functionality is implemented by the NIC (Network
Introduction Interface Card).
Client-Server
Communications
Services
• However, the LLC sublayer functionality is normally
Generic Error
Controls
implemented inside the kernel of the Operating System (OS).
Generic Flow
Controls • LLC provides two types of operation for its users:
LLC2 Basics
LLC2 Frames • LLC1. An unacknowledged connectionless-service.
• LLC2. A reliable connection-oriented service.
LLC Interface MAC Interface L1 Interface
rx
Message, LLC1 or LLC2 MTU,byte/bit, Sync or async, etc.
DSAP=SSAP=STP, etc. T/L=LLC size, etc. tx
OS eth0
LLC Logical MAC H T Phy rx
User Link Layer Layer
(STP, Control (Eth) (Coax)
IP,...) (LLC) H T tx
9/63
Logical Link
Control (LLC)
IEEE 802.2 Generic Client/Server Model
LLC
Introduction
• The client/server model is the most widely used model for
Client-Server
Communications
communication between processes.
Services
Generic Error
• Clients make requests to servers.
Controls
Generic Flow
Controls
Host A Host A
LLC2 Basics Service request
LLC2 Frames client Response server
... ...
... ...
10/63
Logical Link
Control (LLC)
IEEE 802.2 LLC Client/Server
LLC
Introduction
Client-Server
Communications
Services
Generic Error
• In the LLC domain, the address of a process is
Controls
Generic Flow
composed of:
Controls
LLC2 Basics 1 The output interface.
LLC2 Frames
2 The MAC address of the NIC of the host in which the
server process is running.
3 The SAP identifier of the server.
11/63
Logical Link
Control (LLC)
IEEE 802.2 Assigned SAPs
LLC
Introduction 00 Null LSAP
Client-Server 02 Individual LLC Sublayer Management Function
Communications 03 Group LLC Sublayer Management Function
Services 04 IBM SNA Path Control (individual)
Generic Error 05 IBM SNA Path Control (group)
Controls
06 ARPANET Internet Protocol (IP)
Generic Flow
Controls
08 SNA
LLC2 Basics
0C SNA
LLC2 Frames
0E PROWAY (IEC955) Network Management & Initialization
18 Texas Instruments
42 IEEE 802.1 Bridge Spanning Tree Protocol
4E EIA RS-511 Manufacturing Message Service
7E ISO 8208 (X.25 over IEEE 802.2 Type 2 LLC)
80 Xerox Network Systems (XNS)
86 Nestar
8E PROWAY (IEC 955) Active Station List Maintenance
98 ARPANET Address Resolution Protocol (ARP)
BC Banyan VINES
AA SubNetwork Access Protocol (SNAP)
E0 Novell NetWare
F0 IBM NetBIOS
F4 IBM LAN Management (individual)
F5 IBM LAN Management (group)
F8 IBM Remote Program Load (RPL)
FA Ungermann-Bass
FE ISO Network Layer Protocol
FF Global LSAP
12/63
Logical Link
Control (LLC)
IEEE 802.2 Outline
LLC
Introduction
Client-Server
Communications
Services
Generic Error
Controls
Generic Flow 1 LLC
Controls
LLC2 Basics Introduction
LLC2 Frames
Client-Server Communications
Services
Generic Error Controls
Generic Flow Controls
LLC2 Basics
LLC2 Frames
13/63
Logical Link
Control (LLC)
IEEE 802.2 Generic Services I
LLC • Connectionless services.
Introduction
Client-Server
Communications
• The sender can transmit data without any need to
Services
Generic Error
establish a connection first.
Controls
Generic Flow
• A connectionless communication can be only one way.
Controls
LLC2 Basics
• It does not check if the destination is still there, or if it is
LLC2 Frames prepared to receive the data.
• Connection-oriented services.
• A connection has to be established before sending any
data.
• The sender and receiver perform a handshaking
(negotiation) to set up the connection.
• Connection-Oriented services can only work in
bi-directional communications environments because of
this negotiation.
• A connection-oriented service involves three phases:
connection establishment, data transfer, and connection
termination.
14/63
Logical Link
Control (LLC)
IEEE 802.2 Generic Services II
LLC
Introduction
Client-Server
• During connection establishment, the end nodes
Communications
Services
negotiate parameters and reserve resources for the
Generic Error
Controls
connection.
Generic Flow
Controls
• These resources and parameters might include the
LLC2 Basics following:
LLC2 Frames
• A unique identifier for the connection.
• A dedicate queue for the frames of this connection
(service).
• The specification of the error control and/or the flow
control mechanisms that will be used.
• The parameters of the selected controls like the size of
the sequence numbers, the initial sequence numbers,
etc.
• The data transfer phase occurs when the actual data is
transmitted over the connection.
15/63
Logical Link
Control (LLC)
IEEE 802.2 Generic Services III
LLC
Introduction
Client-Server
Communications • During data transfer, most connection-oriented services
Services
Generic Error
Controls
monitor for lost packets and handle resending them.
Generic Flow
Controls
• The protocol is generally also responsible for putting the
LLC2 Basics packets in the right sequence before passing the data
LLC2 Frames
up the L2 user.
• Connection-oriented protocols are not necessarily
reliable protocols but in practice, most of them provide
some level of delivery guarantee, whereas
connectionless services do not.
• Finally, when the transfer of data is complete, the end
nodes terminate the connection and release any
resources reserved for the connection.
16/63
Logical Link
Control (LLC)
IEEE 802.2 LLC1 (Connectionless)
LLC
Introduction
Client-Server
Communications
• A SAP (LLC user) using the delivery service LLC1 can
Services
Generic Error
send and receive information to and from a remote SAP
Controls
Generic Flow
that also uses the connectionless service.
Controls
LLC2 Basics
LLC2 Frames
• LLC1 does not require maintaining state information
(like number of sent frames, etc.)
• However, with LLC1, the user doesn’t know if the frame
is correctly delivered to the destination SAP user.
• LLC1 does not provide error control neither it provides
flow control.
• The LLC1 header is just 3 bytes: DSAP (1 byte) +
SSAP (1 byte) + CONTROL (1 byte fixed to the value
0x03).
17/63
Logical Link
Control (LLC)
IEEE 802.2 LLC2 (Connection-oriented)
LLC
Introduction • The LLC2 service is inspired on the Asynchronous
Client-Server
Communications
Services
Balanced Mode (ABM) of a protocol called HDLC
Generic Error
Controls
(High-Level Data Link Control).
Generic Flow
Controls • LLC2 requires establishing, using and terminating the
LLC2 Basics
LLC2 Frames connection.
• The LLC2 connection is:
• Balanced because there is no master/slave
relationship1 .
• Asynchronous because any station may initialize the
connection, send frames or retransmit them without
permission at any time.
• LLC2 implements error control and flow control for
the transmission of frames.
1
HDLC defines other modes in which considers master
and slave stations.
18/63
Logical Link
Control (LLC)
IEEE 802.2 Outline
LLC
Introduction
Client-Server
Communications
Services
Generic Error
Controls
Generic Flow 1 LLC
Controls
LLC2 Basics Introduction
LLC2 Frames
Client-Server Communications
Services
Generic Error Controls
Generic Flow Controls
LLC2 Basics
LLC2 Frames
19/63
Logical Link
Control (LLC)
IEEE 802.2 Error Control Motivation
LLC
Introduction
Client-Server • The transmission
Communications
Services
Generic Error
medium is not ideal. frames
Controls
Generic Flow • There is a certain Sender Receiver
Controls
LLC2 Basics transmission error Wrong frame
LLC2 Frames
probability (Pb).
• The goal of error control mechanisms in the LLC
sublayer is to achieve ”virtually free of errors”
transmission of frames between adjacent nodes.
• Remember that in general, there are two types of error
control mechanisms: FEC (without retransmission) and
ARQ (with retransmission).
• Note. 802.2 implements ARQ mechanisms.
20/63
Logical Link
Control (LLC)
IEEE 802.2 Generic ARQ Tools
LLC
Introduction
Client-Server
• Problems in L2 transmissions of frames are:
Communications
Services • Frame errors in which some bits of the frame are
Generic Error
Controls incorrect.
Generic Flow
Controls • Lost frames in which the frame is not received.
LLC2 Basics
LLC2 Frames • Generic ARQ tools for fixing the previous problems are:
• The sender can include checksums or Cyclic Redundancy Codes
(CRCs) in the frame’s overhead to allow the receiver to detect errors.
• The receiver can send Acknowledge (ACK) control frames to inform
the sender about the correct reception of a frame.
• The receiver can send Negative Acknowledge (NACK) to inform the
sender about the incorrect reception of a frame.
• The receiver can silently discard an incorrect frame. Thus, with
silently discards, there is no explicit information for the sender.
• The sender can use a retransmission timeout (RTO) to manage
errors.
• Sequence numbers in data frames or ACKs can be used to realize
that a frame has been lost or is erroneous.
21/63
Logical Link
Control (LLC)
IEEE 802.2 Generic ARQ Mechanisms
LLC
Introduction
Client-Server
Communications
Services
Generic Error
Controls
Generic Flow
Controls
LLC2 Basics ARQ Mechanisms for
LLC2 Frames
Error/Flow Control
22/63
Logical Link
Control (LLC)
IEEE 802.2 Stop and Wait (S&W) I
LLC • Definition. The Round Trip
Introduction
Client-Server
Communications
Time (RTT) is the time Sender Receiver
Services
Generic Error
elapsed since the frame is
Controls
Generic Flow
sent to the queue of the output
Controls
LLC2 Basics link until the corresponding RTT Tx
LLC2 Frames
ACK is received. ACK
23/63
Logical Link
Control (LLC)
IEEE 802.2 Stop and Wait (S&W) II
• S&W can be implemented in different manners:
LLC
Introduction Sender Receiver Sender Receiver
Client-Server
Communications
Services inc
orre inco
Generic Error ct f rrec
Controls ram t fra
e me
Generic Flow
Tx
RTO RTT
Controls
LLC2 Basics Silent discard RTT Tx
LLC2 Frames (ACK not sent)
NACK
rtx
rtx fram
fram e
e
24/63
Logical Link
Control (LLC)
IEEE 802.2 Pipelining
LLC
Introduction • We can use the concept
Client-Server
Communications
of pipelining to improve Sender Receiver
Services
Generic Error
the performance. t=0
Controls
Generic Flow
Controls • The idea is sending
LLC2 Basics
LLC2 Frames subsequent frames RTT
before receiving the
feedback of previously
sent frames.
• Notice that we work in
parallel for several
frames like in a ”pipeline“.
• In this way, several
several frames per RTT
can be sent.
25/63
Logical Link
Control (LLC)
IEEE 802.2 Go-Back-N I
LLC
Introduction
Client-Server
Sender Receiver
Communications
Services
• Go-back-N uses pipelining. t=0
Generic Error
Controls
• When there is an erroneous 1
Generic Flow frame, with Go-back-N we 2
Controls
retransmit the erroneous frame 3
LLC2 Basics
and all the subsequently 4
LLC2 Frames
ACK SN=1
transmitted frames. 5
RTO Silent discard
6
• We need sequence numbers 7 Silent discard
(SN) to be able to identify the 8 Silent discard
9 Silent discard
erroneous frame from the rest of ...
the frames. 10
11
• We can use RTOs, ACKs, 2
NACKs, silent discards, SN and 3
piggybacking to implement
different versions of Go-back-N.
The example Go-back-N of the picture uses RTOs, silent discards and SN. The
expiration of the RTO is used as signal for retransmission.
26/63
Logical Link
Control (LLC)
IEEE 802.2 Go-Back-N II
LLC
Sender Sender Receiver
Introduction
Receiver
t=0
Client-Server
Communications
t=0 1
Services 1 2
Generic Error 2 3
Controls
3 4
Generic Flow RTT ACK SN=1
4 5
Controls
RTT ACK SN=1 Silent discard
LLC2 Basics 5 6
NACK SN=2 7 dupACK SN=1
LLC2 Frames 6 dupACK SN=1
Silent discard 8
7 dupACK SN=1
8 Silent discard 9
dupACK ...
9 ... 10
2
2
3
ACK SN=2
ACK SN=3
ACK SN=2
ACK SN=3
The example SR of the picture uses RTOs and silent discards (and requires SN
and ACKs per frame).
28/63
Logical Link
Control (LLC)
IEEE 802.2 Error Control Evaluation
LLC
Example I
Introduction
Client-Server
Communications
Services
Generic Error
Controls
Generic Flow
Controls • Let us consider this data link network:
LLC2 Basics
LLC2 Frames
• Frame size P = 1000 bytes.
• Transmission rate of the link is B = 1 Mbps
• The network has a RTT = 40 ms
• Retransmission Timeout = 48 ms.
• The pattern of errors introduced by the link is
deterministic.
• The link transmits 4 correct frames and then 1 incorrect
frame.
29/63
Logical Link
Control (LLC)
IEEE 802.2 Error Control Evaluation
LLC
Example II
Introduction
Client-Server
Communications
Services
Generic Error
Controls • Calculate the goodput (λ in bps) that we can achieve
Generic Flow
Controls
LLC2 Basics
using each error control mechanism: S&W, Go-back-N
LLC2 Frames
and SR.
• Consider that the receiver uses silent discards and that
frame errors are detected by the sender with RTOs.
• Tx = 1000 · 8 b/1 Mbps = 8 ms
• λS&W = 4000 B/(4 · 40 ms + 48 ms) = 153,84 kbps
• λGbN = 4000 B/(4 · 8 ms + 48 ms) = 400 kbps
• λSR = 4000 B/(5 · 8 ms) = 800 kbps
30/63
Logical Link
Control (LLC)
IEEE 802.2 Piggybacking I
LLC
Introduction • We have only considered data frames flowing in one
Client-Server
Communications way but in practice, communications are two way.
Services
Generic Error
Controls
Generic Flow • Piggybacking is an Sender
Controls Receiver
LLC2 Basics
LLC2 Frames
optimization technique
that takes into account Dat
a fram
ex
that communications
Tx
are two way. RTT Dpiggy
• Note. Although we are
Kx
, AC
going to explain am
ey
a fr
Dat
piggybacking for S&W, it
is generic technique Dat
a f ra m
that can be used with e x+
1, A
CK
y
the other ARQ error
controls.
31/63
Logical Link
Control (LLC)
IEEE 802.2 Piggybacking II
LLC • Piggybacking works as follows:
Introduction
Client-Server
Communications
• When a frame is received, instead of immediately
Services
Generic Error
sending an ACK control frame, the receiver checks if
Controls
Generic Flow
there is data to send in the other way.
Controls
LLC2 Basics
• If there is no data, typically the node waits a little time
LLC2 Frames (Dpiggy ) expecting some data from its L2 user.
• Many times this happens and the L2 receives data from
its user as a response to the previously received data.
• The optimization consists in including the ACK in the
overhead of the data frame.
• If the L2 user does not supply data within a certain time,
a separate ACK control frame is transmitted.
• Since with piggybacking data+ACK are sent in a single
frame, link utilization is optimized and also the number
of events that nodes have to process is reduced.
32/63
Logical Link
Control (LLC)
IEEE 802.2 Outline
LLC
Introduction
Client-Server
Communications
Services
Generic Error
Controls
Generic Flow 1 LLC
Controls
LLC2 Basics Introduction
LLC2 Frames
Client-Server Communications
Services
Generic Error Controls
Generic Flow Controls
LLC2 Basics
LLC2 Frames
33/63
Logical Link
Control (LLC)
IEEE 802.2 Flow control Motivation
LLC
Definition
Introduction
Client-Server
The flow control defines procedures to ensure that the
Communications
Services transmitting node does not overflow the receiving node.
Generic Error
Controls
Generic Flow
Controls • The receiving node typically contains a queue where it
LLC2 Basics
LLC2 Frames stores the data received.
• The receiver can provide explicit information about
buffer occupancy.
• Generic flow control mechanisms:
• On/Off.
• Pause.
• Fixed Window.
• Sliding window.
data Receiver
Sender
Please
stop
34/63
Logical Link
Control (LLC)
IEEE 802.2 On/Off
LLC
Introduction Sender Receiver • On/Off control
Client-Server
Communications
Services
frames can be used
1
Generic Error
Controls 2 L2 user to manage the rate
Generic Flow 3
Controls
4
of incoming data
LLC2 Basics
LLC2 Frames 5 frames.
6
7
Of f
• We must correctly
8 Off On
select the queue
levels for sending
the On/Off
messages.
On
• We might have
9
...
problems if we loose
one of these control
frames.
35/63
Logical Link
Control (LLC)
IEEE 802.2 PAUSE
LLC
Sender Receiver
Introduction
Client-Server
Communications
• PAUSE (and fixed
1
Services
Generic Error
WINDOW) is similar to 2
Controls
Generic Flow On/Off but it only uses 3
Controls
4
LLC2 Basics one control message. 5
LLC2 Frames
6
• Is used to say stop for ms
7 Pause 30
a while and then send. 8
36/63
Logical Link
Control (LLC)
IEEE 802.2 Fixed WINDOW
LLC
Sender Receiver
Introduction
Client-Server
• Fixed windows are used
Communications
to say send these
8 frames
Window=
Services
Generic Error
Controls frames and then stop.
Generic Flow
1
Controls
LLC2 Basics
• Typically, the control 2
LLC2 Frames
message conveys the 3
4
window or number of 5
6
frames allowed to be 7
transmitted (sometimes 8
bytes).
• When the all frames ”in
8 frames
the window“ have been Window=
37/63
Logical Link
Control (LLC)
IEEE 802.2 Sliding window I
LLC
Introduction
Client-Server
Communications
Services • Sliding windows use per frame control information.
Generic Error
Controls
Generic Flow
• To minimize the exchange of control information, the
Controls
LLC2 Basics ACKs of the error control mechanism are also used for
LLC2 Frames
flow control information.
• In this way, we can simultaneously manage error and
flow control.
• The window is defined as the maximum number of
unacknowledged frames (frames without ACK) that the
sender can have at any time.
• These frames are said to be “in-flight“.
38/63
Logical Link
Control (LLC)
IEEE 802.2 Sliding window II
LLC
Introduction
window=5
Client-Server
Communications
Services
Generic Error
1 2 3 4 5 6 7 8 9 ...
Controls
Generic Flow
• In-flight frames are stored in
Controls a queue by the sender until
LLC2 Basics
LLC2 Frames
their corresponding ACK
arrives.
1 2 3 4 5 6 7 8 9 ... • The dynamic of a sliding
window is as follows.
• Under high burden, for each
Received ACK SN=4
ACK received the sender
transmits a new data frame.
1 2 3 4 5 6 7 8 9 ...
• This can be seen as if the
window was sliding over the
frames.
In flight: Not sent Blocked
ACK sent, yet, from
received ACK not but in being
received window sent
39/63
Logical Link
Control (LLC)
IEEE 802.2 Sliding window III
LLC
• The window size limits
Introduction the maximum burst of 2 1
Client-Server
Communications
frames that a sender can
Services transmit.
Generic Error
Controls • The receiver can control
Generic Flow
the burst size announcing W= 2 frames
Controls
LLC2 Basics different window sizes in
RTT
LLC2 Frames
the ACK messages.
• The size of the window
also determines the
maximum goodput that
can be obtained. ACK 1
• In this example,
if Tx = 8 ms
RTT = 3 · Tx = 24 ms,
and W = 2 frames.
• Then, the goodput is
λ = 2 frames/24 ms =
83,3 fps.
• The link utilization is
U = 66 %.
40/63
Logical Link
Control (LLC)
IEEE 802.2 BDP I
LLC
Introduction
Client-Server
Communications
Services
Generic Error
Controls
Generic Flow
Controls
LLC2 Basics 2 1
LLC2 Frames
Sender Receiver 24ms 8 ms
Important question
Which W will give us a link
utilization U = 100 %?
41/63
Logical Link
Control (LLC)
IEEE 802.2 BDP II
LLC
Introduction
Ulink =100 %
Client-Server
Communications W = B · RTT (in bytes)
Services
Generic Error
Controls
W = B · RTT /P (in frames)
Generic Flow
Controls
This relation is also known as BDP or
LLC2 Basics
LLC2 Frames
Bandwidth-Delay-Product.
Example:
B = 1 Mbps
RTT = 24 ms
Frame size P = 1000 bytes
Then,
BDP[bytes] = 24000 bits = 3000 bytes
BDP[frames] = 3000 bytes/1000 bytes = 3 frames
So, for U = 100 %:
W = BDP = 3 frames or 3000 bytes
42/63
Logical Link
Control (LLC)
IEEE 802.2 BDP III
LLC
• As previously mentioned, the size of the window
Introduction
Client-Server
determines the maximum goodput that can be
Communications
Services obtained.
Generic Error
Controls
Generic Flow
• In general, the goodput λ[bps] is limited by the window
Controls
LLC2 Basics size W and the RTT or by the transmission rate of the
LLC2 Frames
link B.
• The relationship between these figures is the following:
43/63
Logical Link
Control (LLC)
IEEE 802.2 Flow control + Error Control I
LLC
Introduction
Client-Server
Communications
• How make work together a Go-back-N with a sliding
Services
Generic Error
window?
Controls
Generic Flow
• Use an ACK per frame.
Controls
LLC2 Basics • Under the point of view of the error control, an ACK
LLC2 Frames
means that the frame has been correctly received.
• Under the point of view of the flow control, an ACK tells
us that a frame arrived to the destination and that the
receiver allows us to send another one if we have
enough window.
• In general, the receiver can use the ACKs to manage
the bit rate of the incoming flow by:
• Using different window sizes.
• Introducing some delay between ACKs (this is less
common and it is called ”ACK pacing”).
44/63
Logical Link
Control (LLC)
IEEE 802.2 Flow control + Error Control II
LLC t=0
Introduction
1 W=4
Client-Server
Communications 2
Services 3
RTT
Generic Error
Implementation with: 4
Controls ACK SN=1
Generic Flow
Controls • GoBackN. NACK SN=2
LLC2 Basics Silent discard
LLC2 Frames
• ACK per “correct” ACK SN=1 Silent discard
frame. NACK SN=2 5
• NACK per 2
3
”erroneous“ 4
frame. 5 Silent discard
ACK SN=2
• Silent discard for ACK SN=3
“out of order ACK SN=4
frames”. ACK SN=2 ACK SN=5
• Sliding window of ACK SN=3 6
ACK SN=4 7
fixed size. ACK SN=5 8
9
45/63
Logical Link
Control (LLC)
IEEE 802.2 Flow control + Error Control III
LLC t=0
Introduction
1
Client-Server
Communications 2
3
Services
RTT
Generic Error 4
Controls Implementation with: ACK SN=1 W=4
Generic Flow Silent discard
Controls • GoBackN. ACK SN=1 W=4
LLC2 Basics
• ACK per “correct“ ACK SN=1 (W=4) ACK SN=1 W=4
LLC2 Frames
5
frame (generates
(dup) ACK SN=1 (W=4)
duplicate ACK). (dup) ACK SN=1 (W=4) 2
• Silent discard per 3
ACK SN=1 W=4
4
”erroneous“ 5
frame. ACK SN=2 W=4
(dup) ACK SN=1 (W=4) ACK SN=3 W=4
• Sliding window of ACK SN=4 W=5
variable size, ACK SN=2 (W=4) ACK SN=5 W=5
adjustable per ACK SN=3 (W=4) 6
ACK SN=4 (W=5) 7
ACK.
ACK SN=5 (W=5) 8
9
10
46/63
Logical Link
Control (LLC)
IEEE 802.2 Outline
LLC
Introduction
Client-Server
Communications
Services
Generic Error
Controls
Generic Flow 1 LLC
Controls
LLC2 Basics Introduction
LLC2 Frames
Client-Server Communications
Services
Generic Error Controls
Generic Flow Controls
LLC2 Basics
LLC2 Frames
47/63
Logical Link
Control (LLC)
IEEE 802.2 Design of LLC2
• LLC2 is connection-oriented.
LLC
Introduction
Client-Server
• LLC2 implements two error control mechanisms:
Communications
Services
• Go-back-N. This is the default, with NACK and RTO.
Generic Error
Controls
• Selective repeat. This can be negotiated when the
Generic Flow
Controls
connection is established, also with NACK and RTO.
LLC2 Basics
LLC2 Frames
• LLC2 uses a sliding window with two possible (fixed) sizes:
• W = 7: default with 3 bits for the sequence numbers.
• W = 127: mode extended with 7 bits for the sequence
numbers.
• Notice that this sequencing is useful for error control, but it
does not provide an effective flow control because:
• The possible window sizes are fixed: W = 7 or
W = 127.
• The BDP in a link can be very low: it is typical to have a
BDP << W .
• To implement the flow control, LLC2 uses ON/OFF.
• LLC2 implements piggybacking.
48/63
Logical Link
Control (LLC)
IEEE 802.2 Establishment/Release
LLC
Introduction
• The control frames SABM (Set ABM)
Client-Server
Communications
and UA (Unnumbered ACK) are used for
Services
Generic Error
establishing a full-duplex point-to-point
Controls
Generic Flow
LLC2 connection.
Controls LL2
LLC2 Basics
• The LLC2 default connection uses connection
established
LLC2 Frames
sequence numbers of 3 bits.
I-fr
am
• A control frame called SABME is used to e
establish the extended mode (7 bits).
I-fr
am
e • Data is sent in Information Frames
(I-frames).
• To disconnect a connection the frames
DISC and DM are used.
LL2
connection
released
49/63
Logical Link
Control (LLC)
IEEE 802.2 Bits C/R and P/F
LLC • The LLC header contains two special meaning bits.
Introduction
Client-Server • The C/R bit is interpreted as follows:
Communications
Services • C/R=1 means that the frame contains a ”command“.
Generic Error
Controls • C/R=0 means that the frame contains a ”response“.
Generic Flow
Controls
• A command means taking some action and the
LLC2 Basics
LLC2 Frames response is its associated result.
• The P/F bit is interpreted as follows:
• If C/R=1 (command), P/F is interpreted as P (Poll).
• If C/R=0 (response), P/F is interpreted as F (Final).
• A command with P=1 means that an immediate
response is required.
• A command with P=0 means that an immediate
response is not required.
• A response with F=1 means that the frame is a
response to a command with P=1.
• A response with F=0 means that the frame is not a
response to a command with P=1.
50/63
Logical Link
Control (LLC)
IEEE 802.2 An LLC2 Transmission
LLC • The control frames to establish and
Introduction
Client-Server
release the LLC2 connection are
Communications
Services
unnumbered and use the bits C/R,
LL2
Generic Error
Controls
P/F. connection
established
Generic Flow
Controls • On the other hand, I-frames are
LLC2 Basics
LLC2 Frames
numbered. I (0,0
)
• Each I-frame has two counters: I (1,0
)
I (2,0
• N(S) is the sequence number of )
52/63
Logical Link
Control (LLC)
IEEE 802.2 LLC2 Error Control II
LLC
Introduction ...
Client-Server
Communications
I (3,0
)
Services
Generic Error
• LLC2 uses by default a Go-back-N
I (4,0
Controls
) Erroneous with NACKs (called REJ in LLC2).
Generic Flow
Controls I (5,0 frame
LLC2 Basics
) • The LLC2 receiver does not
LLC2 Frames I (6,0
,C,P) End of accept neither an erroneous frame
window
nor any of the subsequent frames.
• This limits the number of
unacknowledged frames (window)
Rtx I
(4 ,0) to:
Rtx I
(5 ,0) • 7 unacknowledged frames in
Rtx I the normal mode.
(6 ,0,C,P
)
• 127 unacknowledged frames
in the extended mode.
...
53/63
Logical Link
Control (LLC)
IEEE 802.2 SN Ambiguity
LLC
Introduction
Client-Server m=3 • In general, in a Go-back-N with m
Communications
Services I (0,0
)
bits for the sequence number, we
Generic Error
Controls I (1,0 can have windows of up to 2m − 1
)
Generic Flow
Controls I (2,0 frames.
LLC2 Basics
)
LLC2 Frames I (3,0
)
• Ambiguity example: if in the
I (4,0 normal mode (m = 3) we allow
)
RTO
54/63
Logical Link
Control (LLC)
IEEE 802.2 LLC2 Flow Control
LLC
• The sliding window of LLC2 limits
Introduction
... unacknowledged frames to 7 (or 127).
Client-Server
56/63
Logical Link
Control (LLC)
IEEE 802.2 Outline
LLC
Introduction
Client-Server
Communications
Services
Generic Error
Controls
Generic Flow 1 LLC
Controls
LLC2 Basics Introduction
LLC2 Frames
Client-Server Communications
Services
Generic Error Controls
Generic Flow Controls
LLC2 Basics
LLC2 Frames
57/63
Logical Link
Control (LLC)
IEEE 802.2 LLC over Ethernet
LLC
Introduction
Client-Server
Communications • Recall that the encapsulation of LLC PDUs over
Services
Generic Error
Controls
Ethernet (IEEE 802.3 frame) looks like this:
Generic Flow
Controls LLC (IEEE 802.2) encapsulated on an IEEE 802.3 frame
LLC2 Basics
LLC2 Frames (Bytes) 7 1 6 6 2 1 1 1 or 2 43 - 1497 4
S DST SRC
SAP user
Preamble F MAC MAC Length DSAP SSAP CONTROL FCS
D Address Address
data
58/63
Logical Link
Control (LLC)
IEEE 802.2 DSAP and SSAP
LLC 1 1 1 or 2 43 - 1497 bytes
Introduction • LPDU have two
SAP user
Client-Server
Communications
fields called DSAP DSAP SSAP CONTROL
Services
data
Generic Error
Controls
and SSAP of 8 bits
Generic Flow
Controls to carry the source
LLC2 Basics
LLC2 Frames and destination
SAP I/G SAP C/R
SAPs respectively.
7 bits 1 bit 7 bits 1 bit
60/63
Logical Link
Control (LLC)
IEEE 802.2 Types of LLC frames I
LLC
Introduction
Client-Server
Communications
Services
• Unnumbered frames.
Generic Error
Controls • Unnumbered frames do not contain sequence numbers.
Generic Flow
Controls • They are used for setup and disconnection of the LLC2
LLC2 Basics
LLC2 Frames logical link connection.
• SABM. Set Asynchronous Balanced Mode command.
This command sets logical link between the stations.
Sequence numbers used are of 3 bits (modulo-8).
• SABME. Set Asynchronous Balanced Mode Extended
command. This command is the same as SABM,
except that it attempts to start a link using extended
sequence numbers of 7 bits (modulo-128).
• UA. Unnumbered ACK is used to acknowledge other
unnumbered frames.
61/63
Logical Link
Control (LLC)
IEEE 802.2 Types of LLC frames II
LLC
Introduction
Client-Server
Communications
Services
• DISC. It is used to clear the LLC2 logical link.
Generic Error
Controls
Generic Flow
• DM. Acknowledge entering in disconnected mode.
Controls
LLC2 Basics
• FRMR. Frame Reject (Response). Indicates that a
LLC2 Frames
received frame has an unrecoverable error, causing a
situation of emergency.
• Information frames (I-frame)
• It carries data of an LLC user.
• It carries a sequence number (of 3 or 7 bits).
• It carries a sequence number for ACKs that allows
piggybacking.
62/63
Logical Link
Control (LLC)
IEEE 802.2 Types of LLC frames III
LLC • Supervisory frames
Introduction
Client-Server • These frames are used to implement the error and flow
Communications
Services control.
Generic Error
Controls • Contain a sequence number.
Generic Flow
Controls • RR (Receiver Ready) means that the receiver is willing
LLC2 Basics
LLC2 Frames to accept I-frames. This is an ACK for error control and
also an ON message for flow control.
• RNR (Receiver Not Ready) means that the receiver is
unwilling to accept I-frames. This is an OFF message
for flow control.
• REJ (Reject). This message is a NACK. It is sent when
an out of sequence I-frame has been received (this
means that there is an error). LLC uses by default a
Go-back-N error control.
• SREJ (Selective Reject). This message is used when
selective repeat is activated.
63/63