|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: iSCSI CRC check clarification
Tandra,
I am not sure I understand what you are talking about.
The spec clearly states how the CRC should be calculated and what the bit
order on the wire is.
Perhaps by "reflecting" you are talking about the later.
The examples where checked independently by me and at least 2 other
persons.
Regards,
Julo
"De, Tandra" <Tandra_De@adaptec.com>
31-10-01 00:08
Please respond to "De, Tandra"
To: Julian Satran/Haifa/IBM@IBMIL
cc: "'ips@ece.cmu.edu'" <ips@ece.cmu.edu>, "De, Tandra"
<Tandra_De@adaptec.com>
Subject: iSCSI CRC check clarification
Julian,
I followed few iSCSI CRC checking example threads and the thread file://www.pdl.cmu.edu/mailinglists/ips/mail/msg05931.html says that "Before transmission, the CRC bits must be reflected and
complemented"; whereas, the iscsi- 08 draft only mentions about
complementing the CRC before transmission. So attached you will find two
software implementation code examples: crc_reflect.cpp and
crc_no_reflect.cpp.
I ran few test cases with the attached example code and when I do reflect
bits I get
0: ff ff ff ff
4: ff ff ff ff
8: ff ff ff ff
12: ff ff ff ff
16: ff ff ff ff
20: ff ff ff ff
24: ff ff ff ff
28: ff ff ff ff
32: 43 ab a8 62
in the transmission side, and the reception side I get 0x1c2d19ed.
But when I do not bit flip I get
0: ff ff ff ff
4: ff ff ff ff
8: ff ff ff ff
12: ff ff ff ff
16: ff ff ff ff
20: ff ff ff ff
24: ff ff ff ff
28: ff ff ff ff
32: 46 15 d5 c2
in the transmission side, and the reception side I do get 0x1c2d19ed
though.
I like to clarify which implementation we should use so that both
Initiator and Target will be in sync. validating the CRC. I appreciate if
you could verify the attached files to see I am missing anytbing. Also I
think that it would help everyone who are dealing with iSCSI CRC if you
could put up the finalized version of the code in the reflector.
Thanks,
Tandra (tde@corp.adaptec.com)
#### crc_no_reflect.cpp has been removed from this note on October 31 2001
by Julian Satran
#### crc_reflect.cpp has been removed from this note on October 31 2001 by
Julian Satran
Home Last updated: Wed Oct 31 15:17:38 2001 7475 messages in chronological order |