You are on page 1of 8

Chapter 1

Direction of data flow(simple,half,full duplex).

Type of connection (point to point,multi point).

Network topology (mesh,star, bus,ring)

Categories of network(lan,wan,man)

Chapter 2
Error detection and error connection
Error Detection
The error simply means any flaw or deviation that occurs while the information is transmitted from the
source to the destination in a computer network. In other words, if the message or data transmitted by
the source is not identical to the one received at the destination, we can say that there is some Error in
the Computer Network.

In a Network, the data or message is transferred in the form of bits that follow a specific sequence. If
there is any deviation in the bit sequence, it is called an Error. Now, let us understand the types of Errors
that occur in the Compute Network.

Error Correction
Once the errors are detected in the network, the deviated bits sequence needs to be replaced with the
right bit sequence so that the receiver can accept the data and process it. This method is called Error
Correction. We can correct the errors in the Network in two different ways which are listed below:

Forward Error Correction: In this Error Correction Scenario, the receiving end is responsible for correcting
the network error. There is no need for retransmission of the data from the sender’s side.

Backward Error Correction: Backward Error Correction means that the receiver needs to correct the error
either by transmitting the corrupted message or retransmitting the entire message to the destination.

However, there is one of the most widely used Error Correction methods which is called ‘Hamming Code’
which was designed by R.W.Hamming.

Types of error (single bit, burst error)


Single-Bit Error
This error occurs when the single bit (single binary digit) in the message is flipped
during the transmission and the received message at the destination side differs from the
original message by a single bit. For example, if a single 1(set bit) in the source
message is flipped to 0 or a 0 is flipped to 1, we can say that there is a Single-Bit Error
in Transmission which is shown below:

Multiple-Bit Error
This occurs when there is a deviation in multiple bits of the message during its transfer
from source to destination. The bits that are flipped need not be a continuous sequence
of bits. Thus, a Multiple-Bit Error is found when any non-continuous sequence of bits is
flipped in the transmitted message. The example of this error is illustrated below:

Burst Error
This is similar to the Multiple-Bits Error with just one difference the bits that are
flipped follow a continuous sequence in their bit representation. This error can occur
due a physical damage to the disk which causes a change in the consecutive bit
sequence of the source message. An example of a Burst Error is demonstrated below:
Error detection mechanism (parity check, Cyclic Redundancy check, checksum)
Simple Parity Check
In this technique, the sender appends an extra parity bit to the message. If the total number of ones in
the bit sequence is odd, 1 is added as a parity bit. And, if it is even, 0 acts as a parity bit. During
transmission or storage, if an error alters the number of bits, the parity bit will be used to identify
whether there is an error or not.

Two-dimensional Parity Check


This is just a variation of the Single-Bit Parity Check in which the original method is transformed into a
matrix in which each column is associated with a parity bit based on the number of occurrences of 1s. At
the receiving end, if the message has been corrupted in some way, the parity bit can identify that the
message is corrupted due to some error.
Checksum
This method adds up all the bits and adds the sum to the message while transmitting. This sum is called
the checksum. The sender calculates the checksum before transmitting the data, and the recipient
recalculates it upon receiving the data. If the two checksum values do not match with each other, there
is some error in the network.

Cyclic Redundancy Check (CRC)


The CRC method is similar to the Checksum method with the difference that this method deals with
binary division instead of binary addition. In this method, the repeated or redundant sequence of bits in
the source message is identified. Then, it is added to the source message. Now, the source message will
be easily divisible by the binary number formed from redundant bits which is called CRC Value.
Thus, the source message is divided by the CRC value which gives the divisor. Before the message is
accepted, the receiver divides the bit sequence by the CRC value. If the remainder is zero, there is no
error. But, if the remainder after dividing by the CRC value is not zero, it means that there is an error that
needs to be corrected.

Error correction mechanism (Hamming code)


Error correction mechanisms, such as Hamming codes, play a crucial role in ensuring accurate and
reliable data transmission in computer networks. These mechanisms help detect and correct errors that
may occur during data transmission, such as single bit errors or burst errors.

Hamming codes are a type of error-correcting code that can detect and correct up to two errors in a
given codeword. The codeword is a sequence of bits that represent data, and the Hamming code adds
redundant bits to the original codeword to enable error detection and correction. The redundancy in the
codeword allows the receiver to identify the location of the errors and correct them accordingly.

Encoding a message by Hamming Code


Step 1 − Calculation of the number of redundant bits.

Step 2 − Positioning the redundant bits.

Step 3 − Calculating the values of each redundant bit.

Decoding a message in Hamming Code


Step 1 − Calculation of the number of redundant bits.

Step 2 − Positioning the redundant bits.

Step 3 − Parity checking.

Step 4 − Error detection and correction

Chapter 3
Stop and wait arq
Stop-and-wait ARQ (Automatic Repeat reQuest) is a protocol used in communication networks for
reliable data transmission. In this protocol, the sender sends one data frame at a time and waits for an
acknowledgment (ACK) from the receiver before sending the next frame. If the sender does not receive
an ACK within a specified timeout period or if it receives a negative acknowledgment (NAK), it
retransmits the frame.

The process of Stop-and-Wait ARQ can be summarized as follows:

1. Sender sends a frame to the receiver.

2. Sender waits for an acknowledgment (ACK) from the receiver.

3. If ACK is received within a timeout period, the sender sends the next frame.

4. If no ACK is received within the timeout period or if a negative acknowledgment (NAK) is received, the
sender retransmits the frame.

5. Receiver sends ACK for each correctly received frame.

6. If a duplicate frame is received at the receiver, it sends an ACK for that frame again.

Stop-and-wait ARQ is a simple protocol and easy to implement. However, its efficiency is limited,
especially in high-delay networks, because it requires the sender to wait for acknowledgment before
sending the next frame, which can lead to low bandwidth utilization. Alternatives like Go-Back-N ARQ
and Selective Repeat ARQ are more efficient in utilizing available bandwidth.

Multiplexing
Multiplexing is a technique used to combine and send the multiple data streams over a single medium.
The process of combining the data streams is known as multiplexing and hardware used for multiplexing
is known as a multiplexer.

Multiplexing is achieved by using a device called Multiplexer (MUX) that combines n input lines to
generate a single output line. Multiplexing follows many-to-one, i.e., n input lines and one output line.

Demultiplexing is achieved by using a device called Demultiplexer (DEMUX) available at the receiving
end. DEMUX separates a signal into its component signals (one input and n outputs). Therefore, we can
say that demultiplexing follows the one-to-many approach.
o The 'n' input lines are transmitted through a multiplexer and multiplexer combines the
signals to form a composite signal.
o The composite signal is passed through a Demultiplexer and demultiplexer separates a
signal to component signals and transfers them to their respective destinations.

different types of multiplexing (time division,Freq division, code divison)


Frequency division multiplexing
Frequency division multiplexing is defined as a type of multiplexing where the bandwidth of a single
physical medium is divided into a number of smaller, independent frequency channels.

In FDM, we can observe a lot of inter-channel cross-talk, due to the fact that in this type of multiplexing
the bandwidth is divided into frequency channels. In order to prevent the inter-channel cross talk,
unused strips of bandwidth must be placed between each channel. These unused strips between each
channel are known as guard bands.

Time Division Multiplexing:


Time-division multiplexing is defined as a type of multiplexing wherein FDM, instead of sharing a portion
of the bandwidth in the form of channels, in TDM, time is shared. Each connection occupies a portion of
time in the link. In Time Division Multiplexing, all signals operate with the same frequency (bandwidth)
at different times.

There are two types of Time Division Multiplexing:

Synchronous Time Division Multiplexing

Statistical (or Asynchronous) Time Division Multiplexing


Synchronous TDM:

Synchronous TDM is a type of Time Division Multiplexing where the input frame already has a slot in the
output frame. Time slots are grouped into frames. One frame consists of one cycle of time slots.

Statistical TDM:

Statistical TDM is a type of Time Division Multiplexing where the output frame collects data from the
input frame till it is full, not leaving an empty slot like in Synchronous TDM.

Code division multiplexing


Code division multiplexing (CDM) is a technique used in telecommunications to allow multiple users to
transmit data simultaneously over a single communication channel. In CDM, each user is assigned a
unique code that is used to modulate their signal. The modulated signals are then combined and
transmitted over the same channel. At the receiving end, each user’s signal is demodulated using their
unique code to retrieve their original data.

In CDM, each user is assigned a unique spreading code that is used to spread the data signal. This
spreading code is typically a binary sequence that is much longer than the original data signal. The
spreading code is multiplied with the data signal to generate a spread spectrum signal that has a much
wider bandwidth than the original data signal. The spread spectrum signals of all users are then
combined and transmitted over the same channel.

At the receiving end, the received signal is multiplied with the same spreading code used at the
transmitting end to dispread the signal. The resulting dispread signal is then demodulated to retrieve the
original data signal. Because each user’s data signal is spread using a unique code, it is possible to
separate the signals of different users even though they are transmitted over the same channel.

You might also like