Serial Comm
Serial Comm
Transmission modes
Parallel Transmission
Serial Transmission
2 of 53
Data Link Protocols
Asynchronous Synchronous
Protocols Protocols
• Xmodem
• Ymodem
• Zmodem
• BLAST
• Kermit Character-oriented Bit-oriented
Asynchronous Protocols
Long, long…time ago
Not complex and easy to implement
Slow
Required start/stop bit and space
Now mainly used in modem
Replaced by high speed synchronous
4 of 53
XMODEM frame
Asynchronous Synchronous
Protocols Protocols
• Xmodem
• Ymodem
• Zmodem
• BLAST Character-oriented
• Kermit Bit-oriented
(Byte-oriented)
• BSC
Synchronous Protocols
Character-oriented protocol
Based on one byte (8-bit)
Use ASCII for control character
Not efficient seldom used
Bit-oriented protocol
Based on individual bits
One or multiple bits for control
More efficient
7 of 53
IBM’s Binary Synchronous
Communication (BSC)
Character-oriented protocol
Half-duplex, stop-and-wait ARQ
2 frame types
Data frame
(data transmission)
Control frame
8 of 53
A simple BSC data frame
Header Fields:
• address (sender/receiver)
• #frame identifier (0/1 for stop-and-wait ARQ)
10 of 53
A multiblock frame
11 of 53
Multiframe transmission
14 of 53
Control frames
15 of 53
Control frames
16 of 53
Data Transparency
BSC is designed for text message
Now, non-text message (graphics,…)
Problem?
BSC control character problem
Data transparency: should be able to
send any data
17 of 53
Byte stuffing
Asynchronous Synchronous
Protocols Protocols
• Xmodem
• Ymodem
• Zmodem
• BLAST Character-oriented
• Kermit Bit-oriented
(Byte-oriented)
• BSC
19 of 53
Bit-oriented protocol
Represent more information into shorter
frame
Avoid the transparency problems
20 of 53
Bit-oriented
Protocols
22 of 53
HDLC station types
Primary station
The station that controls the medium by sending
“command”
Secondary station
The station that “response” to the primary station
Combined station
The station that can both command and response
23 of 53
HDLC configurations
The relationship of hardware devices on
a link
3 configurations of all stations
(primary/secondary/combined)
Unbalanced
Symmetrical
Balanced
24 of 53
HDLC Configurations:
Unbalanced (master/slave)
25 of 53
HDLC Configurations:
Symmetrical
26 of 53
HDLC Configurations:
Balanced
27 of 53
HDLC communication modes
Mode : describe “Who controls the link”
29 of 53
HDLC Frame
30 of 53
HDLC Frame
31 of 53
HDLC Frame: Flag field
32 of 53
Bit Stuffing
How to differentiate data and flag?
Adding one extra 0 whenever there are five
consecutive 1s in the data
33 of 53
HDLC: Bit stuffing
34 of 53
HDLC frame: Address field
Primary station creates a frame
destination address
Secondary station creates a frame
source address
Can be one byte or more
35 of 53
HDLC Frame: Address field
36 of 53
HDLC Frame: Control field
37 of 53
HDLC frame: Poll / Final
38 of 53
HDLC Frame: Information field
39 of 53
HDLC Frame: FCS field
40 of 53
HDLC: S-Frame
41 of 53
HDLC: Use of P/F field
42 of 53
HDLC: Use of P/F field
Piggybacking:
data + ack
43 of 53
HDLC: Use of P/F field
44 of 53
HDLC: Use of P/F field
45 of 53
HDLC: S-Frame
Acknowledgement
46 of 53
HDLC: S-Frame
Positive Acknowledgement
RR
Receiver sends “Positive Ack” (no data to send)
N(R) = seq of next frame
RNR
Receiver sends “Positive Ack”
N(R) = seq of next frame
Receiver tells sender that sender cannot send any
frame until ‘RR’ frame is received
47 of 53
HDLC: S-Frame
Negative Acknowledgement
Reject (REJ)
Go-back-n ARQ
N(R) = # of damage frame (and follow)
Selective-Reject (SREJ)
N(R) = # of damage frame
48 of 53
HDLC: U-Frame control field
50 of 53
HDLC: Polling example
51 of 53
HDLC: Selecting example
52 of 53
HDLC: Peer-to-peer example
54 of 53