Datakommunikasjon Høsten 2001 Forelesning nr 3, 10. september 2001 Ch 7, Data Link Control.

58
Datakommunikasjon Høsten 2001 Forelesning nr 3, 10. september 2001 Ch 7, Data Link Control

Transcript of Datakommunikasjon Høsten 2001 Forelesning nr 3, 10. september 2001 Ch 7, Data Link Control.

Datakommunikasjon Høsten 2001

Forelesning nr 3, 10. september 2001 Ch 7, Data Link Control

Forelesning nr 4, høsten 2001

Øvingsoppgaver

Oppgave 7.11, 7.17 og 7.26

Gjennomgås onsdag 19. september

Forelesning nr 4, høsten 2001

Flow ControlEnsuring the sending entity does not

overwhelm the receiving entity Preventing buffer overflow

Transmission time Time taken to emit all bits into medium

Propagation time Time for a bit to traverse the link

Forelesning nr 4, høsten 2001

Model of Frame Transmission

Forelesning nr 4, høsten 2001

Stop and WaitSource transmits frameDestination receives frame and replies

with acknowledgementSource waits for ACK before sending next

frameDestination can stop flow by not send ACKWorks well for a few large frames

Forelesning nr 4, høsten 2001

FragmentationLarge block of data may be split into small

frames Limited buffer size Errors detected sooner (when whole frame

received) On error, retransmission of smaller frames is

needed Prevents one station occupying medium for

long periods

Stop and wait becomes inadequate

Forelesning nr 4, høsten 2001

Link utnyttelseTransmission time = tid det tar å sende en

rammeSettes = 1Propagation delay = tid det å sende en bit fra

A til BSettes = a

Forelesning nr 4, høsten 2001

Stop and Wait Link Utilization

Forelesning nr 4, høsten 2001

Sliding Windows Flow ControlAllow multiple frames to be in transitReceiver has buffer W longTransmitter can send up to W frames

without ACKEach frame is numberedACK includes number of next frame

expectedSequence number bounded by size of field

(k) Frames are numbered modulo 2k

Forelesning nr 4, høsten 2001

Sliding Window Diagram

Forelesning nr 4, høsten 2001

Example Sliding Window

Forelesning nr 4, høsten 2001

Sliding Window EnhancementsReceiver can acknowledge frames without

permitting further transmission RNR (Receive Not Ready)

Must send a normal acknowledge to resume

If duplex, use piggybacking If no data to send, use acknowledgement

frame If data but no acknowledgement to send, send

last acknowledgement number again, or have ACK valid flag (TCP)

Forelesning nr 4, høsten 2001

Error DetectionAdditional bits added by transmitter for

error detection codeParity

Value of parity bit is such that character has even (even parity) or odd (odd parity) number of ones

Even number of bit errors goes undetected

Forelesning nr 4, høsten 2001

Cyclic Redundancy CheckFor a block of k bits transmitter generates

n bit sequenceTransmit k+n bits which is exactly

divisible by some numberReceive divides frame by that number

If no remainder, assume no error

Forelesning nr 4, høsten 2001

Error detection

Forelesning nr 4, høsten 2001

CRC Cyclic Redundancy CheckM= 10110101, melding som skal overføres

CRC generatorpolynom P= x4+x+1=10011

FCS (Frame Check Sequence) er rest av divisjonen

2n * M : P n=4

101101010000 : 10011 = 10101010

Gir rest på 1110, dvs FCS = 1110

Sender M + FCS = 101101011110

Forelesning nr 4, høsten 2001

101101010000:10011=1010101010011 01011 00000 10110 10011 01011 00000 10110 10011 01010 00000 10100 10011 01110 00000 1110

FCS = 1110

Utregning

Overfører:

101101010000 (2nM)

+ 1110 (FCS)=101101011110

Forelesning nr 4, høsten 2001

CRC polynomer

CRC-12 x12

+x11

+x3 +x

3+x+1

CRC-16CRC-CCITTCRC-32

Forelesning nr 4, høsten 2001

Error ControlDetection and correction of errorsLost framesDamaged framesSamlebegrep: Automatic repeat

request Error detection Positive acknowledgment Retransmission after timeout Negative acknowledgement and

retransmission

Forelesning nr 4, høsten 2001

Automatic Repeat Request (ARQ)Stop and waitGo back NSelective reject (selective retransmission)

Forelesning nr 4, høsten 2001

Stop and WaitSource transmits single frameWait for ACKIf received frame damaged, discard it

Transmitter has timeout If no ACK within timeout, retransmit

If ACK damaged,transmitter will not recognize it Transmitter will retransmit Receive gets two copies of frame Use ACK0 and ACK1

Forelesning nr 4, høsten 2001

Stop and Wait -Diagram

Benytter ACK0 og ACK1 som i sliding window

Forelesning nr 4, høsten 2001

Stop and Wait - Pros and ConsSimpleInefficient

Forelesning nr 4, høsten 2001

Go Back N Based on sliding windowIf no error, ACK as usual with next frame

expectedUse window to control number of

outstanding framesIf error, reply with rejection

Discard that frame and all future frames until error frame received correctly

Transmitter must go back and retransmit that frame and all subsequent frames

Forelesning nr 4, høsten 2001

Go Back N - Damaged FrameReceiver detects error in frame iReceiver sends rejection-iTransmitter gets rejection-iTransmitter retransmits frame i and all

subsequent

Forelesning nr 4, høsten 2001

Go Back N - Lost Frame (1)Frame i lostTransmitter sends i+1Receiver gets frame i+1 out of sequenceReceiver send reject iTransmitter goes back to frame i and

retransmits

Forelesning nr 4, høsten 2001

Go Back N - Lost Frame (2)Frame i lost and no additional frame sentReceiver gets nothing and returns neither

acknowledgement nor rejectionTransmitter times out and sends

acknowledgement frame with P bit set to 1(P=1 betyr kommando)

Receiver interprets this as command which it acknowledges with the number of the next frame it expects (frame i )

Transmitter then retransmits frame i

Forelesning nr 4, høsten 2001

Go Back N - Damaged AcknowledgementReceiver gets frame i and send

acknowledgement (i+1) which is lostAcknowledgements are cumulative, so

next acknowledgement (i+n) may arrive before transmitter times out on frame i

If transmitter times out, it sends acknowledgement with P bit set as before

This can be repeated a number of times before a reset procedure is initiated

Forelesning nr 4, høsten 2001

Go Back N - Diagram

RR=Receive ReadyREJ = Reject

Forelesning nr 4, høsten 2001

Selective RejectAlso called selective retransmissionOnly rejected frames are retransmittedSubsequent frames are accepted by the

receiver and bufferedMinimizes retransmissionReceiver must maintain large enough

bufferMore complex logic in transmitter

Forelesning nr 4, høsten 2001

Selective Reject -Diagram

RR = Receive ReadyREJ = RejectSREJ = Selective reject

Forelesning nr 4, høsten 2001

High Level Data Link ControlHDLCISO 33009, ISO 4335

Forelesning nr 4, høsten 2001

HDLC Station TypesPrimary station

Controls operation of link Frames issued are called commands Maintains separate logical link to each

secondary station

Secondary station Under control of primary station Frames issued called responses

Combined station May issue commands and responses

Forelesning nr 4, høsten 2001

HDLC Link ConfigurationsUnbalanced

One primary and one or more secondary stations

Supports full duplex and half duplex

Balanced Two combined stations Supports full duplex and half duplex

Forelesning nr 4, høsten 2001

HDLC Transfer Modes (1)Normal Response Mode (NRM)

Unbalanced configuration Primary initiates transfer to secondary Secondary may only transmit data in response

to command from primary Used on multi-drop lines Host computer as primary Terminals as secondary

Forelesning nr 4, høsten 2001

HDLC Transfer Modes (2)Asynchronous Balanced Mode (ABM)

Balanced configuration Either station may initiate transmission

without receiving permission Most widely used No polling overhead

Forelesning nr 4, høsten 2001

HDLC Transfer Modes (3)Asynchronous Response Mode (ARM)

Unbalanced configuration Secondary may initiate transmission without

permission form primary Primary responsible for line rarely used

Forelesning nr 4, høsten 2001

Frame StructureSynchronous transmissionAll transmissions in framesSingle frame format for all data and

control exchanges

Forelesning nr 4, høsten 2001

Frame Structure Diagram

Start Stopp

Forelesning nr 4, høsten 2001

Flag FieldsDelimit frame at both endsFlagg = 01111110May close one frame and open anotherReceiver hunts for flag sequence to

synchronize

Forelesning nr 4, høsten 2001

Bitstuffing - transparens

Brukes i HDLC for å ungå problemer med like datafelt og flagg.

Mellom sending av start og stop flagg, senderen vil alltid sette inn en 0er etter fem 1ere: Etter å ha detektert start flagget gransker den bit strømmen: når det kommer et mønster på fem 1ere, ser den på det

6. er dette en 0er, slettes det er dette en 1er og det syvende en 0er, er dette et

godkjent flagg. dersom både 6 og 7 er 1ere, et abort signal sendt.

Forelesning nr 4, høsten 2001

Bit Stuffing Example with

possible errors

Forelesning nr 4, høsten 2001

Address Field Identifies secondary station that sent or will receive

frameUsually 8 bits longMay be extended to multiples of 7 bits

LSB of each octet indicates that it is the last octet (1) or not (0)

All ones (11111111) is broadcast

Forelesning nr 4, høsten 2001

Control FieldDifferent for different frame type

Information - data to be transmitted to user (next layer up)

Flow and error control piggybacked on information frames

Supervisory - ARQ when piggyback not used Unnumbered - supplementary link control

First one or two bits of control field identify frame type

Forelesning nr 4, høsten 2001

Control Field Diagram

Forelesning nr 4, høsten 2001

Poll/Final BitUse depends on contextCommand frame

P bit 1 to solicit (poll) response from peer

Response frame F bit 1 indicates response to soliciting command

Forelesning nr 4, høsten 2001

Information FieldOnly in information and some

unnumbered framesMust contain integral number of octetsVariable length

Forelesning nr 4, høsten 2001

Frame Check Sequence FieldFCSError detection16 bit CRCOptional 32 bit CRC

Forelesning nr 4, høsten 2001

HDLC OperationExchange of information, supervisory and

unnumbered framesThree phases

Initialization Data transfer Disconnect

Forelesning nr 4, høsten 2001

Examples of Operation (1)

Forelesning nr 4, høsten 2001

Examples of Operation (2)

N(S), N(R)

Forelesning nr 4, høsten 2001

Other DLC Protocols (LAPB,LAPD)LAPB - Link Access Procedure, Balanced

Part of X.25 (ITU-T) Subset of HDLC - ABM Point to point link between system and packet

switching network node (mellom DTE og DCE)LAPD - Link Access Procedure, D-Channel

Beskrevet i Q.921 spesifikasjonen ABM Always 7-bit sequence numbers 16 bit address field contains two sub-

addressesOne for device and one for user (next layer up)

Forelesning nr 4, høsten 2001

ISDN – datalinklaget (lag 2)

FCS = Frame Check Sequence

Forelesning nr 4, høsten 2001

LAPD commands and responses

I - Information

RR – Receive ReadyRNR – Receive Not ReadyREJ – Reject

SABME – Set Asynchronous Balanced ModeDM – Disconnect ModeUI – Unnumbered InformationDISC – DisconnectUA – Unnumbered acknowledgeFRMR – Frame RejectXID – Exchange Identification

Forelesning nr 4, høsten 2001

LAPD – TimersT200 = 1s, Time to wait for an ack before

initiating recoveryT201 = 1s, Minimum time between TEI

identity check messagesT202 = 2s, Minimum time between TEI

identity check messagesT203 = 10s, Maximum time with no

frames exchanged

Forelesning nr 4, høsten 2001

Other DLC Protocols (LLC)Logical Link Control (LLC)

IEEE 802 Different frame format Link control split between medium access layer

(MAC) and LLC (on top of MAC) No primary and secondary - all stations are peers Two addresses needed

Sender and receiver

Error detection at MAC layer32 bit CRC

Destination and source access points (DSAP, SSAP)

Forelesning nr 4, høsten 2001

Logical Link Control/Medium Access Control

Forelesning nr 4, høsten 2001

Eksempel på LAPD