Hello There, After having googled the whole internet for days I decided to go public with this issue. The result of my google queries so far is that there are plenty of others with the very same problem I have and noone posted a reasonable answer to this: Using Samba 3 with XP gets bad performance. I tested this on Tru64 5.1b and FreeBSD 5.3 with the very same symptoms. The throughput bw XP and Samba goes up and down. It starts transfering with a reasonable speed and after having transfered around 16 megs it slows down. I tried many configuration options regarding locking, tcp settings, xmit size and every combination that could make any sense for me. Then I gave up with this configuration mess as I could lower the performnce easily, but the performance jittering was the same. Now a few notes before I continue: I tested the FreeBSD server on the loopback interface and the file write speed was around 43 Megs that is close to the disks maximum. I also tested the XP machine with a Windows server and the write performnce was around 10 Megs on a 100Mbit link. In addition to that the FreeBSD machine is at my home and the Tru64 and the Windows server are where I work. I'm pretty sure that this is not a network issue. After spending a lot of time with investigation I decided to go deeper in this issue. I installed ethereal to capture the traffic and compare the results bw XP-Windows and XP-Tru64. The test was to copy 50Meg file to both servers and capture the packets. To my surprise the conversation was quite different. XP-Windows (excerpt): - nt create and x - trans2: query file info internal - set file info - tcp data stream... XP-Samba (excerpt): - nt create and x - trans2: query file info internal - (query file info + write and x request) many times, incresing offset, one byte length - tcp data stream.... In case of XP-Samba, the last two steps are repeated many times. Large part of the effective bandwith is filled with query file info and 1 byte writes. The packet data can be downloaded from these links: http://dbeck.beckground.hu/download/xp-samba.bz2 http://dbeck.beckground.hu/download/xp-win.bz2 I also made a screenshot of a bandwith monitor to show what I mean by performance jittering: http://dbeck.beckground.hu/download/samba-performance-write.PNG http://dbeck.beckground.hu/download/samba-performance-read.PNG Please note that the original packet log for the 50 Meg file was very large, so I kept only the interesting parts. Last, could anyone there, Samba and SMB wizards help me, how to solve this performance issue? Thank you in advance, David.
On Mon, Aug 08, 2005 at 03:12:55PM +0200, David Beck wrote:> Hello There, > > After having googled the whole internet for days I decided to go public > with this issue. > The result of my google queries so far is that there are plenty of > others with the very same problem I have and noone posted a reasonable > answer to this: > > Using Samba 3 with XP gets bad performance. I tested this on Tru64 5.1b > and FreeBSD 5.3 with the very same symptoms. > The throughput bw XP and Samba goes up and down. It starts transfering > with a reasonable speed and after having transfered around 16 megs it > slows down. > I tried many configuration options regarding locking, tcp settings, xmit > size and every combination that could make any sense for me. > > Then I gave up with this configuration mess as I could lower the > performnce easily, but the performance jittering was the same. > > Now a few notes before I continue: I tested the FreeBSD server on the > loopback interface and the file write speed was around 43 Megs that is > close to the disks maximum. I also tested the XP machine with a Windows > server and the write performnce was around 10 Megs on a 100Mbit link. In > addition to that the FreeBSD machine is at my home and the Tru64 and the > Windows server are where I work. I'm pretty sure that this is not a > network issue. > > After spending a lot of time with investigation I decided to go deeper > in this issue. I installed ethereal to capture the traffic and compare > the results bw XP-Windows and XP-Tru64. The test was to copy 50Meg file > to both servers and capture the packets. To my surprise the conversation > was quite different. > > XP-Windows (excerpt): > - nt create and x > - trans2: query file info internal > - set file info > - tcp data stream... > > XP-Samba (excerpt): > - nt create and x > - trans2: query file info internal > - (query file info + write and x request) many times, incresing offset, > one byte length > - tcp data stream....Can you send me the ethereal capture traces please ? I have a theory... Jeremy.
I can't say that this will apply in your situation, but I've seen where having stale "connections" to non-existent servers can cause a performance issue when browsing. Here's a couple of things to try: 1) Remove any shortcuts to non-existent network locations -- this applies to broken mapped drives, shortcuts on the desktop and in My Documents, and shortcuts in My Network Places 2) Look in the registry at HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\MountPoints2 (or ...\MountPoints) -- Under this key, there will be several subkeys. Some of these are in the form of ##Server##Share -- if there are any of these that refer to nonexistent servers or shares, remove them. DO NOT remove any of the other keys, else your system might not boot properly. This key is seems to be the Windows version of the /etc/fstab file. Nevertheless, I'm glad to see that you found something interesting. Hopefully, your research will help the developers solve some other nagging problems! --Jonathan Johnson David Beck wrote:> Hello There, > > After having googled the whole internet for days I decided to go > public with this issue. > The result of my google queries so far is that there are plenty of > others with the very same problem I have and noone posted a reasonable > answer to this: > > Using Samba 3 with XP gets bad performance. I tested this on Tru64 > 5.1b and FreeBSD 5.3 with the very same symptoms. > The throughput bw XP and Samba goes up and down. It starts transfering > with a reasonable speed and after having transfered around 16 megs it > slows down. > I tried many configuration options regarding locking, tcp settings, > xmit size and every combination that could make any sense for me. > > Then I gave up with this configuration mess as I could lower the > performnce easily, but the performance jittering was the same. > > Now a few notes before I continue: I tested the FreeBSD server on the > loopback interface and the file write speed was around 43 Megs that is > close to the disks maximum. I also tested the XP machine with a > Windows server and the write performnce was around 10 Megs on a > 100Mbit link. In addition to that the FreeBSD machine is at my home > and the Tru64 and the Windows server are where I work. I'm pretty sure > that this is not a network issue. > > After spending a lot of time with investigation I decided to go deeper > in this issue. I installed ethereal to capture the traffic and compare > the results bw XP-Windows and XP-Tru64. The test was to copy 50Meg > file to both servers and capture the packets. To my surprise the > conversation was quite different. > > XP-Windows (excerpt): > - nt create and x > - trans2: query file info internal > - set file info > - tcp data stream... > > XP-Samba (excerpt): > - nt create and x > - trans2: query file info internal > - (query file info + write and x request) many times, incresing > offset, one byte length > - tcp data stream.... > > In case of XP-Samba, the last two steps are repeated many times. > Large part of the effective bandwith is filled with query file info > and 1 byte writes. > > The packet data can be downloaded from these links: > > http://dbeck.beckground.hu/download/xp-samba.bz2 > http://dbeck.beckground.hu/download/xp-win.bz2 > > I also made a screenshot of a bandwith monitor to show what I mean by > performance jittering: > > http://dbeck.beckground.hu/download/samba-performance-write.PNG > http://dbeck.beckground.hu/download/samba-performance-read.PNG > > Please note that the original packet log for the 50 Meg file was very > large, so I kept only the interesting parts. > > Last, could anyone there, Samba and SMB wizards help me, how to solve > this performance issue? > > Thank you in advance, > > David. >
Ooops. I tried with copy from the cmd shell and made a few experiments with that. You are right, it does not show the performance problem. I used Total Commander for copying the files, so I looked into the configuration options and found that it has some "way too smart" options for copying files. It used small buffers to speedup the transfer of small files (default option). If I set compatibility mode for the Samba drive then it works fine. Sorry for wasting your time and thank you for the tests you made. That helped. Best regards, David. PS: TC: Crap software of a crap architecture. Jeremy Allison wrote:>On Thu, Aug 11, 2005 at 11:50:25PM +0200, David Beck wrote: > > >>I copied large files. First I tried a CD image around 600 Megs. Later I >>realized that 50 Megs is good enough for testing this. >>I think anything around 25 Megs would do. >> >> > >Exactly how did you copy them ? I'm using a 200Mb file and don't see it. > >Jeremy. > > >