Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 10 Jul 2003 09:02:33 -0700
From:      "Max Clark" <max.clark@media.net>
To:        "Terry Lambert" <tlambert2@mindspring.com>, "Dan Nelson" <dnelson@allantgroup.com>
Cc:        freebsd-hackers@freebsd.org
Subject:   RE: What ever happened with this? "eXperimental bandwidth delayproduct  code"
Message-ID:  <ILENIMHFIPIBHJLCDEHKMEHDCJAA.max.clark@media.net>
In-Reply-To: <3F0D3786.5B2777AC@mindspring.com>

next in thread | previous in thread | raw e-mail | index | archive | help
I can reasonably protect these machines via a VPN or similar strategy so I
am not to worried about making changes that would open up other
undesirables.

I am trying to devise a chart where if the desired bandwidth is (a) then I
set (x/y/z) variables to (b/c/d). So for instance if I want to run at
5Mbit/s what do I adjust vs. if I want to run at 25Mbit/s.

Thanks for all the help,
Max

-----Original Message-----
From: Terry Lambert [mailto:tlambert2@mindspring.com]
Sent: Thursday, July 10, 2003 2:53 AM
To: Dan Nelson
Cc: Max Clark; freebsd-hackers@freebsd.org
Subject: Re: What ever happened with this? "eXperimental bandwidth
delayproduct code"


Dan Nelson wrote:
> In the last episode (Jul 09), Max Clark said:
> > > 6000000/8*.220 = 165Kbytes or 1.32Mbit/s
> >
> > I understand the BDP concept and the calculation to then generate the
> > tcp window sizes. What I don't understand is this...
> >
> > How in the world is a windows 2000 box running commercial software
> > able to push this link to 625KByte/s (5Mbit/s)????
>
> Perhaps it defaults to a larger window size?  You can easily verify
> this with tcpdump or ethereal.

It's a guarantee that they default to a smaller default MSL
than the standard permits.  It's smaller by a factor of 10;
to get the same effect in FreeBSD:

	sysctl net.inet.tcp.msl=3000

I *do not* recommend mucking with this timer in order to
reduce latency; there are a number of nasty session restart
and other attacks you can do using this and taking advantage
of intimate knowledge of the TCP state machine implementation
of state transitions, and it's easier to DOS attack your
machine because it's a 10 times shorter trip to run you up
past your tolerable latency.  I would much more recommend the
approaches referenced by my other posting, and listed in the
recent FreeBSD-performance mailing list discussion.

Note that one of the things Microsoft is specifically required
to do when running certain benchmarks is set their registry
values to push the MSL back to the standards mandated value.

-- Terry



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