Chapter 5: Data Link Control - Washington University in …jain/cis677-96/ftp/e_7dlc2.pdfThe Ohio...

18
Raj Jain The Ohio State University 5-1 Chapter 5: Chapter 5: Chapter 5: Data Link Control Data Link Control Data Link Control Raj Jain Professor of CIS The Ohio State University Columbus, OH 43210 [email protected] http://www.cis.ohio-state.edu/~jain/ Raj Jain The Ohio State University 5-2 Overview Data link functions Flow Control Effect of propagation delay, speed, frame size Error Control Example: HDLC

Transcript of Chapter 5: Data Link Control - Washington University in …jain/cis677-96/ftp/e_7dlc2.pdfThe Ohio...

Page 1: Chapter 5: Data Link Control - Washington University in …jain/cis677-96/ftp/e_7dlc2.pdfThe Ohio State University Raj Jain 5-25 Performance Comparison Fig 5.12 U α The Ohio State

Raj JainThe Ohio State University

5-1

Chapter 5:Chapter 5:Chapter 5:Data Link ControlData Link ControlData Link Control

Raj Jain

Professor of CISThe Ohio State University

Columbus, OH [email protected]

http://www.cis.ohio-state.edu/~jain/

Raj JainThe Ohio State University

5-2

Overview

❑ Data link functions

❑ Flow Control

❑ Effect of propagation delay, speed, frame size

❑ Error Control

❑ Example: HDLC

Raj Jain
Horizontal small
Page 2: Chapter 5: Data Link Control - Washington University in …jain/cis677-96/ftp/e_7dlc2.pdfThe Ohio State University Raj Jain 5-25 Performance Comparison Fig 5.12 U α The Ohio State

Raj JainThe Ohio State University

5-3

Data Link FunctionsData Link FunctionsData Link Functions

❑ Frame Synchronization

❑ Handle point-to-point and multipoint lines

❑ Flow control

❑ Error control

❑ Addressing

❑ Multiplex data and control on the same link

❑ Link management

Raj JainThe Ohio State University

5-4

Line DuplexityLine DuplexityLine Duplexity

❑ Simplex: Transmit or receive

❑ Full Duplex: Transmit and receivesimultaneously

❑ Half-Duplex: Transmit and receive alternately

Page 3: Chapter 5: Data Link Control - Washington University in …jain/cis677-96/ftp/e_7dlc2.pdfThe Ohio State University Raj Jain 5-25 Performance Comparison Fig 5.12 U α The Ohio State

Raj JainThe Ohio State University

5-5

Line TopologyLine TopologyLine Topology

Fig 5.1

Point-to-Point

Point to Multipoint

Raj JainThe Ohio State University

5-6

Line Discipline: Point-to-PointLine Discipline: Point-to-PointLine Discipline: Point-to-Point

ENQ

Ack/Nak

Ack/Nak

Frame

EOT

ConnectionEstablishment

DataTransfer

Termination

Primary SecondarySpace

Time

Page 4: Chapter 5: Data Link Control - Washington University in …jain/cis677-96/ftp/e_7dlc2.pdfThe Ohio State University Raj Jain 5-25 Performance Comparison Fig 5.12 U α The Ohio State

Raj JainThe Ohio State University

5-7

Line Discipline: Multipoint LinksLine Discipline: Multipoint LinksLine Discipline: Multipoint Links

Fig 5.3

Secondary

Primary

t0t1

t2t3t4t5

NAK

POLL

PS

POLL

DATA

ACK

P

S

DATA

ACK

ACK

SEL

P

S

DATA

ACK

SEL+

(a) Polled terminalhas nothing to send (b) Polled terminal

has Data to send (c)Select

(d) Fast select

PS S S S

Raj JainThe Ohio State University

5-8

Flow ControlFlow ControlFlow Control

Fig 5.4

Page 5: Chapter 5: Data Link Control - Washington University in …jain/cis677-96/ftp/e_7dlc2.pdfThe Ohio State University Raj Jain 5-25 Performance Comparison Fig 5.12 U α The Ohio State

Raj JainThe Ohio State University

5-9

Stop and Wait Flow ControlStop and Wait Flow ControlStop and Wait Flow Control

Data

Ack

Ack

Data

tframe

tprop

α =tprop

tframe

=Distance/Speed of Signal

Frame size /Bit rate

=Distance × Bit rate

Frame size × Speed of Signal

=1

2α + 1

U=2tprop+tframe

tframe

U

αLight in vacuum = 300 m/µsLight in fiber= 200 m/µsElectricity= 250 m/µs

Raj JainThe Ohio State University

5-10

Utilization: ExamplesUtilization: ExamplesUtilization: Examples❑ Satellite Link: Propagation Delay tprop = 270 ms

Frame Size = 4000 bits = 500 bytesData rate = 56 kbps ⇒ tframe = 4/56 = 71 msα = tprop/tframe = 270/71 = 3.8U = 1/(2α+1) = 0.12

❑ Short Link: 1 km = 5 µs,Rate=10 Mbps,Frame=500 bytes ⇒ tframe= 4k/10M= 400 µsα=tprop/tframe=5/400=0.012 ⇒ U=1/(2α+1)=0.98

Page 6: Chapter 5: Data Link Control - Washington University in …jain/cis677-96/ftp/e_7dlc2.pdfThe Ohio State University Raj Jain 5-25 Performance Comparison Fig 5.12 U α The Ohio State

Raj JainThe Ohio State University

5-11

Sliding Window ProtocolSliding Window ProtocolSliding Window Protocol

Data

Ack

tframe

tprop

U=Ntframe

2tprop+tframe

=

N

2α+1

1 if N>2α+1

Raj JainThe Ohio State University

5-12

Sliding WindowSliding WindowSliding Window

Fig 5.6

...0 1 2 3 4 5 5 6 76 7 0 1 2 3 4...Frames already transmitted

Window of frames that may be transmitted

Window shrinks from trailing edge as frames are sent

Window expands from leading edge as acknowledgements are recieved

Last frame transmitted

Framesequencenumbers

(a) Transmitter�s perspective

...0 1 2 3 4 5 5 6 76 7 0 1 2 3 4...Frames already recieved

Window of frames that may be transmitted

Window shrinks from trailing edge as frames are recieved

Window expands from leading edge as acknowledgements are sent

Last frame acknowledged

(b) Reciever�s perspective

Page 7: Chapter 5: Data Link Control - Washington University in …jain/cis677-96/ftp/e_7dlc2.pdfThe Ohio State University Raj Jain 5-25 Performance Comparison Fig 5.12 U α The Ohio State

Raj JainThe Ohio State University

5-13

Sliding Window: ExampleSliding Window: ExampleSliding Window: Example

Fig 5.7

0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 77 0 1

Source System A Source System B

F0F1F2

0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7

0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 72

0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 74 5 6 7 0 1 2

0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 72

0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7

0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 73 4 5 6 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 73 4 5 6

0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7

ACK3

F3F4

F5

F6

ACK4

0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7

Raj JainThe Ohio State University

5-14

Effect of Window SizeEffect of Window SizeEffect of Window Size

Fig 5.9

α

U

Page 8: Chapter 5: Data Link Control - Washington University in …jain/cis677-96/ftp/e_7dlc2.pdfThe Ohio State University Raj Jain 5-25 Performance Comparison Fig 5.12 U α The Ohio State

Raj JainThe Ohio State University

5-15

PiggybackingPiggybackingPiggybacking

Data

Data+Ack

tframe

tprop

Header Ack DataHeader Data

Raj JainThe Ohio State University

5-16

Error ControlError ControlError Control

❑ Automatic RepeatRequest (ARQ)

❑ Error detection

❑ Acknowledgment

❑ Retransmissionafter timeout

❑ NegativeAcknowledgment

Data

Ack

Nak

Data

tframe

tprop

Page 9: Chapter 5: Data Link Control - Washington University in …jain/cis677-96/ftp/e_7dlc2.pdfThe Ohio State University Raj Jain 5-25 Performance Comparison Fig 5.12 U α The Ohio State

Raj JainThe Ohio State University

5-17

Stop-and-Wait ARQStop-and-Wait ARQStop-and-Wait ARQ

Fig 5.10

Raj JainThe Ohio State University

5-18

Performance: Stop-and-WaitPerformance: Stop-and-WaitPerformance: Stop-and-Wait

❑ P=Probility ofFrame Error

❑ α = Tp/Tf

❑ U=Tf/[Nr(Tf+2Tp)]= 1/[Nr(1+2α)]

❑ Nr=Σ i Pi-1(1-P)=1/(1-P)

❑ U=(1-P)/(1+2α)

0

Nak 0

Nak 0

Ack

TfTp

Page 10: Chapter 5: Data Link Control - Washington University in …jain/cis677-96/ftp/e_7dlc2.pdfThe Ohio State University Raj Jain 5-25 Performance Comparison Fig 5.12 U α The Ohio State

Raj JainThe Ohio State University

5-19

Go-back-N ARQGo-back-N ARQGo-back-N ARQ

Fig 5.11a

Sender

Receiver

Sender ReceiverRetransmit One Do not cache out-of-orderRetransmit One Cache out-of-orderRetransmit All Do not cache out-of-orderRetransmit All Cache out-of-order

Selective-Reject:Go-back-n:

Raj JainThe Ohio State University

5-20

Go-back-NGo-back-NGo-back-N

❑ Damaged Frame

❑ Frame received with error

❑ Frame lost

❑ Last frame lost

❑ Damaged Ack

❑ One ack lost, next one makes it

❑ All acks lost

❑ Damaged Nak

Page 11: Chapter 5: Data Link Control - Washington University in …jain/cis677-96/ftp/e_7dlc2.pdfThe Ohio State University Raj Jain 5-25 Performance Comparison Fig 5.12 U α The Ohio State

Raj JainThe Ohio State University

5-21

Performance: Go-back-NPerformance: Go-back-NPerformance: Go-back-N

❑ Frames Retransmitted = 2α+1 if N>2α+1N otherwise

❑ U = (1-P)/(1+2αP) if N>2α+1 N(1-P)/[(2α+1)(1-P+NP)] otherwise

1

Nak 1 1

Raj JainThe Ohio State University

5-22

Selective-Reject ARQSelective-Reject ARQSelective-Reject ARQ

Fig 5.11b

Transmitter

Receiver

Page 12: Chapter 5: Data Link Control - Washington University in …jain/cis677-96/ftp/e_7dlc2.pdfThe Ohio State University Raj Jain 5-25 Performance Comparison Fig 5.12 U α The Ohio State

Raj JainThe Ohio State University

5-23

Selective Reject: Window SizeSelective Reject: Window SizeSelective Reject: Window Size

01234567

0Ack

Sequence number space > 2 window size

Timeout

Raj JainThe Ohio State University

5-24

❑ Error Free:U=1 if N>2α+1 N/(2α+1) otherwise

❑ With Errors:Nr=Σ i Pi-1(1-P)=1/(1-P)

❑ U=(1-P) if N>(1+2α) N(1-P)/(1+2α) otherwise

Performance: Selective RejectPerformance: Selective RejectPerformance: Selective Reject

1

Nak 1 1

Page 13: Chapter 5: Data Link Control - Washington University in …jain/cis677-96/ftp/e_7dlc2.pdfThe Ohio State University Raj Jain 5-25 Performance Comparison Fig 5.12 U α The Ohio State

Raj JainThe Ohio State University

5-25

Performance ComparisonPerformance ComparisonPerformance Comparison

Fig 5.12

U

α

Raj JainThe Ohio State University

5-26

HDLC FamilyHDLC FamilyHDLC Family❑ Synchronous Data Link Control (SDLC): IBM

❑ High-Level Data Link Control (HDLC): ISO

❑ Link Access Procedure-Balanced (LAPB): X.25

❑ Link Access Procedure for the D channel (LAPD): ISDN

❑ Link Access Procedure for modems (LAPM): V.42

❑ Link Access Procedure for half-duplex links (LAPX): Teletex

❑ Point-to-Point Protocol (PPP): Internet

❑ Logical Link Control (LLC): IEEE

❑ Advanced Data Communications Control Procedures(ADCCP): ANSI

❑ V.120 and Frame relay also use HDLC

Page 14: Chapter 5: Data Link Control - Washington University in …jain/cis677-96/ftp/e_7dlc2.pdfThe Ohio State University Raj Jain 5-25 Performance Comparison Fig 5.12 U α The Ohio State

Raj JainThe Ohio State University

5-27

❑ Primary station: Issue commands

❑ Secondary Station:Issue responses

❑ Combined Station: Both primary and secondary

❑ Unbalanced Configuration: One or more secondary

❑ Balanced Configuration: Two combined station

❑ Normal Response Mode (NRM): Response from secondary

❑ Asynchronous Balanced Mode (ABM): Combined Station

❑ Asynchronous Response Mode (ARM): Secondary mayrespond before command

HDLCHDLCHDLC

Raj JainThe Ohio State University

5-28

HDLC Frame StructureHDLC Frame StructureHDLC Frame Structure

Fig 5.13

Frame Format

Control Field Format

Extended Address Field

Extended Control Field

......

0 N(S) P/F N(R) 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16

1 2 3 4 5 6 7 8

1 0 S 0 0 0 0 P/F N(R)

InformationSupervisory

N(S)= Send sequence number N(R)= Recieve sequence number S= Supervisory function bits M= Unnumbered bits P/F= Poll/final bit

I: InformationS: SupervisoryU: Unnumbered

8 8 8 or 16 16 or 32 8 FLAG ADDRESS INFORMATION FCS FLAG

bits Extendable Extendable

0 N(S) P/F N(R)1 0 S P/F N(R)1 1 M P/F M

0 0 18n

Page 15: Chapter 5: Data Link Control - Washington University in …jain/cis677-96/ftp/e_7dlc2.pdfThe Ohio State University Raj Jain 5-25 Performance Comparison Fig 5.12 U α The Ohio State

Raj JainThe Ohio State University

5-29

Bit StuffingBit StuffingBit Stuffing

Fig 5.14

Raj JainThe Ohio State University

5-30

HDLC FramesHDLC FramesHDLC Frames❑ Information Frames: User data

❑ Piggybacked Acks: Next frame expected

❑ Poll/Final = Command/Response

❑ Supervisory Frames: Flow and error control

❑ Go back N and Selective Reject

❑ Final ⇒ No more data to send

❑ Unnumbered Frames: Control

❑ Mode setting commands and responses

❑ Information transfer commands and responses

❑ Recovery commands and responses

❑ Miscellaneous commands and responses

Page 16: Chapter 5: Data Link Control - Washington University in …jain/cis677-96/ftp/e_7dlc2.pdfThe Ohio State University Raj Jain 5-25 Performance Comparison Fig 5.12 U α The Ohio State

Raj JainThe Ohio State University

5-31

HDLC Commands and ResponsesHDLC Commands and ResponsesHDLC Commands and Responses

Table 5.1

Name Information (I)Supervisory (S) Recieve Ready (RR) Recieve Not Ready (RNR)

Reject (REJ) Selective Reject (SREJ)Unnumbered (U) Set Normal Response / Extended Mode (SNRM / SNRME) Set Asynchronous Response / Extended Mode (SARM / SARME) Set Asynchronous Balanced / Extended Mode (SABM / SABME) Set Initialization Mode (SIM)

Function C/R

C/R

C/R C/R

C/R

C

C

C

C

DescriptionExchange user data

Positive Acknowledgement; ready to receive I-framePositive acknowledgement; not ready to receiveNegative acknowledgement; go back NNegative acknowledgement;selective rejectSet mode;extended=two-octet control fieldSet mode;extended=two-octet control fieldSet mode;extended=two-octet control fieldInitialize link control functons in addressed station

Raj JainThe Ohio State University

5-32

HDLC Commands and Responses (cont)HDLC Commands and Responses (cont)HDLC Commands and Responses (cont)

Name Function DescriptionDisconnect (DISC)Unnumbered Acknowledgement (UA)

Disconnect Mode (DM)Request Disconnect (RD)Request Initialization Mode (RIM)

Unnumbered Information (UI)Unnumbered Poll (UP)Reset (RSET)Exchange Identification (XID)

Test (TEST)

Frame Reject (FRMR)

CR

RRR

C/RCCC/R

C/R

R

Ter minate logical link connectionAcknowledges acceptance of one of the above set-mode commandsSecondary is logically disconnectedRequest for DISC commandInitialization needed; request for SIM commandUsed to exchange control informationUsed to solicit control informationUsed for recovery; resets N(R), N(S)Used to request/report identity and statusExchange identical information fields for testingReports receipt of unacceptable frame

Page 17: Chapter 5: Data Link Control - Washington University in …jain/cis677-96/ftp/e_7dlc2.pdfThe Ohio State University Raj Jain 5-25 Performance Comparison Fig 5.12 U α The Ohio State

Raj JainThe Ohio State University

5-33

Examples of HDLC OperationExamples of HDLC OperationExamples of HDLC OperationSABM

SABM

UA

DISC

UA

I,0,0

I,0,1

I,1,1

I,2,1

I,1,3

I,3,2

I,2,4

I,3,4

RR,4

I,3,0

RNR,4

RR,0,P

RNR,4,F

I,3,0

RNR,4,F

I,3,0

Timeout

(a) Line setup anddisconnect

(b) Two-way dataexchange

(c) Busy condition

Raj JainThe Ohio State University

5-34

Examples of Operation (Cont)Examples of Operation (Cont)Examples of Operation (Cont)I,3,0

I,4,0

I,5,0

Rej, 4

I,4,0

I,5,0

I,6,0

I,2,0

RR,3

I,3,0

RNR,0,P

RR,3,F

I,3,0

RR,4

(d) Reject Recovery (e) Timeout Recovery

**

Page 18: Chapter 5: Data Link Control - Washington University in …jain/cis677-96/ftp/e_7dlc2.pdfThe Ohio State University Raj Jain 5-25 Performance Comparison Fig 5.12 U α The Ohio State

Raj JainThe Ohio State University

5-35

SummarySummarySummary

❑ Line: point-to-point, multipoint, simplex, full-duplex, half-duplex

❑ Flow Control: Stop and Wait, Sliding window

❑ Effect of propagation delay, speed, frame size

❑ Error Control: Stop and wait ARQ, Go-back-N, SelectiveReject

❑ HDLC: Bit stuffing, Flag, I-Frame, RR, RNR

Raj JainThe Ohio State University

5-36

Homework: Chapter 5Homework: Chapter 5Homework: Chapter 5

❑ Exercises: 5.7, 5.14, 5.18, 5.20

❑ Due: Next class