Patrick McHardy wrote:

devik wrote:

Hi,

anyone knows when TCP checksum is updated ? I have problem
with FTP transfers. I tested with two linux servers both
as ftp client or server. In all cases large (cca 50MB) file
transfers are corrupted inside.
I want to spot the problem, so that my question is:
if packet goes thru 2.4.18 router, does the router TCP
checksum recomputation ? Router has NAT enabled but not for
packets I'm interested in.

Hi devik,
NATted packets have incremtental checksum updates, i think the function
is called something like ip_nat_cheat_check. TTL is decreased in include/net/ip.h,
Sorry just got out of my bed ;) The function is called ip_decrease_ttl but it doesn't alter
tcp checksums. I think for a normal forwarded packet which doesn't hit any mangling
iptables targets tcp checksum is untouched.
bye
patrick


thats also where the checksum is updated. If you are using iptables some targets also
do checksum recalculation, namely ECN is broken in 2.4.20 (wrong checksums).
I'm aware of no place where complete recalculation of checksum is done, i think
everything is done as incremental update these days.
bye
patrick

If yes then if router itself corrupts packet's data the case
will not be caught because it simply computes valid checksum
of corrupted data.
On other side if it simply passes packet thru (because nothing
except TTL is changed and TTL is not part of TCP checksum) then
the checksum should really ensure that nothing is changed
between sender and reciever and if data are invalid then error
would be on sender's or reciever's side.

thanks,
-------------------------------
Martin Devera aka devik
Linux kernel QoS/HTB maintainer
http://luxik.cdi.cz/~devik/

_______________________________________________
LARTC mailing list / [EMAIL PROTECTED]
http://mailman.ds9a.nl/mailman/listinfo/lartc HOWTO: http://lartc.org/


_______________________________________________
LARTC mailing list / [EMAIL PROTECTED]
http://mailman.ds9a.nl/mailman/listinfo/lartc HOWTO: http://lartc.org/


_______________________________________________
LARTC mailing list / [EMAIL PROTECTED]
http://mailman.ds9a.nl/mailman/listinfo/lartc HOWTO: http://lartc.org/

Reply via email to