صفحه 1:
William Stallings
Data and Computer
Communications
Chapter 7
Data Link Control
صفحه 2:
Flow Control
I Ensuring the sending entity does not
overwhelm the receiving entity
I Preventing buffer overflow
0 Transmission time
۱ Time taken to emit all bits into medium
0 Propagation time
| Time for a bit to traverse the link
صفحه 3:
Model of Frame Transmission
صفحه 4:
Stop and Wait
Source transmits frame
Destination receives frame and replies
with acknowledgement
Source waits for ACK before sending next
frame
Destination can stop flow by not send ACK
Works well for a few large frames
ct
ص
oo
صفحه 5:
Fragmentation
0 Large block of data may be split into small
frames
I Limited buffer size
۱ Errors detected sooner (when whole frame
received)
I On error, retransmission of smaller frames is
needed
I Prevents one station occupying medium for
long periods
0 Stop and wait becomes inadequate
صفحه 6:
Stop and Wait Link Utilization
a” a”
. #قغللللللل 1 1
— جه
ا اس كت
oft سس 60 ۳1
—> جر
تست تک رب سح
1 ۳1 tft ۳1
فك یف
0 2... وت
Figure 7.2 Stop-and-Wait Link Utilization (transmission time = 1; propagation time = a)
صفحه 7:
Sliding Windows Flow Control
[ Allow multiple frames to be in transit
Receiver has buffer W long
Transmitter can send up to W frames
without ACK
Each frame is numbered
ACK includes number of next frame
expected
Sequence number bounded by size of field
(k)
| Frames are numbered modulo 2«
=) 2
rr ie)
oa
صفحه 8:
Sliding Window Diagram
i eked
تسس
Frames ready trumsited that may be transite
6|7loli}2}al4]s]o]7
۰
Prine sie. acd Wind stinks ra Window expands
‘name achnovisdged transmitted frames are cemt me ACK art enh
(a) Scader's perspective
Winds
« 0-0-0-0 ساسا
و | 2 ]| ۱ ]۱ 4 | 3 | 2 | 1 ]0 اه || 5] 6] 7 |
چ
Window shrinks from
Last ome trang edge a8
ل ل امسا
صفحه 9:
Example Sliding Window
System B
presse PPO EGET 2 ۳۳7
a 1011ل 0111 == PoE Sere ESET
eo EE EET
71 رسد
صفحه 10:
Sliding Window Enhancements
I Receiver can acknowledge frames without
permitting further transmission (Receive
Not Ready)
0 Must send a normal acknowledge to
resume
0 If duplex, use piggybacking
I If no data to send, use acknowledgement frame
I If data but no acknowledgement to send, send
last acknowledgement number again, or have
ACK valid flag (TCP)
صفحه 11:
Error Detection
0 Additional bits added by transmitter for
error detection code
0 Parity
I Value of parity bit is such that character has
even (even parity) or odd (odd parity) number
of ones
I Even number of bit errors goes undetected
صفحه 12:
Cyclic Redundancy Check
0 For a block of k bits transmitter generates
n bit sequence
0 Transmit k+n bits which is exactly
divisible by some number
0 Receive divides frame by that number
I ۱۴ no remainder, assume no error
! For math, see Stallings chapter 7
صفحه 13:
Error Control
0 Detection and correction of errors
0 Lost frames
0 Damaged frames
0 Automatic repeat request
| Error detection
I Positive acknowledgment
I Retransmission after timeout
I Negative acknowledgement and
retransmission
صفحه 14:
Automatic Repeat Request (ARQ)
0 Stop and wait
0 Go back N
0 Selective reject (selective retransmission)
صفحه 15:
Stop and Wait
I Source transmits single frame
0 Wait for ACK
0 If received frame damaged, discard it
| Transmitter has timeout
I If no ACK within timeout, retransmit
0 If ACK damaged,transmitter will not
recognize it
! Transmitter will retransmit
I Receive gets two copies of frame
1 Use ACKO and ACK1
صفحه 16:
Stop and Wait -
Diagram
صفحه 17:
Stop and Wait - Pros and Cons
0 Simple
0 Inefficient
صفحه 18:
Go Back N (1)
0 Based on sliding window
0 If no error, ACK as usual with next frame
expected
0 Use window to control number of
outstanding frames
0 If 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
صفحه 19:
Go Back N - Damaged Frame
0 Receiver detects error in frame /
0 Receiver sends rejection-/
0 Transmitter gets rejection-/
0 Transmitter retransmits frame /and all
subsequent
صفحه 20:
Go Back N - Lost Frame (1)
0 Frame / lost
0 Transmitter sends /+1
0 Receiver gets frame /+1 out of sequence
0 Receiver send reject /
0 Transmitter goes back to frame / and
retransmits
صفحه 21:
Go Back N - Lost Frame (2)
0 Frame / lost and no additional frame sent
0 Receiver gets nothing and returns neither
acknowledgement nor rejection
0 Transmitter times out and sends
acknowledgement frame with P bit set to 1
0 Receiver interprets this as command which
it acknowledges with the number of the
next frame it expects (frame /)
0 Transmitter then retransmits frame /
صفحه 22:
Go Back N - Damaged
Acknowledgement
Receiver gets frame /and send
acknowledgement (/+1) which is lost
Acknowledgements are cumulative, so
next acknowledgement (/#n) may arrive
before transmitter times out on frame /
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
ص
ص
ص
ص
صفحه 23:
Go Back N - Damaged Rejection
U As for lost frame (2)
صفحه 24:
Go Back N -
Diagram
صفحه 25:
Selective Reject
0 Also called selective retransmission
0 Only rejected frames are retransmitted
0 Subsequent frames are accepted by the
receiver and buffered
0 Minimizes retransmission
0 Receiver must maintain large enough
buffer
0 More complex login in transmitter
صفحه 26:
Selective Reject -
Diagram
صفحه 27:
High Level Data Link Control
0 HDLC
0 1SO 33009, ISO 4335
صفحه 28:
HDLC Station Types
0 Primary station
! Controls operation of link
| Frames issued are called commands
I Maintains separate logical link to each
secondary station
0 Secondary station
I Under control of primary station
۱ Frames issued called responses
0 Combined station
1 May issue commands and responses
صفحه 29:
HDLC Link Configurations
ال(
1 086 0۲۱۲۴۵۲۷ ۵00 ۵06 or more secondary
stations
I Supports full duplex and half duplex
0 Balanced
1 Two combined stations
I Supports full duplex and half duplex
صفحه 30:
HDLC Transfer Modes (1)
0 Normal Response Mode (NRM)
I Unbalanced configuration
I Primary initiates transfer to secondary
I Secondary may only transmit data in response
to command from primary
I Used on multi-drop lines
1 Host computer as primary
I Terminals as secondary
صفحه 31:
HDLC Transfer Modes (2)
0 Asynchronous Balanced Mode (ABM)
I Balanced configuration
I Either station may initiate transmission
without receiving permission
I Most widely used
I No polling overhead
صفحه 32:
HDLC Transfer Modes (3)
0 Asynchronous Response Mode (ARM)
I Unbalanced configuration
I Secondary may initiate transmission without
permission form primary
I Primary responsible for line
I rarely used
صفحه 33:
Frame Structure
0 Synchronous transmission
0 All transmissions in frames
0 Single frame format for all data and
control exchanges
صفحه 34:
Frame Structure Diagram
Flag | Address] Control Information FCs Flag
883 or 16-2 $v aria le 4 —$ 16 or 32 8
bits extendable
صفحه 35:
Flag Fields
I Delimit frame at both ends
0 01111110
1 May close one frame and open another
d Receiver hunts for flag sequence to synchronize
Bit stuffing used to avoid confusion with data
containing 01111110
I 0 inserted after every sequence of five 1s
! If receiver detects five 1s it checks next bit
I 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
صفحه 36:
Original Pattern:
PETAL AAT ATA GLA ALT OIL
Bit Stuffing |
After bit-stuffing
I Example with 1111101111101101111101011111010
possible errors
(o)tsampe
a ag] Transited Frame
=
۳ az og] Rested Hume
(by An inverted bit splits 2 frame in مع
03 | ان Transmitted Frame
ke
Fag Fag] Received Frame
(c) Am kaverted ble merges two frames
صفحه 37:
Address Field
I Identifies secondary station that sent or will receive
frame
0 Usually 8 bits long
0 May be extended to multiples of 7 bits
| LSB of each octet indicates that it is the last octet (1) or not (0)
0 All ones (11111111) is broadcast
56 7 8 9 10 11 12 13 14 15 16 8a
(b) Extended Address Field
صفحه 38:
Control Field
Different for different frame type
I Information - data to be transmitted to user
(next layer up)
| Flow and error control piggybacked on information
frames
I Supervisory - ARQ when piggyback not used
1 Unnumbered - supplementary link control
U First one or two bits of control filed
identify frame type
0 Remaining bits explained later
صفحه 39:
Control Field Diagram
I: Information
S: Supervisory
commis [DD ۳] 1
(c) 8-bit control field format
1203 4 5 6 7 9 10 1 2 13 14 15 16
8
formation | 0 | NS) | ۳ NR) |
swoon PDL PP PP] |
(d) 16-bit control field format
صفحه 40:
Poll/Final Bit
0 Use depends on context
0 Command frame
I P bit
I 1 to solicit (poll) response from peer
0 Response frame
I F bit
I 1 indicates response to soliciting command
صفحه 41:
Information Field
0 Only in information and some
unnumbered frames
0 Must contain integral number of octets
0 Variable length
صفحه 42:
Frame Check Sequence Field
0 FCS
0 Error detection
0 16 bit CRC
0 Optional 32 bit CRC
صفحه 43:
HDLC Operation
0 Exchange of information, supervisory and
unnumbered frames
0 Three phases
I Initialization
1١ Data transfer
I Disconnect
صفحه 44:
Examples of Operation (1)
صفحه 45:
Examples of Operation (2)
صفحه 46:
Other DLC Protocols (LAPB,LAPD)
I Link Access Procedure, Balanced (LAPB)
I Part of X.25 (ITU-T)
I Subset of HDLC - ABM
I Point to point link between system and packet
switching network node
U Link Access Procedure, D-Channel
I ISDN (ITU-D)
| ABM
I Always 7-bit sequence numbers (no 3-bit)
I 16 bit address field contains two sub-addresses
| One for device and one for user (next layer up)
صفحه 47:
Other DLC Protocols (LLC)
I 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 layer
0 32 bit CRC
Destination and source access points (DSAP, SSAP)
صفحه 48:
Other DLC Protocols
(Frame Relay) (1)
0 Streamlined capability over high speed
packet witched networks
0 Used in place of X.25
0 Uses Link Access Procedure for Frame-
Mode Bearer Services (LAPF)
0 Two protocols
! Control - similar to HDLC
I Core - subset of control
صفحه 49:
Other DLC Protocols
(Frame Relay) (2)
0 ABM
0 7-bit sequence numbers
0 16 bit CRC
0 2, 3 or 4 octet address field
I Data link connection identifier (DLCI)
I Identifies logical connection
0 More on frame relay later
صفحه 50:
Other DLC Protocols (ATM)
Asynchronous Transfer Mode
Streamlined capability across high speed
networks
Not HDLC based
Frame format called “cell”
Fixed 53 octet (424 bit)
Details later
ct
با جر با اس
صفحه 51:
Required Reading
0 Stallings chapter 7
0 Web sites on HDLC, frame relay, Ethernet
and ATM