Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 21 Oct 2004 23:41:47 +0400 (MSD)
From:      Igor Sysoev <is@rambler-co.ru>
To:        Sean Chittenden <sean@chittenden.org>
Cc:        freebsd-arch@freebsd.org
Subject:   Re: Removing T/TCP and replacing it with something simpler
Message-ID:  <20041021233447.L91215@is.park.rambler.ru>
In-Reply-To: <E0C34A72-2396-11D9-9171-000A95C705DC@chittenden.org>
References:  <4177C8AD.6060706@freebsd.org> <71C3A1EA-238F-11D9-9171-000A95C705DC@chittenden.org> <E0C34A72-2396-11D9-9171-000A95C705DC@chittenden.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Thu, 21 Oct 2004, Sean Chittenden wrote:

> >> In 2001, there was a push to make Linux's TCP_CORK option behave the
> >> same as FreeBSD's TCP_NOPUSH.  Is maintaining that compatibility still
> >> a goal, or are we going to kick this change off to the Linux folk to
> >> have them play catchup (to what sounds like a more secure option than
> >> Linux's TCP_CORK)?
> >>
> >> http://seclists.org/linux-kernel/2001/Feb/0993.html
> >
> > I'm not sure if I can follow you here.  TCP_CORK deals with the
> > different
> > behaviour of connections with Nagle vs. TCP_NODELAY.  TCP_CORK allows
> > to
> > avoid the delays of Nagle by corking (sort of blocking) the sending of
> > packets until you are done with write()ing to the socket.  Then the
> > connection is uncorked and all data will be sent in one go even if it
> > doesn't fill an entire packet.  Sort of an fsync() for sockets.  There
> > are no security implications with TCP_CORK as far as I am aware.
>
> Isn't that what NOPUSH does?  Or is it that CORK uses a fully
> established TCP connection, but blocks sending data until the
> connection has been uncorked/flushed?  I thought that TCP_CORK had the
> same security implications that NOPUSH does (ie, the lack of a hand
> shake).

I think that TCP_CORK was implemented only for Linux's sendfile()
to postpone the sending of the HTTP header:

http://freebsd.rambler.ru/linux/kernel_1999/msg13796.html
http://freebsd.rambler.ru/linux/kernel_2001/msg61910.html


Igor Sysoev
http://sysoev.ru/en/



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20041021233447.L91215>