Subject: RE: initial window size

From: Vernon Schryver <[email-masked]>
Date: Thu, 29 Mar 2001 18:01:25 -0700 (MST)

> From: "Oleg Vishnepolsky" <[email-masked]>

> The stack has to determine the initial window size, and all it
> has is the address of the other host, and MSS derived from MTU.

On the contrary, "the stack" is just code.  BSD-style code could
follow the if pointers to find the interface speed as easily
as it now finds the interface MTU to generate the MSS option.

> Practically speaking, most stacks use a hard-wired default (32k
> or 8k or whatever). They could a better job taking MSS into account. 

agreed.

> To your other point, MTU definitely  has to do with the speed
> and memory on the adaptor. That's why
> you will see higher MTUs with higher speeds. 

It is true that as the years have passed, media have become faster
as MTU's generally have grown longer.  However, Ethernet is a rather
important counter example.

> As far as 6-8 times the MTU being from mid 80s is not correct either.
> In fact, BSD 4.3 Reno had 2k windows
> for local communications, which is even less than that ratio.
> 6-8 figure is based on my own experiments and measurements done
> in the early 90s.

So in about 1986 I did not change the default TCP window shipped by one of
the major commercial UNIX vendors to 30K?  And in about 1988 I didn't
change it to 60K?  That's interesting, because I didn't think I'd become
so senile that I'd invent such recollections.  (Note that I don't mean
that I changed it from the default that someone at the factory set.  I
mean that according to those false recollections of mine, I was that
someone at the factory.)

Yes, as a reasult of my enthusiasm for better`ttcp` numbers to give to my
employer's sales people (and my own bosses), I also saw some bug reports
of interoperability problems.  Some were related to bugs in other vendors'
systems uncovered by large mismatches in window sizes.

Vernon Schryver    [email-masked]

---

From: arun <[email-masked]>
Date: Fri, 30 Mar 2001 08:43:05 +0530

wow!  that was a nice discussion. I got cleared up with many of my doubts.
But  whatever discussion which went about this is abou the Congestion window
(cwnd). But my basic doubt is the selection of  the send window ( snd.wnd) or
in other terms it is the peer's receive window which is advertised to the
sender . Selecting this receive window might be implementation dependent , but
I like to know what will be criteria and what all parameters affect this
selection. I hope atleast this time Iam clear ..

Thanks
-arun