[LARTC] checksum update in TCP

Linux Advanced Routing and Traffic Control

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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,
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/
>  
>




[Index of Archives]     [LARTC Home Page]     [Netfilter]     [Netfilter Development]     [Network Development]     [Bugtraq]     [GCC Help]     [Yosemite News]     [Linux Kernel]     [Fedora Users]
  Powered by Linux