Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 29 Nov 2001 08:30:06 -0800
From:      Luigi Rizzo <rizzo@aciri.org>
To:        Jonathan Lemon <jlemon@flugsvamp.com>
Cc:        =?iso-8859-1?B?vEK+SsLX?= <cfliu@realtek.com.tw>, freebsd-net@FreeBSD.ORG
Subject:   Re: Does 4.4 FreeBSD kernel supports TCP simultaneous open?
Message-ID:  <20011129083005.C19821@iguana.aciri.org>
In-Reply-To: <20011129100534.Q75389@prism.flugsvamp.com>
References:  <200111290637.fAT6bd213755@prism.flugsvamp.com> <001701c178a3$e43670e0$a22314ac@RTCN3848> <20011129100534.Q75389@prism.flugsvamp.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Thu, Nov 29, 2001 at 10:05:34AM -0600, Jonathan Lemon wrote:
> On Thu, Nov 29, 2001 at 03:03:04PM +0800, ¼B¾JÂ× wrote:
> > Thanks...I know where my problem is now...It's indeed   a duplicate SYN.
> > 
> > By the way, the tcp_input function is so long and large and there are
> > several goto statements which make reading the code even more difficult. Is
> > this intened to be like this? Even with Steven's TCP/IP Vol.2, it took me
> > three whole days to draw a Visio flow chart of this function. Has anybody
> > ever considered of reorganizing this module?
> 
> I don't believe so; the code was originally designned to avoid function 
> calls, and is essentially a couple of large switch statements.  The flow
> pretty much mirrors the original RFC, and shouldn't be too hard to follow.

let's be honest, it's a horrible piece of code from a sw engineering
point of view.

> I'd be leery of rewriting the code just for the sake of rewriting; chances
> would be pretty good that you'd introduce a subtle bug in one way or the
> other.

on the other hand, chances are that there are already
subtle bugs with all the modifications that have been applied
these years (TTCP, newreno etc.). No later than yesterday there was
a long thread on this issue, and Garret has also some traces which
according to him evidence patologies.

You have been there, Jonathan, so you should known well how hard is
to make even small modifications to the existing code without
being afraid of breaking a lot of things.

I think a rewrite of FreeBSD's TCP would be extremely needed and welcome,
however is such a large effort that i doubt anyone has the time and energy
to dedicate to this task.

	cheers
	luigi
----------------------------------+-----------------------------------------
 Luigi RIZZO, luigi@iet.unipi.it  . ACIRI/ICSI (on leave from Univ. di Pisa)
 http://www.iet.unipi.it/~luigi/  . 1947 Center St, Berkeley CA 94704
 Phone: (510) 666 2927
----------------------------------+-----------------------------------------

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-net" in the body of the message




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