On Mon, 27 Jul 1998, Jeremy Allison wrote:> tl@fairplay.no wrote:
> > Hmm, I missed the original post, but this sounds like it could be the
bug
> > I reported 15 days ago to samba-bugs (PR#8316) and still haven't
got any
> > responses to.
>
> Sorry, I'm still integrating incoming patches.
No harm done, it's just that after 15 days without a reply for what I
suspect may be a rather serious and growing problem(growing Win98
userbase) I was beginning to think that perhaps it should be forwarded to
samba-urgen just in case...
> Well the problem is the small block size used is *client*
> defined - not server. My guess is that the Win98 explorer
> is optimised for Web performance, (ie. doing MSS size
> reads/writes) and as the same binary is used for both SMB
> file browsing and Web browsing the silly block size has been
> used throughout.
The interresting thing is that it doesn't appear to use small block
against WinNT4 servers...
Since I can't get SAMBA level 3 logs from the WinNT server I have to rely
on tcpdump's, and they are a whole lot harder to understand, but it does
look like Win98 is using much larger blocks against WinNT than against
Samba servers!
As an example, a copy of a 259261 bytes file generates:
WinNT4SP3: 1 SMBwrite(REQUEST), 1 SMBwrite(REPLY),
10 SMBwritebraw(REQUEST), 10 SMBwritebraw(REPLY)
Win98: 119 SMBwrite(REQUEST), 28 SMBwrite(REPLY)
Due to other reasons these copies was done by different Win98 boxes, but
that shouldn't do any difference (if necessary I could do it with the same
machine, but not just now).
The Samba server was a custom-compiled 1.9.18p8 on RedHat 5.1, and 'write
raw' / 'read raw' is both in their default setting (enabled
according to
documentation and source).
This isn't actually especially surprising, I would have been a lot more
surprised if Win98 *didn't* use large blocks against WinNT, inferior
performance against WinNT servers compared to Win95 would have been a
major show-stopper... Even Microsoft should have noticed THAT! And if they
had a lot of people would have yelled at them by now...
I didn't actually check it then, it was simply to unlikely in my opinion.
This was why I assumed that it should be possible to get Win98 to use
decent sized blocks against SAMBA, and that it was likely that it was
something in the handshakes that differed.
> Does anyone know if there is a Win98 registry setting to
> set the SMB read/write size ?
How does WinNT get it to use large block sizes??
The tcpdump logfiles are rather large, so they are available on request.
I also made an tcpdump RPM for RH5.1-intel, with the latest
tcpdump/libpcap (3.4 and 0.4, both final!), SMB support and various other
patches. I'm trying to upload it and the SRPM to RedHat's contrib area,
but ftp.redhat.com is a bit busy at the moment...
(Available by email if someone wants it before it's in the regular RH
contrib/hurricane directory).