Speichernetze/VIA-DAFS

Schnellstraße für ein neues Dateisystem

25.05.2001
In den Unternehmen wachsen die gespeicherten Datenmengen mit astronomischer Geschwindigkeit. Problematisch sind aber nicht die Kapazitäten, sondern die Datenübertragungsgeschwindigkeiten und die Verwaltung der großen Daten- und Dateimengen. Mit der Initiative Direct Access File System (DASF) unter Nutzung der Virtual-Interface-Architecture (VIA) zeichnet sich jedoch eine Lösung zur schnelleren Datei-Übertragung und zur effizienteren Speicherverwaltung ab. Von Hermann Strass*

Unter den Betriebssystemen Windows oder Unix/Linux werden mit den Dateisystemen CIFS oder NFS für jeden Dateitransfer mehrstufige Steuerungshierarchien durchlaufen. Die Daten werden oft auf allen sieben ISO/OSI-Ebenen und mehrmals im Betriebssystem zwischengespeichert. Das gilt beim Datentransfer im primären LAN über Netzwerkkarten (NICs) und auf den Speicherkanälen (SCSI) beziehungsweise den sekundären Speichernetzwerken (FC-SAN) über Host-Bus-Adapter (HBAs).

Eine Anwendung muss für einen Dateizugriff jedesmal einen Auftrag an das Betriebssystem geben. Die dabei zu durchlaufenden Stationen in den Betriebs- und in den Dateisystemen sind sehr unterschiedlich, was Anzahl, Größe (beispielsweise Blöcke, Rahmen oder Segmente) und Organisation der Zwischenspeicher (etwa FIFO, Cache oder Puffer) betrifft. In jeder Stufe werden eigene Steuerdaten davor und Prüfdaten dahinter gesetzt. Diese zusätzliche Datenmenge ist auf der Empfängerseite zu dekodieren und wieder zu entfernen. In einem echten Netz müssen Teile dieser hierarchischen Strukturen an jeder Zwischenstation durchlaufen werden. Die Beherrschung dieser Vielfalt in der Softwarestruktur ist aufwändig, fehleranfällig und vor allem sehr langsam. In einem LAN mit Ethernet als Transportmedium und TCP/IP als Protokoll geht der überwiegende Teil der Bandbreite für diesen Verwaltungsaufwand verloren.

Es gibt verschiedene Möglichkeiten, die Datenübertragung zu beschleunigen. Man kann die Daten in einem zusätzlichen Netz hinter den Servern, befreit von allzuviel Verwaltungsdaten, zwischen den Speichern und Servern übertragen. Ein solches SAN (Storage Area Network) verursacht natürlich einen gewissen Mindestaufwand an Steuerkarten, Schaltern und Verkabelung. Man kann aber auch den Datenverkehr auf der LAN-Seite entrümpeln und ihn damit wesentlich beschleunigen.

Es ist aber möglich, beide Varianten zu nutzen: Ein lokales SAN wird bei großen Speicherinstallationen hinter dem NAS-Gerät eingesetzt. Auf der LAN-Seite wird mit großen Zwischenspeichern (Caches) beschleunigt.

Neu ist nun das Direct Access File System (DAFS). DAFS nutzt die bereits seit längerem verfügbare VIA (Virtual Interface Architecture) zur fast direkten Datenübertragung zwischen Anwendungsprogrammen oder mit den Datenspeichern. Mit DAFS und VI werden also die Leistungsbremsen Hierarchie und Zwischenspeicher weit gehend eliminiert.

DAFS, RDMA und VIAUnter DAFS werden die Daten direkt zwischen dem Anwendungsspeicher und dem Aufbewahrungsspeicher auf Basis von VI-Architektur und Remote DMA (RDMA) transportiert. Die Host-Bus-Adapter (HBAs) mit VI-Funktionalität führen die wenigen Funktionen in Hardware und damit sehr schnell durch. Für die effiziente Nutzung von DAFS werden HostBus-Adapter mit spezieller Hardwarelogik benötigt. Anwendung und Speicher verhandeln direkt über die optimale Blockgröße für eine Übertragung. Deshalb wird das Übertragungsmedium optimal genutzt. Der Zeitaufwand für das Umschalten zum und für die Rückkehr vom Betriebssystem bei jedem Dateizugriff entfällt. Für die Verständigung mit Anwendungen in herkömmlicher Technik sorgenAdaptionsprogramme in der DAFS-Bibliothek.

DAFS besteht aus einer Bibliothek von Programmen und VI-Diensten. Die Kommunikationsschnittstelle benötigt einen Treiber. Dieses API (Application Programming Interface) wird VIPL (VI Provider Library) genannt. Ist die Anwendung für DAFS ausgerüstet, dann wird das Betriebssystem nicht mehr für die Datenspeicherung benötigt. Derzeit gibt es VI-Bibliotheken für den Fibre Channel, für SCSI, unter Linux (M-VIA) und für Übertragungsmedien mit herstellerspezifischen Schnittstellen. VI über TCP/IP sollte bald verfügbar sein.

Unter DAFS werden Funktionen wie File-Locks (Dateizugriffsverwaltung) im Cache vorgehalten und ausgeführt. Damit werden bei wiederholtem Zugriff auf die gleichen Daten, beispielsweise Zugriff auf eine Web-Seite, Rechnerzyklen eingespart. Der Zugriff auf gemeinsame Daten ist durch Authentifizierung zwischen den Servern geregelt.

VI erlaubt RDMA, also DMA auch mit entfernten Rechnern. Auch bei VI-kompatibler Hardware muss das Betriebssystem für die Datenübertragung nicht bemüht werden. DAFS verzichtet auf das bei VI noch benötigte VI-Modul und auf den VI-Client. Die zu übertragenden Datenpakete müssen nicht gestückelt werden. Damit entfallen umfangreiche Dateiköpfe (Header) für die Adressierung und für das erneute Zusammenfügen der Daten am Ziel. Zahlreiche Zwischenschritte und Pufferungen werden überflüssig.

RDMA unter VI erwartet beim entfernten Teilnehmer einen zusammenhängenden Speicherbereich unendlicher Größe; auf jeden Fall muss er groß genug für die zu übertragende Datei sein. Vor der Übertragung werden nur eine Zieladresse und ein Datei-Handle übergeben. Write-RDMA muss implementiert sein, Read-RDMA ist nicht zwingend vorgeschrieben. Die Teilnehmer müssen sich "irgendwie" darüber verständigen, ob Read-RDMA implementiert ist.

Peer-to-PeerDAFS sitzt hierarchisch über VI. Das DAFS-Konzept ist in gewisser Weise eine Rückkehr zu der Praxis in der Anfangszeit der Datenverarbeitung. Damals schrieben Anwendungen ihre Daten selbst in den Speicher und holten sie von dort ab. Jede Anwendung war so gut oder schlecht wie der Programmierer. Dann kamen dokumentierte und undokumentierte Schnittstellen mit einer Aufteilung der Funktionalität auf immer mehr Zwischenebenen auf den Markt. Mit dieser hierarchischen Atomisierung wurden die Anwendungen modularer, aber gleichzeitig auch die technischen Fortschritte bei den Übertragungsraten weit gehend aufgebraucht.

Mit DAFS wird die direkte Übertragung zwischen den beteiligten Endpunkten wieder eingeführt und um Funktionen, wie etwa Zugriffsschutz oder Fehlerbehandlung, erweitert. Die Übertragung mit DAFS ist sogar schneller als im Raw-Modus, weil die unbedingt benötigten Management-Funktionen, wie beispielsweise File-Locking (Zugriffsschutz), bereits integriert sind. DAFS überträgt ganze Dateien, nicht einzelne physikalische Blöcke.

Pate stand das ClusterCompaq, Intel und Microsoft sind die VI-Sponsoren. Die VI-Architektur wurde bereits im Dezember 1997 öffentlich vorgestellt. Das ursprüngliche Ziel von VI war, die Kommunikation (Message Passing) von Servern innerhalb eines Clusters zu standardisieren und zu beschleunigen. Die Teile, die in einem solchen Cluster zusammenarbeiten, bilden ein System Area Network (SAN) - nicht zu verwechseln mit dem Storage Area Network (SAN) auf Fibre-Channel-Basis. Ein System Area Network verbindet Elemente in einem Cluster auf der LAN-Ethernet-Seite, wohingegen ein Storage Area Network Elemente auf der SAN-FC-Seite eines Servers miteinander verknüpft.

Giganet (jetzt Teil von Emulex) und NetApp haben eine formale Zusammenarbeit vereinbart, um die VI-Architektur auch über das Ethernet-LAN mit IP zu nutzen. Giganet arbeitete entscheidend an der Entwicklung von VI mit, brachte die erste Ein-Chip-ASIC-Version von VI auf den Markt und verbesserte sie mit der zum Patent angemeldeten Rapid-Flow-Architektur weiter. Diese Technik von Giganet wird fürdas DAFS-Dateisystem von NetApp genutzt. Troika hat ebenfalls VI-fähige Host-Busa-Adapter in Kooperation mit NetApp entwickelt.

Der VI-Vorteil ist die schnelle, direkte Verbindung zwischen Anwendung und Speicher ohne Umwandlung, Fragmentierung oder Pufferung über viele Zwischenebenen. Nach Einschätzung von Steven Kleimann, Vice President und Chief Technology Officer (CTO) bei NetApp, ist die Leistung von DAFS um bis zu 40 Prozent besser als die von direkt am Server angeschlossenen Laufwerke.

DAFS nutzt die direkte Übertragung wie ein FC-SAN, jedoch ohne die vielen Zwischenstufen wie beim klassischen ISO/OSI-Modell be- ziehungsweise TCP/IP. Es werden ganze Dateien und ihre Eigenschaften übertragen beziehungsweise berücksichtigt. Bei der für viele Anwendungen günstigeren blockweisen Übertragung kommen die SCSI-Varianten Parallel-SCSI, FC-SCSI oder neuerdings iSCSI weiterhin zum Einsatz. Diese letzte Variante von SCSI kann für die Einbindung einzelner, abgesetzter Speicher-Einheiten im direkten Block-Modus über ein schon vorhandenes LAN genutzt werden.

Das DAFS-Dateisystem von den Mitgliedern der DAFS Collaborative nutzt große Teile der VI-Architektur. Das jeweilige Betriebssystem und die herkömmlichen Dateisysteme (CICS oder NFS) werden nicht mehr benötigt. DAFS unterstützt direkt die gemeinsame Nutzung von Daten. Ein effizientes und schnelles Zugriffs-Management (locking), Fehlerüberwachung, verbesserter Wiederanlauf und Schutz der Anwendungen untereinander sind weitere Funktionen und Vorteile von DAFS.

Host-Adapter und Switches mit VI-Funktionalität und Unterstützung durch Linux und Windows sind bereits seit einiger Zeit verfügbar, auch für den industriellen Einsatz,. VI-kompatible Produkte gibt es zum Beispiel von DY4, Emulex, Giganet und Troika. Derzeit benutzen VI-Anwendungen VI-fähige FC-HBAs. Adapter für Fast- oder Gigabit-Ethernet (GBE) werden in Kürze erwartet. Danach wird es dann auch VI über IP geben.

DAFS ist als zusätzliches Dateisystem speziell für die optimale Zusammenarbeit zwischen einer begrenzten Anzahl von Datei-Servern und Speicherschränken in einer lokalen Umgebung geeignet. Die schon lange verfügbaren Netz-Dateisysteme NFS und CIFS werden vorzugsweise in großen Netzen mit Tausenden von Anwendern auch weiterhin eingesetzt. Die Sicherheit der Datenübertragung ist bei VI nicht explizit gewährleistet.

AusblickMit DAFS wird die Datenübertragung im primären Ethernet-LAN in einer lokalen Umgebung erheblich beschleunigt werden. Wie bei LAN-Geräten üblich, kann die Installation in wenigen Minuten erledigt werden.

Die für die Zukunft geplanten Übertragungsmedien mit einer Übertragungsrate von 10 Gb/s (10GBE und 10GFC) sind derzeit noch viel zu schnell für die heute verfügbaren CPUs. Bei der schnellen, direkten Übertragung unter DAFS müssen unter Umständen mehrere virtuelle Voll-Duplex-Kanäle mit dieser Geschwindigkeit bedient werden. Auch aus diesen Gründen werden spezielle HBAs benötigt, welche die CPUs entlasten.

Die Datenmengen werden weiterhin zunehmen, wobei dies vor allem netzfähige Speichereinheiten betrifft. IDC erwartet für den Zeitraum zwischen 1999 und 2003 eine jährliche Zuwachsrate von 67 Prozent für vernetzte Speicher und einen jährlichen Rückgang von drei Prozent für Server mit direkt angeschlossenem Speicher. Für den Transport der schnell zunehmenden Datenmengen kommen Konzepte wie DAFS mit bis zu 40 Prozent Übertragungsbeschleunigung gerade recht.

*Hermann Strass ist Berater für neue Technologien, Mitglied in nationalen und internationalen Normungsgremien und Autor von Fachbüchern und Artikeln sowie Organisator von Seminaren.

DAFS CollaborativeDAFS Collaborative wurde am 20. Juni 2000 von Netapp und anderen Firmen gegründet. Sie ist eine Allianz von inzwischen mehr als 80 Firmen. Werner Glinka, Eigentümer der Beratungsfirma Glinka Company in den USA, ist Executive Director von DAFS Collaborative. Mitglieder von DAFS Collaborative arbeiten an den Spezifikationen von DAFS.

Giganet hat eine VI/TCP-Spezifikation beim IETF zur Standardisierung eingereicht. Cisco will die VI/TCP-Spezifikation bei der IETF unterstützen. Über das universelle, virtuelle Dateisystem DAFS soll die Datenübertragung wesentlich optimiert werden. Die ersten DAFS-Anwendungen stützen sich auf VI über Fibre Channel. DAFS und VI über Ethernet und über IP sollen noch in diesem Jahr folgen.

VI und VIDFCompaq hat durch die Übernahme von DEC (Digital Equipment Corp.) vor einigen Jahren große Erfahrung und umfangreiches Wissen über professionelle Cluster-Technologie erhalten. Dies sollte für den PC-Bereich nutzbar gemacht werden. Gemeinsam mit Intel und Microsoft wurde diese Technik und das von Intel schon sehr lange eingesetzte Message-Passing-Verfahren im Dezember 1997 als VI-Spezifikation veröffentlicht. VI-Spezifikationen gibt es inzwischen für den Fibre Channel (FC-VI: ANSI/T11-1332D, V1.61) für SCSI (SVP: ANSI-T10-1415D), für Linux (M-VIA, V1.1) und bald auch von der IETF für TCP. Die Normierung im ANSI-Komitee für den Fibre Channel wurde im April 1998 begonnen, für SCSI-VI im Juli 2000 und für M-VIA unter Linux gab es bereits im November 1998 die Version 1.0 zum Download. An MVIA-2 wird derzeit gearbeitet. Im November 2000 wurde beim IETF mit der Bearbeitung des Vorschlags für VI über TCP begonnen. Nach der Bestätigung der VI/TCP-Spezifikation (evtl. im Nov. 2001) durch die IETF soll diese auch im DAFS eingesetzt werden.

Das VI ist also eine Schnittstelle für die enge Koppelung von Rechnern zu einem Cluster und für die schnelle Datenübertragung ohne großen Protokollaufwand. Das VI bietet drei Übertragungsarten: unreliable, reliable delivery und reliable reception. Nur die "unreliable"-Betriebsart muss implementiert sein. Eine Kommunikation kann immer nur zwischen Teilnehmern mit gleichen Betriebsarten stattfinden.

VI wird unter anderem von Oracle, IBM für DB2, von Microsoft für SQL und von CA für ARCserve 2000 schon seit längerem in Cluster-Systemen eingesetzt. Auch Dell hat schon 1998 an einer gemeinsamen VI-Demonstration teilgenommen. DY4 und Troika haben FC-VI für industrielle und militärische Anwendungen auf VMEbus-Karten (ANSI/VITA-1) portiert.

Das VIDF wurde am 20. Juni 2000 von NetApp, Intel, Seagate und anderen gegründet. Diese VIA-Organisation ist eine Allianz von derzeit etwa 80 Firmen aus den Bereichen Speicher-Hard- und Software, Netzwerke und Infrastruktur, Datenbanken sowie Anwendern.

Abb.1: Drei Arten des File-Zugriffs

DAFS umgeht das Betriebssystem und übermittelt die Daten-Files direkt zur Applikation. Quelle: DAFS Collaborative

Abb.2: VI-Architektur (nach Spezifikation 1.0)

Die VI-Architektur besteht aus vier Basiskomponenten: den VI-Schnittstellen, Completion Queues, VI-Providern und den VI-Consumern. Quelle: VI-Organisation