Unit 2 Omputer Network Aktu
Unit 2 Omputer Network Aktu
Unit-II
o The communication channel that connects the adjacent nodes is known as links, and in
order to move the datagram from source to the destination, the datagram must be moved
across an individual link.
o The main responsibility of the Data Link Layer is to transfer the datagram across an
individual link.
o The Data link layer protocol defines the format of the packet exchanged across the nodes
as well as the actions such as Error detection, retransmission, flow control, and random
access.
o The Data Link Layer protocols are Ethernet, token ring, FDDI and PPP.
o An important characteristic of a Data Link Layer is that datagram can be handled by
different link layer protocols on different links in a path. For example, the datagram is
handled by Ethernet on the first link, PPP on the second link.
o Framing & Link access: Data Link Layer protocols encapsulate each network frame
within a Link layer frame before the transmission across the link. A frame consists of a
data field in which network layer datagram is inserted and a number of data fields. It
specifies the structure of the frame as well as a channel access protocol by which frame is
to be transmitted over the link.
o Reliable delivery: Data Link Layer provides a reliable delivery service, i.e., transmits the
network layer datagram without any error. A reliable delivery service is accomplished
with transmissions and acknowledgements. A data link layer mainly provides the reliable
delivery service over the links as they have higher error rates and they can be corrected
locally, link at which an error occurs rather than forcing to retransmit the data.
o Flow control: A receiving node can receive the frames at a faster rate than it can process
the frame. Without flow control, the receiver's buffer can overflow, and frames can get
lost. To overcome this problem, the data link layer uses the flow control to prevent the
sending node on one side of the link from overwhelming the receiving node on another
side of the link.
o Error detection: Errors can be introduced by signal attenuation and noise. Data Link
Layer protocol provides a mechanism to detect one or more errors. This is achieved by
adding error detection bits in the frame and then receiving node can perform an error
check.
o Error correction: Error correction is similar to the Error detection, except that receiving
node not only detect the errors but also determine where the errors have occurred in the
frame.
o Half-Duplex & Full-Duplex: In a Full-Duplex mode, both the nodes can transmit the
data at the same time. In a Half-Duplex mode, only one node can transmit the data at the
same time.
Error Detection:
When data is transmitted from one device to another device, the system does not guarantee
whether the data received by the device is identical to the data transmitted by another device. An
Error is a situation when the message received at the receiver end is not identical to the message
transmitted.
Types of Errors:
o Single-Bit Error
o Burst Error
Single-Bit Error:
The only one bit of a given data unit is changed from 1 to 0 or from 0 to 1.
In the above figure, the message which is sent is corrupted as single-bit, i.e., 0 bit is changed to
1.
Single-Bit Error does not appear more likely in Serial Data Transmission. For example, Sender
sends the data at 10 Mbps, this means that the bit lasts only for 1 ?s and for a single-bit error to
occurred, a noise must be more than 1 ?s.
Single-Bit Error mainly occurs in Parallel Data Transmission. For example, if eight wires are
used to send the eight bits of a byte, if one of the wire is noisy, then single-bit is corrupted per
byte.
Burst Error:
The two or more bits are changed from 0 to 1 or from 1 to 0 is known as Burst Error.
The Burst Error is determined from the first corrupted bit to the last corrupted bit.
The duration of noise in Burst Error is more than the duration of noise in Single-Bit.
The number of affected bits depends on the duration of the noise and data rate.
Checksum
Checksum Generator
A Checksum is generated at the sending side. Checksum generator subdivides the data into equal
segments of n bits each, and all these segments are added together by using one's complement
arithmetic. The sum is complemented and appended to the original data, known as checksum
field. The extended data is transmitted across the network.
Suppose L is the total sum of the data segments, then the checksum would be ?L
Checksum Checker
A Checksum is verified at the receiving side. The receiver subdivides the incoming data into
equal segments of n bits each, and all these segments are added together, and then this sum is
complemented. If the complement of the sum is zero, then the data is accepted otherwise data is
rejected.
1. The Receiver follows the given steps:
2. The block unit is divided into k sections and each of n bits.
3. All the k sections are added together by using one's complement algorithm to get the sum.
4. The sum is complemented.
5. If the result of the sum is zero, then the data is accepted otherwise the data is discarded.
o In CRC technique, a string of n 0s is appended to the data unit, and this n number is less
than the number of bits in a predetermined number, known as division which is n+1 bits.
o Secondly, the newly extended data is divided by a divisor using a process is known as
binary division. The remainder generated from this division is known as CRC remainder.
o Thirdly, the CRC remainder replaces the appended 0s at the end of the original data. This
newly generated unit is sent to the receiver.
o The receiver receives the data followed by the CRC remainder. The receiver will treat
this whole unit as a single unit, and it is divided by the same divisor that was used to find
the CRC remainder.
If the resultant of this division is zero which means that it has no error, and the data is accepted.
If the resultant of this division is not zero which means that the data consists of an error.
Therefore, the data is discarded.
Let's understand this concept through an example:
CRC Generator
o A CRC generator uses a modulo-2 division. Firstly, three zeroes are appended at the end
of the data as the length of the divisor is 4 and we know that the length of the string 0s to
be appended is always one less than the length of the divisor.
o Now, the string becomes 11100000, and the resultant string is divided by the divisor
1001.
o The remainder generated from the binary division is known as CRC remainder. The
generated value of the CRC remainder is 111.
o CRC remainder replaces the appended string of 0s at the end of the data unit, and the
final string would be 11100111 which is sent across the network.
CRC Checker
o The functionality of the CRC checker is similar to the CRC generator.
o When the string 11100111 is received at the receiving end, then CRC checker performs
the modulo-2 division.
o A string is divided by the same divisor, i.e., 1001.
o In this case, CRC checker generates the remainder of zero. Therefore, the data is
accepted.
Error Correction
Error Correction codes are used to detect and correct the errors when data is transmitted from the
sender to the receiver.
o Backward error correction: Once the error is discovered, the receiver requests the
sender to retransmit the entire data unit.
o Forward error correction: In this case, the receiver uses the error-correcting code
which automatically corrects the errors.
A single additional bit can detect the error, but cannot correct it.
For correcting the errors, one has to know the exact position of the error. For example, If we
want to calculate a single-bit error, the error correction code will determine which one of seven
bits is in error. To achieve this, we have to add some additional redundant bits.
Suppose r is the number of redundant bits and d is the total number of the data bits. The number
of redundant bits r can be calculated by using the formula:
2r>=d+r+1
The value of r is calculated by using the above formula. For example, if the value of d is 4, then
the possible smallest value that satisfies the above relation would be 3.
To determine the position of the bit which is in error, a technique developed by R.W Hamming is
Hamming code which can be applied to any length of the data unit and uses the relationship
between data units and redundant units.
Hamming Code
Parity bits: The bit which is appended to the original data of binary bits so that the total number
of 1s is even or odd.
Even parity: To check for even parity, if the total number of 1s is even, then the value of the
parity bit is 0. If the total number of 1s occurrences is odd, then the value of the parity bit is 1.
Odd Parity: To check for odd parity, if the total number of 1s is even, then the value of parity
bit is 1. If the total number of 1s is odd, then the value of parity bit is 0.
The number of redundant bits is 3. The three bits are represented by r1, r2, r4. The position of the
redundant bits is calculated with corresponds to the raised power of 2. Therefore, their
corresponding positions are 1, 21, 22.
1. The position of r1 = 1
2. The position of r2 = 2
3. The position of r4 = 4
The r1 bit is calculated by performing a parity check on the bit positions whose binary
representation includes 1 in the first position.
We observe from the above figure that the bit positions that includes 1 in the first position are 1,
3, 5, 7. Now, we perform the even-parity check at these bit positions. The total number of 1 at
these bit positions corresponding to r1 is even, therefore, the value of the r1 bit is 0.
Determining r2 bit
The r2 bit is calculated by performing a parity check on the bit positions whose binary
representation includes 1 in the second position.
We observe from the above figure that the bit positions that includes 1 in the second position
are 2, 3, 6, 7. Now, we perform the even-parity check at these bit positions. The total number of
1 at these bit positions corresponding to r2 is odd, therefore, the value of the r2 bit is 1.
Determining r4 bit
The r4 bit is calculated by performing a parity check on the bit positions whose binary
representation includes 1 in the third position.
We observe from the above figure that the bit positions that includes 1 in the third position are 4,
5, 6, 7. Now, we perform the even-parity check at these bit positions. The total number of 1 at
these bit positions corresponding to r4 is even, therefore, the value of the r4 bit is 0.
Suppose the 4th bit is changed from 0 to 1 at the receiving end, then parity bits are recalculated.
R1 bit
We observe from the above figure that the binary representation of r1 is 1100. Now, we perform
the even-parity check, the total number of 1s appearing in the r1 bit is an even number.
Therefore, the value of r1 is 0.
R2 bit
We observe from the above figure that the binary representation of r2 is 1001. Now, we perform
the even-parity check, the total number of 1s appearing in the r2 bit is an even number.
Therefore, the value of r2 is 0.
R4 bit
We observe from the above figure that the binary representation of r4 is 1011. Now, we perform
the even-parity check, the total number of 1s appearing in the r4 bit is an odd number. Therefore,
the value of r4 is 1.
o The binary representation of redundant bits, i.e., r4r2r1 is 100, and its corresponding
decimal value is 4. Therefore, the error occurs in a 4th bit position. The bit value must be
changed from 1 to 0 to correct the error.
Data Link Control is the service provided by the Data Link Layer to provide reliable data transfer
over the physical medium. For example, In the half-duplex transmission mode, one device can
only transmit the data at a time. If both the devices at the end of the links transmit the data
simultaneously, they will collide and leads to the loss of the information. The Data link layer
provides the coordination among the devices so that no collision occurs.
o Line discipline
o Flow Control
o Error Control
Line Discipline
o Line Discipline is a functionality of the Data link layer that provides the coordination
among the link systems. It determines which device can send, and when it can send the
data.
o ENQ/ACK
o Poll/select
END/ACK
END/ACK coordinates which device will start the transmission and whether the recipient is
ready or not.
Working of END/ACK
The transmitter transmits the frame called an Enquiry (ENQ) asking whether the receiver is
available to receive the data or not.
The receiver responses either with the positive acknowledgement(ACK) or with the negative
acknowledgement(NACK) where positive acknowledgement means that the receiver is ready to
receive the transmission and negative acknowledgement means that the receiver is unable to
accept the transmission.
o If the response to the ENQ is positive, the sender will transmit its data, and once all of its
data has been transmitted, the device finishes its transmission with an EOT (END-of-
Transmission) frame.
o If the response to the ENQ is negative, then the sender disconnects and restarts the
transmission at another time.
o If the response is neither negative nor positive, the sender assumes that the ENQ frame
was lost during the transmission and makes three attempts to establish a link before
giving up.
Poll/Select
The Poll/Select method of line discipline works with those topologies where one device is
designated as a primary station, and other devices are secondary stations.
Working of Poll/Select
o In this, the primary device and multiple secondary devices consist of a single
transmission line, and all the exchanges are made through the primary device even
though the destination is a secondary device.
o The primary device has control over the communication link, and the secondary device
follows the instructions of the primary device.
o The primary device determines which device is allowed to use the communication
channel. Therefore, we can say that it is an initiator of the session.
o If the primary device wants to receive the data from the secondary device, it asks the
secondary device that they anything to send, this process is known as polling.
o If the primary device wants to send some data to the secondary device, then it tells the
target secondary to get ready to receive the data, this process is known as selecting.
Select
o The select mode is used when the primary device has something to send.
o When the primary device wants to send some data, then it alerts the secondary device for
the upcoming transmission by transmitting a Select (SEL) frame, one field of the frame
includes the address of the intended secondary device.
o When the secondary device receives the SEL frame, it sends an acknowledgement that
indicates the secondary ready status.
o If the secondary device is ready to accept the data, then the primary device sends two or
more data frames to the intended secondary device. Once the data has been transmitted,
the secondary sends an acknowledgement specifies that the data has been received.
Poll
o The Poll mode is used when the primary device wants to receive some data from the
secondary device.
o When a primary device wants to receive the data, then it asks each device whether it has
anything to send.
o Firstly, the primary asks (poll) the first secondary device, if it responds with the NACK
(Negative Acknowledgement) means that it has nothing to send. Now, it approaches the
second secondary device, it responds with the ACK means that it has the data to send.
The secondary device can send more than one frame one after another or sometimes it
may be required to send ACK before sending each one, depending on the type of the
protocol being used.
Flow Control
o It is a set of procedures that tells the sender how much data it can transmit before the data
overwhelms the receiver.
o The receiving device has limited speed and limited memory to store the data. Therefore,
the receiving device must be able to inform the sending device to stop the transmission
temporarily before the limits are reached.
o It requires a buffer, a block of memory for storing the information until they are
processed.
o Stop-and-wait
o Sliding window
Stop-and-wait
o In the Stop-and-wait method, the sender waits for an acknowledgement after every frame
it sends.
o When acknowledgement is received, then only next frame is sent. The process of
alternately sending and waiting of a frame continues until the sender transmits the EOT
(End of transmission) frame.
Advantage of Stop-and-wait
The Stop-and-wait method is simple as each frame is checked and acknowledged before the next
frame is sent.
Disadvantage of Stop-and-wait
Stop-and-wait technique is inefficient to use as each frame must travel across all the way to the
receiver, and an acknowledgement travels all the way before the next frame is sent. Each frame
sent and received uses the entire time needed to traverse the link.
Sliding Window
o The Sliding Window is a method of flow control in which a sender can transmit the
several frames before getting an acknowledgement.
o In Sliding Window Control, multiple frames can be sent one after the another due to
which capacity of the communication channel can be utilized efficiently.
o A single ACK acknowledge multiple frames.
o Sliding Window refers to imaginary boxes at both the sender and receiver end.
o The window can hold the frames at either end, and it provides the upper limit on the
number of frames that can be transmitted before the acknowledgement.
o Frames can be acknowledged even when the window is not completely filled.
o The window has a specific size in which they are numbered as modulo-n means that they
are numbered from 0 to n-1. For example, if n = 8, the frames are numbered from
0,1,2,3,4,5,6,7,0,1,2,3,4,5,6,7,0,1........
o The size of the window is represented as n-1. Therefore, maximum n-1 frames can be
sent before acknowledgement.
o When the receiver sends the ACK, it includes the number of the next frame that it wants
to receive. For example, to acknowledge the string of frames ending with frame number
4, the receiver will send the ACK containing the number 5. When the sender sees the
ACK with the number 5, it got to know that the frames from 0 through 4 have been
received.
Sender Window
o At the beginning of a transmission, the sender window contains n-1 frames, and when
they are sent out, the left boundary moves inward shrinking the size of the window. For
example, if the size of the window is w if three frames are sent out, then the number of
frames left out in the sender window is w-3.
o Once the ACK has arrived, then the sender window expands to the number which will be
equal to the number of frames acknowledged by ACK.
o For example, the size of the window is 7, and if frames 0 through 4 have been sent out
and no acknowledgement has arrived, then the sender window contains only two frames,
i.e., 5 and 6. Now, if ACK has arrived with a number 4 which means that 0 through 3
frames have arrived undamaged and the sender window is expanded to include the next
four frames. Therefore, the sender window contains six frames (5,6,7,0,1,2).
Receiver Window
o At the beginning of transmission, the receiver window does not contain n frames, but it
contains n-1 spaces for frames.
o When the new frame arrives, the size of the window shrinks.
o The receiver window does not represent the number of frames received, but it represents
the number of frames that can be received before an ACK is sent. For example, the size
of the window is w, if three frames are received then the number of spaces available in
the window is (w-3).
o Once the acknowledgement is sent, the receiver window expands by the number equal to
the number of frames acknowledged.
o Suppose the size of the window is 7 means that the receiver window contains seven
spaces for seven frames. If the one frame is received, then the receiver window shrinks
and moving the boundary from 0 to 1. In this way, window shrinks one by one, so
window now contains the six spaces. If frames from 0 through 4 have sent, then the
window contains two spaces before an acknowledgement is sent.
Error Control
Stop-and-wait ARQ is a technique used to retransmit the data in case of damaged or lost frames.
This technique works on the principle that the sender will not transmit the next frame until it
receives the acknowledgement of the last transmitted frame.
o The sending device keeps a copy of the last transmitted frame until the acknowledgement
is received. Keeping the copy allows the sender to retransmit the data if the frame is not
received correctly.
o Both the data frames and the ACK frames are numbered alternately 0 and 1 so that they
can be identified individually. Suppose data 1 frame acknowledges the data 0 frame
means that the data 0 frame has been arrived correctly and expects to receive data 1
frame.
o If an error occurs in the last transmitted frame, then the receiver sends the NAK frame
which is not numbered. On receiving the NAK frame, sender retransmits the data.
o It works with the timer. If the acknowledgement is not received within the allotted time,
then the sender assumes that the frame is lost during the transmission, so it will retransmit
the frame.
Sliding Window ARQ is a technique used for continuous transmission error control.
o In this case, the sender keeps the copies of all the transmitted frames until they have been
acknowledged. Suppose the frames from 0 through 4 have been transmitted, and the last
acknowledgement was for frame 2, the sender has to keep the copies of frames 3 and 4
until they receive correctly.
o The receiver can send either NAK or ACK depending on the conditions. The NAK frame
tells the sender that the data have been received damaged. Since the sliding window is a
continuous transmission mechanism, both ACK and NAK must be numbered for the
identification of a frame. The ACK frame consists of a number that represents the next
frame which the receiver expects to receive. The NAK frame consists of a number that
represents the damaged frame.
o The sliding window ARQ is equipped with the timer to handle the lost
acknowledgements. Suppose then n-1 frames have been sent before receiving any
acknowledgement. The sender waits for the acknowledgement, so it starts the timer and
waits before sending any more. If the allotted time runs out, the sender retransmits one or
all the frames depending upon the protocol used.
o Damaged Frame: When the frame is damaged, then the receiver sends a NAK frame.
In the above figure, three frames have been transmitted before an error discovered in the third
frame. In this case, ACK 2 has been returned telling that the frames 0,1 have been received
successfully without any error. The receiver discovers the error in data 2 frame, so it returns the
NAK 2 frame. The frame 3 is also discarded as it is transmitted after the damaged frame.
Therefore, the sender retransmits the frames 2,3.
o Lost Data Frame: In Sliding window protocols, data frames are sent sequentially. If any
of the frames is lost, then the next frame arrive at the receiver is out of sequence. The
receiver checks the sequence number of each of the frame, discovers the frame that has
been skipped, and returns the NAK for the missing frame. The sending device retransmits
the frame indicated by NAK as well as the frames transmitted after the lost frame.
o Lost Acknowledgement: The sender can send as many frames as the windows allow
before waiting for any acknowledgement. Once the limit of the window is reached, the
sender has no more frames to send; it must wait for the acknowledgement. If the
acknowledgement is lost, then the sender could wait forever. To avoid such situation, the
sender is equipped with the timer that starts counting whenever the window capacity is
reached. If the acknowledgement has not been received within the time limit, then the
sender retransmits the frame since the last ACK.
Selective-Reject ARQ
CDMA is an acronym for Code Division Multiple Access, which is also a radio
telecommunication standard similar to GSM.
o The CDMA came into existence in 2G and 3G generation as the protocol of wireless
communication.
o It is based on the spread spectrum technology and makes optimal use of the available
bandwidth. Since it uses the spread spectrum technology, hence allows each user to
transmit the data over the entire frequency spectrum at any time.
o The CDMA provides one of the most secure modes of communication due to its spread
spectrum property.
o It is used in UHF or Ultra high-frequency cellular systems, with frequency bands
ranging from 800MHz to 1900MHz.
Advantages of CDMA:
o It uses a fixed frequency spectrum in an efficient way.
o There is no limit on the number of Users.
o It provides a flexible allocation of resources.
o It is compatible with other cellular technologies; hence it allows nation-wide roaming.
Difference between CSMA CA and CSMA CD
CSMA is a mechanism that senses the state of the shared channel to prevent or recover data
packets from a collision. It is also used to control the flow of data packets over the network so
that the packets are not get lost, and data integrity is maintained. In CSMA, when two or more
data packets are sent at the same time on a shared channel, the chances of collision occurred.
Due to the collision, the receiver does not get any information regarding the sender's data
packets. And the lost information needs to be resented so that the receiver can get it. Therefore
we need to sense the channel before transmitting data packets on a network. It is divided into two
parts, CSMA CA (Collision Avoidance) and CSMA CD (Collision Detection).
CSMA CD
The Carrier Sense Multiple Access/ Collision Detection protocol is used to detect a collision in
the media access control (MAC) layer. Once the collision was detected, the CSMA CD
immediately stopped the transmission by sending the signal so that the sender does not waste all
the time to send the data packet. Suppose a collision is detected from each station while
broadcasting the packets. In that case, the CSMA CD immediately sends a jam signal to stop
transmission and waits for a random time context before transmitting another data packet. If the
channel is found free, it immediately sends the data and returns it.
1. It is used for collision detection on a shared channel within a very short time.
2. CSMA CD is better than CSMA for collision detection.
3. CSMA CD is used to avoid any form of waste transmission.
4. When necessary, it is used to use or share the same amount of bandwidth at each station.
5. It has lower CSMA CD overhead as compared to the CSMA CA.
Disadvantage of CSMA CD
1. It is not suitable for long-distance networks because as the distance increases, CSMA CD'
efficiency decreases.
2. It can detect collision only up to 2500 meters, and beyond this range, it cannot detect
collisions.
3. When multiple devices are added to a CSMA CD, collision detection performance is
reduced.
CSMA/CA
CSMA stands for Carrier Sense Multiple Access with Collision Avoidance. It means that it is
a network protocol that uses to avoid a collision rather than allowing it to occur, and it does not
deal with the recovery of packets after a collision. It is similar to the CSMA CD protocol that
operates in the media access control layer. In CSMA CA, whenever a station sends a data frame
to a channel, it checks whether it is in use. If the shared channel is busy, the station waits until
the channel enters idle mode. Hence, we can say that it reduces the chances of collisions and
makes better use of the medium to send data packets more efficiently.
Advantage of CSMA CA
1. When the size of data packets is large, the chances of collision in CSMA CA is less.
2. It controls the data packets and sends the data when the receiver wants to send them.
3. It is used to prevent collision rather than collision detection on the shared channel.
4. CSMA CA avoids wasted transmission of data over the channel.
5. It is best suited for wireless transmission in a network.
6. It avoids unnecessary data traffic on the network with the help of the RTS/ CTS
extension.
1. Sometime CSMA/CA takes much waiting time as usual to transmit the data packet.
2. It consumes more bandwidth by each station.
3. Its efficiency is less than a CSMA CD.
S. CSMA CD CSMA CA
No
6. Whenever a data packet conflicts Whereas the CSMA CA waits until the
in a shared channel, it resends the channel is busy and does not recover
data frame. after a collision.
9. It is more popular than the CSMA It is less popular than CSMA CD.
CA protocol.