lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Date:	Fri, 2 Jan 2009 22:02:50 +0000
From:	Russell King <rmk@....linux.org.uk>
To:	David Miller <davem@...emloft.net>
Cc:	ilpo.jarvinen@...sinki.fi, netdev@...r.kernel.org,
	bhutchings@...arflare.com
Subject: Re: 2.6.27.8 (+the idr fix) TCP Ack issue

On Fri, Jan 02, 2009 at 01:34:35PM -0800, David Miller wrote:
> From: Russell King <rmk@....linux.org.uk>
> Date: Fri, 2 Jan 2009 14:26:09 +0000
> 
> > Remote end sequence number is still at 1190.
> > 
> > 19:47:32.285397 IP (tos 0x0, ttl  64, id 30055, offset 0, flags [DF], proto: TCP (6), length: 40) dyn-67.arm.linux.org.uk.38803 > 193.108.74.209.http: ., cksum 0x41e5 (correct), 3216:3216(0) ack 2215 win 10701
> > 19:47:32.320287 IP (tos 0x0, ttl 238, id 10, offset 0, flags [none], proto: TCP (6), length: 40) 193.108.74.209.http > dyn-67.arm.linux.org.uk.38803: ., cksum 0x45e6 (correct), 1190:1190(0) ack 3216 win 10701
> > 19:47:32.320300 IP (tos 0x0, ttl  64, id 30056, offset 0, flags [DF], proto: TCP (6), length: 40) dyn-67.arm.linux.org.uk.38803 > 193.108.74.209.http: ., cksum 0x41e5 (correct), 3216:3216(0) ack 2215 win 10701
> > 19:47:32.353016 IP (tos 0x0, ttl 238, id 12, offset 0, flags [none], proto: TCP (6), length: 40) 193.108.74.209.http > dyn-67.arm.linux.org.uk.38803: ., cksum 0x45e6 (correct), 1190:1190(0) ack 3216 win 10701
> > ...
> > 
> > So it looks to me like the remote end doesn't like our ack of 2215 for
> > some reason.
> 
> Let's make sure the checksum is OK.  That's a reason the ACK might
> get dropped at the remote end.

I doubt the remote end will co-operate by tcpdumping my session as
received at their end, the best I can do is a dump from my firewall
(which is doing masq, public facing NIC is a 3c589 PCMCIA card.)

But, locally:

8139too Fast Ethernet driver 0.9.28
8139too 0000:01:05.0: PCI INT A -> GSI 22 (level, low) -> IRQ 22
eth0: RealTek RTL8139 at 0xf8914c00, 00:13:8f:cb:34:ef, IRQ 22
eth0:  Identified 8139 chip type 'RTL-8101'

# ethtool -k eth0
Offload parameters for eth0:
Cannot get device rx csum settings: Operation not supported
rx-checksumming: off
tx-checksumming: on
scatter-gather: on
tcp segmentation offload: off

Obtaining a tcpdump off my firewall shows that the checksums are correct:

21:48:42.629025 IP (tos 0x0, ttl  48, id 21841, offset 0, flags [DF], proto: TCP (6), length: 432) 193.108.74.209.http > caramon.arm.linux.org.uk.38519: P, cksum 0xb7de (correct), 44198:44590(392) ack 12652 win 26796
21:48:42.630359 IP (tos 0x0, ttl  48, id 21842, offset 0, flags [DF], proto: TCP (6), length: 595) 193.108.74.209.http > caramon.arm.linux.org.uk.38519: P, cksum 0xd18b (correct), 44590:45145(555) ack 12652 win 26796
21:48:42.633342 IP (tos 0x0, ttl  48, id 21843, offset 0, flags [DF], proto: TCP (6), length: 458) 193.108.74.209.http > caramon.arm.linux.org.uk.38519: P, cksum 0x5e49 (correct), 45145:45563(418) ack 13836 win 29348
21:48:42.637288 IP (tos 0x0, ttl  63, id 39663, offset 0, flags [DF], proto: TCP (6), length: 40) caramon.arm.linux.org.uk.38519 > 193.108.74.209.http: ., cksum 0x8d85 (correct), 13836:13836(0) ack 45145 win 62780
21:48:42.639376 IP (tos 0x0, ttl  63, id 39664, offset 0, flags [DF], proto: TCP (6), length: 1316) caramon.arm.linux.org.uk.38519 > 193.108.74.209.http: ., cksum 0x8978 (correct), 13836:15112(1276) ack 45145 win 62780
21:48:42.641154 IP (tos 0x0, ttl  63, id 39665, offset 0, flags [DF], proto: TCP (6), length: 47) caramon.arm.linux.org.uk.38519 > 193.108.74.209.http: P, cksum 0x0987 (correct), 15112:15119(7) ack 45563 win 62780
21:48:42.667103 IP (tos 0x0, ttl  48, id 21844, offset 0, flags [DF], proto: TCP (6), length: 446) 193.108.74.209.http > caramon.arm.linux.org.uk.38519: P, cksum 0x99e7 (correct), 45563:45969(406) ack 13836 win 29348
21:48:42.721132 IP (tos 0x0, ttl  63, id 39666, offset 0, flags [DF], proto: TCP (6), length: 40) caramon.arm.linux.org.uk.38519 > 193.108.74.209.http: ., cksum 0x854a (correct), 15119:15119(0) ack 45969 win 62780
21:48:42.739767 IP (tos 0x0, ttl 239, id 7, offset 0, flags [none], proto: TCP (6), length: 40) 193.108.74.209.http > caramon.arm.linux.org.uk.38519: ., cksum 0x86e0 (correct), 45563:45563(0) ack 15119 win 62780
21:48:42.741603 IP (tos 0x0, ttl  63, id 39667, offset 0, flags [DF], proto: TCP (6), length: 40) caramon.arm.linux.org.uk.38519 > 193.108.74.209.http: ., cksum 0x854a (correct), 15119:15119(0) ack 45969 win 62780
21:48:42.759254 IP (tos 0x0, ttl 239, id 6, offset 0, flags [none], proto: TCP (6), length: 40) 193.108.74.209.http > caramon.arm.linux.org.uk.38519: ., cksum 0x86e0 (correct), 45563:45563(0) ack 15119 win 62780
21:48:42.761080 IP (tos 0x0, ttl  63, id 39668, offset 0, flags [DF], proto: TCP (6), length: 40) caramon.arm.linux.org.uk.38519 > 193.108.74.209.http: ., cksum 0x854a (correct), 15119:15119(0) ack 45969 win 62780
21:48:42.779423 IP (tos 0x0, ttl 239, id 4, offset 0, flags [none], proto: TCP (6), length: 40) 193.108.74.209.http > caramon.arm.linux.org.uk.38519: ., cksum 0x86e0 (correct), 45563:45563(0) ack 15119 win 62780
21:48:42.781247 IP (tos 0x0, ttl  63, id 39669, offset 0, flags [DF], proto: TCP (6), length: 40) caramon.arm.linux.org.uk.38519 > 193.108.74.209.http: ., cksum 0x854a (correct), 15119:15119(0) ack 45969 win 62780

-- 
Russell King
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ