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] [thread-next>] [day] [month] [year] [list]
Message-ID: <20070824071530.GB26447@xi.wantstofly.org>
Date:	Fri, 24 Aug 2007 09:15:30 +0200
From:	Lennert Buytenhek <buytenh@...tstofly.org>
To:	TJ <linux@...orld.net>
Cc:	netdev@...r.kernel.org, kuznet@....inr.ac.ru
Subject: Re: Problem with implementation of TCP_DEFER_ACCEPT?

On Fri, Aug 24, 2007 at 01:08:25AM +0100, TJ wrote:

> An RFC 793 standard TCP handshake requires three packets:
> 
> client SYN > server LISTENING
> client < SYN ACK server SYN_RECEIVED
> client ACK > server ESTABLISHED
> 
> client PSH ACK + data > server
> 
> TCP_DEFER_ACCEPT is designed to increase performance by reducing the
> number of TCP packets exchanged before the client can pass data:
> 
> client SYN > server LISTENING
> client < SYN ACK server SYN_RECEIVED
> 
> client PSH ACK + data > server ESTABLISHED
> 
> At present with TCP_DEFER_ACCEPT the kernel treats the RFC 793 handshake
> as invalid; dropping the ACK from the client without replying so the
> client doesn't know the server has in fact set it's internal ACKed flag.
> 
> If the client doesn't send a packet containing data before the SYN_ACK
> time-outs finally expire the connection will be dropped.

A brought this up a long, long time ago, and I seem to remember
Alexey Kuznetsov explained me at the time that this was intentional.

I can't find the thread in the mailing list archives anymore, though
-- and my memory might be failing me.
-
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