RE: Question on PE Checksum
Johnson Walter-CWJ002 <[email protected]> Thu, 21 Jul 2005 14:49:24 -0500
| Newsgroups | gmane.ietf.rserpool |
|---|---|
| Message-ID | <6F8DFFA2C996D711945800065BFC9E4A160483EB@il02exm11> |
Not that I have verified this 32 bit Internet Checksum algorithm (http://www.csee.usf.edu/~christen/tools/check32.c) for accuracy or efficiency/optimization. But this seems to indicate a method where a 32 bit Internet Checksum can be calculated using only a 32 bit processor. If true, I guess my main concern is if people believe/know if moving to a 16 bit Internet Checksum with its reduced ability of detecting an inconsistency in the handlespace is better than using a non-optimized 32 bit Internet Checksum hash or a very efficient 32 bit XOR hash (instead of 16 bit Internet Checksum hash) which may not be optimally spread/unique as compared to a 32 bit Internet Checksum but potentially better than a 16 bit Internet Checksum. Thanks Walter -----Original Message----- From: Michael Tuexen [mailto:[email protected]] Sent: Thursday, July 21, 2005 10:00 AM To: Thomas Dreibholz Cc: [email protected]; Johnson Walter-CWJ002 Subject: Re: [Rserpool] Question on PE Checksum Thomas, the question is not if it is available in a programming language, but if it is available on all processors the protocol runs on. And that point is what I'm not sure about. And I'm not talking about about servers or workstations, but processors used in embedded devices and so on. The other point is that people do have some highly optimized code for the 16 bit stuff, but not for the 32 bit stuff. But they can build it if the processor supports 64 bit integer arithmetic. Best regards Michael On Jul 21, 2005, at 11:19 Uhr, Thomas Dreibholz wrote: > -----BEGIN PGP SIGNED MESSAGE----- > Hash: SHA1 > > On Thursday 21 July 2005 09:21, Michael Tuexen wrote: >> Hi Walter, >> >> I have looked into efficient ways of implementing the Internet >> checksum >> and figured >> out that you need 32 bit arithmetic to calculate the 16 bit checksum. >> When using >> a '32 bit Internet checksum' this would require support for 64 bit >> integers. > > Yes. > >> I do think that we should not require that. > > But is this really relevant on today's computers and compilers? > Working with > 64-bit integers ("long long" datatype) is for example part of the > ANSI-C > standard since ANSI C99 (http://www.nirvani.net/docs/ansi_c.pdf). This > standard is six years old. > > I think the effort to use the 32-bit sum is not significantly higher > than to > use the 16-bit sum; but the probability that handlespace > inconsistencies are > detected is. > > > Best regards > - -- > ======================================================================= > Dipl.-Inform. Thomas Dreibholz > > University of Essen, Room ES210 > Inst. for Experimental Mathematics Ellernstraße 29 > Computer Networking Technology Group D-45326 Essen/Germany > - > ----------------------------------------------------------------------- > E-Mail: [email protected] > Homepage: http://www.exp-math.uni-essen.de/~dreibh > ======================================================================= > -----BEGIN PGP SIGNATURE----- > Version: GnuPG v1.2.4 (GNU/Linux) > > iD8DBQFC32im32BbsHYPLWURAjLRAJ0Rw450qEZypJ52M6vfxi+WGeU5fACfX1hY > 98Q/vzXnwNsqwmUEym2ILpc= > =8ijA > -----END PGP SIGNATURE----- >