Gute NFS-Konfiguration für kleine Netzwerke (NFS-Leistungsprobleme)

7

Ich habe ein kleines LAN mit einigen Linux-Boxen (Ubuntu 9.10) mit NFS-Freigaben. Die Boxen sind mit einem Netgear-Router für Endverbraucher (Modell WGR614V9) vernetzt und verwenden Kabelverbindungen.

Als ich die NFS-Freigaben zum ersten Mal einrichtete, bemerkte ich, dass die Leistung ziemlich schrecklich war. Beispielsweise würde es einige Minuten dauern, um Daten im Wert von 40 MBit / s von einer bereitgestellten NFS-Freigabe auf die lokale Festplatte zu kopieren.

Durch das Herumspielen mit der NFS-Konfiguration konnte ich die Dinge einigermaßen gut zum Laufen bringen. Die Konfiguration, die ich für das System festgelegt habe, das die Freigabe exportiert, war:

# /etc/exports On the machine exporting the NFS share:
/exprt/dir client.ip (rw,async,no_root_squash,no_subtree_check)

Für den NFS-Client habe ich

# /etc/fstab
server.ip:/exprt/dir on /imprt/dir type nfs (rw,noatime,rsize=32768,wsize=32768,timeo=14,intr)

Obwohl dies für mich recht gut zu funktionieren scheint, scheint es immer noch schneller zu sein, Dateien scpmit NFS von einem System auf das andere zu kopieren als mit NFS.

Ich dachte, es lohnt sich zu fragen, welche NFS-Konfigurationen andere Leute in ähnlichen Netzwerkeinstellungen verwenden könnten, was zu einer einigermaßen guten Leistung führt. Ich weiß, dass NFS sehr empfindlich auf Dinge wie die Wahl des Betriebssystems und die genaue Netzwerkkonfiguration reagieren kann. Ich vermute jedoch, dass ich andere Benutzer mit kleinen lokalen Netzwerken häufig eingerichtet habe. Daher wäre es hilfreich zu erfahren, welche Konfiguration für sie am besten geeignet ist.

Hinweis: Ich habe diese Frage ursprünglich im Superuser gestellt . Ich habe jedoch keine Antworten erhalten, daher vermute ich, dass dies das falsche Forum für diese Art von Frage war.

dmcer
quelle

Antworten:

3

Es ist ziemlich normal, dass scp schneller ist als NFS. Es gibt viel mehr Overhead und Dinge, die für ein Netzwerk-Dateisystem erledigt werden müssen, als für eine einfache Übertragung von Maschine zu Maschine.

womble
quelle
2
SCP sollte überhaupt nicht schneller sein. SCP verfügt über eine fortlaufende Verschlüsselung, die Ressourcen beansprucht. Bei SCP ist möglicherweise die Komprimierung aktiviert, was bei ausreichender Leistung einen Unterschied machen kann. Hier ist ein Vergleich des Durchsatzes von verschiedenen Technologien: forums.neurostechnology.com/index.php?topic=9263.0
Scott Alan Miller
@ScottAlanMiller Diese Benchmarks gelten für ein bestimmtes OSD für eingebettete Geräte. Wenn Sie das OSD-Gerät nicht verwenden, würde ich nicht darauf vertrauen, dass diese Benchmarks korrekt sind.
Rox0r
2

Mit NFS sollten Sie ungefähr 50% der zugrunde liegenden Festplattenschreibleistung erzielen. Wenn Ihre Festplatte 100 MB / s unterstützt, sollten Sie in der Lage sein, NFS mit 50 MB / s zu schreiben.

Informationen zu den Mount-Optionen: Verwenden Sie TCP. udp kann zu ziemlich schlechten Ergebnissen führen, wenn Ihr Netzwerk stark ausgelastet ist oder ein Netzwerkgerät schuppig ist.

Wazoox
quelle
2
Woher haben Sie diese Zahl von 50%? Benchmark, den Sie gemacht haben? Benchmark, den Sie im Web gelesen haben?
sebthebert
Das ist es, was ich regelmäßig auf allen Systemen bekomme, die ich baue (mehrere Hundert bisher :)
Wazoox
Eigentlich war ich ziemlich pessimistisch; Sie können 90% des Festplattendurchsatzes über NFS erzielen, aber ich teste normalerweise Systeme mit sehr schnellen RAID-Arrays, die ihre Netzwerkschnittstellen leicht überlasten.
Wazoox
1
Können Sie mehr darüber sagen, was mit UDP schief gehen könnte?
Norman Ramsey
UDP gewährleistet keine korrekte Datenübertragung. TCP tut dies mit einigen Kosten (hauptsächlich CPU). Vor einigen Jahren waren die meisten Computer nicht schnell genug, um eine GigE-Schnittstelle mit TCP / IP zu überlasten, aber das ist kein Problem mehr. Wenn Ihr Netzwerk stark ausgelastet ist oder Ihre Netzwerkkarte stark ausgelastet ist, kann der UDP-Verkehr viele Pakete verlieren, wodurch insgesamt eine geringe Leistung erzielt wird. Weitere Informationen finden Sie in der Ausgabe von ifconfig und nfsstats.
Wazoox
0

Normalerweise benutze ich nur SMB und habe gute Verbindungen. Ich möchte Sie auf diese Seite verweisen, nur für den Fall, dass Sie sie nicht durchgesehen haben.

http://nfs.sourceforge.net/nfs-howto/ar01s05.html

Justin S.
quelle
1
NFS ergibt insgesamt einen höheren Thruput; Sehr schnelle CIFS-Clients erreichen 70 MB / s, während schnelles NFS 120 MB / s (volle GigEth-Bandbreite) erreicht.
Wazoox
0

Ich benutze rsize=8192,wsize=8192hier und ich habe keine Beschwerden über die Leistung. Ich habe es jedoch nicht gemessen.

Teddy
quelle