Unit - IV: Issues in Data Link Layer Design: Dr. K. K. Patel
Unit - IV: Issues in Data Link Layer Design: Dr. K. K. Patel
Issues in
Data Link Layer Design
Hours: 08
FCN
Dr. K. K. Patel
• Unit - I: Basics of Computer Network Hours: 05
• Definition of Computer Network,
• Goals of Computer Network: For Businesses, For
People,
• Advantages & Disadvantages of Computer Network,
• Applications of Computer Network,
• Components of Computer Network,
• Types of Networks, Network Topologies.
Dr. K. K. Patel
1.2
Unit - II: Network Communication Concepts
Hours: 07
Parallel & Serial Communication,
Synchronous & Asynchronous Communication.
Modes of Communication: Simple, Half-Duplex, Full-
Duplex,
Multiplexing, De-Multiplexing: FDA, TDM.
Communication Media: Guided Media, Unguided
Media.
Switching Techniques: Circuit Switching, Message
Switching, Packet Switching.
Dr. K. K. Patel
4.3
Unit - III: Reference Models
Hours: 05
• LAYERED TASKS
• THE OSI MODEL
• LAYERS IN THE OSI MODEL
• TCP/IP PROTOCOL SUITE
• ADDRESSING
Dr. K. K. Patel
1.5
Functions of the Data Link Layer
L3 - NL
L2 – DLL
L1 – Physical
P D N T S PA
Types of services provided
to the Network Layer
• Unacknowledged Connectionless service
Dr. K. K. Patel
1.13
Framing
• Framing is the process to create FRAMEs from PACKETs
• Methods for framing
• Character Count
• Flag bytes with byte stuffing
• Flag bytes with bit stuffing
Framing with Character Count
A character stream
• Problem :
• Worked for fixed character size only :
• For ex., assumes character size to be 8 bits :
Consequence:
• can’t handle heterogeneous environment.
Framing with bit stuffing
Flag bytes with bit stuffing
• Bit stuffing is the process of inserting non-information bits
into data
to break up bit patterns to affect the
synchronous transmission
of information.
Bit stuffing
(a) The original data.
(b) The data as they appear on the line.
(c) The data as they are stored in receiver’s memory after de-stuffing.
Data Link Layer Design Issues
• Services Provided to the Network Layer
• Framing
• Flow Control
• Error Control
Flow Control
Events At S end er Site Network M es s ag es Events At Receiver Site
between
Sender and
Time moves from top to bottom in the diagram
Receiver
5
Flow Control
• what happens when a frame completely vanishes :
• receiver neither sends a +ack nor –ack
• Retransmission: how?
• Timers
Providing Reliability
Traditional technique:
Positive Acknowledgement with Retransmission (PAR)
Packet lost
Send Packet 1
Start Timer
Packet should arrive
ACK should be sent
ACK would normally
arrive at this time
Timer Expires
Retransmit Packet 1
Start Timer
Receive Packet 1
S e nd ACK 1
Receive ACK 1
Cancel Timer
6
• Problem with Timers :
• It may result in
a frame being sent more than once
and
received more than once :
• solution :
• assign sequence numbers to frames
The Problem With Simplistic PAR
7
Solving The Problem of Simplistic PAR
1 2 3 4 5 6 7 8 9 10 . . .
(a)
window slides
1 2 3 4 5 6 7 8 9 10 . . .
(b)
9
1
1
S end Packet 1
Receive Pa cket 1
S end Packet 2 S end ACK 1
Receive Pa cket 2
S end Packet 3 S e nd ACK 2
Receive Packet 3
Receive ACK 1 S e nd ACK 3
Receive ACK 2
Receive ACK 3
Why Sliding Window Works
Dr. K. K. Patel
Data Link Layer Design Issues
• Services Provided to the Network Layer
• Framing
• Flow Control
• Error Control
• Hamming distance and Even Parity bit
• CRC
Error Detection and Correction
• In some cases it is sufficient to detect an error and
in some,
it requires the errors to be corrected also.
For eg.
• On a reliable medium : ED is sufficient where
the error rate is low and
asking for retransmission after ED
would work efficiently
Dr. K. K. Patel
Data Link Layer Design Issues
• Services Provided to the Network Layer
• Framing
• Flow Control
• Error Control
• Hamming distance and Even Parity bit
• CRC
VVIMP - CRC
4-6 marks sum -> 100%
Error detecting code
• Polynomial code or CRC (Cyclic Redundancy Check )
Binary representation using polynomial
• Bit-string represents polynomial.
• e.g. 110001
represents as:
= 1 . x5 + 1 . x4 + 0 . x3 + 0 . x2 + 0 . x1 + 1 . x0
= x5 + x4 + x0
CRC
• A message m : a string of bits
corresponds to a polynomial denote it by M(x).
• r check bits …. polynomial R(x).
• Transmitted bits m + r …. polynomial
T(x) = M(x) + R(x)
• Generator polynomial G(x)
• 100
•2
• Find out CRC [R(x)] for
• M(x) = 101010
• G(x) = 101
• 10
•3
• Find out CRC [R(x)] for
• M(x) = 100111000100
• G(x) = 1001
• 111
•4
• Find out CRC [R(x)] for
• M(x) = 1001100
• G(x) = 1101
• 001
1001100 % 1101
111
1001100 000
1101 1101
1001
1101
1000
1101
1010
1101
1110
1101
0110
• R(x) = 001
• T(x) = 1001100001
• On receiver
• T(x) / G(x) 0 then no error
1 then there is error
•5
• Find out CRC [R(x)] for
• M(x) = 11011
• G(x) = 111
• 00
• Questions