[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Some precisions about CRC32 description



Hi all,

The text in draft is :

In the CRC32 description, it should be added that the checksum to be
computed is the forward CRC-32 (as opposed to the reverse way, as I
learnt recently). So I would propose a sloght modification to the CRC
descritption in 4.6 :

"Each SNDU MUST carry a 32-bit CRC field in the last four bytes of
 the SNDU. This position eases CRC computation by hardware.  The forward
                                                            ^^^^^^^^^^^^
 CRC-32 polynomial is to be used. This is a 32 bit value calculated
 according to the generator polynomial represented 0x04C11DB7 in
hexadecimal: x^32+x^26+x^23+x^22+x^16+x^12+x^11+x^10+x^8+x^7+x^5+x^4+x^2+x^1+x^0. "


More over, there are reference to Ethernet, MPE, and AAL5,
"Examples where this polynomial is also employed include Ethernet,
 DSM-CC section syntax [ISO-DSMCC} and AAL5 [ITU3563]. The use
 resembles, but is different to that in SCTP [RFC3309]."

can anyone confirm, those are exactly the same computation (IV=0xffffffff, forward computation, no final XOR) ? if not, the
reference should be removed for it might lead to errors.

An exemple wouldn't hurt, so here is what I computed, for a small ping6
from 2001:660:3008:1789::5 to 2001:660:3008:1789::6, with the associated
DVB MAC addr being 01:02:03:04:05:06. It gives the following SNDU :

0000:  00 3f 86 dd 01 02 03 04 05 06 60 00 00 00 00 0d  .?........`.....
0010:  3a 40 20 01 06 60 30 08 17 89 00 00 00 00 00 00  :@ ..`0.........
0020:  00 05 20 01 06 60 30 08 17 89 00 00 00 00 00 00  .. ..`0.........
0030:  00 06 80 00 9c 58 07 70 00 00 00 00 00 00 00 02  .....X.p........
0040:  72 c9 c2                                         r..


Regards.
Alain.
--
Alain RITOUX
Tel +33-1-39-30-92-32
Fax +33-1-39-30-92-11
visit our web http://www.6wind.com