Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 28 Jan 2008 14:41:34 +0100
From:      Andre Oppermann <andre@freebsd.org>
To:        Maxim Konovalov <maxim@macomnet.ru>
Cc:        freebsd-net@freebsd.org
Subject:   Re: cvs commit: src/sys/netinet tcp_syncache.c
Message-ID:  <479DDB8E.1040504@freebsd.org>
In-Reply-To: <20080128140354.Y29850@mp2.macomnet.net>
References:  <200711200656.lAK6u4bc021279@repoman.freebsd.org> <4797B77E.2090605@freebsd.org> <20080124005006.D93697@odysseus.silby.com> <47986F27.10401@freebsd.org> <20080124145713.K15031@mp2.macomnet.net> <47988A2A.5010506@freebsd.org> <20080124164704.X15031@mp2.macomnet.net> <47989E3C.4030700@freebsd.org> <20080124171957.N15031@mp2.macomnet.net> <20080125073623.F15031@mp2.macomnet.net> <479A7B55.6050302@freebsd.org> <20080126132516.I15031@mp2.macomnet.net> <479DA47C.6090905@freebsd.org> <20080128140354.Y29850@mp2.macomnet.net>

next in thread | previous in thread | raw e-mail | index | archive | help
Maxim Konovalov wrote:
> [...]
>> Who's fault is it?  Clearly the adsl modem.  It's tcp is utterly
>> broken. Should FreeBSD work around it?  In this case I don't think
>> so.  Normally yes if it is an edge case in a specification or some
>> generally made mistake. This is not the case with the adsl modem.
>> It's really broken and in complete disregard of even the basic
>> standards.  The vendor should fix it, not us work around it.
>>
> It used to work for years and works now.  I see no point to make
> FreeBSD to not work with countless devices around the world.

In this case the issue was fixed by changing the window scaling
algorithm because many stateful firewalls get this wrong too
(configuration problem by not tracking the initial SYN with the
wscale parameter).

Otherwise I don't agree that we have to bend over backwards to
support a broken device that doesn't even implement the basic
TCP RFCs remotely correct.

I don't say we should brake it for the sake of braking it but
if there are compelling and RFC compliant arguments *for* a change
that breaks these totally non-compliant devices then so be it.
Call your vendor and have them make it TCP RFC compliant.  Here
the simplest fix for their source code would be to just disable
support of window scaling since it doesn't need it anyway.

A compelling argument for a change may be support of higher speed
links with high latency (like 100Mbit/s with 200ms).  This time we
were able to solve this issue in a compatible way (for the Asustek
adsl router).  The next it may not be so lucky.

-- 
Andre



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