Studium, Ausbildung und Beruf

web uni-protokolle.de
 powered by
NachrichtenLexikonProtokolleBücherForenDienstag, 21. Mai 2013 

Network File System


Dieser Artikel von Wikipedia ist u.U. veraltet. Die neue Version gibt es hier.

NFS im OSI-Schichtenmodell
Anwendung NFS
Darstellung XDR
Sitzung (Sun-) RPC
Transport UDP TCP
Netzwerk IP
Netzzugang Ethernet Token
Ring
FDDI ...

Das Network File System - abgekürzt NFS - ist ein von Sun Microsystems entwickeltes Protokoll das den Zugriff auf Dateien über ein Netzwerk ermöglicht. Dabei werden die Dateien nicht z.B. bei FTP ) übertragen sondern die Benutzer können auf die sich auf einem entfernten Rechner befinden zugreifen als wenn sie auf ihrer lokalen Festplatte abgespeichert wären.

Bei diesem UNIX -Netzwerkprotokoll handelt es sich um einen Internet - Standard ( RFC 1094 RFC 1813 ) der auch als verteiltes Dateisystem (engl. Distributed File System) bezeichnet wird. sind auch auf Microsoft - Windows - Servern verfügbar wodurch UNIX- Workstations Zugang zu deren Dateien erhalten können. Entsprechung zu NFS heißt unter Windows- und OS/2 -Umgebungen Server Message Block ( SMB ). Sowohl NFS als auch SMB regeln um Dateien zu öffnen und zu schließen. regeln sie die Zugriffskontrolle welcher Benutzer Lese- Schreibzugriff auf eine Ressource erhält.

NFS arbeitet auf dem Netzwerk-Transportprotokoll TCP/IP . NFS ist ursprünglich ein zustandsloses UDP -Protokoll. Mittlerweile gibt es aber auch NFS TCP. Derzeit wird NFS Version 4 entwickelt schneller und nicht mehr zustandslos sein soll.

Inhaltsverzeichnis

Design der frühen Versionen des Systems

Ein Programm greift auf das Dateisystem Systemrufe zu. Unter UNIX sind die wichtigsten Systemrufe:

  • open close - Öffnen und Schließen einer Datei
  • read write - Lesen und Schreiben
  • creat unlink - Erzeugen und Löschen
  • mkdir rmdir - Erzeugen und Löschen eines Verzeichnisses
  • readdir - Lesen von Verzeichniseinträgen

Ein Netzwerkdateisytem muss diese Aufrufe in verpacken und an einen Server senden. Dieser antwortet dann mit der Information oder einem Fehler.

Die Entwickler von Sun Microsystems entschieden zunächst für ein Remote Procedure Call -Modell. Das XDR setzt die Parameter in maschinenunabhängiges Format um die Zugriffe werden dann RPC wie ein normaler Unterprogrammaufruf behandelt.

Die Systemaufrufe werden aber nicht direkt RPC-Aufrufe umgesetzt da dann eine über open geöffnete Datei auch auf dem Server werden müsste. Bei vielen Clients wären die dann schnell überlastet da die Maschinen Mitte 1980er Jahre noch relativ wenig Speicher hatten. Aufgaben des Servers wurden daher so einfach möglich gehalten der Server merkt sich keine zwischen zwei RPC-Aufrufen. Er ist also zustandslos.

Statt open wird ein lookup -Aufruf implementiert. Dieser liefert ein Datei-"Handle" das Inodenummer und die Gerätenummer des Massenspeichers auf Server enthält. Über dieses Handle kann eine auf dem Server eindeutig identifiziert werden. Unter steht über diese beiden Nummern die Dateiinformation ohne Suche eindeutig zur Verfügung.

Die weiteren Aufrufe wie read oder write müssen stets ein Offset übergeben so der Server auch hier ohne Kenntnis früherer die gewünsche Information eindeutig liefern kann.

Weitere Eigenschaften des Protokolls sind

  • nur kurze Cachezeiten (wenige Sekunden) für Verzeichnisinformationen und Dateiattribute
  • kein Datencache
  • Verwendung des verbindungslosen User Datagram Protocols UDP
  • Lock- und Mount-Operationen über zusätzliche Hilfsprotokolle
  • Verwendung von Unix-Dateiattributen (zum Beispiel Benutzer- uid )

Trotz des einfachen Designs läuft NFS normalen Umgebungen gut:

  • lokales Netzwerk mit kurzen Antwortzeiten
  • Ausführen von Programmen über das lokale Netzwerk
  • Normale Benutzeraktivitäten (Editieren Programme übersetzen)
  • Server mit relativ wenig Arbeitsspeicher

Weniger gut ist das Verhalten bei

  • gemeinsamer Nutzung von Dateien
  • Verwendung über das Internet (lange Antwortzeiten)
  • Verwendung von Firewalls (UDP kein fester Port Portmapper )

Das Protokoll wurde Ende der 1980er Jahre entwickelt. Auch teure Workstations hatten zu dieser Zeit nur wenige Arbeitsspeicher typisch etwa 4 bis 8 MB. NFS-Server kann auf solchen Maschinen aufgrund des trotzdem effizient betrieben werden.

Wegen des zustandslosen Servers kann dieser Datenverlust heruntergefahren und neu gestartet werden. Programme nicht ab und Benutzer müssen dann einfach bis der Server wieder verfügbar ist.

Plattenlose Workstations

Workstations können über NFS ganz ohne betrieben werden. Das Betriebssystem und die Betriebsparameter über Protokolle wie BOOTP und TFTP geladen werden. Ein spezieller Kernel kann über NFS bereits (Wurzel-Laufwerk unter Unix) zugreifen. plattenlose Workstations ( diskless workstations ) wurden von der Firma Sun in 1990er Jahren angeboten.

Vorteil ist ein verringerter Wartungsaufwand gemeinsame von Plattenplatz sowie einfachere und preiswerte Client-Workstations

PC-NFS

Sun und andere Firmen boten in 1990er Jahren auch NFS-Clientsoftware für PCs unter Windows an das PC-NFS. Der Server musste eine Unix-Workstation sein. Bis Windows für Workgroups der Netzwerkzugriff unter Windows nicht Teil des In Unix-Umgebungen wurde der Einsatz von PCs wesentlich erleichtert.

PC-NFS musste mit den unterschiedlichen Konzepten DOS/Windows-Systems kämpfen. Die damaligen Windows-Versionen erlaubten nur mit bis zu acht Zeichen sowie eine Zeichen lange Erweiterung die durch ein Punkt wurde (z. B. AUTOEXEC.BAT) während Unix 255 langen Pfadnamen erlaubte. Die Dateinamen unterschieden im zu DOS zwischen Groß- und Kleinschreibung. PC-NFS also zwischen den Dateinamenkonzepten übersetzen.

Ein Unix-Dateiname file.txt erschien als FILE.TXT unter Windows/DOS während Dateiname Dokumentation.txt etwa in DOKU~123.TXT umgesetzt wurde.

NFS Version 4

Die NFS Version 4 stellt eine dar die neuere Erfordernisse berücksichtigt. Sie ist RFC 3510 standardisiert.

Die Unix-Lastigkeit der frühen Versionen wird wie möglich verringert. Die Benutzer- und Gruppennummern durch Zeichenketten ersetzt. Da manche Dateisysteme keine Implementierung von eindeutigen Dateihandles ermöglichen werden flüchtige Handles eingeführt die nur eine bestimmte zur Verfügung stehen und dann neu angefragt müssen. Unter Unix kann man Handles sehr aus der Geräte- und Inodenummer konstruieren. Auch die nicht zwischen Groß- und Kleinschreibung unterscheiden benutzerdefinierte Dateiattribute werden jetzt unterstützt.

Das Mount- und Lockprotokoll sind jetzt des Protokolls selbst Hilfsprotokolle werden nicht mehr Das Protokoll selbst läuft auf dem festen 2049 UDP wird nicht mehr unterstützt. Zwar auch schon frühere Versiuonenauf diesem Port die wurden vom RPC-Portmapper aber dynamisch zugeteilt. Die von Firewalls beim NFS-Verbindungen wird durch diese Massnahmen möglich.

Mehrere Anfragen können gebündelt werden ( combined request ) sie werden dann vom Server ausgeführt eine Antwort muss zurückgesendet werden. Das Protokoll damit effizient auch im Wide Area Bereich WAN ) eingesetzt werden zum Beispiel zwischen verschiedenen einer Organisation.

Verschlüsselung ist jetzt Teil der Spezifikation. war früher schon über Secure-RPC eine verschlüsselung Dies wurde nur selten genutzt unter anderem Secure-RPC nicht grundsätzlich zur Verfügung stand.

Der lookup -Aufruf wird durch open ersetzt die Speicherung von Dateiinformatinen wird möglich. Beispielsweise könnte die Schreib-/Leseposition auf dem verwaltet werden. Auch die gemeinsame Nutzung von wird besser unterstützt. Falls viele Clients eine nur lesen kann diese an Clients verliehen leases ) werden. Auch wenn ein Client eine schreibt kann diese verliehen werden. .




Bücher zum Thema Network File System

Dieser Artikel von Wikipedia unterliegt der GNU FDL.

ImpressumLesezeichen setzenSeite versendenSeite drucken

HTML-Code zum Verweis auf diese Seite:
<a href="http://www.uni-protokolle.de/Lexikon/Network_File_System.html">Network File System </a>