Taher_Selim
Member level 5
Hello,
Can any explain please how to understand CRC-32 algorithm for Ethernet. I understand the following:
1- There is an ethernet message M
2- There is a polynomial G (in case of Ethernet it is 0x04C11DB7).
3- M is multiplied first by x^32 (I don't understand why?)
4- CRC value is : CRC=remainder (M * (x^32) / G ) (modulo 2 division).
5- CRC is inverted (one's complement).
6- CRC is appended to the message M. Lets say the result is new message P
7- At receiver side: P is divided over G
8- The result is ethernet CRC code C704dd7B.
So I don't understand the following:
1- Why shall we multiply first by x^32?
2- What is the relation between new message P and original message M (is it addition, multiplication)
3-Why do we always get the result as C704dd7B at receiver?
Thanks in advance
Can any explain please how to understand CRC-32 algorithm for Ethernet. I understand the following:
1- There is an ethernet message M
2- There is a polynomial G (in case of Ethernet it is 0x04C11DB7).
3- M is multiplied first by x^32 (I don't understand why?)
4- CRC value is : CRC=remainder (M * (x^32) / G ) (modulo 2 division).
5- CRC is inverted (one's complement).
6- CRC is appended to the message M. Lets say the result is new message P
7- At receiver side: P is divided over G
8- The result is ethernet CRC code C704dd7B.
So I don't understand the following:
1- Why shall we multiply first by x^32?
2- What is the relation between new message P and original message M (is it addition, multiplication)
3-Why do we always get the result as C704dd7B at receiver?
Thanks in advance