QNAP TS-563: SMB3 - langsam, iSCSI schnell

Traumzauberbaum

Experte
Thread Starter
Mitglied seit
11.07.2015
Beiträge
852
Ort
Berlin
Hallo zusammen,

ich benötige mal ein bisschen Rückenwind...

Ich verfüge über eine QNAP TS-563, bestückt mit 4x WD Red 4TB und 1x WD Red 8TB.
Angebunden mit 10GBit/s SFP+ Cisco DAC an einen TP-Link Jetstream 1700.

Client: Windows 10 x64 Prof. Creators Build, Mellanox ConnectX-2.

Konfiguration:

Switch, Client, QNAP -> Jumbo Frames, 10GBit/s

QNAP: SMB 3.0 aktiviert, RAID5 über alle Platten, AES Verschlüsselung aktiviert
Client: SMB 3.1.1 aktiv (geprüft mit get-SMBConnection)

Szenario:

iSCSI Share eingebunden am Client -> Kopieren u. lesen geht zwischen 300MB/s u. 450MB/s auf iSCSI.

SMB Share -> Kopieren u. lesen schwankt zwischen 45MB/s u. 70MB/s (ohne Jumbo Frames ca. 60MB/s).

Die SMB Geschwindigkeiten sind so natürlich nicht akzeptabel. Also habe ich mal geguckt -> Ressourcenmonitor (o. von mir aus ssh auf die NAS, top | grep smbd) -> 1x smbd Task geht auf 25% (das entspricht 1 Kern, der auf 100% rennt). Auch mehrfache Kopiervorgänge parallel erzeugen nicht mehr Last auf mehreren smbd Tasks, sondern 1 Task bleibt bei 25% overall Last. Prüfe ich mit get-SMBConnection die Anzahl der gleichzeitigen Verbindungen (auch bei einer großen kopierenden Zahl), dann zeigt er definitiv auch mehr als "1 Thread" an - SMB3 scheint also zu funktionieren.

Wo ist mein Fehler?


P.S.: Nachwort ->

a) Ich bin nicht gut mit Linux, gebt mir Stichworte, womit ich googlen kann oder nehmt mich ein bisschen an die Hand ;)
b) Das ist meine erste QNAP. Wenn ich was übersehen habe -> weist mich bitte darauf hin.


P.P.S.:

Ich gehe mal nicht von einer Hardwarelimitierung bei den 60MB/s aus, da die gleiche NAS auf dem gleichen verschlüsselten Volume unter Verwendung von iSCSI (also nicht über den smbd) ordentliche Werte erreicht, die ich so von der Ausstattung erwarte und die auch halbwegs mit dem gleich ziehen, was QNAP auf der Produktseite angibt. Help?
 
Wenn Du diese Anzeige nicht sehen willst, registriere Dich und/oder logge Dich ein.
Samba 3 kann kein Multithreading, es sollte aber eigentlich einen Prozess pro Verbindung spawnen, wenn ich das richtig in Erinnerung habe...

EDIT: das ein prozess pro Verbindung scheint in der Hinsicht der limitierende Faktor zu sein, dass nur eine Verbindung pro Client aufgebaut wird. Greif mal mit 2 clients zu und schau ob du dann 2 Prozesse hast.
 
Zuletzt bearbeitet:
Da des ja auch ADC macht, gehe ich davon aus, dass Samba 4 läuft?

Wenn ich auf einem client 2 kopiervorgänge aufmache, dann halbiert sich je Vorgang die Geschwindigkeit.

Wenn ich mit get-smbconnection checke, seh ich ja auch die Anzahl der Sessions... Und die ist nicht 1. Oder heißt das nicht automatisch, dass der auch auf der nas mehrere Sessions aufmacht?

Gesendet von meinem XT1635-02 mit Tapatalk
 
Zuletzt bearbeitet:
Bist Du sicher, dass der bei iSCSI überhaupt verschlüsselt? Bin da nicht so tief drin, aber ich würde vermuten, dass der die Verschlüsselung ja in Software auf Dateisystem-Ebene macht. Wäre halt jetzt die Frae, ob das bei iSCSI als "blockbasierte" Freigabe überhaupt aktiv ist?

Sorry, keine vertiefte Ahnung, nur geraten. Müsste selbst Google bemühen. ;)
 
Da der iscsi Share im verschlüsselten Volume angelegt wurde.. sollte er doch bitte?

Selbst wenn... Qnap gibt da trotzdem dann deutlich mehr an.

Gesendet von meinem XT1635-02 mit Tapatalk
 
Hab heute morgen nochmals mit 2 clients getestet -> dann benutzt er 2x smbd je 100% auf einem Kern. Addierter Speed - ca. 120mb/s

Sollte er bei Aushandlung der Datenübertragung nicht unter smb3 genau auch das tun?

Gesendet von meinem XT1635-02 mit Tapatalk
 
Kannst du evtl. SMB2 mal probieren?
 
Smb2 mag w10 nicht. 2.1 könnte ich heute Abend Mal checken.



Gesendet von meinem XT1635-02 mit Tapatalk
 
Tüllich. Ich hab nur Win10 Clients und Solaris auf allen Fileservern - Solaris kann nur SMB2.1.

Das einzige, was damit leider nicht geht, ist ein Hyper-V Cluster mit Cluster Storage auf SMB-Shares.
 
2 != 2.1

Ich habe unter 2 keine Verbindung mehr zu den shares. Ich schau mir das aber gerne noch Mal an.

Gesendet von meinem XT1635-02 mit Tapatalk
 
iSCSI ist schon in der Theorie schneller als SMB 3.x.
Nicht nur wegen des Blockzugriffs.
Auch deswegen, weil bei SMB 3.x die Übertragung verschlüsselt stattfindet und bei iSCSI nicht.
Wegen der verschlüsselten Übertragung bei SMB 3.x kann es auch sein, das SMB 2.x (kennt keine verschlüsselte Übertragung) schneller ist.
Insbesondere bei schwächerer Hardware.
Denn die Verschlüsselung/Entschlüsselung kostet ja Rechenkapazität auf beiden Seiten der Verbindung.
Ich würde daher einmal SMB 2.x probieren.

Im Übrigen müsste Windows 10 auch SMB 2.0 unterstützen.
Nur SMB 1.0 wurde wegen Sicherheitsproblemen (WannaCry nutzt z.B. eine Sicherheitlücke im SMB 1.0-Protokoll aus) bei Win 10 deaktiviert und bei zukünftigen Updates wird es irgendwann komplett entfernt.
 
Smb3 Verschlüsselung ist auf allen shares deaktiviert.

Sobald ich heute Abend daheim bin, werde ich mein smb2 Problem debuggen. War sowieso mysteriös... Share wurde als netzlaufwerk angezeigt (verbunden), aber beim Zugriff crashte es. Fehlermeldung hab ich nicht parat gerade... War "etwas" übermüdet ...

Ich melde mich - vielen Dank für die Infos bis jetzt ;)

P.S.:
Das iscsi schneller als smb ist, ist ja auch bekannt... Aber um Faktor 6-10? Das waage ich zu bezweifeln..

Gesendet von meinem XT1635-02 mit Tapatalk
 
So,

kleine Bench Runde mit einem 8GB File gefahren:

SMB3, unverschlüsseltes Volume - 70MB/s, ein Prozess mit 100% Last auf einem Kern.
SMB2.1, encrypted Volume 50MB/s, ein Prozess mit 100% Last auf einem Kern.
SMB2.1, unverschlüsseltes Volume 50MB/s, ein Prozess mit 100% Last auf einem Kern.
SMB2, unverschlüsseltes Volume 46MB/s, ein Prozess mit 100% Last auf einem Kern.
SMB2, encrypted Volume 46MB/s, ein Prozess mit 100% Last auf einem Kern.

Schreiben / Lesen - vollkommen egal.

Wäre also erstmal nachgewiesen, dass bei limitierender CPU Leistung SMB3 der fixeste der Kandidaten ist. Yey...
Frage nun - warum limitiert die CPU? Warum werden nicht mehrere Kerne / mehrere Prozesse aufgemacht?

P.S.:

Wenn ich nen Netzlaufwerk unter SMB3 einbinde, dann den SMB Server auf 2.1 / 2.0 umstelle, dann mag er das Netzlaufwerk nicht mehr. Gehe ich aber über die Freigabe dran, dann ist alles gut. Das war die Erklärung für "er mag SMB2" nicht.
 
Zuletzt bearbeitet:
Der Vollständigkeit halber, habe ich die NAS die Nacht nochmal neu aufgesetzt:

4x WD Red 4TB, unverschlüsselt, kein OS drauf, reiner DataPool.
1x SSD als OS für Apps, etc.

Gleiches Bild - 70MB/s macht die NAS dicht via SMB. 1 Kern juckelt bei 100%, der Rest langweilt sich.
 
Du bist da im CPU-Limit.
Und SMB ist singlethreaded!
Deshalb läufts auch nur auf 1 Kern.
Multichannel ist nicht gleichzusetzen mit Multithread.!
Multichannel heißt, das SMB mehrere physische Netzwerkverbindungen gleichzeitig nutzen kann.

Zitat von samba.org zu Multithread und SMB:
Multi-threading would actually make Samba much slower, less scalable, less portable and much less robust.
 
Jo.
Das habe ich auch gelesen, aber:

Wenn ich Kopiervorgang 1 starte. Dann einen zweiten nachträglich. Warum reiht er den in den Thread ein, statt dann - da explizit unabhängig gestarteter Kopiervorgang - einen weiteren Prozess aufzumachen?
Ist da ein Prozess/IP Lock?
Ich habe mit Samba als smb Server keinerlei Erfahrung und dachte eigentlich, dass er das kann. Ich mein... 70mb/s ist jetzt nicht total übel, aber Hey... Wenn ich iwo nen falschen Parameter habe, will ich das wissen *g


Gesendet von meinem XT1635-02 mit Tapatalk
 
Zuletzt bearbeitet:
Wie bereits gesagt: eine Verbindung pro Client. Ist soweit ich weiß ein Windows Problem.
 
Ok, dann closed.

Schade eigentlich, dass der AMD Single Thread doch so limitiert. :/

Gesendet von meinem XT1635-02 mit Tapatalk
 
Interessant. So war mir auch / so hatte ich das interpretieren.

Es gab da ein LTT Video, was genau das Verhalten zeigte...

Wenn ich zwei clients habe, die das identische Verhalten zeigen, beide w10 cu installiert... Smb 3 mit Powershell geprüft... Wo muss ich da weiter suchen? Mir fehlen da iwie die Stichworte, die mich tiefer in präzisere Google Welten führen...

Gesendet von meinem XT1635-02 mit Tapatalk
 
Mhh schwierig zu sagen...

Aber teste doch erstmal die naheliegenden Sachen!?
Bspw. was passiert, wenn du über zwei LAN Verbindungen versuchst zu kommunizieren!? Das NAS hat ja 2x Ports minimum, oder? Beim Client müsstest du gucken, wie du das bewerkstelligt bekommst. -> das würde mit aktivem SMB3 bedeuten, dass für einen Job zwei Verbindungen geöffnet werden und damit die CPU Load auf dem NAS wohl doppelt so hoch sein müsste... (mit zwei Clients sagtest du ja, es funktioniert...)
RSS wäre sinnvoll/notwendig auf der Netzwerkkarten-Seite, müsstest du mal prüfen, ob das aktiv/unterstützt wird.

Für nen Schnelltest bspw. würde mir ne VM in einem VMware Produkt (VMware Workstation, ESXi, Player usw.) einfallen, Windows mit SMB3 Support als Gast und als vNIC nen vmxnet3 -> der supportet RSS. Wenn es damit geht, wäre wohl der Fehler bei der Client NIC zu suchen. Möglicherweise auch "nur" beim Treiber der NIC.
 
RSS ist zumindest auf dem Desktop mit der 10G Karre aktiv.

Weiter hab ich dann gestern noch nicht geschaut... Nextcloud ohne Warnmeldungen auf der qnap zu haben ist auch nen Unterfangen... -.- aber das gehört hier nicht hin.

Gesendet von meinem XT1635-02 mit Tapatalk
 
Wenn nur eine Verbindung vorhanden ist bringt Smb Multichannel doch garnichts?!
 
Bezieht sich eine Verbindung auf IP o. gestartete Kopiervorgänge?

/E:

Habe noch ein bisschen gestöbert->

https://www.google.de/url?sa=t&source=web&rct=j&url=http://events.linuxfoundation.org/sites/events/files/slides/smb3-in-samba.pr__0.pdf&ved=0ahUKEwjt2dyi_5TWAhVQIlAKHfnkAuwQFggoMAE&usg=AFQjCNGMwFdYF6UrB_ANAKvb-MtK4wY5Mw

Folie 15/44 sagt ja im Prinzip aus, dass auch bei einer bestehenden Session mehrere Verbindungen aufgemacht werden, wenn denn smb3 ordnungsgemäß auf beiden Seiten verwendet wird. Jetzt muss ich noch Mal gucken, welches Samba 4.x im Einsatz ist auf der qnap...

Btw. Folie 19/44 zeigt das so, wie ich mir das auch vorgestellt habe. Und zeigt, dass mein erlebtes Szenario sich nicht so verhält (recap.: 1smbd deamon, der nur läuft)


Gesendet von meinem XT1635-02 mit Tapatalk
 
Zuletzt bearbeitet:
Hi, ich habe im Wesentlichen momentan die gleichen Erfahrungen gemacht. Bisher habe ich auch keine Lösung, verstehe aber nicht warum nicht jeder mit seinem System das gleiche Problem hat, wenn die Ursache bei Samba liegt.
Ich habe ein TS-453A mit 4x 8TB Iron Wolf Platten im RAID5.

iperf mit ~950mbit und dem Commandline qnap Storage Tester: ~250MB/s Read; 170MB/s Write.
NFS ~80MB/s
SMB mit Windows 10 Client max. 65MB/s

Es ist bei meinen Tests bisher auch egal, ob ich eine single NIC oder NIC-Teaming oder einen virtuellen Switch gentutzt habe.

Letzteres irritiert mich etwas, da viele online schreiben, dass sie Transferraten von ~100MB/s mit Windows erreichen. Das würde weder zu meinen bisherigen Erkenntnissen (Samba 1Kern als Limit) passen. Der QNAP Support war bisher auch nicht hilfreich, habe nur Testszenarien für Storage und Netzwerk bisher erhalten.
 
Hm.

Ich hab den thread komplett vergessen. Also... Ich will dich ja nicht enttäuschen, aber mittlerweile habe ich den vollen Speed, den meine Ssd im Client schreiben packt. Ich habe nichts geändert, außer gewartet und regelmäßig die FW Updates installiert.

Frag nicht..

Gesendet von meinem XT1635-02 mit Tapatalk
 
Hardwareluxx setzt keine externen Werbe- und Tracking-Cookies ein. Auf unserer Webseite finden Sie nur noch Cookies nach berechtigtem Interesse (Art. 6 Abs. 1 Satz 1 lit. f DSGVO) oder eigene funktionelle Cookies. Durch die Nutzung unserer Webseite erklären Sie sich damit einverstanden, dass wir diese Cookies setzen. Mehr Informationen und Möglichkeiten zur Einstellung unserer Cookies finden Sie in unserer Datenschutzerklärung.


Zurück
Oben Unten refresh