David B. Rees
1999-May-01 09:08 UTC
Bad smbclient put performance and smbfs write performance
Hi, I've had extremely bad smbclient put performance when connecting from my Linux box to a Windows 95 box. I only get about 10KBytes/s! All other forms of data transfer work fine, and I get from 600-700KBytes/s. This is on a local 10BT LAN. I've seen a few other reports of this, but no solutions as of yet. smbclient does puts just fine to another Linux/Samba Server. I'm using Samba 2.0.3, the Linux machines are running kernel 2.2.7, glibc-2.1, egcs-1.1.2. I've two Win95 machines, both perform equally poorly. I also have very bad smbfs write performance. When doing a simple cp of a file to the smbfs mounted directory results in performance of about 40KBytes/s. Reads from the file system are OK, but interactivity (like doing a 'ls' on the mounted directory) is extremely poor while doing either reads or writes. In this case, it doesn't matter what the OS of the server I'm mounting from is. Mounting a share from Win95 or from another Linux/Samba-2.0.3 machine gets the same results. I mount the share using this command for win95 (I don't have the w95 fixes compiled into the kernel) `smbmount //server/share -c 'mount mntpoint -f 3755'` and the same thing without the '-f 3755' when mounting from another Samba Server. Interestingly, mounting a Samba share from the same machine gets good performance. I've dabbled with win95 registry settings, and smb.conf settings, but the results are exactly the same no matter what I've tried. Any help would be appreciated, -Dave
David B. Rees wrote> Date: Sat, 01 May 1999 02:08:40 -0700 (PDT) > From: "David B. Rees" <dbr@spoke.nols.com> > To: samba@samba.org > Subject: Bad smbclient put performance and smbfs write performance > Message-ID: <XFMail.990501020840.dbr@spoke.nols.com> > > Hi, > > I've had extremely bad smbclient put performance when connecting from my Linux > box to a Windows 95 box. I only get about 10KBytes/s! All other forms of data > transfer work fine, and I get from 600-700KBytes/s. This is on a local 10BT > LAN. I've seen a few other reports of this, but no solutions as of yet. > smbclient does puts just fine to another Linux/Samba Server. I'm using Samba > 2.0.3, the Linux machines are running kernel 2.2.7, glibc-2.1, egcs-1.1.2. > I've two Win95 machines, both perform equally poorly. > > I also have very bad smbfs write performance. When doing a simple cp of a file > to the smbfs mounted directory results in performance of about 40KBytes/s. > Reads from the file system are OK, but interactivity (like doing a 'ls' on the > mounted directory) is extremely poor while doing either reads or writes. In > this case, it doesn't matter what the OS of the server I'm mounting from is. > Mounting a share from Win95 or from another Linux/Samba-2.0.3 machine gets the > same results. I mount the share using this command for win95 (I don't have the > w95 fixes compiled into the kernel) `smbmount //server/share -c 'mount mntpoint > -f 3755'` and the same thing without the '-f 3755' when mounting from another > Samba Server. Interestingly, mounting a Samba share from the same machine gets > good performance. > > I've dabbled with win95 registry settings, and smb.conf settings, but the > results are exactly the same no matter what I've tried. > > Any help would be appreciated, > -DaveHello, It seems that your network is not correctly configurated. If in one direction you have 600-700 Kb/s and in the other direction 10KB/s (or even less) it could be a sign that your full/half duplex network configuration is wrong. Sometimes when you use Autosensing this problem appears. For example your server network card is on autosensing and your switch on 10 HDX. Then you have a problem. Use only autonegotiation, or use only fixed 10 or 100 hdx/fdx on both sides. You have to check ALL the way from the server to client. Make ftp transfer with put and get with one 1MB file and see what will happen. Connect server and client with ONE CROSSED cable (both networks cards should have the same configuration) and see what happen. If everything will be OK, than your server and client are OK and you have to check you network. I had the same problem already many times with different hardware and OS. Bay Networks Autonegotiation didn't understand Cisco autonegotiation and Sun 100MB network card don't understand 3Com autonegotiation. I hope my advice will be usefull for you, all the best Tomek
Bill Eldridge
1999-May-02 04:36 UTC
Bad smbclient put performance and smbfs write performance
> From: "David B. Rees" <dbr@spoke.nols.com> > To: samba@samba.org > Subject: Bad smbclient put performance and smbfs write performance> I've had extremely bad smbclient put performance when connecting from my Linux > box to a Windows 95 box. I only get about 10KBytes/s! All other forms of data> 2.0.3, the Linux machines are running kernel 2.2.7, glibc-2.1, egcs-1.1.2.I believe this is a known issue with the new kernel and smbfs/smbclient. Check the kernel mail archives at www.tux.org for related info. -- Bill Eldridge Radio Free Asia bill@rfa.org
David B. Rees
1999-May-03 06:31 UTC
Bad smbclient put performance and smbfs write performance
> No, I think this is an issue of samba 2.x. > I've already posted about this twice on the list and once to samba-bugs, I've > never had an answer. > > I'm on kernel 2.0.x, if I use smbclient 2.0.x to put to a pc I get a very low > low speed, If I put the same file with smbclient 1.9.x I get high speed. > I did these test with the tar extensions of smbclient: > > ====> A win95 pc, and a linux 2.0.33 with: > 1) smbclient1.9.18 (patched to restore subdirs) > 2) smbclient2.0.3. > > On the win95 pc there's a share, this share contains a dir with: > MB 4 > Files 142 > Subdirs 2 > > Tarring from the pc to the linux box takes: > 1.9.18: 10sec > 2.0.2/2.0.3: 10sec > > Restoring from the linux box to the pc takes: > 1.9.18: 10sec > 2.0.2/2.0.3: 7min 30sec > > The tar made with 2.0.2 is restored in 10sec if I use smbclient1.9.18. > > I used: > smbclient '\\pc\share' -N -Tc filename.tar > smbclient '\\pc\share' -N -Tx filename.tarI just confirmed that it indeed seems to be at the very least a 2.0.3 issue. I downloaded and compiled smbclient-1.9.18p8. smbclient-1.9.18p8 results: smb: \Testing\> put egcs-1.1.2.tar.bz2 putting file egcs-1.1.2.tar.bz2 of size 8935740 bytes as \Testing\egcs-1.1.2.tar.bz2 (859.396 kb/s) (average 855.64 kb/s) smbclient-2.0.3 results: smb: \Testing\> put inetutils-1.3b.tar.bz2 putting file inetutils-1.3b.tar.bz2 as \Testing\inetutils-1.3b.tar.bz2 (9.14902 kb/s) (average 9.14902 kb/s) Yes, smbclient-2.0.3 is 10 times slower! Needless to say, I'll be replacing my current smbclient with the one from the smbclient-1.9.18p8 distribution for now. However, this still doesn't explain the poor smbfs write performance, I'm hoping someone will figure out a workaround for that soon. -Dave
On our AIX machine I was able to improve performance by 4x by messing with socket options. Specifically, I use TCP_NODELAY SO_SNDBUF=32678 SO_RCVBUF=32678 Also I changed the read size to 65536. Hope this helps...> > > I've had extremely bad smbclient put performance when connecting from my Linux > box to a Windows 95 box. I only get about 10KBytes/s! All other forms of data > transfer work fine, and I get from 600-700KBytes/s. This is on a local 10BT > LAN. I've seen a few other reports of this, but no solutions as of yet. > smbclient does puts just fine to another Linux/Samba Server. I'm using Samba > 2.0.3, the Linux machines are running kernel 2.2.7, glibc-2.1, egcs-1.1.2. > I've two Win95 machines, both perform equally poorly. > > I also have very bad smbfs write performance. When doing a simple cp of a file > to the smbfs mounted directory results in performance of about 40KBytes/s. > Reads from the file system are OK, but interactivity (like doing a 'ls' on the > mounted directory) is extremely poor while doing either reads or writes. In > this case, it doesn't matter what the OS of the server I'm mounting from is. > Mounting a share from Win95 or from another Linux/Samba-2.0.3 machine gets the > same results. I mount the share using this command for win95 (I don't have the > w95 fixes compiled into the kernel) `smbmount //server/share -c 'mount mntpoint > -f 3755'` and the same thing without the '-f 3755' when mounting from another > Samba Server. Interestingly, mounting a Samba share from the same machine gets > good performance. > > I've dabbled with win95 registry settings, and smb.conf settings, but the > results are exactly the same no matter what I've tried. > > Any help would be appreciated, > -Dave