Date: Thu, 25 Jul 2002 15:14:08 -0500 From: "Jaime Bozza" <jbozza@thinkburst.com> To: "'David Schultz'" <dschultz@uclink.Berkeley.EDU> Cc: <stable@FreeBSD.ORG> Subject: RE: RE: Abominable NFSv3 read performance / FreeBSD server / Solaris client Message-ID: <027a01c23417$d550a700$6401010a@bozza> In-Reply-To: <20020725183646.GA785@HAL9000.homeunix.com>
next in thread | previous in thread | raw e-mail | index | archive | help
That's a really good question. In all my testing, I could never get the Solaris server to work exactly like the FreeBSD server, nor could I get FreeBSD to act like Solaris. It seems that either FreeBSD is being overly aggressive and Solaris (client) isn't handling it, or the Solaris TCP stack just prefers to work with other Solaris systems. The strangest things was that, if I disabled RFC1323, sendspace=24576, recvspace=16384 (duplicating the defaults of Solaris 8), FreeBSD would advertise a small window and suddenly Solaris would request a larger window. Increase the sendspace/recvspace, FreeBSD would advertise a larger window, Solaris would request a smaller window. (At least that's how I'm interpreting lines like this:) 14:59:49.224575 10.1.2.10.2049 > 10.1.2.9.1000: . ack 1641422515 win 56148 (DF) 14:59:49.226192 10.1.2.9.1000 > 10.1.2.10.2049: . ack 14600 win 24820 (DF) Every time I changed settings on either side, I was making sure nfsd was killed (kill -9) and restarted and the share remounted, so it would restart the connection. I've been trying to find information on the net from Solaris groups to get a better understanding of Solaris' TCP stack, but haven't really been able to find anything out that I don't already know. Jaime -----Original Message----- From: David Schultz [mailto:dschultz@uclink.Berkeley.EDU] Sent: Thursday, July 25, 2002 1:37 PM To: Jaime Bozza Cc: 'Matthew Dillon'; stable@FreeBSD.ORG Subject: Re: RE: Abominable NFSv3 read performance / FreeBSD server / Solaris client Thus spake Jaime Bozza <jbozza@thinkburst.com>: > I also installed tcpdump on the Solaris system so I could look at > dumps between Solaris to Solaris and compare. From that, I noticed the > Solaris server advertises a much smaller (around 24k) window no matter > what, even with the client advertising something higher. (I tried > setting xmit_hiwat in the startup scripts and restarting the Solaris > server to assure the setting was changed before the nfs daemons came > online) I may still not be getting the settings correct, but I'm at a > loss at what I'm missing. Now I'm curious. What is it that makes Solaris<->Solaris performance good despite the TCP breakage? If the server always advertises a tiny window, performance ougut to be equally bad when talking to Solaris or FreeBSD. I've seen threads about this problem before on the lists, and I don't recall anyone coming up with a real answer. To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-stable" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?027a01c23417$d550a700$6401010a>