Letzte Änderung: 17.9.98 von B. Tritsch
Das CIFS stellt seine Daten Benutzern zur Verfügung, nicht Computern, wie dies bei anderen Dateisystemen der Fall ist. Die Authentifikation des Benutzers wird dabei auf dem Server durchgeführt und nicht auf dem Client. Hierbei können auch spezielle netzwerkweite Authentifizierungs-Server wie z.B. Domäne-Controller oder Kerberos-Server eingesetzt werden. Der Zugriff auf die einzelnen Dateien wird dann durch Access Control Lists kontrolliert.
Ein CIFS-Server erlaubt einem Client den Zugriff über das Netzwerk auf seine lokalen Ressource, d.h. auf seine Netzwerkdateidienste. Diese sogenannten Shares auf dem Server können von einem entfernten Benutzer an ihr lokales System angebunden werden. Hierbei werden keine Benutzer-IDs über das Netzwerk geschickt, sondern komplexe Anbindungssequenzen verwendet, die nur schwer angreifbar sind. Dies resultiert in einer hohen Granularität und einer erhöhten Sicherheit im Bezug auf den Benutzerzugriff. Weiterhin kann das CIFS sehr effektiv mit der Behandlung von gleichzeitigen Benutzerzugriffen auf Dateien umgehen. Dies wird insbesondere bei der relativen Unempfindlichkeit eines NT-Systems bei dem konkurrierenden Zugriff auf Systemdateien sichtbar.
Jeder Server stellt dem Netzwerk eine eigenständige Dateistruktur zur Verfügung. In Bezug auf Speicher oder Dienste besteht keine Abhängigkeit zu anderen Servern. Eine Datei muß auf einem einzelnen Server vollkommen eigenständig vorhanden sein. Das Kernprotokoll für die Freigabe von Dateien erfordert die Server-Echtheitsbestätigung von Benutzern, bevor Dateizugriffe erlaubt werden. Jeder Server-Prozessor bestätigt die Echtheit der eigenen Benutzer. Ein Benutzer muß sich immer an den Server anmelden, auf den er zugreifen möchte. Dieses Modell der Echtheitsbestätigung setzt voraus, daß autonome Systeme über das LAN miteinander verbunden sind, die einen Teil ihrer lokalen Dateien Benutzern im Netzwerk zur Verfügung stellen
Durch die Kopplung des Dateizugriffs an einen Benutzer reagiert das CIFS-Konzept jedoch recht empfindlich bei einem plötzlichen Verbindungsabbruch durch den Server. Dies fällt insbesondere beim Neustart eines Servers ins Gewicht, bei dem er die Informationen über Benutzer- und Gruppen-IDs von aktuell zugreifenden Benutzern verliert. Applikationen reagieren auf einen solchen Zustand zum Teil wie auf eine plötzlich ausgefallene lokale Festplatte. Oftmals genügt jedoch auch die erneute Authentifizierung des Benutzers für eine Weiterarbeit.
Die Spezifikation der NFS-Protokolle wurde von Sun veröffentlicht, eine Referenzimplementation für UNIX ist allen interessierten Parteien für einen günstigen Preis zugänglich. Die meisten Hersteller von UNIX- und PC-Systemen haben haben diese Referenzimplementation oder eine Variante davon auf ihre Rechner portiert und führen dafür Lizenzgebühren an Sun ab. Damit wurde NFS (zumindest für die UNIX-Welt) zum de-facto Standard für den verteilten Dateizugriff.
Die Nutzung im Internet-Umfeld ist evident: NFS erlaubt die Kopplung von Rechnern an einem Standort und damit die Verbindung ihrer Dateisysteme. Dadurch lassen sich vorher getrennte Rechner, die verschiedene Internet-Dienste zur Verfügung stellen, als eine logische Einheit betrachten.
NFS erlaubt Programmen, auf Dateien in NFS-Server-Rechnern schreibend und lesend zuzugreifen. Der Zugriff geschieht für diese Programme transparent: sie müssen für den Betrieb mit NFS weder abgeändert, noch speziell vorbereitet oder mit zusätzlichen Parametern aufgerufen werden. Die Dateien im NFS-Server werden zugänglich gemacht, indem sie zunächst exportiert werden. Die NFS-Clients greifen auf diese exportierten Dateisysteme oder Ausschnitte aus Dateisystemen zu, indem sie sie in das eigenen Dateisystem einhängen. Dies wird im Netzwerkjargon "mounten" genannt. Die Bereitstellung der Zugriffsmöglichkeit erfolgt also nicht auf Veranlassung des zugreifenden Programms, sondern muß bereits vor dem Zeitpunkt des Zugriffs für lokale Systeme geschehen sein. Hierbei wird die Zugriffsmöglichkeit einem Client-Rechner gewährt und nicht einem Benutzer.
Ein Teilaspekt der Transparenz ist die Geschwindigkeit des Dateizugriffs über das Netz. Diese muß so hoch sein, daß kein merklicher Unterschied zu einem lokalen Plattenzugriff bemerkbar ist.
Der Zugriffsmechanismus von NFS ist zustandslos. Dies bedeutet, daß keine permanente Verbindung zwischen Client und Server besteht und daher ein Client recht problemlos mit dem zwischenzeitlichen "Reboot" eines Servers umgehen kann. Diese recht effektive Fehlerbehandlung von NFS geht zu Lasten von Ausschließungsmechanismen beim gleichzeitigen Zugriff mehrerer Benutzer auf die selbe Datei. Hier zeigt sich NFS als sehr empfindlich, d.h. Dateien können bei einem konkurrierenden Zugriff leicht korrumpiert werden.
Ist der NFS-Server ein UNIX-Rechner, so muß für die Authorisierung einer Datenübertragung zum PC auf einer UNIX-Plattform im Intranet ein Pcnfs-Daemon (pcnfsd) gestartet sein. Zudem sollte der Lock-Daemon (lockd) auf der Zielmaschine laufen, der für minimale Sicherheitsmechanismen bei einem konkurrierenden Dateizugriff durch mehrere Benutzer sorgen soll.
Für den Zugriff auf NFS-Ressourcen stehen für Windows NT eine Reihe von NFS-Clients zur Verfügung. Sie sind jedoch nicht direkt von Microsoft, sondern ausschließlich über "Third Party Herstellern" erhältlich. Dies sind z.B. Sun PC-NFS, Chameleon NFS oder NCD NFS. Problematisch für viele NT-Anwendungen, die über NFS auf Daten zugreifen, ist der mögliche Verlust der Netzwerkverbindung. Die Anwendungen reagieren dann oftmals wie bei einem Zugriffsfehler auf einen lokalen Datenträger mit vollständiger Blockierung.
Die eingebundenen Shares sehen unter DFS aus wie Unterverzeichnisse auf dem zentralen Server. Die importierten Ressourcen können somit wiederum exportiert werden, was ohne DFS nicht möglich ist. Konzeptionell kann auf diese Weise ein einziger Zugang zu allen Shares im Netzwerk bereitgestellt werden. Dadurch lassen sich beispielsweise Backup-Prozeduren deutlich vereinfachen. Weiterhin können auch unterschiedliche, baumartig strukturierte Sichtweisen auf die Shares generiert werden, die unterschiedlichen Zwecken dienen können. In der vorliegenden Version kann pro DFS-Server nur ein einziger DFS-Share exportiert werden. Dies soll sich jedoch in naher Zukunft ändern.
