You are on page 1of 31

Protocol Efficiency and HDLC

In this section:
Protocol efficiency:
Effective data rates
Utilization
Stop and wait flow control efficiency
ARQ flow control efficiency
The High-level data-link control (HDLC)
protocol
HDLC data frames
HDLC operation
1

Protocol Efficiency
Can be measured in various ways
One measure: effective data rate (EDR)
Parameters:
R: bit rate, in bits per second
S: signal speed in transmission medium, in metres per
second
D: distance to send, in metres
T: time to create one frame, in seconds
TF: frame, TA: acknowledgement
F: frame size, in bits
N: number of user data bits in a frame, in bits
A: number of bits in an acknowledgement, in bits
2

Effective Data Rate calculation


For an unrestricted protocol (i.e. no flow control,
or acknowledgements), the effective data rate
(EDR) is
N
EDR
F
time needed for one frame
T
R
For a stop and wait protocol:

EDR

N
D
FA
2 TF TA
S
R
3

Example, for Stop-and-Wait


Suppose:
N = 160 bits, D = 200 ,A = 40 bits, T F = 1.5x10-6 s,
TA = 0.5x10-6 s, S = 2x108 m/s, F = 200 bits,
R = 10 Mbps = 1x107 bits/s

N
D
FA
2 TF TA
S
R
160b

200m
200b 40b
6
6

1
.
5

10
s

0
.
5

10
s

2 108 m / s
1.0 107 b / s

5.7 106 b / s
Note that this is about 57% of the bit rate

Maximum Efficiency of Sliding Window


Adjustments to stop and wait formula
Instead of sending 1 frame, we could send W frames
replace N with N x W
Acknowledgements could be piggy-backed on to data frames
replace F + A with 2F, and replace TF + TA with 2TF

EDR

WN
F
D
2
TF
R
S

Actual efficiency depends on error rate: number of frames


re-transmitted, etc.
5

Utilization
Objective: obtain a measure of efficiency that is
independent of the transmission speed of the
medium.
Utilization: fraction of time (1.0 best case)
that transmitter can send bits, as opposed to
waiting for acknowledgements or flow control
Simplifying assumptions:
TF, TA are negligible
A is much smaller than F, so that F+A F

Maximum Utilization (1)


Time to send one frame and receive an acknowledgement is
D F
2
S R
If the window size is W, the time to send W frames is
D F
W 2
S R
Actual time spent transmitting bits is

F
W

Utilization (U) is the ratio of the actual time transmitting,


over the time needed to send and receive an
acknowledgement. The maximum
F utilization is
W
1
R

DR
D F
2
1
W 2
FS
S R

Maximum Utilization (2)


Simplify by using the ratio of propagation time (D/S) to
transmission time (F/R)

DR
Let a
FS

This is a pure ratio (i.e. no units).


Another way of viewing the value a is that if one
normalizes the frame transmission time to 1, the length
of the link in bits is a frames.

Frame a

Frame 2

Frame 1

Therefore, the maximum utilization can be expressed as:


1
2a 1

Actual Utilization
Example: Error free sliding window protocol.
Send W frames, receive one acknowledgement.
Two cases:
Case 1: W 2a + 1
The acknowledgement for frame 1 reaches A
before the sending window is exhausted.

Frame 2a+1
Ack

Frame a+3 Frame a+2

In this case, the sender can transmit continuously


with no pause, and ratio of the actual utilization
to maximum utilization is 1.0
9

Actual Utilization
Example: Error free sliding window protocol.
Send W frames, receive one acknowledgement.
Case 2: W < 2a + 1
A exhausts the window at time W, and
cannot send frames until time 2a+1.
A

Frame W

Wa+2

Wa+1

Ack

Frame W
Ack

a+2

10

Normalized Utilization
For error-free sliding window:

W 2a 1

W 2a 1
W

2a 1

11

Utilization in the presence of errors


Suppose that the probability of an error in a
frame is P.
Stop and wait:

1 P
2a 1
1 P

W 2a 1

Selective Reject: U W (1 P) W 2a 1

1 P
1 2aP

Go-back-N:

2a 1

W (1 P)

2a 11 P WP

W 2a 1
W 2a 1
12

Utilization for P = 0.001

13

Logical Link Control (LLC)


In the IEEE 802 series of standards for local area networks
(LANs), LLC is above the medium access control layer (MAC)
For Asynchronous Transfer Mode (ATM), LLC is combined
with network layer functions.
In other standards, LLC comprises all of layer 2:
High-Level Data Link Control (HDLC), ISO 3009 / 4305
Link Access Procedure, Balanced (LAPB),
ITU-T protocol for X.25 systems
Link Access Procedure, D-Channel (LAPD), ITU-T protocol
for ISDN (Integrated Services Data Network) systems
Link Access Procedure for Frame-Mode Bearer Services
(LAPF), data link protocol for Frame Relay
Point-to-Point protocol (PPP) used between home
computers and internet service providers (RFC 1661)
14

High-level Data Link Control (HDLC)


Original source: IBMs synchronous data link
control (SDLC)
Related protocols: ITU-Ts link access procedure
standards (LAPB, ), PPP
ISO Standards: 3009, 4305

15

HDLC Basics
Stations:
Primary: sends data, controls the link with
commands
Secondary: receives data, responds to control
messages
Combined: can issue both commands and
responses
Link configuration:
Unbalanced: one primary station, one or more
secondary stations
Balanced: two combined stations
16

HDLC Basics
Data transfer modes (not a complete set; these are most
common)
Normal response mode (NRM):
Used with unbalanced configuration
Primary initiates data transfer; secondary can only
reply
Asynchronous balanced mode (ABM):
Used with balanced configurations
Either side may send data at any time
Address modes
Regular: sequence numbers have 3 bits
Extended: sequence numbers have 7 bits
17

HDLC overall frame format


octets
01111110

Address

Control

data

CRC

variable

1 or 2

variable

2 or 4

FS

ITU-T versions
of the CRC are used

frame separator (FS): bit stuffing used for all


fields between separators

18

HDLC address fields


bits

address

F bit:
if 1, this is the final octet of the address
if 0, another address octet follows
If the link is strictly point-to-point, the value of the field
will be 10000000, as the address is not relevant
An address of 11111111 represents all stations

19

HDLC control field types


Information (I-frames)
Carries upper level data
Also includes ARQ sequence numbers for sending and
receiving
Supervisory messages (S-frames)
Used for flow control
4 types
Includes receiving sequence number
Un-numbered messages (U-frames)
Used for link setup and disconnection
15 types
20

I-frame control field


bits

NS

bits 1

P/F

regular
mode

NR

NS

P/F

NS

NS: sending sequence number

NR: receiving sequence number

P/F: poll or final bit


Command frame: asks for response (P poll)
Response frame: indicates response (F final)

extended
mode

21

S-Frame Control field


bits

1 1

1 0

P/F

NR

regular
mode

S field
RR: receive ready (bits: 00)
Positive acknowledgement, ready for I frame
Used when no reverse data; otherwise NR sent in an I-frame
RNR: receive not ready (bits 10)
Positive acknowledgement, not ready to receive
REJ: reject (bits 01)
Negative acknowledgement, go-back-N ARQ method
SREJ: selective reject (bits: 11)
Negative acknowledgement, selective reject ARQ method
22

S-Frame Control field


bits

1 1

1 0

0000 P/F

NR

extended
mode

The S field is the same as the regular mode


The four zeros are needed to pad the field to two full
octets, 16 bits.

23

U-frame control field


bits

1 1 M1 P/F

M2

SNRM: set normal response mode (M1 = 00, M2 = 001)

SABM: set asynchronous balanced mode (M1 = 11, M2 = 100)

SABME: set asynchronous balanced mode, extended (M1 = 11, M2 = 110)

DISC: disconnect (M1=00, M2=010)

UA: un-numbered acknowledgement (M1 = 00, M2 = 110)

RSET: resets send and receive sequence numbers (M1 = 11, M2=001)

FRMR: frame reject (M1 = 10, M2=001)

(see Forouzan, Table 11.1, p. 286)


24

HDLC operation
One of the messages SNRM, SABM, SABME, is
used to set up the link initially.
Sets the mode, and the length of sequence
numbers
UA is used as a positive acknowledgment for Uframes
After setting up the link, data transfer can occur.
The DISC message is used to terminate the
connection.
If a damaged U-frame is received, FRMR is sent as
a reply.
25

Connection
A

SABM

UA

DISC

UA
26

Sample Two-Way Data Exchange


NR
NS
Frame type

I,0,0

I,0,1
I,1,1
I,2,1

I,1,3

NR Sequence
numbers:
next message
expected

S,RR,2
Frame type
Message
NR

27

Go-Back-N ARQ
A

I,0,0
I,1,0
I,2,0

S,REJ,1
I,1,0
I,2,0
I,3,0
28

Selective Reject ARQ


A

I,0,0
I,1,0
I,2,0

S,SREJ,1
I,1,0
I,3,0

29

Receiver Busy
A

I,3,0

S,RNR, 4
S,RR,0,P

S,RNR,4,F
S,RR,0,P

S,RR,4,F
I,4,0
30

Timeout
A

I,0,0
I,1,0

I,0,0
I,1,0

S,RR,2
31