Data Link Control Protocols. 2 Introduction Data link layer –Concerned with the transfer of data...

62
Data Link Control Protocols

Transcript of Data Link Control Protocols. 2 Introduction Data link layer –Concerned with the transfer of data...

Data Link Control Protocols

2

Introduction

• Data link layer– Concerned with the transfer of data

over a serial data link

• Link– Point-to-point physical circuit– Radio-based channel– Physical or logical link through a

switched network

3

Introduction (cont’d)

• User service (depending on application)

– Best-try (connectionless) service

– Reliable (connected-oriented) service

4

Introduction (cont’d)

• Connectionless service– Although error check bits are used to

detect errors– Any frames that are found to contain

transmission errors are simply discarded

– Unacknowledged service

5

Introduction (cont’d)

• Connection-oriented service– employs the error and flow control

procedures– A high probability that the data will be

error free without duplicates and that messages will be delivered in the same sequence as they were submitted

6

Application environments

• End-to-end basis– The data link protocols are located in the tw

o communications DTEs computers• Logical significance

– It operates over the local link connecting

7

Application environments (cont’d)

8

Application environments (cont’d)

• Point-to-point circuit– Operates on an end-to-end basis– A reliable connection-oriented service is

normally used– Kermit and X-modem

• Multipoint topology– Such architectures are normally used in

applications that involve a single master computer communicating with a distributed community of slave computers

9

Application environments (cont’d)

– A connection-oriented data link protocol• WANs (fig 5.2.c)

– The link protocol has only local significance and operates between the DTE and the local DCE

• LANs (fig 5.2.d)– The user of relatively short, low bit error rat

e links that operate at high bit rates

10

Application environments (cont’d)

– Errors are relatively infrequent and the end-to-end frame transfer time is very fast

– It operates in a connectionless, best-try mode

– All retransmission and flow control functions are left to a higher protocol layer in two DTEs

11

Character-oriented protocols

• Selected transmission control characters– To perform the various transmission

control functions associated with link management, start-of-frame and end-of-frame delimiting, error control, and data transparency

12

Simplex protocols

• Kermit– It is used extensively for the transfer of the

contents of a specified file or group of files from one computer to another over a point-to-point data link

– Link• A circuit set up through the switched telephone

network using modems• A pair of twisted-pair lines

– Synchronous transmission is used– Idle RW protocol

13

Simplex protocols (cont’d)

• If modems are being used– Originate mode– Answer mode

14

Simplex protocols (cont’d)

• Kermit is not simply data link protocol– It performs a number of additional

functions– Such as file reading/writing and file

segmentation and reassembly

15

Simplex protocols (cont’d)

• Frame format– Fig 5.4

• The contents of a text file are sent as a sequence of 80 character blocks

• The binary files are sent simply as a string of 8-bit bytes

16

Simplex protocols (cont’d)

17

Half-duplex protocols

• Most character-oriented protocols– Operate character-oriented protocols

operate in the half-duplex, stop-and-wait mode

• BSC (Binary Synchronous Control)– Developed by IBM– Be used with a synchronous control

scheme– Be used in multipoint applications

18

Half-duplex protocols (cont’d)

– Topology• Multipoint netwo

rk• Multidrop bus ne

twork

19

Half-duplex protocols (cont’d)

• Transmission control characters– Table 5.1

20

Half-duplex protocols (cont’d)

• Data transparency– The use of DLE character– When transmitting pure binary data rather

than character strings– DLE/STX, DLE/ETX– Difference when operating in the

transparent mode is error control• Instead of a simple 8-bit longitudinal parity check

per block• A mode sophisticated polynomial code with each

block terminated by a 16-bit CEC rather than an 8-bit BCC

21

Half-duplex protocols (cont’d)

• The master computer– Scheduling all transmissions on each

shared data link– Poll control message

• Be used to request a specific slave computer to send any waiting data message it may have

– Select control message• Be used to ask the selected slave whether

it is ready to receive a data message

22

Half-duplex protocols (cont’d)

• Retransmission– ACK, NACK 에 의해 결정

• Timeout mechanism– 전송 data 가 완전히 파괴된 경우에 사용

• Sequence number– Sending site

• Only increment

– Receiving site• Modulo-2

23

Half-duplex protocols (cont’d)

24

Half-duplex protocols (cont’d)

• User Interface– It is important to

discriminate between the services provided by the link layer and the detailed operation of the link layer protocol entity

25

Half-duplex protocols (cont’d)

• Protocol Performance– An important performance parameter

• The average time taken to poll or select all the slave stations on a link

– In practice• Because of the low link utilization of idle RQ• Message transmitting time is the dominant

time in a poll or select sequence

26

Half-duplex protocols (cont’d)

• Example– Average message : 1000 bits– Control message : 30 bits– Transmission rate : 10kbps

» Message transmit time : 0.1s» Control message transmit time : 0.003s

27

Duplex protocols

• Duplex protocol– Be used in the early ARPANET– It operated over the point-to-point

duplex link– The transmission of information in both

directions simultaneously– It utilizes a continuous RQ transmission

control scheme for both directions

28

Duplex protocols (cont’d)

– It operates with an effective send window of either 8 for terrestrial links or 16 for satellite links

– To ensure a continuous flow of frames, 8(or 16 for satellite) separate stop-and-wait information flows can be in progress at any instant

29

Duplex protocols (cont’d)

• Each frame is treated as a separate entity– On receipt of a frame

to be forwarded, the sending data link protocol simply scans the busy/idle bit associated with each logical channel

• Whether a channel is free

30

Duplex protocols (cont’d)

– If so• inserts the appropriate send sequence number and the

logical channel number in the frame header• Starts a timer for the frame and initiates its transmission

– If channel is not free• The frame is left in the input queue to wait for a free

channel• Bit-oriented protocols

– Protocols defines bit patterns rather than transmission control characters to signal the start and end of a frame

– Frame delimiting» Unique start-of-frame and end-of-frame bit patterns as

flags (01111110)» A unique start-of-frame bit pattern, known as the start

delimiter(10101011), and a length(byte) count in the header at the start of the frame

31

Bit-oriented protocols (cont’d)

– Unique start-of-frame and end-of-frame delimiters that include bit encoding violations

32

High-level data link control

• HDLC– An international standard by ISO– For use on both point-to-point and

multipoint data links– It supports full-duplex, transparent-

mode operations

33

HDLC (cont’d)

• 3 operational mode– NRM

• Normal response mode• It is used in unbalanced

configurations• Slave stations can

transmit only when specifically instructed by the master station

34

HDLC (cont’d)

– ARM• Asynchronous response mode• It is used in unbalanced configurations• It allows a secondary to initiate a transmission

without receiving permission from the primary

– ABM• Asynchronous balanced mode• It is used mainly on duplex point-to-point links• Each station has an equal status and performs

both primary and secondary functions

35

HDLC (cont’d)

• Frame formats– 3 class

• Unnumbered frames– Be used for such

functions as link setup and disconnections

– They do not contain any acknowledgement information, which is contained in sequence numbers

36

HDLC (cont’d)

• Information frames– It carries the actual information or data and

are normally referred to simply as I-frames– I-frames can be used to piggyback

acknowledgement information relating to the flow of I-frames in the reverse direction when the link is being operated in ABM or ARM

• Supervisory frames– It is used for error and flow control and hence

contain send and receive sequence numbers

37

HDLC (cont’d)

• Flag– Start-of-frame and end-of-frame delimiter

• FCS– 16-bit CRC for complete contents enclosed

between the two flag delimiters

• Address field– Depend on the mode of operation (group

address, broadcast address)

38

HDLC (cont’d)

• Frame types– Unnumbered frames are used for link

management• SNRM and SABM-frames are used both to

set up a logical link between the primary and a secondary station and to inform the secondary station of the mode of operation to be used

– To clear a logical link, send a DISC frame

39

HDLC (cont’d)

– UA frame is used as a acknowledgement– Supervisory frame

• RR, RNR– Be used in both NRM and ABM

• REJ and SREJ-frame– Be used only in ABM which permits simultaneous

two-way communication across a point-to-point link

• SREJ-frame– Be used with a selective repeat transmission

procedure

• REJ-frame– Be used with a go-back-N procedure

40

HDLC (cont’d)

• Protocol operation– Link management

• Before any information may be transmitted

– A logical connection between the two communicating parties must be established

– This is accomplished by the exchange of two unnumbered frames

41

Link management

• Connection establishment– SNRM(multidrop link)– SARM(point-to-point lin

k)

• Clear link– DISC frame

• Acknowledgement– UA frame

42

HDLC (cont’d)

– Data transfer• The unnumbered poll(UP) frame with the

P bit set to 1 if normally used by the primary to poll a secondary

• Error control– It uses a continuous RQ procedure with either

a selective repeat or a go-back-N retransmission strategy

• Flow control– It is based on a window mechanism

43

Data transfer

44

Data transfer (cont’d)

45

HDLC (cont’d)

– User interface

46

Link access procedure version B

• LAPB– A subset of HDLC– It is used to control the transfer of I-

frames across a point-to-point duplex data link

– An extended version of LAPA(link access procedure version A)

47

LAPB (cont’d)

• Applicability– In fig 5.2.c– LAPB is used to control the transfer of

information frames across the local DTE-DCE interface

– It has local significance

• Frames– RR- and REJ-frames are used for error control – RNR is used flow control

48

LAPB (cont’d)

49

Multilink procedure

• HDLC– Controls the transfer of information

frames across a single duplex link– As a SLP(single link procedure)

• MLP– It simply treats the set of single link

procedures as a pool of links available to transfer user information

50

Multilink procedure (cont’d)

• Additional control field– MLC field– Add to the head of each

frame– It receives for

transmission prior to passing the frame to an SLP

– Two octets– Contains a 12-bit

sequence number

51

Link access procedure for modems

• LAPM– The protocol used in error correction

modems such as the V.32 modem

• Each modem comprises two functional units– User interface part (UIP)– Error correcting part (ECP)

52

LAPM (cont’d)

• XID (exchange identification)– The operational paramet

er values are negotiated when the two ECPs exchange two special unnumbered frames

– One as a command and the other as a response

53

Link access procedure D-channel

• LAPD– The HDLC subset for use with the

ISDN– It has been defined to control the flow

of I-frames associated with the signaling channel(D-channel)

– Two types of service• Unacknowledged (best-try) service• Acknowledged (connection-oriented)

service

54

LAPD (cont’d)

55

LAPD (cont’d)

56

Logical link control

• LLC– The HDLC derivative used with LANs– With LANS

• The data link layer is comprised of two sublayers

– MAC(medium access control) sublayer» It implements the distributed access control algor

ithm– LLC sublayer

57

LLC (cont’d)

• User services– Unacknowledged connectionless service

• It allows the user to initiate the transfer of service data units with a minimum of protocol overheads

– Connection-oriented services• It allow the user to establish a link-level logical

connection before initiating the transfer of any service data units and, if required, to implement error recovery and sequencing of the flow of these units across an established connection

58

LLC (cont’d)

– Acknowledged connectionless service

• Obtain reply service

– It allows an item of data to be requested from a remote user without a connection first being established

59

LLC (cont’d)

• Protocol operations– Frame

• Address fields refer to the LLC service access point only

• No FCS field• The complete LLC frame is passed to the MAC

sublayer in the form of a primitive • MAC sublayer handles the network addressing a

nd error-detection functions

60

Protocol operations(cont’d)• Two types of

operation– Type 1

• To support the unacknowledged connectionless service

– Type 2• To support the

connection-oriented service

61

LLC (cont’d)

• MAC services– User service primitives

• MA_UNITDATA.request• MA_NITDATA.indication• MA_UNITDATA.confirmation

62

MAC services (cont’d)