DATA COMMUNICATION AND COMPUTER NETWORK ASSIGNMENT
NAME KALEB FIKADU ID NUMBER
3863/15 DEPARTMENT OF COMPUTER
SCIENCE SECOND YEAR
1
DATA COMMUNICATION AND COMPUTER NETWORK ASSIGNMENT
WHAT'S HAMMING DISTANCE AND
WHAT'RE HAMMING CODES TO CORRECT?
ANSWER
Hamming distance is a metric used to
measure the difference between two
strings of equal length by counting the
number of positions at which the
corresponding symbols are different. It is
often used in computer science and
information theory to compare data and
detect errors.
Hamming codes are a type of error-
correcting code that utilize the concept of
Hamming distance to identify and correct
errors in transmitted data. They are
commonly employed in computer memory
systems and communication networks to
ensure the accuracy and reliability of the
2
DATA COMMUNICATION AND COMPUTER NETWORK ASSIGNMENT
transmitted information. By adding
redundancy bits to the original data,
Hamming codes can effectively detect and
correct errors that may occur during
transmission.
WHAT'S CYCLIC REDUNDANCY CHECK?
A cyclic redundancy check (CRC) is anerror
-detecting code used to detect accidental
changes to raw data in various types of
digital networks. It works by calculating a
unique checksum based on the data that is
then sent along with the data itself. When
the data is received, the receiving system
recalculates the checksum and compares
it to the sent checksum. If the two do not
match, it indicates that an error has
occurred during transmission.
CRCs are robust and widely used in
3
DATA COMMUNICATION AND COMPUTER NETWORK ASSIGNMENT
network communication protocols such as
Ethernet and Wi-Fi. They are particularly
effective at detecting common types of
errors like single-bit errors and burst errors.
The CRC algorithm is designed to be fast
and efficient, making it a popular choice
for error detection in digital systems.
The basic principle behind CRC is
polynomial division. The data is treated as
a polynomial, with each bit representing a
coefficient of the polynomial. The CRC
generator polynomial is then used to
generate the checksum, which is appended
to the data before transmission. The
receiving system uses the same
polynomial to calculate its own checksum
and compare it to the received checksum.
In conclusion, CRC is a powerful tool for
4
DATA COMMUNICATION AND COMPUTER NETWORK ASSIGNMENT
error detection in digital communication
networks. It is widely used due to its
simplicity, efficiency, and effectiveness in
detecting errors. It helps ensure data
integrity and reliability in various types of
digital systems.
WHAT'S CHECK SUM?
A checksum is a value calculated from a
data set with the purpose of detecting
errors that may have been introduced
during transmission or storage of the data.
It is commonly used in digital
communication and computing to verify
the integrity of data.
The checksum is generated by performing
a mathematical operation on the data,
resulting in a fixed-size value that can be
sent along with the data itself. When the
5
DATA COMMUNICATION AND COMPUTER NETWORK ASSIGNMENT
data is received, the receiving system
recalculates the checksum using the same
algorithm and compares it to the sent
checksum. If the two values match, it
indicates that the data has been
successfully transmitted or stored. If they
do not match, it suggests that errors have
occurred.
Checksums can be calculated using
various algorithms, such as the popular
CRC (Cyclic Redundancy Check) algorithm
or simple addition or XOR operations. The
choice of algorithm depends on the
specific requirements of the system and
the level of error detection needed.
Checksums are particularly useful in
detecting common types of errors, such as
single-bit errors, transposition errors, or
6
DATA COMMUNICATION AND COMPUTER NETWORK ASSIGNMENT
data corruption. They provide a fast and
efficient way to verify the accuracy of
transmitted data without the need for
complex error-correcting codes.
In conclusion, checksums play a vital role
in ensuring data integrity and reliability in
digital systems. They are a simple yet
effective tool for detecting errors and
ensuring that data remains accurate
throughout its transmission or storage
process.
Thank you any suggestion 0927495485
ASSIGNMENT SUBMISSION TO MR. HAILEMARIAM
WOLDE