|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Fwd: Crc-32c example in iSCSI spec]Steve- I just ran some Ethernet packets with known CRCs through my iSCSI/Ethernet CRC generator, and found the same thing as you did. All of my examples need to be byte-swapped, along with the fix I already posted for the all-ones example. Here is a new set of examples, which will be in -08. I also ran 64 bytes of zeroes and ones, which now agree with your numbers as well. Thanks again for bringing this up. -- Mark 07 CRC Examples N.B. all Values are Hexadecimal Byte: 0 1 2 3 0: 01 a0 00 00 4: 00 00 00 00 8: 00 00 00 00 12: 00 00 00 00 16: 04 05 00 00 20: 00 01 00 00 24: 00 00 00 05 28: 00 00 00 04 32: 2a 00 00 00 36: 00 00 00 00 40: 80 00 00 00 44: 00 00 00 00 CRC: 93 70 51 db 32 bytes of zeroes: Byte: 0 1 2 3 0: 00 00 00 00 ... 28: 00 00 00 00 CRC: aa 36 91 8a 32 bytes of ones: Byte: 0 1 2 3 0: ff ff ff ff ... 28: ff ff ff ff CRC: 43 ab a8 62 32 bytes of incrementing 00..1f: Byte: 0 1 2 3 0: 00 01 02 03 ... 28: 1c 1d 1e 1f CRC: 4e 79 dd 46 Steve Blightman wrote: > > I believe the examples for the ISCSI CRC have the wrong endianness. > > As yiou suugested over the phone I ran some Ethernet frames through a > simulation. I have some difficulty running the exact simulations you > wanted becuase the minimum size Ethernet frame is 64 bytes. > > However using the Ethernet CRC polynomial, > Running 64 bytes of 0 onto the wire, we append "36 63 8d 75" onto the > wire for the CRC - "36" goes out first. > Running 64 bytes of all 1, we append "ba 87 61 0f" onto the wire - "ba" > goes out first. > > Using the same logic for the ISCSI polynomial > Running 64 bytes of 0 I think we should append "67 eb c8 03" - "67" > going out first > and running 64 bytes of all 1 we should append "66 4e cd 2f" - "66" > going out first > > And now for 32 bytes with the ISCSI polynomial > > Running 32 bytes of 0 we should append "aa 36 91 8a" - "aa" going out > first > Running 32 bytes of all 1 we should append "43 ab a8 62" - "43" going > out first > > I don't want to get into an endless endian debate, but I believe it is > important to get the order of these bytes in the right order, so that we > can use the same hardware to check as well as to generate CRCs. > > Thanks for your help on this, > Steve Blightman -- Mark A. Bakke Cisco Systems mbakke@cisco.com 763.398.1054
Home Last updated: Tue Sep 04 01:04:00 2001 6315 messages in chronological order |