Samba Performance

Einrichten des lokalen Netzes, Verbindung zu anderen Computern und Diensten.
Antworten
Benutzeravatar
Dogge
Beiträge: 1899
Registriert: 13.09.2010 11:07:33
Lizenz eigener Beiträge: MIT Lizenz

Samba Performance

Beitrag von Dogge » 06.07.2014 15:23:11

Ich habe auf meinem Backup-Server auch einen Samba-Server laufen, über den ich meine Film- und Musiksammlung im Netzwerk, sowie einen Austauschordner zum Datenaustausch zwischen verschiedenen Rechnern bereitstelle.
Die Performance ist weniger kritisch, da es zum Streamen von Musik und FIlmen ausreicht, aber ich frage mich trotzdem warum die Performance etwas gering ist. Ich hatte mit Samba vorher nichts zu tun und weiß daher nicht, ob die Performance normal oder zu niedring ist.

Server: Debian Wheezy

Code: Alles auswählen

apt-cache policy samba
samba:
  Installiert:           2:4.1.9+dfsg-1~bpo70+1
Config: NoPaste-Eintrag37877

Clients: Debian Testing (Jessie)

Wenn ich Dateien vom Server empfange wird mit ca. 5 - 6 MB/s übertragen, beim Senden mit ~ 2 MB/s. Die interne Festplatte dreht mit 5.400 rpm und beim lokalen kopieren auf die USB-Festplatten ist der Flaschenhals, dass der Server nur USB2 hat und der Durchsatz liegt bei ~ 25 MB/s.

Der Server ist über 100Mbit/s per Ethernet an die Fritzbox angebunden, die Clients per WLAN. Das Netbook von dem ich gerade schreibe ist per WLAN mit 108 Mbit/s angebunden.

Der Flaschenhals sollte also die Netzwerkkarte am Server sein und sollte 12,5 MB/s zulassen.

Umrechnungen zwischen umgangssprachlichen und SI-Einheiten und Protokoll-Overhead sollten meiner Meinung nach beim Senden keine Differenz von ~ 10 MB/s ausmachen.

Ich verbinde mich über PCManFM mit dem Samba-Server, dieser nutzt gvfs.

Code: Alles auswählen

pt list gvfs -a
Listing... Fertig
gvfs/testing,unstable,now 1.20.2-1 amd64 [installed,automatic]
Habe ich irgendwo einen eklatanten Denkfehler und das ganze verhält sich normal, oder habe ich irgendwas ungünstig konfiguriert?

Eine höhere Performance ist jetzt nicht unbedingt notwendig, aber wenn sie mit wenigen Handgriffen zu steigern wäre, würde mich das natürlich nicht stören. ;)
Debian Testing + Gnome | Linux-Anfänger seit 04/2003
http://files.mdosch.de/2014-07/0xE13D657D.asc

nuhll
Beiträge: 17
Registriert: 05.07.2014 23:56:49

Re: Samba Performance

Beitrag von nuhll » 08.07.2014 02:11:09

Ich kenn das Phänomen unter Windows Rechnern welche Teilweise nur 2-3m auseinander stehen, irgendwann gehts dann wieder, nie was verändert, nie raus gefunden woran es lag.

Guck aber mal ob deine Kabel Cat5 sind.

Benutzeravatar
Lord_Carlos
Beiträge: 5578
Registriert: 30.04.2006 17:58:52
Lizenz eigener Beiträge: GNU Free Documentation License
Wohnort: Dänemark

Re: Samba Performance

Beitrag von Lord_Carlos » 08.07.2014 08:01:33

108 Mbit/s wlan, war da nicht was das diese 108 Mbit/s sich up and down teilen muessen? Und wlan steuerbefehle abgezogen werden muessen?
Und dann hast du noch sooo viele stoerquellen ala Babyphone, bluetooth, Microwelle etc.

Ich wuerde es einfach mal testhalber mit Kabel versuchen. Nur um 100% sicher zu sein das es nocht doch das W-lan ist. Dann hast du schonmal viele variablen raus genommen.

Mit Samba habe ich schon GB karten ausgereitzt.

Code: Alles auswählen

╔═╗┬ ┬┌─┐┌┬┐┌─┐┌┬┐╔╦╗
╚═╗└┬┘└─┐ │ ├┤ │││ ║║
╚═╝ ┴ └─┘ ┴ └─┘┴ ┴═╩╝ rockt das Forum!

ChoMar
Beiträge: 1185
Registriert: 26.01.2004 19:51:47
Kontaktdaten:

Re: Samba Performance

Beitrag von ChoMar » 11.07.2014 09:24:19

Hab ich was überlesen?
Der Rechner ist doch mit 100 MBit Ethernet angebunden, warum schreibt hier jeder über WLAN?
Oder hat der Threadstarter seinen text geändert?

Jedenfalls, Samba ist Prozessorhungrig. Billigere Netzwerkkarten ebenfalls (Interrupts).
Wenn noch nen Raid (vor allem Raid 5) dazu kommt wirds noch schlimmer.

Die Socketoptions nen bisschen testhalber verändern (halbe werte bein sndbuf und rcvbuf um ne richtung zu erkennen) hilft manchmal schon.
Nach den Änderungen Samba neu starten.

Ansonsten mal mit top schauen was der Prozessor so macht.

Angaben zur HW wären nciht schlecht.
Linux und Windows laufen bei mir zusammen. Ich zocke halt gerne.

Benutzeravatar
Dogge
Beiträge: 1899
Registriert: 13.09.2010 11:07:33
Lizenz eigener Beiträge: MIT Lizenz

Re: Samba Performance

Beitrag von Dogge » 11.07.2014 09:34:42

Hi,

ich kam noch nicht dazu das zu testen.

Der Server ist über LAN mit der Fritzbox verbunden, die Clients (Notebook, Netbook) per WLAN.

Prozessor des Servers ist ein i3 (kann gerade nicht nachschauen welche Generation), Leistung sollte also genügen. RAID ist nicht vorhanden.

Ich werde hoffentlich demnächst mal dazu kommen daran rumzuspielen.
Debian Testing + Gnome | Linux-Anfänger seit 04/2003
http://files.mdosch.de/2014-07/0xE13D657D.asc

inne
Beiträge: 3299
Registriert: 29.06.2013 17:32:10
Lizenz eigener Beiträge: GNU General Public License
Kontaktdaten:

Re: Samba Performance

Beitrag von inne » 11.07.2014 15:47:13

ChoMar hat geschrieben: Jedenfalls, Samba ist Prozessorhungrig.
Hängt das von der Implementierung ab?

Würde es Sinn machen auf Debiangatling umzusteigen? Das kann neben FTP und HTTP laut Beschreibung auch SMB, aber wohl nur im RO Modus?

Noch habe ich gatling nicht selbst getestet.

Edit: Ich zitiere mal den Programmierer selbst (Vom Jahr 2008).
http://blog.fefe.de/?ts=b9747aa4 hat geschrieben: Interessanterweise verbrät samba gar nicht mal auffallend mehr CPU-Zeit als gatling. Das ist wohl einfach schlechtes Software-Design, was hier den Ausschlag gibt.

Benutzeravatar
Dogge
Beiträge: 1899
Registriert: 13.09.2010 11:07:33
Lizenz eigener Beiträge: MIT Lizenz

Re: Samba Performance

Beitrag von Dogge » 11.07.2014 16:01:09

Gatling habe ich mir mal angeschaut, aber damit irgendwie keine Freigaben hinbekommen. Und ausführliche Dokumentation habe ich nicht gefunden. Samba läuft ja soweit ganz gut, wenn ich es etwas beschleunigen kann wäre mir das recht aber bevor ich was neues einrichte belass ich es bei der aktuellen Performance.
Vielleicht liegt es ja auch wirklich am WLAN, das kann ich jetzt noch nicht beurteilen.
Debian Testing + Gnome | Linux-Anfänger seit 04/2003
http://files.mdosch.de/2014-07/0xE13D657D.asc

inne
Beiträge: 3299
Registriert: 29.06.2013 17:32:10
Lizenz eigener Beiträge: GNU General Public License
Kontaktdaten:

Re: Samba Performance

Beitrag von inne » 11.07.2014 16:40:40

Ich habe ja durch die Hintertür auch eine Frage für mich gestellt ;-)
Dogge hat geschrieben:Vielleicht liegt es ja auch wirklich am WLAN, das kann ich jetzt noch nicht beurteilen
Seit dieser Woche habe ich nebem meinem WLAN auch wieder ein LAN. Denn ich habe nun eine Fritz.Box von meinem ISP bekommen.
An Fritz.Box hängt am LAN-1 Anschluss ein RPi u.a. mit Samba als NAS.
Das mal vorweg.
Dogge hat geschrieben:Ich habe auf meinem Backup-Server auch einen Samba-Server laufen, über den ich meine Film- und Musiksammlung im Netzwerk, sowie einen Austauschordner zum Datenaustausch zwischen verschiedenen Rechnern bereitstelle.
Mein Ziel ist u.a. über den Samba NAS, auch DVD ISO-Images zu öffnen. Was über WLAN nicht flüssig klappt. Evtl. auch weil die Daten mind. 2 machmal auch 3 Audiospuren enthalten.

Kannst du z.B. ein DVD ISO-Image flüssig übers WLAN oder LAN anschauen? Das funtioniert hier via WLAN nicht. Von den Mbps Bandbreiten sollte das aber theoretisch machbar sein. DVD ~10 Mbps plus inkl. Audio. LAN 100, WLAN an der Fritz.Box sogar 300, bei den Gegenstellen weiss ich es (noch) nicht.

Wenn du mit deinem Netz solche Fragen nicht offen hast gut.
Ich will dein Thema ja nicht hijacken ;-)

Benutzeravatar
Dogge
Beiträge: 1899
Registriert: 13.09.2010 11:07:33
Lizenz eigener Beiträge: MIT Lizenz

Re: Samba Performance

Beitrag von Dogge » 11.07.2014 16:51:53

Ich glaube die isos konnte ich ohne Probleme abspielen, aber ich werde das auch noch mal anschauen wenn ich zum testen komme.

Dein Problem könnte sein, dass afaik beim RPi das Ethernet auch auf dem USB hängt. Wenn du jetzt den Film auf einer USB-Festplatte hast und gleichzeitig übers Netz versenden willst könnte sich das in die Quere kommen. Schau es dir doch auf dem Pi mal mit "vnstat -l" an, was du da an Übertragungsrate hast.
Debian Testing + Gnome | Linux-Anfänger seit 04/2003
http://files.mdosch.de/2014-07/0xE13D657D.asc

inne
Beiträge: 3299
Registriert: 29.06.2013 17:32:10
Lizenz eigener Beiträge: GNU General Public License
Kontaktdaten:

Re: Samba Performance

Beitrag von inne » 11.07.2014 16:58:56

Dogge hat geschrieben:Dein Problem könnte sein, dass afaik beim RPi das Ethernet auch auf dem USB hängt.
Kann gut sein, das es dass dann nicht mehr schafft. Der RPi ist für sowas einfach ein Fehlkauf. Neben dem fehlenden RO-Modus für die SD-Karte auch die USB-Bus Engstelle...

So Long
Inne

Benutzeravatar
Dogge
Beiträge: 1899
Registriert: 13.09.2010 11:07:33
Lizenz eigener Beiträge: MIT Lizenz

Re: Samba Performance

Beitrag von Dogge » 14.10.2014 08:24:38

Habe jetzt mal auf dem Laptop (Client) Debiancifs-tools installiert und die Freigabe wie hier beschrieben per

Code: Alles auswählen

mount -t cifs //FILE-SERVER-IP-ADRESSE/public /lokaler/mountpoint -o user=nobody
eingehängt. Jetzt übertrage ich eine gerade eine Datei mit 4 - 8 MiB/s vom Server zum Laptop. Geht also schon deutlich flotter. Entweder verlangsamt gvfs die Geschichte oder über die Abhängigkeiten von cifs-tools kam etwas mit rein, dass die Übertragung beschleunigt. Werde es jetzt noch mal über gvfs probieren.
Debian Testing + Gnome | Linux-Anfänger seit 04/2003
http://files.mdosch.de/2014-07/0xE13D657D.asc

reox
Beiträge: 2564
Registriert: 06.06.2006 22:09:47
Lizenz eigener Beiträge: MIT Lizenz

Re: Samba Performance

Beitrag von reox » 14.10.2014 13:09:58

also samba ist ein ziemlicher performance killer... aber um herauszufinden wo dein flaschenhals wirklich steckt solltest du mal probieren von /dev/zero mittels netcat zu lesen und dabei die geschwindigkeit messen. Dann bekommst du mal einen anhaltswert wie schnell dein Netzwerk wirklich ist.
Über 108Mbit WLAN 4MB/s ist schon ganz gut. Ich schaff über ein 1200Mbit WLAN auch grad mal 35MB/s wenns wirklich gut rennt! Man kann fast rechnen Netto bei W-Lan is ca 1/2 - 1/4 Brutto.

Also am Server einfach mal

Code: Alles auswählen

    dd if=/dev/zero bs=1024K count=512 | nc -v ip port
und am client

Code: Alles auswählen

nc -v -l port | pv
starten

den selben schmäh kannst jetzt von der platte machen, also irgendeine große datei anstatt /dev/zero nehmen. Damit sieht man mal ganz grob was so möglich wäre.

Alles was dann an Bandbreite weg geht, sind Platten IO und der Samba server.

Mittels Debianiotop kannst du dann noch schauen wo welche IO erzeugt wird wenn du dateien vom smb holst.


edit: danke an king-crash, stat cat muss man natürlich dd verwenden sonst wird das nix mit der bandbreite :facepalm:
Zuletzt geändert von reox am 20.10.2014 09:53:26, insgesamt 1-mal geändert.

Benutzeravatar
TBT
Beiträge: 923
Registriert: 18.06.2003 08:39:36
Kontaktdaten:

Re: Samba Performance

Beitrag von TBT » 14.10.2014 13:28:19

Ich kann persönlich über die Samba Performance nicht meckern.

Ich betreibe einen Samba PDC mit Win7 Clients und habe Übertragungsraten
von 80 MB/s in einem Gigabit Netzwerk. Bei einem theoretischen Maximum
von 125 MB/s ist das eigentlich ganz gut.

Eventuell sind doch die Buffer falsch, ich habe meine im Übrigen hochgesetzt,
nicht runter wie viele empfehlen.

reox
Beiträge: 2564
Registriert: 06.06.2006 22:09:47
Lizenz eigener Beiträge: MIT Lizenz

Re: Samba Performance

Beitrag von reox » 19.10.2014 22:00:05

@TBT: meinst du so?

Code: Alles auswählen

socket options = TCP_NODELAY IPTOS_LOWDELAY SO_RCVBUF=65536 SO_SNDBUF=65536
das könnte ich mal probieren und schauen ob es dann wirklich schneller wird.

edit: komme auf ca 45MB/s schreiben und 50MB/s lesen mit den Settings, ist jetzt nicht sonderlich schneller als vorher...

edit2: mit

Code: Alles auswählen

 ​socket options=SO_RCVBUF=131072 SO_SNDBUF=131072 TCP_NODELAY

min receivefile size = 16384
use sendfile = true
aio read size = 16384
aio write size = 16384
von https://wiki.amahi.org/index.php/Make_Samba_Go_Faster komm ich immerhin auf ~60MB/s read und ~54MB/s write bei 30% CPU auslastung (AMD N54L)

Benutzeravatar
TBT
Beiträge: 923
Registriert: 18.06.2003 08:39:36
Kontaktdaten:

Re: Samba Performance

Beitrag von TBT » 20.10.2014 10:39:36

ich habe als PDC folgende Konfig

Code: Alles auswählen

	log file = /var/log/samba/log.%m
	log level = 1
	passwd chat = *Enter\snew\sUNIX\spassword:* %n\n *Retype\snew\sUNIX\spassword:* %n\n *password\supdated\ssuccessfully* .
	socket options = TCP_NODELAY IPTOS_LOWDELAY SO_SNDBUF=65536 SO_RCVBUF=65536
	max xmit = 32768
	obey pam restrictions = yes
	logon drive = H:
	domain master = yes
	encrypt passwords = true
	passwd program = /usr/bin/passwd %u
	passdb backend = tdbsam
	wins support = yes
	dns proxy = no
	server string = %h server (Samba %v)
	logon script = logon.cmd
	unix password sync = yes
	local master = yes
	logon path = \\%N\profiles\%U
	workgroup = Home
	netbios name = VOYAGER
	os level = 65
	syslog = 0
	panic action = /usr/share/samba/panic-action %d
	preferred master = yes
	add machine script = /usr/sbin/useradd -d /dev/null -g sambapc -s /bin/false %u
	max log size = 1000
	domain logons = yes
	unix charset = utf8
	admin users = @sambaadmins

	hosts allow = 192.168.0. localhost
	interfaces = 192.168.0.1/255.255.255.0
        bind interfaces only = yes

	printing = cups
	printcap name = cups

	# fuer win7
		 # NTLM-Authentifizierung
	ntlm auth = yes
		# LanManager-Authentifizierung
	lanman auth = yes
		# NTLM Version 2 - Authentifizierung
	client ntlmv2 auth = yes

	idmap uid = 10000-20000
	idmap gid = 10000-20000
	winbind enum groups = yes
	winbind enum users = yes
	winbind cache time = 10
	winbind separator = +
	winbind use default domain = yes

[homes]
	path = /home/%U
	hide dot files = yes
	browseable = no
	wide links = no
	writeable = yes
	comment = Home Directories
	create mode = 0740
	directory mode = 0750

# win 7
	inherit permissions = yes
	acl check permissions = yes
	acl map full control = yes

[netlogon]
	comment = Network Logon Service
	path = /home/samba/netlogon
	guest ok = no
	read only = yes
	write list = smbadmin
	browseable = no

[profiles]
	path = /home/samba/profiles
	create mask = 0600
	directory mask = 0700
	preexec = echo "U = %U, u = %u, L = %L, m = %M" >> /var/log/log.src
	csc policy = disable

	browsable = no
	writable = yes
	read only = no

	store dos attributes = yes

        inherit permissions = yes
        acl check permissions = yes
        acl map full control = yes

[profiles.V2]
	copy = profiles

[appdata]
	path = /home/samba/AppData
	create mask = 0600
	csc policy = disable
	writeable = yes
	read only = no
        store dos attributes = yes

        inherit permissions = yes
        acl check permissions = yes
        acl map full control = yes


[printers]
	browsable = yes
	printable = yes
	writable = yes
	path = /var/spool/samba
	comment = All Printers
	public = yes
	create mode = 0700
	use client driver = yes
und damit win7 auch mitspielt diese reg-Datei

Code: Alles auswählen

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\LanmanWorkstation\Parameters]
"DomainCompatibilityMode"=dword:00000001
"DNSNameResolutionRequired"=dword:00000000

[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\System]
"SlowLinkDetectEnabled"=dword:00000000
"WaitForNetwork"=dword:00000000
"CompatibleRUPSecurity"=dword:00000001

Antworten