Thread Rating:
  • 0 Vote(s) - 0 Average
Choppy/stuttering playback over wired LAN from Samba, but not from shared Win folders
I've spent five days on this and I'm stumped. I have XBMC running on an Xbox and connected to my wired 100mb network. If I load a video file from a shared folder on a WinXP PC, the video works perfectly -- it loads almost instantly, plays smoothly, etc. If I try to load the same video from my CentOS server via Samba sharing, it loads slower (some won't load at all, many show dialogs with status and progress messages before they come up) and it becomes choppy and unwatchable within 30-60 seconds. If I don't manually stop the playback, it will abort to the file listing.

Here are the hardware/software specs and the things I've tried so far:

IBM xSeries 206m server, Pentium D 3.0ghz, 3gb ram, 1.5tb Seagate SATA drive
CentOS 5.2
Samba v3.0.33-3.15.el5_4.1 (samba conf at bottom of post)

UnleashX (unsure of version)
XBMC T3CH XBMC 2009-06-01 9.04.1-FIXED-Babylon

Network is Cat5e wired, 100mbp. Standard Xbox nic, Broadcomm 5721 gigabyte nic on Server.

Things I have already done:

1. Checked the physical network. Ran Wireshark on the server while attempting to stream video to the Xbox. Nothing unusual reported. Just to be safe, replaced cables and switches between devices but no change in performance.

2. Ran ntop to verify network load was not an issue.

3. Ran benchmarks on the server Samba share directory and the WinXP share directory from another WinXP computer on the network. Depending on block size, read speeds ranged from 3.2mbs to 8.2mbs, with the IBM server performing about 10% faster than the WinXP box.

4. Tried various versions of XBMC (clean installs to the Apps/XBMC folder). Originally had some pre-2.10 release from 2007, installed latest SVN version from T3CH (4-27-10, I think), and then went with the latest stable release. Version changes had some very minor differences in how long it took the problem to appear, but none resolved the issue or made a noticeable difference.

5. Enabled smb logging on the Xbox. Had a few "invalid computer name" errors that were fixed by setting the Samba server to provide WINS services and specifying the WINS server IP address in the XBMC settings. Also had a couple of DNS unable to resolve hostname of server errors, resolved by setting a hosts entry for the server in advancedsettings.xml.

6. The only smb errors remaining in the Xbox debug log are those that arise when the Xbox tries to look for a file (like a subtitle file for a movie) that does not exist. No connection timeouts or anything like that.

7. On the Samba server side, the only error in nmbd.log is this:

[2010/05/12 14:44:04, 0] nmbd/nmbd_browsesync.c:find_domain_master_name_query_fail(351)
Unable to find the Domain Master Browser name OFFICE<1b> for the workgroup OFFICE.
Unable to sync browse lists in this workgroup.

I've done some Googling but haven't found a solution for that error yet.

Still, video playback is choppy on both the Xbox and other WinXP machines when the media source is on the Samba server. Other file operations on the Samba server appear to be working normally, however. Case in point: just created a 31gb drive image from a laptop to the Samba share over the network last night with no trouble.

I'm pretty sure it has to be something to do with Samba because the same video file can be played from another WinXP share with no problems -- it loads almost immediately, you can skip anywhere with almost no delay, etc. Both machines are on the same network and had almost identical read speeds over the network.

If anyone has any experience with Samba and can point me in the right direction I would really appreciate it. I've pretty much come to a dead end on troubleshooting at the moment.

Samba Conf:

load printers = yes
ldap ssl = no
idmap gid = 10000-20000
server string = PBX
printing = bsd
idmap uid = 10000-20000
# socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192
workgroup = OFFICE
os level = 20
username map = /etc/samba/smbusers
map to guest = Bad User
null passwords = Yes
hosts allow =
security = share
wins support = true
use sendfile = yes

writeable = yes
public = yes
path = /home/media
Well, after spending most of the week beating my head against the wall tearing apart the network and tweaking Samba endlessly, I found the source of the problem...

The brand-new 1.5tb Seagate drive that I had installed to hold the media had serious issues. It would write data just fine, which is why I never noticed a problem with it, but when it came time to read it back, the damn thing averaged a non-cached read rate of 175kbs....or roughly half the speed of my DSL. Shocked Hdparm clocked it at 36kbps at one point...slower than a lot of dialup modems! For comparison, the other drive in the server had non-cached read rates of ~75mbs.

So, moral of the story, never trust a new hard drive.

Choppy/stuttering playback over wired LAN from Samba, but not from shared Win folders00