0% found this document useful (0 votes)
7 views79 pages

Data Link Layer

The Data Link Layer is the second layer of the OSI model, responsible for reliable hop-to-hop delivery of frames, error detection and correction, and media access control. It adds physical addressing, framing, synchronization, flow control, and error control to ensure data integrity during transmission. Key protocols include Ethernet, token ring, FDDI, and PPP, with various error detection techniques such as parity checks and checksums employed to maintain data reliability.

Uploaded by

kibrusayzana
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
7 views79 pages

Data Link Layer

The Data Link Layer is the second layer of the OSI model, responsible for reliable hop-to-hop delivery of frames, error detection and correction, and media access control. It adds physical addressing, framing, synchronization, flow control, and error control to ensure data integrity during transmission. Key protocols include Ethernet, token ring, FDDI, and PPP, with various error detection techniques such as parity checks and checksums employed to maintain data reliability.

Uploaded by

kibrusayzana
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 79

Data Link Layer

• Data Link Layer Responsibilities


• Error Detection and Correction
• Media Access Control
Data Link Layer

 Data Link Layer is second layer of OSI Layered Model.

 The data link layer transforms the physical layer, a raw


transmission facility, to a reliable link.
 It makes the physical layer appear error-free to the upper
layer (network layer).
 The Data Link Layer protocols are Ethernet, token ring, FDDI
and PPP

Sunday, June 8, 2025 2


Data Link Layer

The data link layer is responsible for moving frames


from one hop (node) to the next.

Sunday, June 8, 2025 3


Hop-to-hop (node-to-node) delivery by
data link layer

Sunday, June 8, 2025 4


Data Link Layer Responsibilities

 Physical addressing.
• If frames are to be distributed to different systems on
the network, the data link layer adds a header to the
frame to define the sender and/or receiver of the frame.
• If the frame is intended for a system outside the
sender‘s network, the receiver address is the address of
the device that connects the network to the next one.

Sunday, June 8, 2025 Page 5


Data Link Layer Responsibilities

 Framing
• The data link layer divides the stream of bits
received from the network layer into manageable
data units called frames.

Sunday, June 8, 2025 Page 6


Data Link Layer Responsibilities

 Synchronization
• When data frames are sent on the link, both machines

must be synchronized in order to transfer to take place.

Sunday, June 8, 2025 Page 7


Data Link Layer Responsibilities

 Flow control.
• If the rate at which the data are absorbed by the
receiver is less than the rate at which data are
produced in the sender, the data link layer
imposes a flow control mechanism to avoid
overwhelming the receiver.

Sunday, June 8, 2025 Page 8


Contd.

 Error control
• The data link layer adds reliability to the physical layer
by adding mechanisms to detect and retransmit
damaged or lost frames.
o It also uses a mechanism to recognize duplicate
frames.
o Error control is normally achieved through a trailer
added to the end of the frame.
Sunday, June 8, 2025 9
Contd.

 Access control
• When two or more devices are connected to the same
link, data link layer protocols are necessary to determine
which device has control over the link at any given time.

Sunday, June 8, 2025 10


Framing
• Definition and Function
• frame structure
Framing

 The data link layer, needs to pack bits into frames, so that
each frame is distinguishable from another.
 Framing separates a message from one source to a
destination, by adding a sender address and a destination
address.
 The destination address defines where the packet is to go;
the sender address helps the recipient acknowledge the
receipt.
 NB: Addressing here is about the next node in the LAN
Sunday, June 8, 2025 12
Contd.

 a very large Frame, making flow and error control very


inefficient.
 even a single-bit error would require the retransmission of
the whole message.
 When a message is divided into smaller frames, a single-bit
error affects only that small frame.
 Frames can be of fixed or variable size.

Sunday, June 8, 2025 13


Layer 2 frame structure
Header Trailer
Start
Address Type/ FCS Stop Frame
Frame Data
Length (Flag)
(Flag)

1. Flag field:
 an 8-bit sequence
 identifies both the beginning and the end of a frame
 serves as a synchronization pattern for the receiver.
2. Data filed:
 contains the user's data from the net-work layer.
 Its length can vary from one network to another.
Sunday, June 8, 2025 Page 14
Layer 2 frame structure
Header Trailer
Start
Address Type/ FCS Stop Frame
Frame Data
Length (Flag)
(Flag)

3. FCS field:
 The frame check sequence (FCS) is the error detection field.
 It can contain either a 2- or 4-byte ITU-T CRC.
3. Address field:
 contains the address of the secondary station.
 If a primary station created the frame, it contains a to
address.
 If a secondary creates the frame, it contains a from address.
 An address field can be 1 byte or several bytes long,
depending on the needs of the network
Sunday, June 8, 2025 Page 15
Error Detection and Correction
• Error Detection
• Error Correction

Sunday, June 8, 2025 16


Error Causes
 Errors in transmitted data can occur for a variety of reasons.

1. Some errors are due to equipment failure.

2. Some errors are due dispersion in optical fibers (i.e. light


pulses spread out).

3. Some errors are due to attenuation (loss of signal power over a


line).

4. Most errors are due to thermal noise that occurs naturally on


the line.
Sunday, June 8, 2025 17
Errors in Data
 Data is sent in the form of binary numbers.
 The binary numbers consist bites-which are either 0 or 1.
 There are four possible ways that noise can affect a bit:
• If a bit is 0, the noise can affect it so it stays 0
no error
• If a bit is 0, the noise can change it to 1
error
• If a bit is 1, the noise can affect it so it stays 1
no error
• if a bit is 1, the noise can change it to 0
error
Sunday, June 8, 2025 18
Types of Errors
 There may be three types of errors:
 Single bit error
• In a frame, there is only one bit, anywhere though, which
is corrupt.
 Multiple bits error
• Frame is received with more than one bits in corrupted
state.
 Burst error
• Frame contains more than1 consecutive bits corrupted.
Types of Errors

 Single bit error


1 0 1 1 0 0 1 1 => 1 0 1 1 0 1 1 1

 Multiple bits error

1 0 1 1 0 0 1 1 => 1 0 1 0 0 1 1 1
 Burst error

1 0 1 1 0 0 1 1 => 1 1 0 0 0 1 1 1
Dealing With Errors

 We need to build systems that are resilient to errors in data.

 There is no way to guarantee that all bits will be sent

uncorrupted.

 One way to cope with this is to detect errors and request

that corrupted data should be retransmitted.

Sunday, June 8, 2025 21


Detecting Errors
 Problem 1: how can the receiver know when an error
has occurred?
Solution : detect most errors.
• We could try sending the data twice and comparing
the two transmissions to see where the errors are.
(This is inefficient)
 Problem 2: Even when we detect an error, what to do
about it?

Sunday, June 8, 2025 22


Error Control Mechanisms
 may involve two possible ways:

• Error detection

• Error correction
Error Detecting Techniques
 The most popular Error Detecting Techniques are:

• Single parity check

• Two-dimensional parity check

• Checksum

• Cyclic redundancy check


Parity Checking
(Vertical Redundancy Check)
 count the bits in a character to see if there is an even or
odd number.
 Before transmission, an extra bit (parity bit) is appended
to the character to force the number of bits to be even
(or odd).
 If the received character does not have an even (or odd)
number of bits then an error must have occurred.
 Both the sender and receiver must know which form of
parity to use.

Sunday, June 8, 2025 25


VRC
 A character such as 0110001 would be transmitted as:
Odd Parity: 01100010 (There are an odd number of 1s)
Even Parity: 01100011 (There are an even number of 1s)

 Parity checking will detect a single error in a character but not


double errors.
8 bits including parity
7 bits of data
(count of 1 bits) Even odd

0000000 (0) 00000000 (0) 10000000 (1)


1010001 (3) 11010001 (4) 01010001 (3)
1101001 (4) 01101001 (4) 11101001 (5)
Sunday, June 8,1111111
2025 (7) 11111111 (8) 01111111 (7) 26
LRC
(Longitudinal Redundancy Check)
 A block of bits is organized in rows and columns

 Also known as Two dimensional Parity

 The parity bit is calculated for each column and sent along
with the data

 The block of parity acts as the redundant bits.


LRC :Example
 Data Blocks: 11100111 11011101 00111001 10101001

 Find the LRC and determine the data that is transmitted

 Step 1:the 1st data block in the 1st row ,2nd data block 2nd row ….
D1 1 1 1 0 0 1 1 1
D2 1 1 0 1 1 1 0 1
D3 0 0 1 1 1 0 0 1
D4 1 0 1 0 1 0 0 1
LRC :Example
 Step 2: Find LRC

 Rule: odd number of 1’s -> 1 , Even number of 1’s-> 0


D1 1 1 1 0 0 1 1 1
D2 1 1 0 1 1 1 0 1
D3 0 0 1 1 1 0 0 1
D4 1 0 1 0 1 0 0 1
LRC 1 0 1 0 1 0 1 0

 Step 3: message= LRC and Data Blocks


10101010 11100111 11011101 00111001 10101001

 In the receiver side, calculate LRC and compare it with senders LRC
Hamming Distance
 The Hamming distance between two bit patterns is the
number of dissimilar bits.
 It measures the minimum number of substitutions
required to change one string into the other, or the
number of errors that transformed one string into the
other.
 Tip: XOR bits and count number of 1s

Sunday, June 8, 2025 30


Hamming Distance

 The Hamming distance between 01000001 (‘A’) and 01000010

(‘B’) is 2 because there are two dissimilar bits.

 It would take two errors in the wrong place to turn an ‘A’ into a

‘B’.

 Adding a parity bit ensures that there is at least a Hamming

distance of 2 between any two code words.


Sunday, June 8, 2025 31
Hamming Distance
A=01000001
B=01000010
__________________
A XOR B= 00000011
 Hamming Distance is 2 because there are two dissimilar
bits(count 1s).
 It would take two errors in the wrong place to turn an ‘A’ into
a ‘B’.
 Adding a parity bit ensures that there is at least a Hamming
distance of 2 between any two code words.
Sunday, June 8, 2025 32
Hamming Code
 7 bit hamming code is used commonly
 4 bit data and 3 bit parity
 Message =data bit + parity bit
 Position :
• Parity bit position is 2n where n={0,1,2….n }
• For 7 bit p1=20,p2=21,p3=22 2 1
7 6 5 4 3
 Association
• P1 associated with D3,D5,D7 D7 D6 D5 P4 D3 P2 p1
• P2 associated with D3,D6,D7
• P4 associated with D5,D6,D7
Hamming Code :Example
 Data bit=1101
 Position :
• Parity bit position is 2n where n={0,1,2….n }
• For 7 bit p1=20,p2=21,p3=22

 Let :Even Parity


 Parity bit 7 6 5 4 3 2 1
1 1 0 0 1 1 0
• P1 ->D3,D5,D7= (1,0,1) p1=0 D7 D6 D5 P4 D3 P2 p1
• P2 ->D3,D6,D7=(1,1,1) p2=1
• P4 ->D5,D6,D7=(0,1,1) p4=0
Checksum
 The Sender follows the given steps:
• The block unit is divided into k sections, and each of n bits.

• All the k sections are added together by using one's


complement to get the sum.
• The sum is complemented and it becomes the checksum
field.
• The original data and checksum field are sent across the
network.
Checksum
 The Receiver follows the given steps:
• The block unit is divided into k sections and each of n
bits.
• All the k sections are added together by using one's
complement algorithm to get the sum.
• The sum is complemented.
• If the result of the sum is zero, then the data is accepted
otherwise the data is discarded.
Checksum: Example
Sender
Data: 1001100111100010 0010010010000100
 Step 1: Data unit :
10011001 11100010 00100100 10000100
 Step 2: Sum

10000100
00100100
11100010
10011001
_____________
1000100011
Checksum: Example
Sender
 Step 3: sum the carry  Step 4 : 1’s Complement

10000100 00100101
_____________
00100100 11011010
11100010  Step 5 : append the checksum
and send
10011001
11011010
_____________
00100011 10011001
10 11100010
_____________ 00100100
00100101 10000100
Checksum: Example
Receiver
 Step 1: collect all data blocks  Step 2: sum all the data blocks and
checksum
11011010
11011010
10011001 10011001
11100010 11100010
00100100
00100100 10000100
10000100 _______
1011111101
sum the carry
=11111101
10
 Step 3 : accept if the result is all _______
1’s else reject 11111111
Cyclic Redundancy Code (CRC)
 A far more effective way of detecting errors in a block of data is
to use a Cyclic Redundancy Code.
 In CRC, a number is mathematically calculated for a packet by
its source computer, and then recalculated by the destination
computer.
 If the original and recalculated versions at the destination
computer differ, the packet is corrupt and needs to be resent or
ignored.
Sunday, June 8, 2025 40
CRC
Sender
 Find the length of the divisor ‘L’
 Append ‘L-1’ bits to the original message
 Perform binary division operation
 Remainder of the division=CRC
A B A XOR B
Note: 1 1 0
1 0 1
o The CRC must be of L-1 bits 0 1 1
0 0 0
CRC
Flow Control

 tells the sender how much data it can transmit before it must
wait for an acknowledgment from the receiver.

 Any receiving device has a limited speed at which it can process


incoming data and a limited amount of memory in which to store
incoming data.

 request that the transmitting device send fewer frames or stop


temporarily.

Sunday, June 8, 2025 43


Contd.

 each receiving device has a block of memory, called a buffer,


reserved for storing incoming data until they are processed.

 If the buffer begins to fill up, the receiver must be able to tell the
sender to halt transmission until it is once again able to receive.

Sunday, June 8, 2025 44


Flow Control Protocols

Stop-and-wait

Flow Control Protocols

Sliding Window
Stop-and-Wait
 This flow control mechanism forces the sender after
transmitting a data frame to stop and wait until the
acknowledgement of the data-frame sent is received.
Stop-and-Wait
 Advantage:

• its simplicity

 Disadvantage:

• One frame at a time

• Poor utilization of bandwidth

• Poor performance
Stop-and-Wait : Problems
1. Problems due to lost data
o Sender waits ack for infinite amount of time

o Receiver waits data for infinite amount of time

2. Problems due to lost ack


o Sender waits ack for infinite amount of time

3. Problems due to delayed ACK/data


o After timeout on sender side, a delayed ACK might be
wrongly considered as ack of some other data packet.
Sliding Window
 In this flow control mechanism, both sender and receiver
agree on the number of data-frames after which the
acknowledgement should be sent.

 As we learnt, stop and wait flow control mechanism wastes


resources, this protocol tries to make use of underlying
resources as much as possible.
Sliding Window
Send multiple frames at
time

Number of frames to be
sent is based on
window size

Each frame is numbered


-> Sequence Number
Error Control
 Two methods of error correction are-

1. Reverse error correction (REC)


• Once the error is discovered, the receiver requests the
sender to retransmit the entire data unit.
2. Forward error correction( FEC)
• the code set is so designed that it is possible for the
receiver to detect and correct error as well by itself.
Requirements for Error Control
Mechanism
 Error detection
• The sender and receiver, either both or any, must ascertain that there is some error in
the transit.
 Positive ACK
• When the receiver receives a correct frame, it should acknowledge it.
 Negative ACK
• When the receiver receives a damaged frame or a duplicate frame, it sends a NACK
back to the sender and the sender must retransmit the correct frame.
 Retransmission:
• The sender maintains a clock and sets a timeout period.
• If an acknowledgement of a data-frame previously transmitted does not arrive before
the timeout the sender retransmits the frame, thinking that the frame or it’s
acknowledgement is lost in transit.
Error Control
 There are three types of techniques available which Data-
link layer may deploy to control the errors by Automatic
Repeat Requests (ARQ)
• Stop-and-wait ARQ

• Go-Back-N ARQ

• Selective Repeat ARQ


Stop-and-wait
ARQ
 If the ack does not
arrive after a
certain period of
time ,the sender
times out and
retransmits the
original frame
 Stop-and-wait
ARQ=Stop-and-
wait + Timeout
timer + Sequence
number
Go-Back-N ARQ

 N- the sender window size


 Uses the concept of protocol pipelining i.e. the sender can
send multiple frames before receiving the ack for the first
frame.
 Frames are numbered in sequential manner
 If the ack of a frame is not received within an agreed upon
time period, all frames in the current window are
retransmitted
 Sequence number is based on the window size
• If N-4 (i.e.22) the seq numbers will be
0,1,2,3,0,1,2,3,0,1,2,3 and so on /00,01,10,11….
Go-Back-N ARQ: Example
Selective Repeat ARQ
 Only the erroneous or lost frames are retransmitted, while
correct frames are received and buffer.
Media Access control

 The data link layer can further be divided in to two layers:


• the upper sub-layer that is responsible for flow and error
control is called the logical link control (LLC) layer
• the lower sub-layer that is mostly responsible for
multiple access resolution is called the media access
control (MAC) layer

Sunday, June 8, 2025 58


Media Access control

 The set of rules that defines how the computer puts data
onto the network cable and takes data from the cable is
called an access method.
 Once data is moving on the network, access methods help
to regulate the flow of network traffic.

Sunday, June 8, 2025 59


Multiple Access Protocols
Multiple access protocols

Controlled-access Channelization
Random access protocols
protocols Protocols

ALOHA Reservation FDMA

CSMA Polling TDMA

Token
CSMA/CD CDMA
passing

CSMA/CA

Sunday, June 8, 2025 60


Random Access

 no station is superior to another station and none is


assigned the control over another.
 At each instance, a station that has data to send uses a
procedure defined by the protocol to make a decision on
whether or not to send.

 decision depends on the state of the medium (idle or busy).

Sunday, June 8, 2025 61


Contd.

 if more than one station tries to send, there is an access


conflict-collision-and the frames will be either destroyed or
modified.
 To avoid access conflict, each station follows a procedure
that answers the following questions:
 When can the station access the medium?
 What can the station do if the medium is busy?
 How can the station determine the success or failure of the
transmission?
 What can the station do if there is an access conflict?

Sunday, June 8, 2025 62


Contd.

 The random access methods have evolved from a very interesting


protocol known as ALOHA, which used a very simple procedure
called multiple access (MA).
 The method was improved with the addition of a procedure that
forces the station to sense the medium before transmitting.
• This was called carrier sense multiple access.
• This method later evolved into two parallel methods:
o CSMA/CD tells the station what to do when a collision is
detected.
o CSMA/CA tries to avoid the collision.
Sunday, June 8, 2025 63
pristine Hawaii in the early 1970s

Pure ALOHA

 ALOHA is the simplest technique in multiple accesses.


 Basic idea of this mechanism is a user can transmit the data
whenever they want.
 When a station sends data it waits for an ack.If the ack
doesn’t come within the allotted time then the station waits
for a random amount of time called back-off-time(Tb) and
resends the data
 Since different stations wait for different amount of
time ,the probability of further collision decreases
 The throughput of pure aloha is maximized when frames are
of uniform length

Sunday, June 8, 2025 64


Procedure for pure ALOHA protocol

Reading Assignment: Slotted ALOHA


Sunday, June 8, 2025 65
Carrier Sense Multiple Access
(CSMA)
 Continually listens to the cable for the presence of a signal prior to
transmitting./sense before transmit /
 There are two variants of CSMA.
• CSMA/CD and CSMA/CA
 The possibility of collision still exist because of propagation
delay/the station may sense the medium and find it idle, only
because the first bit sent by another station has not yet been
received.
 Schema : If the station waits for the medium to become idle it is
called persistent otherwise it is called non persistent.
Sunday, June 8, 2025 66
Persistent CSMA
 If it senses the channel idle, station starts transmitting the
data.
 If it senses the channel busy it waits until the channel is idle,
by continuously sensing the channel.

 wait if busy and transmit only when the media becomes idle
again (not transmission after a triggered timer expire)

Sunday, June 8, 2025 67


Non-Persistent CSMA
 less aggressive compared to persistent protocol.
 before sending the data, the station senses the channel and
if the channel is idle it starts transmitting the data.
 if the channel is busy, the station does not continuously
sense it but instead of that it waits for random amount of
time and repeats the algorithm.
 better channel utilization but also results in longer delay
compared to persistent.
Sunday, June 8, 2025 68
Carrier Sense Multiple Access/Collision
Detection (CSMA/CD)
 If two stations sense the channel to be idle and begin
transmitting simultaneously, this causes a collision.
 the two computers involved stop transmitting for a random
period of time
 After a random time interval, the stations that collided
attempt to transmit again.
 If another collision occurs, the time intervals from which the
random waiting time is selected are increased step by step.
This is known as exponential back off.

Sunday, June 8, 2025 69


Carrier Sense Multiple Access/Collision
Avoidance (CSMA/CA)
 In CSMA/CA, the computer actually broadcasts a warning packet before
it begins transmitting the real data on the wire.
 Each computer on the network does not attempt to broadcast when
another computer sends the warning packet.
 All other computers wait until the data is sent.
 The major drawback of trying to avoid network collisions is that the
network traffic is high due to the broadcasting of the intent to send a
message.
 Used in wire less networks ,where CSMA/CD is not possible due to
wireless transmitters desensing their receivers during packet
transmission.
Sunday, June 8, 2025 70
Controlled access

 In controlled access, the stations consult one another to

find which station has the right to send.

 A station cannot send unless it has been authorized by

other stations.

Sunday, June 8, 2025 71


Reservation
 a station needs to make a reservation before sending data.

 Time is divided into intervals. In each interval, a reservation frame


precedes the data frames sent in that interval.

 If there are N stations in the system, there are exactly N reservation


minislots in the reservation frame.

 Each mini slot belongs to a station. When a station needs to send a data
frame, it makes a reservation in its own minislot.

 The stations that have made reservations can send their data frames after
the reservation frame.
Sunday, June 8, 2025 72
Contd.
 The following figure shows a situation with five stations and a
five-minislot reservation frame.

 In the first interval, only stations 1, 3, and 4 have made


reservations. In the second interval, only station 1 has made a
reservation.

Sunday, June 8, 2025 73


Polling (Demand-Priority )
 Polling works with topologies in which one device is designated
as a primary station and the other devices are secondary
stations.
 The primary device(master node) controls the link; the
secondary devices follow its instructions.
 It is up to the primary device to determine which device is
allowed to use the channel at a given time.
 The primary device, therefore, is always the initiator of a
session.
Sunday, June 8, 2025 74
Contd.

 If the primary wants to receive data, it asks the secondary


devices if they have anything to send; this is called poll
function.
 If the primary wants to send data, it tells the secondary to
get ready to receive; this is called select function.

Sunday, June 8, 2025 75


Token Passing
 the stations in a network are organized in a logical ring. i.e.
for each station, there is a predecessor and a successor.
 The current station is the one that is accessing the channel
now.
 The right to this access has been passed from the
predecessor to the current station.
 The right will be passed to the successor when the current
station has no more data to send.
Sunday, June 8, 2025 76
Contd.

But how is the right to access the channel passed from one station to
another?
 a special packet called a token circulates through the ring.
 The possession of the token gives the station the right to access the
channel and send its data.
 When a station has some data to send, it waits until it receives the
token from its predecessor. It then holds the token and sends its data.
 When the station has no more data to send, it releases the token,
passing it to the next logical station in the ring.
 The station cannot send data until it receives the token again in the next
round.
Sunday, June 8, 2025 77
Access methods summary

 The following table summarizes the major features of each


access method:

Demand
Feature/function CSMA/CD CSMA/CA Token passing
priority

Type of Broadcast
Broadcast based Token based Hub based
communication based
Contention
Type of access Non-
(collisions may Contention Contention
method contention
occur)
Token Ring
Type of Network Ethernet LocalTalk 100VG-AnyLAN
ARCnet

Sunday, June 8, 2025 78


Thank You

You might also like