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 / LARTC@mailman.ds9a.nl >> http://mailman.ds9a.nl/mailman/listinfo/lartc HOWTO: http://lartc.org/ >> >> > > > _______________________________________________ > LARTC mailing list / LARTC@mailman.ds9a.nl > http://mailman.ds9a.nl/mailman/listinfo/lartc HOWTO: http://lartc.org/