Subject: RE: MTU greater than rcv.wnd

From: Art Shelest <[email-masked]>
Date: Thu, 29 Oct 1998 12:26:31 -0800

Will adjusting MSS or MTU down improve the performance?
With any size MSS, you still can only send up to rwin bytes
before stopping and waiting for an ACK.

After slow-start, you have:
Large MTU: send 8KB in one chunk, then wait for an ACK.
Small MTU: send 8KB in small pieces, then wait for an ACK.

Small MTU will reduce performance somewhat because of overhead.

    _Art.

-----Original Message-----
From: Eric A. Hall [mailto:[email-masked]]
Sent: Thursday, October 29, 1998 12:07 PM
Cc: TCP Implementations
Subject: Re: MTU greater than rcv.wnd

> > Scenario: two PCs with 8k windows on a Token Ring network with 16k
> > frames. What happens? Send a single 8k segment and then wait for
> > ACK?
> 
> if slow_start applies.

I mean beyond slow-start, not that there's any difference in this model.

It seems that if the rcv.wnd is constantly smaller than the MTU, then
the sender will never send more than one segment without having to stop
and wait for an ACK, slow-start or not.

Confirming a suspicion,

Thanks

-- 
Eric A. Hall                                            [email-masked]
+1-650-685-0557                                    http://www.ehsco.com

---

From: "Eric A. Hall" <[email-masked]>
Date: Thu, 29 Oct 1998 12:53:30 -0800

> Small MTU will reduce performance somewhat because of overhead.

Right. Obviously the performance solution to this problem is to increase
thw window size on the client.

> before stopping and waiting for an ACK.

There are other elements here besides performance. In particular, I can
imagine a situation where SWS avoidance causes problems if the rcv.win
and MTU are dramatically different. It would be possible to code
yourself into a corner, although I doubt anybody's made this mistake.

Also, as pointed out from a Sun person, Solaris (as a recipient) will
scale the rcv.wnd size so that it's substantially larger than the MTU,
keeping this from ever happening in the first place. Neat solution.

Just an interesting scenario.

Thanks

---

From: Kacheong Poon <[email-masked]>
Date: Thu, 29 Oct 1998 13:01:43 -0800 (PST)

> Small MTU will reduce performance somewhat because of overhead.

In this particular case, receive window is less than 1*MTU, smaller negotiated
MSS may actually help.  With big MSS, if a segment is lost, the only way to
recover that is a timeout.  But if MSS is smaller, multiple segments can be
sent.  This means that fast retransmit can happen.  Since RTO is usually
bigger than RTT (in BSD's case, it can be much bigger), this definitely helps
in recovery.  But the MSS has to be small enough to allow at least 4 segments
to be sent in a window.  

							K. Poon.
							[email-masked]