Computer Network 22-23
Computer Network 22-23
Computer Network
Lecture:22 & 23
Presented By
Dr. S.Kanungo
Error Control
• Mechanism for detection and correction of errors
• Types of Error
- Lost frames
- Damaged frames
• Common Techniques based on:
- Error detection
- Positive acknowledgment
- Retransmission after timeout
- Negative acknowledgement and retransmission
• These mechanisms are collectively referred as
Automatic Repeat Request (ARQ)
Automatic Repeat Request (ARQ)
• Stop and wait ARQ
• Go back N ARQ
• Selective reject (selective retransmission) ARQ
• Types of Error
- damaged frame
- damaged acknowledgement
Stop and Wait
• Source transmits single frame
• Simple and inefficient
• Wait for ACK
• If 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
Stop and Wait – Diagram
Go Back N
• Based on sliding window
• If no error, ACK as usual with next frame
expected
• Use window to control number of
outstanding frames
• 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
Go Back N - Damaged Frame
• Receiver detects error in frame i
• Receiver sends rejection-i
• Transmitter gets rejection-i
• Transmitter retransmits frame i and all
subsequent
• Go Back N – Lost Frame (1)
- Frame i lost
- Transmitter sends i+1
- Receiver gets frame i+1 out of sequence
- Receiver send reject i
- Transmitter goes back to frame i and retransmits
• Go Back N - Lost Frame (2)
- Frame i lost and no additional frame sent
- Receiver gets nothing and returns neither
acknowledgement nor rejection
- Transmitter times out and sends acknowledgement frame
with P bit set to 1
- Receiver interprets this as command which it
acknowledges with the number of the next frame it expects
(frame i )
- Transmitter then retransmits frame i
• Go Back N - Damaged Acknowledgement
- Receiver gets frame i and send acknowledgement (i+1)
which is lost
- Acknowledgements 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
• Go Back N - Damaged Rejection
- As for lost frame (2)
• Go Back N - Diagram
• Selective Reject
- Also called selective retransmission
- Only rejected frames are
retransmitted
- Subsequent frames are accepted by
the receiver and buffered
- Minimizes retransmission
- Receiver must maintain large enough buffer
- More complex login in transmitter
• High Level Data Link Control (HDLC)
- ISO 33009, ISO 4335
• HDLC Station Types
• Primary 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
• HDLC Link Configurations
• Unbalanced
– One primary and one or more secondary stations
– Supports full duplex and half duplex
• Balanced
– Two combined stations
– Supports full duplex and half duplex
HDLC Transfer Modes
• 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
• Asynchronous Balanced Mode (ABM)
– Balanced configuration
– Either station may initiate transmission without
receiving permission
– Most widely used
– No polling overhead
• Asynchronous Response Mode (ARM)
– Unbalanced configuration
– Secondary may initiate transmission without
permission form primary
– Primary responsible for line
– rarely used
Frame Structure
• Synchronous transmission
• All transmissions in frames
• Single frame format for all data and control
exchanges
Frame Structure
Flag Fields
• Delimit frame at both ends
• 01111110
• May close one frame and open another
• Receiver hunts for flag sequence to synchronize
• Bit stuffing used to avoid confusion with data containing
01111110
– 0 inserted after every sequence of five 1s
– If receiver detects five 1s it checks next bit
– 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
• Bit Stuffing
• Example with
possible errors
Address Field
• Identifies secondary station that sent or will receive frame
• Usually, 8 bits long
• May 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
Control Field
• Different 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 filed identify
frame type
• Remaining bits explained later
• Control Field Diagram
Poll/Final Bit
• Use depends on context
• Command frame
– P bit
– 1 to solicit (poll) response from peer
• Response frame
– F bit
– 1 indicates response to soliciting command
• Information Field
- Only in information and some unnumbered frames
- Must contain integral number of octets
- Variable length
• Frame Check Sequence Field
- FCS
- Error detection
- 16 bit CRC
- Optional 32 bit CRC
• HDLC Operation
• Exchange of information, supervisory and unnumbered frames
• Three phases
– Initialization
– Data transfer
– Disconnect
• Examples of Operation (1)
• Examples of Operation (2)