cvs commit: src/sys/netinet tcp_var.h

Andre Oppermann andre at freebsd.org
Sun Feb 24 14:50:30 UTC 2008


Mike Silbersack wrote:
> silby       2008-02-24 05:13:20 UTC
> 
>   FreeBSD src repository
> 
>   Modified files:
>     sys/netinet          tcp_var.h 
>   Log:
>   Change FreeBSD 7 so that it returns TCP options in
>   the same order that FreeBSD 6 and before did.  Doug
>   White and the other bloodhounds at ISC discovered that
>   while FreeBSD 7's ordering of options was more efficient,
>   it caused some cable modem routers to ignore the
>   SYN-ACKs ordered in this fashion.

Could you be more specific on which models/firmware choke
on this?  I'd like to document all known broken devices and
share the information with other TCP implementors.  Also I
want to try to contact the vendor and have them fix the issue.

-- 
Andre

>   The placement of sackOK after the timestamp option seems
>   to be the critical difference:
>   
>   FreeBSD 6:
>   <mss 1460,nop,wscale 1,nop,nop,timestamp 3512155768 0,sackOK,eol>
>   
>   FreeBSD 7.0:
>   <mss 1460,nop,wscale 3,sackOK,timestamp 1370692577 0>
>   
>   FreeBSD 7.0 + this change:
>   <mss 1460,nop,wscale 3,nop,nop,timestamp 7371813 0,sackOK,eol>



More information about the cvs-src mailing list