TCPv4 checksum errors
Andreas Schwab
schwab at issan.informatik.uni-dortmund.de
Tue Dec 29 00:12:27 EST 1998
Alan Cox <alan at cymru.net> writes:
|> > Alan Cox <alan at cymru.net> writes:
|> >
|> > |> The classic bad packet error is a frame that ends up with
|> > |>
|> > |> checksum =FFFF end around carry left =1
|> >
|> > There can never be a carry if the sum is FFFF. A sum of two 16 bit values
|> > is never be bigger than 1FFFE.
|>
|> (2 previous + previous carry)
You can only get in this situation if you start off with a carry in the
first place, and all other values are FFFF. Also remember that an IP
packet is <= 65535 octets, or <= 32768 16 bit words (hexets?). Thus you
can never get more than 32767 carries, which you can collect in a single
16 bit word, which is one of the values in the final folding round.
Andreas.
[[ This message was sent via the linuxppc-dev mailing list. Replies are ]]
[[ not forced back to the list, so be sure to Cc linuxppc-dev if your ]]
[[ reply is of general interest. To unsubscribe from linuxppc-dev, send ]]
[[ the message 'unsubscribe' to linuxppc-dev-request at lists.linuxppc.org ]]
More information about the Linuxppc-dev
mailing list