DAFS (Direct Access Filesystem) V1.3 (c) Stor IT Back 2026
DAFS, das Direct Access Filesystem, wurde vom DAFS-Collaborative, einem Zusammenschluss von mehr als 85 Firmen, entwickelt. Es wurde im September 2001 mit der Version 1.0 abgeschlossen und zur Betreuung an die SNIA (Storage Networking Industry Association) weitergegeben. Die letzten Änderungen am Quellcode wurden 2004 vorgenommen.
Network Appliance bietete seit April 2002 DAFS für seine
NAS-Server an und unterstützt dabei eine Erweiterung speziell für
Datenbanken. Seit vielen Jahren setzen sie auf NFS mit RDMA Funktionen. Fujitsu Prime Software bot DAFS-Clients für Solaris und Linux
an und nutzte es auch in ihren Linux-Clustern. Aber auch dort wird nur noch NFS genutzt. Für Linux und FreeBSD wurden
weitere Client- und Server-Versionen angeboten. In vielen Hochschulen und
Universitäten wurde DAFS noch länger weiterentwickelt und auch eingesetzt. Aber ...
Die letzten Änderungen am Sourcecode unter Sourgeforge erfolgten in 2003 bzw. 2004.
In der Praxis ist DAFS heute eher ein historisches Protokoll und deutlich seltener als moderne Alternativen.
Viele Umgebungen, die ähnliche Ziele haben (geringe Latenz, wenig CPU-Overhead), setzen heute eher auf NFS über RDMA
oder andere RDMA-fähige Lösungen, weil sie näher an etablierten Standards und breiter unterstützt sind.
DAFS bleibt nur noch relevant als Konzept: Es zeigt sehr klar, welche Vorteile Zero-Copy/RDMA bei Dateizugriffen bringen kann.
DAFS ist ein Direct Access File System ähnlich dem NFS (Network Filesystem) oder CIFS aus der Windows-Welt. Es konnten jedoch die üblichen Nachteile entfernt werden. Die Perfomance, die Verfügbarkeit und Zuverlässigkeit wurden stark verbessert. Damit ist es für lokales Filesharing und als Cluster-Filesystem speziell geeignet. Realisiert wird der gute Datendurchsatz durch einen geringen Overhead im Protokoll und eine "memory-to-memory" Netzwerktopologie unter Umgehung der CPU. Insgesamt stellt DAFS die Operationen für das Management und den Zugriff für das lokale-Filesharing zur Verfügung.
DAT ist eine verbindungsorientierte
peer-to-peer Kommunikation. Sie kann von Anwendungen genutzt werden, ohne den
Umweg über das Betriebssystem. Dabei sind n zu n Verbindungen möglich. Diese
Schicht wird von DAFS genutzt. DAT wiederum nutzt RDMA (Remote Direct Memory
Access), die Möglichkeit direkt auf den Hauptspeicher einer anderen Maschine
zugreifen zu können. Damit kann eine Anwendung, in diesem Falle DAFS, direkt auf
den Speicher des Fileservers zugreifen. Dies muss jedoch von der Netwerkkarte
beider Rechner unterstützt werden.
Der logische Aufbau einer Verbindung zeigt
die folgenden Skizze:

Deutlich wird der direkte Zugriff der Netzwerkkarten auf den Hauptspeicher des Rechners in der Skizze des physikalischen Aufbaus. Die Daten fließen direkt vom Speicher des Servers über die Netzwerkkarten zum Speicher des Clients:

DAFS wurde speziell auf ein lokales Filesharing optimiert. NFS und CIFS zum Beispiel müssen große Latenzzeiten und Unzuverlässigkeiten im WAN und anderen Netzen ausgleichen. Trotzdem ist DAFS sehr an NFS der Version 4 angelegt und bietet ähnliche "File Management Operations". Anders als die anderen Filesharing-Protokolle ist DAFS von der Entwicklung her unabhängig vom Betriebssystem. Es bietete schon sehr früh Support für Unix und Windows. Es unterstützt das "Locking" von Dateien inklusive dem "lock caching". Weiterhin wurde DAFS sowohl gegen den Ausfall von Clients, wie auch den Fileservern abgesichert. In jedem Fall sollen andere Clients oder Operationen nicht gestört werden. Dies ist auch eine wichtige Vorraussetzung für den reibungslosen Clusterbetrieb. DAFS ist für "trusted Umgebungen" entwickelt worden und bietet hierfür die Security.




