Presentation is loading. Please wait.

Presentation is loading. Please wait.

1 Prof. Sang-Jo Yoo 7. Data Link Control. Prof. Sang-Jo Yoo 2 Data Link Layer Functions  Frame Synchronization  Flow Control  Control rate of transmission.

Similar presentations


Presentation on theme: "1 Prof. Sang-Jo Yoo 7. Data Link Control. Prof. Sang-Jo Yoo 2 Data Link Layer Functions  Frame Synchronization  Flow Control  Control rate of transmission."— Presentation transcript:

1 1 Prof. Sang-Jo Yoo 7. Data Link Control

2 Prof. Sang-Jo Yoo 2 Data Link Layer Functions  Frame Synchronization  Flow Control  Control rate of transmission to prevent over-run  Error Control  Correct transmission errors ( by retransmission )  Addressing  When many nodes share transmission link  Link Management  Initiation, maintenance, and termination of connections

3 Prof. Sang-Jo Yoo 3 Flow Control  Definition  Technique for controlling data rate so that sender does not over-run receiver  Method  Stop-and-Wait  Sliding-Window

4 Prof. Sang-Jo Yoo 4 Flow Control Stop-and-Wait  “Stop-and-Wait” flow control  Sender sends a frame  Receiver receives frame & acknowledge it  Sender waits to receive “ack” before sending next frame.(If receiver is not ready to receive another frame it holds back the ack)  Efficient for large blocks  Many small bocks are used, because  Receiver buffer limits  Error control  Fair sharing of medium.

5 Prof. Sang-Jo Yoo 5 Flow Control Stop-and-Wait The effect of a utilization 1<a1>a

6 Prof. Sang-Jo Yoo 6 Flow Control Sliding-Window  “Sliding-Widow” flow control  Pipeline transmission of successive frames  Transmit up to “N” frames if necessary without receiving acks  Wait for acks when “N” unacked frames in transit  Acknowledge multiple frames  For duplex transmission each station needs a sending widow & receiving widow

7 Prof. Sang-Jo Yoo 7 Flow Control Sliding-Window

8 Prof. Sang-Jo Yoo 8 Flow Control Sliding-Window Examples of a sliding-window protocol

9 Prof. Sang-Jo Yoo 9 Error Detection  Basic principle  Transmitter : For a given bit stream M, additional bits( called error-detecting code ) are calculated as a function of M and appended to the end of M  Receiver : For each incoming frame, perform the same calculation and compares the two results. A detected error occurs iff there is a mismatch

10 Prof. Sang-Jo Yoo 10 Error Detection  Two common techniques  Parity checks  Cyclic redundancy checks ( CRC )  Parity check  One extra “parity” bit is added to each word  Odd parity : bit added so as to make # of 1 odd  Even parity : bit added so as to make # of 1 even 10100101  11100101  Can detect 1 bit inversion.  Single parity is very effective with white noise, but not very robust with noise bursts

11 Prof. Sang-Jo Yoo 11 Error Detection  Cyclic redundancy checks  Powerful error detection method, easily implemented  Message(M) to be transmitted is appended with extra frame checksum bits(F), so that bit pattern transmitted(T) is perfectly divisible by a special “generator” pattern(P)  As destination, divide received message by the same P. If remainder is nonzero then error is occurred  Let  T = (k+n) bit frame to be transmitted, n<k  M = k bit message, the first k bits of T  F = n bit FCS, the last n bits of T  P = n+1 bits, generator pattern ( predetermined divisor )  Use modulo-2 arithmetic : no carries/borrows, add=subtract=xor

12 Prof. Sang-Jo Yoo 12 Error Detection  Method  Extend M with n ‘0’s to the right ( =2 n M )  Divide extended message by P to get R ( 2 n M/P = Q+R/P )  Add R to extended message to form T ( T= 2 n M+R )  Transmit T  At receiver, divide T by P. If non-zero remainder, then error

13 Prof. Sang-Jo Yoo 13 Error Detection  Example  M=110011, P=11001, R=4bits  Append 4 zeros to M, we get 1100011000  Divide 1100011000/11001  Append remainder  T=1100111001 1 1 0 0 1 1 0 0 0 0 1 1 0 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 1 1 0 0 1 1 0 0 1 1 0 0 0 0 1

14 Prof. Sang-Jo Yoo 14 Error Detection  We can view CRC generation in terms of polynomial arithmetic  Any bit pattern = polynomial in dummy variable X  e.g. M=110011 M(X)=X 5 +X 4 +X+1  CRC generation in terms of polynomial  Append n ‘0’s :  Modulo 2 division :  Transmit :  At receiver :  Commonly used polynomials, P(X)  CRC-16 :  CRC-CCITT :  CRC-32 :

15 Prof. Sang-Jo Yoo 15 Error Detection  Following errors can be detectable:  All single-bit errors  All double-bit errors, as long as P(X) has at least three 1s.  Any odd number of errors, as long as P(X) contains a factor (X+1)  Any burst errors for which the length of the burst is less than the length of the FCS  Most larger burst errors.

16 Prof. Sang-Jo Yoo 16 Error Detection  Implementation  Implemented by a circuit consisting of exclusive-or gates and a shift register  The shift register contain n bits ( length of FCS )  There are up to n exclusive-or gates  The presence or absence of a gate corresponds to the presence or absence of a term in P(X)

17 Prof. Sang-Jo Yoo 17 Error Detection Circuits with shift registers for dividing by the polynomial X 5 +X 4 + X 2 +1

18 Prof. Sang-Jo Yoo 18 Error Control  Error control techniques  Forward error control  Forward error correction ( FEC )  Error recovery by correction at the receiver  Backward error control  Automatic repeat request ( ARQ )  Error recovery by retransmission  Error  Lost frame  Damaged frame

19 Prof. Sang-Jo Yoo 19 Error Control  Bases of ARQ  Error detection  Positive ACK  Retransmission after timeout  Negative ACK. and retransmission

20 Prof. Sang-Jo Yoo 20 Error Control  Class of ARQ  Stop-and-Wait ARQ  Continuous ARQ (sliding window flow control)  Go-Back-N ARQ  Selective-reject ARQ  Stop-and-Wait ARQ  Sender transmits message frame  Receiver checks received frame for errors ; sends ACK/NAK  Sender wait for ACK/NAK  NAK : Retransmission  ACK : Next Frame  Simple and minimum buffer requirement, but inefficient

21 Prof. Sang-Jo Yoo 21 Error Control  Frame/ACK could be lost : Uses a timeout mechanism  Possibility of duplication : Number of frames  Only need a 1-bit frame number alternating 1 and 0

22 Prof. Sang-Jo Yoo 22 Error Control  Go-back-N ARQ  If the receiver detects an error on a frame, it sends a NAK for that frame.  The receiver will discard all future frames until the frame in error is correctly received  The sender, when it receives a NAK or timeout, must retransmit the frame in error plus all succeeding frames.  Sender must maintain a copy of each unacknowledged frame

23 Prof. Sang-Jo Yoo 23 Error Control

24 Prof. Sang-Jo Yoo 24 Error Control  Selective-Reject ARQ  The only frames retransmitted are those that receive a NAK or which timeout  Can save retransmission, but requires more buffer space and complicated logic  Maximum window size ( with n-bit sequence number )  Go-back-N : 2 n -1  Selective-reject : 2 n-1

25 Prof. Sang-Jo Yoo 25 Error Control  Why 2 n -1 instead of in 2 n Go-back-N ? SR 0 1 2 7 0 ACK1 Question: Did all eight frames arrive successfully, or did all eight frames get lost (or errors)? In both cases the receiver would send ACK1.

26 Prof. Sang-Jo Yoo 26 Error Control  Why 2 n-1 instead of 2 n -1 in selective-reject? SR 0 1 ACK1   6  0 ACK2 ACK7 Retransmission frame 0 At this point receiver has already advanced its window to accept frames 7, 0, 1, 2, 3, 4, 5. Thus it assumes that frame 7 has been lost and that this is a new frame 0, so it accepts.  There should be no overlap between the sender and receiver windows.  Max window size  2 n /2 0 1 2 3 4 5 6 7 0 0 1 2 3 4 5 6 7 0 1

27 27 Prof. Sang-Jo Yoo HDLC and Other Data Link Layer Protocols

28 Prof. Sang-Jo Yoo 28 Contents  Review - Data Link Layer Functions  HDLC (High-level Data Link Control)  Basic Characteristics  Frame Structures  Operations  Other Data Link Layer Protocols  LAPB  LAPD  LLC  Frame Relay  ATM

29 Prof. Sang-Jo Yoo 29 Review - Data Link Layer Functions(1)  Protocol View  Link layer protocol must provide the following functions to the upper layer. (1) Initial setup of the link (2) ordered exchange of data blocks (3) orderly release of the link Calling stationCalled station User Software User Software Link Layer Link Layer CONNECT.request CONNECT.confirm CONNECT.indication DATA.request DATA.indication DATA.request DISCONNECT.indication DISCONNECT.request DISCONNECT.confirm (1) (2) (3)

30 Prof. Sang-Jo Yoo 30 Review - Data Link Layer Functions(2)  Functional View  Frame Synchronization  Flow Control  Stop-and-Wait  Sliding-Window  Error Control  Forward error control Forward Error Correction (FEC) : error correction at the receiver  Backward error control Automatic Repeat Request (ARQ) :error recovery by retransmission  Addressing  Link Management

31 Prof. Sang-Jo Yoo 31 HDLC - Basic Characteristics (1)  HDLC : High-Level Data Link Control  data link protocol  Widely used, and basis for many other data link control protocols  Connections can be point-to-multipoint or point-to-point  Can be used in half-duplex or full-duplex  Three types of stations  Primary station - (Mainframe) Controls the operation of the link  Secondary station - (Terminal) Respond to a primary station  Combined station - Can be both a primary and a secondary  Commands and Responses  commands : the frames sent by primary to secondary  responses : the frames sent by secondary to primary

32 Prof. Sang-Jo Yoo 32 HDLC - Basic Characteristics (2)  Two link configurations  Unbalanced configuration - One primary and one or more secondary stations  Balanced configurations - Two combined stations  Three data transfer modes  Normal Response Mode (NRM)  Unbalanced config. Primary station always dictates who sends and receives  used on multidrop lines (computer polls each terminal for input)  Asynchronous Balanced Mode (ABM)  Either of the two combined stations may initiate transmission  efficient use of point-to-point link without polling overhead  Asynchronous Response Mode (ARM)  Unbalanced config. Secondary station can send at any given time, but only one secondary can be active at a time

33 Prof. Sang-Jo Yoo 33 HDLC - Frame Structure (1)  Frame format  Synchronous or Asynchronous transmission?

34 Prof. Sang-Jo Yoo 34 HDLC - Frame Structure (1)  Flag field  8 bits (01111110), for frame sync.  “Bit stuffing” is used for data transparency : whenever five 1’s are transmitted, extra zero is inserted  frame split or merge by a 1-bit error

35 Prof. Sang-Jo Yoo 35 HDLC - Frame Structure (2)  Address field  8 bits. If needed longer address, the LSB can be set to zero and the address field is then assumed to be 8 bits longer.  Not needed for point-to-point links but included for uniformity  All 1’s indicates a broadcast frame

36 Prof. Sang-Jo Yoo 36 HDLC - Frame Structure (3)  Control field  8 bits. If the 1st bit is 0, then “information frame”, Otherwise, 10 indicates “supervisory frame” and 11 indicates “unnumbered frame”.

37 Prof. Sang-Jo Yoo 37 HDLC - Frame Structure (4)  P/F  Poll/Final  In command frames: P bit  If P=1, to solicit a response frame from the peer HDLC entity.  In response frames: F bit  If F=1, to indicate the response frame transmitted as a result of a soliciting command.

38 Prof. Sang-Jo Yoo 38 HDLC - Frame Structure (5)  Control field (Cont’d)  Information frame  two 3 bits sequence numbers, P/F bit  sequence number can be extended to 7  used to send data  Supervisory frame: bits 3 and 4 determine types  00: “Receive Ready”. Used to ACK  01: “Reject”. Essentially a NACK in Go-back-N  10: “Receive Not Ready”. Indicates busy condition  11: “Selective Reject”. Request for a single frame retransmission  Bit 5 is P/F. Bits 6,7,8 are sequence number  Unnumbered frame:  More control functions. Has a variety of purposes, but most often used for establishing the link setup and disconnect.  Sets up the data transfer mode, sequence number size. Also used to reset the link and other miscellaneous stuff.

39 Prof. Sang-Jo Yoo 39 HDLC - Frame Structure (6)  Information Field  must consist of an integral number of octets  up to some system-defined maximum  Frame Check Sequence(FCS) Field  For the remaining bits of the frame, exclusive of flags  normal : 16-bit CRC CCITT  optional : CRC-32, if the frame length or the line reliability dictates this choice

40 Prof. Sang-Jo Yoo 40 HDLC - Operation (1)  Three-Phases  Initialization  Link setup command and ack response  Set mode by U-frames such as SABM/E, SNRM/E, SARM/E  Ack by UA  Data Transfer  Data transfer by I-frame  Flow and error control by I and S-frames  Disconnect  Link release by DISC command and UA response

41 Prof. Sang-Jo Yoo 41 HDLC - Operation (2)  Commands and Responses Name C/R Description I (Information) C/R Exchange user data S (Supervisory) C/R RR(Receive Ready) Positive ack; ready to receive I-frame RNR(Receive Not Ready) Positive ack; not ready to receive REJ(Reject) Negative ack; go back N SREJ(Selective Reject) Negative ack; selective reject

42 Prof. Sang-Jo Yoo 42 Name C/R Description U (Unnumbered) SNRM/SNRME C Set mode SARM/SARME C Set mode SABM/SABME C Set mode SIM(Set Initialization Mode) C Initialize link control functions in addressed station DISC(Disconnect) C Terminate logical link connection UA(Unnumbered Ack) R Ack for the set mode commands DM(Disconnected Mode) C Terminate logical link connection RD(Request Disconnect) R Request for DISC command RIM(Request Initialization Mode) R Request for SIM command UI(Unnumbered Information) C/R Used to exchange control information UP(Unnumbered Poll) C Used to solicit control information RSET(Reset) CUsed for recovery; resets N(R), N(S) XID(Exchange Identification) C/R Used to request/report status TEST C/R Exchange identical information fields for testing FRMR(Frame Reject) R Reports receipt of unacceptable frame

43 Prof. Sang-Jo Yoo 43 HDLC - Operation (3)  Examples of operation

44 Prof. Sang-Jo Yoo 44 HDLC - Operation (4)

45 Prof. Sang-Jo Yoo 45 Other Data Link Control Protocols (1)  LAPB (Link Access Procedure, Balanced)  by ITU-T as part of X.25 packet-switching network-interface standard  subset of HDLC that provides only ABM  LAPD (Link Access Procedure, D-Channel)  by ITU-T as part of set of recommendations on ISDN  D-channel : logical channel at the user-ISDN interface  restricted to ABM  7-bit sequence number, 16-bit CRC, 16-bit address field

46 Prof. Sang-Jo Yoo 46 Other Data Link Control Protocols (2)  LLC (Logical Link Control)  a part of the IEEE 802 family of standards of controlling operation over a LAN.  Link control functions are divided between to layers:  MAC(medium access control) layer  LLC(logical link control) layer  Frame Relay  provide a streamlined capability for use over high-speed packet-switched networks; based on HDLC  ATM (Asynchronous Transfer Mode)  new frame format called cell


Download ppt "1 Prof. Sang-Jo Yoo 7. Data Link Control. Prof. Sang-Jo Yoo 2 Data Link Layer Functions  Frame Synchronization  Flow Control  Control rate of transmission."

Similar presentations


Ads by Google