26
Topic 7 - HDLC 1 FIT1005 FIT – Monash University Topic 7 High-Level Data Link Control (HDLC) Reference: Chapter 7 – Stallings 7E, 6E

FIT1005 FIT – Monash University Topic 7 High-Level Data Link Control (HDLC) Reference:

  • Upload
    noreen

  • View
    29

  • Download
    0

Embed Size (px)

DESCRIPTION

FIT1005 FIT – Monash University Topic 7 High-Level Data Link Control (HDLC) Reference: Chapter 7 – Stallings 7E, 6E. Introduction. Widely used, and is the basis for many other important data link control protocols To satisfy a variety of applications HDLC defines: 3 types of stations - PowerPoint PPT Presentation

Citation preview

Page 1: FIT1005 FIT – Monash University Topic 7 High-Level Data Link Control (HDLC) Reference:

Topic 7 - HDLC 1

FIT1005

FIT – Monash University

Topic 7

High-Level Data Link Control

(HDLC)Reference:

Chapter 7 – Stallings 7E, 6E

Page 2: FIT1005 FIT – Monash University Topic 7 High-Level Data Link Control (HDLC) Reference:

Topic 7 - HDLC 2

Introduction

• Widely used, and is the basis for many other important data link control protocols

• To satisfy a variety of applications HDLC defines:– 3 types of stations – 2 link configurations – 3 data transfer modes of operations

Page 3: FIT1005 FIT – Monash University Topic 7 High-Level Data Link Control (HDLC) Reference:

Topic 7 - HDLC 3

Stations

Primary station– Responsible for controlling the operation of the link– Frames issued by these stations are called commands

Secondary station– Operates under the control of the primary station– Frames issued by a secondary are called responses

Combined station– Combines the features of primary and secondary. Issues both

commands and responses

Page 4: FIT1005 FIT – Monash University Topic 7 High-Level Data Link Control (HDLC) Reference:

Topic 7 - HDLC 4

Link Configurations

Unbalanced configuration– Consists of one primary and one or more secondary stations and

supports both full-duplex and half-duplex transmission

Balanced configuration– Consists of two combined stations and supports both full-duplex

and half-duplex transmission

Page 5: FIT1005 FIT – Monash University Topic 7 High-Level Data Link Control (HDLC) Reference:

Topic 7 - HDLC 5

Transfer Modes

Normal response mode (NRM)– Used with an unbalanced configuration– The primary may initiate data transfer to a secondary, but a

secondary may only transmit data in response to a command from the primary

Asynchronous balanced mode (ABM)– Used with balanced configuration– Either combined station may initiate transmission without

receiving permission from the other station– Most widely used mode of the 3

Asynchronous response mode (ARM)– Used with unbalanced configuration– The secondary may initiate transmission without explicit

permission of the primary

Page 6: FIT1005 FIT – Monash University Topic 7 High-Level Data Link Control (HDLC) Reference:

Topic 7 - HDLC 6

HDLC Frame Structure

• HDLC uses synchronous transmission

• All transmissions are in the form of frames, and a single format suffices for all types of data and control exchanges

• The flag, address (identifies the secondary station that transmitted or is to receive), and control fields that precede the information field are known as a header

• The FCS and flag fields following the data field are referred to as a trailer

Page 7: FIT1005 FIT – Monash University Topic 7 High-Level Data Link Control (HDLC) Reference:

Topic 7 - HDLC 7

HDLC Frame Structure

Page 8: FIT1005 FIT – Monash University Topic 7 High-Level Data Link Control (HDLC) Reference:

Topic 7 - HDLC 8

HDLC Frame Structure

• The flag fields delimit the frame at both ends with the unique pattern 01111110

• A single flag may be used as the closing flag for one frame and the opening flag for the next

• The protocol allows the presence of arbitrary bit patterns, (in jpeg, mpeg, wav files), a property known as data transparency

• As a result, there is no guarantee that the flag pattern will not appear somewhere inside the frame, thus destroying synchronisation

Page 9: FIT1005 FIT – Monash University Topic 7 High-Level Data Link Control (HDLC) Reference:

Topic 7 - HDLC 9

Bit Stuffing

• Receiver hunts for flag sequence to synchronize on frame

• Bit stuffing used to avoid confusion with data containing 01111110– 0 inserted after every sequence of five 1s– If receiver detects five 1s it checks next bit– If 0, it is deleted– If 1 and seventh bit is 0, accept as flag– If sixth and seventh bits 1, sender is indicating abort

Page 10: FIT1005 FIT – Monash University Topic 7 High-Level Data Link Control (HDLC) Reference:

Topic 7 - HDLC 10

Pitfalls of Bit Stuffing

• When a flag is used as both an ending and starting flag, a 1-bit error merges two frames into one

• Conversely, a 1-bit error inside the frame could split it in two

Page 11: FIT1005 FIT – Monash University Topic 7 High-Level Data Link Control (HDLC) Reference:

Topic 7 - HDLC 11

HDLC Frame Structure

Page 12: FIT1005 FIT – Monash University Topic 7 High-Level Data Link Control (HDLC) Reference:

Topic 7 - HDLC 12

Types of Frames

Information frames – (I-frames) carry data to be transmitted for the user– Additionally, flow and error control data, using ARQ

mechanisms, are piggybacked on an information frame

Supervisory frames – S-frames provide the ARQ mechanism when piggybacking is not

used

Unnumbered frames – U-frames provide supplemental link control functions

Page 13: FIT1005 FIT – Monash University Topic 7 High-Level Data Link Control (HDLC) Reference:

Topic 7 - HDLC 13

HDLC Frame – Control Field

• The first one or two bits of the control field serve to identify the frame type

• The remaining bit positions are organised into subfields as indicated in the next slide

Page 14: FIT1005 FIT – Monash University Topic 7 High-Level Data Link Control (HDLC) Reference:

Topic 7 - HDLC 14

HDLC Frame Structure

Page 15: FIT1005 FIT – Monash University Topic 7 High-Level Data Link Control (HDLC) Reference:

Topic 7 - HDLC 15

HDLC Frame – Control Field

• All of the control field formats contain the poll/final (P/F) bit

– In command frames, it is referred to as P bit and is set to 1 to solicit (poll) a response frame from the peer HDLC entity

– In response frames, it is referred to as the F bit and is set to 1 to indicate the response frame transmitted as a result of a soliciting command

Page 16: FIT1005 FIT – Monash University Topic 7 High-Level Data Link Control (HDLC) Reference:

Topic 7 - HDLC 16

HDLC Frame – Control Field

• Basic control field for S- and I-frames uses 3-bit sequence numbers

• An extended control field can be used for S- and I-frames that employs 7-bit sequence numbers

• U-frames always contain an 8-bit control field

Page 17: FIT1005 FIT – Monash University Topic 7 High-Level Data Link Control (HDLC) Reference:

Topic 7 - HDLC 17

HDLC Frame Structure

• Information field is present only in I-frames and some U-frames

– The length of the information field is variable up to some system-defined maximum

• The frame check sequence (FCS) field is used for detecting errors using a code calculated from the remaining bits of the frame, exclusive of flags

Page 18: FIT1005 FIT – Monash University Topic 7 High-Level Data Link Control (HDLC) Reference:

Topic 7 - HDLC 18

Operation

• HDLC operation consists of exchange of I-frames, S-frames, and U-frames between 2 stations

• The operation of HDLC involves three phases

– Initialisation– Data transfer– Disconnect

Page 19: FIT1005 FIT – Monash University Topic 7 High-Level Data Link Control (HDLC) Reference:

Topic 7 - HDLC 19

Operation - Initialization

• One side or the other initialise the data link so that frames may be exchanged in an orderly fashion

• During this phase, the options that are to be used are agreed upon

• Initialisation is requested by issuing one of 6 set mode commands

Page 20: FIT1005 FIT – Monash University Topic 7 High-Level Data Link Control (HDLC) Reference:

Topic 7 - HDLC 20

Operation - Initialization

• The set mode command– Signals the other side that initialisation is requested– Specifies which of the 3 modes (NRM, ABM, ARM) is

requested– Specifies whether 3- or 7-bit sequence number s are

to be used

• If the other side accepts this request, the HDLC module on that end transmits an unnumbered acknowledgment (UA) frame back to the initiating side

• If the request is rejected, a disconnected mode (DM) frame is sent

Page 21: FIT1005 FIT – Monash University Topic 7 High-Level Data Link Control (HDLC) Reference:

Topic 7 - HDLC 21

Operation – Data Transfer

• After initialisation, the two sides exchange user data and control information to exercise flow and error control

• To exchange data and control information, a logical connection is established.

• Both sides may begin to send user data in I-frames, starting with sequence number 0. Placed the sequence

number in N(S) field.

Page 22: FIT1005 FIT – Monash University Topic 7 High-Level Data Link Control (HDLC) Reference:

Topic 7 - HDLC 22

Operation – Data Transfer

Flow Control

• S-frames are used for flow control • The receive ready (RR) frame acknowledges the last

I-frame received by indicating the next I-frame expected• N(R) indicates which number I-frame it expects to receive

next• The RR frame is used when there is no reverse user data

traffic (I-frames) to carry an acknowledgment• Receive not ready (RNR) acknowledges an I-frame, as

with RR, but also asks the peer entity to suspend transmission of I-frames

Page 23: FIT1005 FIT – Monash University Topic 7 High-Level Data Link Control (HDLC) Reference:

Topic 7 - HDLC 23

Operation – Data Transfer

Error control

• REJ initiates the go-back-N ARQ- it indicates that the last I-frame received has been rejected and that retransmission of all I-frames beginning with number N(R) is required

• SREJ is used to request retransmission of just a single frame

Page 24: FIT1005 FIT – Monash University Topic 7 High-Level Data Link Control (HDLC) Reference:

Topic 7 - HDLC 24

Operation – Disconnect

• Finally, one of the 2 sides signals the termination of the operation

• Either HDLC module can initiate a disconnect, either on its own initiative if there is some sort of fault, or at a request of a higher layer user

• HDLC issues a disconnect by sending a disconnect (DISC) frame

• The remote entity must accept the disconnect by replying with a UA and informing its layer 3 user about the disconnection

Page 25: FIT1005 FIT – Monash University Topic 7 High-Level Data Link Control (HDLC) Reference:

Topic 7 - HDLC 25

Examples of Operation

Page 26: FIT1005 FIT – Monash University Topic 7 High-Level Data Link Control (HDLC) Reference:

Topic 7 - HDLC 26

Examples of Operation