Samba / Netzwerk langsam

Einrichten des lokalen Netzes, Verbindung zu anderen Computern und Diensten.
Antworten
xabux
Beiträge: 7
Registriert: 13.06.2013 08:29:32

Samba / Netzwerk langsam

Beitrag von xabux » 13.06.2013 08:57:51

Hallo :-)

ich möchte Samba etwas tunen, da es mir mit ~ 37 MByte/s doch etwas langsam ist ;-)
Ich habe auch einige Tests gefahren, die das Problem etwas eingrenzen (TCP Window Size) jedoch ist für mich nicht ersichtlich ob meine Linux Serverkiste der Übeltäter ist oder der Windows 7 Client.

Folgend habe ich meine Tests zusammengefasst:

Linux Server als Server und Windows 7 Client als Client:
Linux Server (iperf -s) & Windows 7 (iperf -c x.x.x.x) = ~ 300 MBit/s
Linux Server (iperf -s) & Windows 7 (iperf -w65k -c x.x.x.x) = ~ 900 MBit/s

Linux Server als Client und Windows 7 Client als Server:
Linux Server (iperf -c x.x.x.x) & Windows 7 (iperf -s) = ~ 900 MBit/s
Linux Server (iperf -w65k -c x.x.x.x) & Windows 7 (iperf -s) = ~ 900 MBit/s

Linux Server als Samba Server zu Windows 7 Client = ~ 300 MBit/s

Linux Server (Proftpd) zu Windows 7 Client (Filezilla FTP Client) = ~ 900 MBit/s

Benutze noch Debian Lenny jedoch mit aktueller Sernat Samba Version.

Vielleicht hat ja jemand eine Idee wo man ansetzen könnte? :-)

Vielen Dank!

mfg
xabux

Benutzeravatar
sys_op
Beiträge: 672
Registriert: 17.09.2007 19:10:47
Lizenz eigener Beiträge: GNU General Public License

Re: Samba / Netzwerk langsam

Beitrag von sys_op » 13.06.2013 11:14:52

Hallo

Zeig doch mal deine smb.conf.
Bei mir hat in der [global] Section ein

Code: Alles auswählen

socket options = SO_KEEPALIVE IPTOS_LOWDELAY TCP_NODELAY
schon einiges an Performance gebracht.
Der OS-Level sollte auch etwas erhöht werden.

Code: Alles auswählen

os level = 85
http://lug.krems.cc/docu/samba/appb_02.html
gruss sys;-)

xabux
Beiträge: 7
Registriert: 13.06.2013 08:29:32

Re: Samba / Netzwerk langsam

Beitrag von xabux » 13.06.2013 20:00:25

Hallo sys_op,

vielen Dank für deine Antwort!

Folgend meine smb.conf:

Code: Alles auswählen

[global]
   workgroup = home.local
   server string = %h (Server, Samba %v)
   wins support = yes
   dns proxy = no
os level = 254
localmaster = yes
preferred master = yes
strict allocate = yes
   log file = /var/log/samba/log.%m
   max log size = 1000
   syslog = 0
   panic action = /usr/share/samba/panic-action %d
   security = user
   encrypt passwords = true
   passdb backend = tdbsam
   obey pam restrictions = yes
   invalid users = root
   passwd program = /usr/bin/passwd %u
   passwd chat = *Enter\snew\sUNIX\spassword:* %n\n *Retype\snew\sUNIX\spassword:* %n\n *password\supdated\ssuccessfully* .
   domain logons = yes
    socket options = TCP_NODELAY IPTOS_LOWDELAY SO_KEEPALIVE
   domain master = yes
write cache size, SO_RCVBUF und SO_SNDBUF habe ich auch schon probiert, jedoch ohne Veränderung.

Habe es auch mal mit der aktuellen Knoppix Live CD versucht. Da bekomm ich mit iperf (ohne tuning) direkt 900 MBit/s da die default TCP window size bei knoppix höher ist als bei win7.
Bei Samba ist die Geschwindigkeit jedoch die selbe wie mit Windows 7.
Immerhin ein Teilerfolg ;-)

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

Re: Samba / Netzwerk langsam

Beitrag von TBT » 13.06.2013 23:26:23

hier mal meine smb.conf, damit laufen die Win7 Clients auf Samba mit Anschlag Gigabite Netzwerk

Code: Alles auswählen

[global]
        message command = /bin/sh -c '/usr/bin/linpopup "%f" "%m" %s; rm %s' &
        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
        security = user
        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

        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
außerdem habe ich im Windows7 noch folgende reg-Datei eingespielt

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

xabux
Beiträge: 7
Registriert: 13.06.2013 08:29:32

Re: Samba / Netzwerk langsam

Beitrag von xabux » 17.06.2013 14:00:57

Hallo TBT,

Danke für die Anregungen.

Ich konnte deine Tipps gestern Abend ausprobieren. Leider ohne Erfolg.
Habe auch mit anderen Parameter-Kombination experimentiert. Leider auch nichts neues :-(

Ich werde mal versuchen die TCP Windows Size in der Windows Registry zu ändern sowie festzusetzen und hoffen das dies Besserung bringt.

xabux
Beiträge: 7
Registriert: 13.06.2013 08:29:32

Re: Samba / Netzwerk langsam

Beitrag von xabux » 13.10.2015 10:58:25

Hallo allerseits,

ich möchte ungern den alten Thread ausgraben. Aber ich habe neulich durch Zufall die Lösung für das Problem gefunden und möchte natürlich alle daran teilhaben lassen.
Die Festplatten auf der Maschine sind per dm-crypt verschlüsselt und das war auch das Problem.
Bei den theorethischen Tests in dm-crypt hatte ich genug Durchsatz bei der Verschlüsselung, sodass ich das vorweg ausschloss.
Was ich aber nicht bedacht habe war dass dm-crypt trotzdem nur sehr lahm auf die Platte schreiben konnte (habe auf diese Platte Daten nur per smb und nie lokal kopiert...)
Nachdem ich u.a. die read ahead settings der Platte(n) erhöht habe, erreichten diese auch in der Praxis die theoretischen Werte.
Somit ist das (triviale ;-)) Problem gelöst.

Vielen Dank noch einmal an alle die sich den Kopf zermattert haben!

Horscht

Re: Samba / Netzwerk langsam

Beitrag von Horscht » 14.07.2016 20:16:56

Hallo, ich habe genau das selbe Problem. Schon mal gut zu wissen, dass es an der Verschlüsselung liegt.

Wie genau hast du das gelöst? "u.a. die read ahead settings" ist nicht gerade konkret und google konnte mir da auch nicht weiter helfen. ;)

PS: Bei mir sind es sogar nur ca. 12 MB/s trotz Gigabitlan. Ohne Verschlüsselung hatte ich über 60 MB/s.

Cae
Beiträge: 6349
Registriert: 17.07.2011 23:36:39
Wohnort: 2130706433

Re: Samba / Netzwerk langsam

Beitrag von Cae » 16.07.2016 16:03:07

Vermutlich per Debianhdparm. Das Netz geruechtet ausserdem, es gaebe eine hdparm.conf in der man die Werte auch mit der ID der Platte verknuepfen und zur Bootzeit laden lassen kann.

Gruss Cae
If universal surveillance were the answer, lots of us would have moved to the former East Germany. If surveillance cameras were the answer, camera-happy London, with something like 500,000 of them at a cost of $700 million, would be the safest city on the planet.

—Bruce Schneier

Mitch23
Beiträge: 29
Registriert: 09.04.2005 10:31:05

Re: Samba / Netzwerk langsam

Beitrag von Mitch23 » 17.07.2016 21:54:42

In /etc/rc.local

Code: Alles auswählen

blockdev --setra 65536 /dev/sd[a-z]
Ubuntu 16.04 LTS Server
Intel Core i5-4570
1 x 12 TB Software Raid5
1 x 16 TB Software Raid5

Horscht

Re: Samba / Netzwerk langsam

Beitrag von Horscht » 23.07.2016 01:33:23

Danke für die Antworten.

@Mitch23: Ich habe das probiert, einen großen Unterschied habe ich nicht bemerkt, evtl 2-4 MB/s mehr beim kopieren einer 10GB-Datei. Habe das sowohl in die rc.local eingetragen, als auch den Befehl in der Shell eingegeben, um sicher zu gehen. Wie wahrscheinlich ist es, dass die CPU limitiert? Ich habe ein AMD Athlon 5150, 4x 1.60GHz, der hat AES-beschleunigung und soweit ich mich erinnere wurden die Platten mit AES verschlüsselt.

Bisschen ot: Wie kann ich sicher sein, dass Befehle der rc.local ausgeführt wurden? Ist sie standardmäßig aktiv oder muss ich noch was einstellen? Habe die rc.local noch nicht benutzt.

Ich habe zwei verschlüsselte Festplatten und habe deshalb in die rc.local das eingetragen:
blockdev --setra 65536 /dev/sda
blockdev --setra 65536 /dev/sdb

sdb hat allerdings nichts mit Samba zu tun, ich habe sie nur der Vollständigkeit halber eingetragen. Sie ist die Systemplatte. sda wird im System gemountet. Haben die ra-Werte evtl. Nebenwirkungen in anderen Szenarien?

Edit: Ich habe gerade noch bissl getestet. Die 12 MB/s die ich genannt hatte waren eine Schätzung aus meiner Erinnerung. Mit besagter 10-GB-Datei habe ich nach 1 GB Transfer ca. 9 MB/s bei einem readahead von 256. Mit einem readahead von 65538 (sichergestellt mit "hdparm -a /dev/sda") habe ich nach 1 GB Transfer... ca. 9 MB/s. Ich habe das zwei mal gestestet, mit dem Gnome Dateimanager.
Übrigens: Wenn ich den hohen ra-Wert mit hdparm setze ("hdparm -a65536 /dev/sda"), dann sagt er
-a: bad/missing filesystem-read-ahead value (0..2048)
obwohl das setzen mit blockdev geht. Nach einem "blockdev --setra 65536 /dev/sda" gibt "hdparm -a /dev/sda" nämlich
/dev/sda:
readahead = 65536 (on)
aus. Wie auch immer, das setzen von 2048 mit hdparm bringt genauso keinen Unterschied in der Samba-Leistung. Ich habe bei diesen Test nur die sda entsprechend gesetzt, nicht die Systemplatte. Aber wie gesagt sollte die ja nichts mit Samba zu tun haben.

Horscht

Re: Samba / Netzwerk langsam

Beitrag von Horscht » 08.08.2016 20:56:04

Hat keiner noch eine Idee was ich machen könnte?

Edit: OK, WTF. Ich habe letztens zufällig in die Heimnetzeinstellungen der Fritzbox geschaut. Dabei ist mir aufgefallen, dass da bei der Verbindung meines Rechners nur 100 MBit/s stehen, obwohl alle Glieder der Kette 1 GBit/s können. Jetzt habe ich mich gerade an die Fehlersuche gemacht und erstmal das Kabel an der Fritzbox raus- und wieder reingesteckt. Und tada, es steht wieder 1 GBit/s da. Seltsam, kA was da für ein komischer Bug der Fritzboxfirmware am Werk war. :facepalm:

Lange rede kurzer Sinn, jetzt habe ich immerhin knapp 50 MByte/s Übertragungsgeschwindigkeit auf den verschlüsselten Server. 8)

Antworten