[Samba] Samba ignoring socket options?

Jeremy Allison jra at samba.org
Thu Aug 28 21:02:52 GMT 2008

On Thu, Aug 28, 2008 at 12:53:00PM -0700, Mike Myers wrote:
> Hi everyone.  I am running Samba 3.2.0-22.1 (as packaged by OpenSUSE in
> 11.0) on a storage server connected to multiple windows based clients
> over a gigabit ethernet link.  The server is a quad core Intel CPU and
> is equipped with an Intel e1000 based gigabit ethernet controller and plugged into a common gigabit ethernet switch with the windows clients.
> I am seeing performance issues on transfers over the gigabit ethernet network,
> and was trying to play with the socket options settings in the smb.conf
> file to improve transfers rates, but no matter what I set the SO_RCVBUF
> and SO_SNDBUF values too, the transfer rates are unchanged, even if I
> set the buffer sizes down to 512, which should have the effect of at
> least slowing things down dramatically, leading me to question if Samba
> is actually using these settings at all. TCP_NODELAY is set, but it
> doesn't seem to matter much if I include it or not on the socket
> options line, and the line is definitely not commented out, as if I
> misspell something on that line, samba terminates with an error when I
> try and restart the daemon.  

Samba is definately setting these options.

> Samba is getting roughly 30 MB/s tranfer rates from the linux server to a windows vista and a windows XP client,
> and the disks on both windows machines are RAID0 (4 and 2 disk RAID0
> sets respectively), so I don't think I am running into filesystem
> performance issues on the target.  Moving from the windows systems to Samba, I see about 45 MB/sec transfers rates.
> The
> raid array on the samba server consist of 2 6 disk raid5 sets with fast
> disks on them, running lvm and XFS for a filesysteem.  I can do a dd of
> a multigigabyte file to /dev/null and get roughly 500-600 MB/'s
> transfer rates through the filesystem, so I don't think the raid array
> and file system is a bottleneck.
> I have run netperf tests
> between the server and the clients to see if I had some network
> plumbing problems.  With default socket settings for netperf (8182
> buffer size), I get about 300 mbps transfer rates between the clients
> and the server (which matches approximately the 30 MB/s transfer
> rates).  With 65536 byte buffers, that number goes to 970 or so Mbps,
> so I think the interface cards, TCP stack, switches are all ok.

Can you try using smbclient to do a large file transfer from
another client Linux box and time that please ? That eliminates
the Windows clients from the equation, and allows us to test
only with things we can examine directly.


More information about the samba mailing list