NFS langsamer als CIFS

  • Hallo,


    Ich wollte demnächst meine Film-Archive von der Dreambox-HDD auf meine QNAP zu verlagern.
    Bei meinen Tests ist mir aufgefallen, dass auf der DM7080 NFS 21% langsamer ist als CIFS.
    Aber normalerweise dürfte das doch gar nicht sein, weil NFS ja eigentlich leichgewichtiger ist.


    Netzwerktechnisch gibt es keine Fehler. Im Managed Switch sehe ich, dass die Dream 1000Mbit macht, dass es keine Übertragengfehler gibt. Mit Flow-Control an/aus habe ich auch schon probiert, aber das hat alles fast überhaupt keinen Einfluss. Etwas Performance hat es noch gebracht die mounts über IPV6 laufen zu lassen.


    Mal abgesehen davon, dass scheinbar das NetzwerkInterface der DM7080 nicht das schnellste ist, bekomme ich mit einem cp auf CommandLine folgendes: (dabei habe ich schon optimierte Werte für rsize und wsize ausgelotet und in Benutzung.)


    cp 4300MB-File --> QNAP-NFS-Share: 85s 50MB/s
    cp 4300MB-File --> QNAP-Samba-Share: 68s = 63MB/s


    Wenn ich hingegen vom Ubuntu-PC was auf die QNAP schiebe, dann bekomme ich dort über 100MB/s, allso kann es schonmal nicht am NFS-Server liegen.


    Hat jemand noch eine Ahnung, ob man da noch was drehen kann, weil prinzipiell würde ich lieber NFS benutzen.


    Schlimmer wird das Ganze noch in der Movieselection, wenn ich einen Film von einem lokalen Bookmark auf ein Remote-Bookmark(QNAP) kopiere, dann erhalte ich für NFS nur noch ~19MB/s und bei CIFS ~22MB/s.



    Hat noch jemand solche Problem mit der NFS-Performance ?



    Gruß
    Ryker

    DM920UHD (seit 09.04.2019): 500GB SSD intern + QNAP extern, DVB-C FBC-Tuner

  • UDP ist bei mir noch langsamer, da dann die rsize und wsize auf 8192 stehen, auch wenn ich was höheres angebe. Das kann evtl der Server nicht.

    DM920UHD (seit 09.04.2019): 500GB SSD intern + QNAP extern, DVB-C FBC-Tuner

  • Diese ganzen Parameter habe ich gar nicht drin und habe trotzdem vollen Speed.
    Die Performance hier ist also analog dessen, was meine Netzwerkkarten/Netzwerk leisten können/kann.


    Sei es vom Win 10 pro Rechner aus, oder von meiner alten Tante , der 7020HD.
    Es ist auch wurscht ob ich von der DB nur kopiere oder verschiebe, oder vom NAS aus.


    Code
    /etc/auto.network
    
    
    # generated by gemini
    Download -fstype=nfs,rw,nolock,soft,timeo=10 192.168.178.50:/Download
    NAS_Filme -fstype=nfs,rw,nolock,soft,timeo=10 192.168.178.50:/Filme

    Die Netzwerkkarte der 7020HD ist nun mal halt nicht die schnellste ihrer Art.

    Einmal editiert, zuletzt von Killersocke ()

  • Killersocke:
    Genau so habe ich es auch. Außer rw,nolock,soft habe ich auch nichts bei den mount-optionen angegeben, weil wenn der selbst aushandelt, dann ist das besser, als wenn ich da noch was rumdrehe.
    Nur so wie du bei deiner DM7020, dass du da ~115MB/s hinbekommst, davon bin ich an meiner DM7080 meilenweit entfernt.


    @Dream-Entwickler: Ist da auf der DM7080 nicht noch irgendwas an den Treibern machbar ? 45-60 MB/s ist einfach zulangsam.
    Das merkt man vor allem, wenn man Filme verschiebt oder Filme auf dem NFS/CIFS-Storage schneidet.



    Gruß
    Ryker

    DM920UHD (seit 09.04.2019): 500GB SSD intern + QNAP extern, DVB-C FBC-Tuner

    • Offizieller Beitrag

    Auch wenn die Antwort nicht hilfreich ist.


    Dies ist kein generelles Problem. Es scheint irgendwo im Zusammenhang mit deinem Netzwerk / deiner Verkabelung / was auch immer zu stehen.


    Es gibt ja genügend andere Nutzer, wo die Geschwindigkeit so ist, wie sie sein sollte.


    Ich habe keine Ahnung wo du da nun ansetzen könntest.


    cu

  • Done



    Zitat

    nur so wie du bei deiner DM7020, dass du da ~115MB/s hinbekommst

    Das ist der Speed von/aus meinem Netzwerkbereich.
    Meine olle 7020HD ist davon natürlich meilenweit weg, weil das die eingebaute Netzwerkkarte nicht leisten kann.


    Grundsätzlich solltest du aber den Rat von @Ghost beherzigen.
    Oft genug sind dort die eigentlichen Problemursachen zu suchen.

  • Dies ist kein generelles Problem. Es scheint irgendwo im Zusammenhang mit deinem Netzwerk / deiner Verkabelung / was auch immer zu stehen.


    Es gibt ja genügend andere Nutzer, wo die Geschwindigkeit so ist, wie sie sein sollte.

    Doch die Antwort ist hilfreich. wenn es kein generelles Problem ist, dann würde ich gern die Werte wissen auf die ich kommen muss. Es muss auf jedenfall irgend was auf der DM7080 sein, weil die CPU so derart in die Höhe geht, dass er deswegen scheinbar nicht mehr schafft.


    Könnte jemand mal bitte auf einer DM7080 im OE2.5 mit einem File größer 4GB den Copy zu NFS ausführen, sodaß ich sehe, wie groß das kopierte File war, wie lange das gedauert hat und wie die MountOptionen waren. Super wäre auch noch mit "top" mal parallel zu schauen, wie hoch dabei die CPU-Last war.
    Also etwa so hier:
    ls -l <filename>
    time cp <filename> <nfs-mount-point>
    mount | grep <nfs-mount-point>


    Danke!


    Gruß
    Ryker

    DM920UHD (seit 09.04.2019): 500GB SSD intern + QNAP extern, DVB-C FBC-Tuner

  • So, ich hab am Wochenende nun alles durchgecheckt und am Cisco-Switch noch etwas optimiert und geprüft und durchgemessen, dass auch wirklich überall sauber 1GBit anliegen


    Netzwerk ist in Ordnung, weil wenn ich das Notebook an das LAN-Kabel anstecke, wo sonst die DM7080 dran hängt, dann bekomme ich da mit 106MB/s Richtung NAS schon gut an die Gigabit-Grenze ran.


    Hab dann aber gesehen, dass der Dream-eigene MountManager nicht so toll ist.
    Erstens nimmt er immer standardmäßig UDP, aber bei UDP können viele NFS-Server nur ein rsize/wsize=8192, was das Ganze beim kopieren von Video-Files natürlich dann ziemlich ausbremst.
    Stelle ich dann TCP ein und keine rsize,wsize sollten eigentlich die Werte automatisch mit dem Server ausgehandelt werden, was aber hier auch nicht funktioniert. Es wird hier auch 8192 benutzt.
    Setze ich dann händisch in der automount.xml dann tcp,rsize=131072,wsize=131072 und aktiviere dieses, dann sieht das schon besser aus.


    Ghost: Aus meiner Sicht wäre hier noch etwas VerbesserungsPotential, was das angeben der MountOptionen bzw. was das automatische Aushandeln der rsize und wsize betrifft.


    Besser funktioniert das, wenn ich die Mounts übers Bluepanel mache.
    Er trägt dann alles schön in die /etc/auto.gemini ein, wo man auch mal easy was händisch ändern kann.
    Damit bekomme ich dann schonmal den Durchsatz auf OS-Ebene in der Dream auf ~59MB/s bei NFS und bei CIFS 67MB/s. An die 100MB/s kommt vermutlich die DM7080 sowieso nicht ran, sonst hätte das hier schon jemand auf meine Frage hin berichtet. Gesetzte OS-Limits habe ich auch keine finden können.


    Aber im Prinzip passt das erstmal so. Hab dann meine 850GB-VideoArchive in reichlich 4h per NFS aufs NAS verschieben können.


    Problem bleibt weiterhin das Ausbremsen durchs EnigmaGUI, wenn man das Verschieben per AdvancedMovieSelection macht, was vermutlich auf eine KopierFunktion im E2 zurückgreift. Da sin sinds dann nur noch 19MB/s



    Gruß
    Ryker

    DM920UHD (seit 09.04.2019): 500GB SSD intern + QNAP extern, DVB-C FBC-Tuner

    2 Mal editiert, zuletzt von Ryker ()

  • Du hast aber schon meine Post #4 gelesen ?
    Da steht nix von udp, tcp etc.
    Und du hast auch versucht den Cisco (was für eigentlich Modell ist das eigentlich)
    mal komplett außen vor zu lassen?
    Ich neige noch immer eher dazu, dass der eigentliche Wurm in deiner Netzwerkumgebung/Kabel zu finden ist.

    Einmal editiert, zuletzt von Killersocke ()

  • Ja, klar - Ich hab ich den SLM2008 testweise gegen einen anderen getauscht - hab ja hier noch 2 tplink's in anderen Bereichen im Einsatz. Ist aber genau das gleiche.


    Killersocke: Wieviel Durchsatz bekommst du denn auf deiner DM7080 bei NFS?
    Mich würden echt mal reale Zahlen dieser Box interessieren und nicht einer DM7020, weil mit einem Notebook bekomme ich auch vollen Netzspeed - bringt mich aber an der Dream keinen mm weiter.
    Übrigens, in Post#4 zeigt deine Config, dass du TCP benutzt mit automatischer Aushandlung der R/W-Sizes und genauso benutze ich das ja auch.


    Ryker

    DM920UHD (seit 09.04.2019): 500GB SSD intern + QNAP extern, DVB-C FBC-Tuner

    3 Mal editiert, zuletzt von Ryker ()

  • du kannst die automounts.xml genauso direkt editieren wie die systemd mounts in der fstab.

  • Ja, das direkt editieren der automount.xml geht auch, nur er nimmt nicht alles so wie man ihm das mitgibt. z.b. eingestellte Werte für rsize und wsize werden nur für die wsize übernommen, aber nicht für rsize. Deswegen hatte ich ja Ghost gebeten, dass er sich das bei Gelegenheit mal anschaut, da scheint noch irgendwas zu klemmen.
    Und das zweite war, dass dort nur die ipv4 Adresse benutzt werden kann. Besser wäre den Hostnamen fürs mounten zu nehmen, weil dann nimmt er auch automatisch ipv6, wenn das verfügbar ist. Ipv6 ist nochmal ein klein wenig performanter, habe ich gemessen.



    Ryker

    DM920UHD (seit 09.04.2019): 500GB SSD intern + QNAP extern, DVB-C FBC-Tuner

  • Eine DM7080 habe ich nicht, habe hier aber mal meine Werte mit der DM900. Die CPU ist da natürlich einiges leistungsstärker.
    Den Vergleich mit einem CIFS Mount habe ich aber nicht. Es geht mir gegen das Prinzip zwei Linux Systeme per CIFS zu mounten. :grinning_squinting_face:



    Getestet mit einem uralten Shell script das noch aus Dbox Zeiten stammt. (nicht von mir) :winking_face:
    Vor dem ausführen passende Server Daten am Anfang eintragen.

  • Interessant würde ich das auch finden, ist für mich aber unwichtig. Weil die Bandbreite so schon grösser als nötig ist.
    Weil einen internen Datenträger habe ich nicht.
    Weshalb ich zu faul war da was zu machen. :winking_face:


    Und wenn das script realistische Werte liefert, wird da wohl auch mit cifs nicht viel mehr zu machen sein.


    Aber das darf gerne jemand vergleichen, ich werde es lesen. :grinning_squinting_face:

    >> Wir Schweizer haben die Uhren, aber keine Zeit ! <<

  • Hast Du evtl nich eine alte Version?
    Man kann nämlich, seit ich NetworkBrowser Automount erzwingt udp gemeldet habe, wieder im Mount Manager tcp einstellen. Auch wsize und rsize kann man da einfach in den options angeben und diese werden in die fstab übernommen. Ich habe das zwar nicht im lokalen Netzwerk getestet, konnte aber damit eine NFS-Verbindung über das Inet bis an die Bandbreiten-Grenze vernünftig optimieren.

  • maluhi: Ich hab das aktuelle OE2.5 auf der Box und das letzte Update kam gestern wegen dem neuen StreamServer. Aber im Networkbrowser kann man trotzdem diese Options nur in einem FreitextFeld angeben. Aber ist im Prinzip egal. Ich nutze ja nu den Automounter vom gemini.


    @'Swiss-MAD: Danke für die Ausgabe vom Speedtest. Dann ist also mit meiner DM7080 und dem Netz alles in Ordnung, weil das sind die Werte die ich auch so in etwa bekomme. Ich hatte mir ja schon gedacht, dass die Dreamboxen da nicht ganz zu schnell im Netzwerk unterwegs sind, wie z.b. ein PC.
    Aber das passt, bekomme auch so um die 60MB/s (480Mbit/s) beim schreiben auf nfs bei tcp und großer r/w-size. Leider kann der nfs-server der QNAP keine größern r/w-sizes bei udp, dann wärs noch schneller (aber unzuverlässiger). Wobei vielleich mal probieren müsste dort am Server die udp_payload_size höher zu drehen.


    Gruß
    Ryker

    DM920UHD (seit 09.04.2019): 500GB SSD intern + QNAP extern, DVB-C FBC-Tuner

    Einmal editiert, zuletzt von Ryker ()

  • Mir ist nun aufgefallen, warum an meiner Dream CIFS immer schneller ist als NFS ist.
    Das liegt daran, dass über CIFS nun auch asynchrones I/O gemacht werden kann. An der QNAP ist das per default so aktiviert und der cifs-mount auf der Dream macht dann automatisch async-io.


    Mit etwas Port-based QoS, IGMP-Snooping und FlowControl an den Switches bekomme ich nun zwischen Dream <-> QNAP mit NFS 60MB/s (480MBit) und mit CIFS 68MB/s (544MBit)


    Ich denke mal ich werde dann CIFS verwenden. Damit kommt man mit 2/3 schon langsam in die Nähe des Gigabit-Limit von netto etwa 100MB/s, was ja meine Platten auch locker Schaffen würden.


    Ryker

    DM920UHD (seit 09.04.2019): 500GB SSD intern + QNAP extern, DVB-C FBC-Tuner