- ATA over Ethernet
-
ATA over Ethernet (AoE) ist ein von der Firma Brantley Coile entwickeltes Netzwerkprotokoll für den Zugriff auf Speichergeräte (in der Regel Festplatten) über ein Ethernet-Computernetzwerk. Es verwendet dazu das ATA-Protokoll.
ATA over Ethernet überträgt die Daten in Form von Ethernet-Frames, und verzichtet auf die Verwendung höherstehender Protokolle wie IP, UDP oder TCP. Die von AoE übertragenen Ethernet-Frames können das lokale Netzwerk nicht verlassen, weshalb der Einsatz von AoE vorwiegend auf lokale Speichernetze (Storage Area Networks) begrenzt ist. AoE ist technisch einfacher als iSCSI, welches zwar ebenfalls über Netzwerk aber über höhere Schichten transportiert wird.
Damit wird der größte Unterschied von AoE zu iSCSI sichtbar: AoE ist nur lokal (geswitcht) nutzbar, iSCSI dagegen kann in andere Netzwerke geroutet werden. Der Vorteil von AoE dagegen ist ein Geschwindigkeitsvorteil durch den Verzicht auf eine komplexe Infrastruktur.
Ohne AoE werden die Befehle des ATA-Protokolls, welches zur Kommunikation zwischen einem Computersystem und einem daran angeschlossenen Speichergerät dient, direkt über ein Kabel übertragen. AoE verpackt diese Befehle jedoch in Datenpakete, die es über ein Ethernetnetzwerk an einen anderen Computer sendet. Dieses Zielsystem leitet die ATA-Befehle dann über einen Treiber an ein Blockspeichergerät (in der Regel eine Festplatte) weiter und gibt die Antwortpakete ebenfalls wieder über das Netzwerk zurück. So ist ein sehr hardwarenaher Zugriff auf einen Datenträger auch über relativ weite Entfernung möglich.
Durch diese Technik können mehrere Systeme gleichzeitig auf dasselbe Blockspeichergerät zugreifen. Die Koordination der Schreib- und Leseoperationen zwischen den beteiligten Systemen erfolgt durch einen sogenannten „Konfigurationsstring“ auf dem verwaltenden Server. Der gleichzeitige Zugriff mehrerer Systeme auf dasselbe Gerät erfordert den Einsatz spezieller Cluster-Dateisysteme wie GFS oder OCFS2, da die gängigen Dateisysteme nicht für diese Anwendung konzipiert worden sind.
Derzeit wird AoE von den Betriebssystemen Linux und FreeBSD unterstützt, auf Solaris für SPARC und x86 sind Gerätetreiber in Arbeit.
Das europäische Unternehmen Rocket Division Software unterstützt AoE in ihrem Produkt „StarPort Storage Controller“ für Windows, welches einen iSCSI- und einen AoE-Initiator, RAM-Disk und ein virtuelles DVD-Laufwerk zur Verfügung stellt.
Inhaltsverzeichnis
Paketformat
-
AoE Header[1] Offset Datentyp Beschreibung 0 char[6] Zieladresse (MAC-Adresse) 6 char[6] Absenderadresse 12 uint16_t Ethertype: 88A2hex 14 uint8_t Version (Bit 4..7), im Moment stets 1; Flags (Bit 0..3) 15 uint8_t Error 16 uint16_t Major-Adresse 18 uint8_t Minor-Adresse 19 uint8_t Befehlsfeld 20 uint32_t Befehlsmarkierung (Tag) 24 struct arg_field Argumente darunter auch übermittelte Daten von der Festpaltte
Betriebssysteme mit ATA over Ethernet support
Betriebssystem Support Third-party Treiber Linux Nativ (2.6.11 und höher) Coraid[2] Microsoft Windows Third-party StarWind Software StarPort[3], WinAoE[4] und WinVBlock[5] Mac OS X 10.4 und höher Third-party 2DegreesFrost[6] Mac OS X 10.5 and 10.6 Third-party Small Tree Communications[7] Solaris Third-party Coraid[8] FreeBSD Third-party Coraid[9] OpenBSD Native (4.5 und höher) VMWare Third-party Coraid[10] Plan 9 from Bell Labs[11] Native Andere Protokolle zum Ansprechen von Blockgeräten
- Fibre Channel: FC definiert ein nicht routingfähiges Standardprotokoll aus dem Bereich der Speichernetzwerke, das als Nachfolger von SCSI für die Hochgeschwindigkeitsübertragung großer Datenmengen konzipiert wurde. FC ist nicht mit Ethernet kompatibel, es wird eine separate Infrastruktur (NICs, Switches, usw.) benötigt.
- Fibre Channel over Ethernet: Bei Fibre Channel over Ethernet werden "Fibre Channel"-Pakete in Ethernet gekapselt. Im Unterschied zu iSCSI erfolgt aber keine Kapselung in TCP/IP, hieraus resultieren geringe Performancevorteile, jedoch ist FCoE nicht routingfähig.
- Fibre Channel over IP Bei Fibre Channel over IP werden "Fibre Channel"-Pakete zusätzlich in TCP/IP gekapselt. FCoIP ist daher routingfähig.
- iSCSI (SCSI over IP): Bei iSCSI werden SCSI-Pakete in TCP/IP gekapselt. Im Unterschied zu ATA over Ethernet ist iSCSI routingfähig.
- HyperSCSI Bei HyperSCSI werden SCSI-Pakete in Ethernet gekapselt. Im Unterschied zu iSCSI erfolgt aber keine Kapselung in TCP/IP, hieraus resultieren geringe Performancevorteile, HyperSCSI ist wie AoE nicht routingfähig.
Weblinks
- Artikel:
- ATA Over Ethernet: Putting Hard Drives on the LAN – Linux Journal (28. April 2005)
- ATA-over-Ethernet enables low-cost Linux-oriented SAN – LinuxDevices.com (23. Juni 2004)
- Protokoll:
- Emulator und Werkzeuge:
- Projektübersicht zu ATA Over Ethernet Tools und vblade bei SourceForge – vblade ist der serverbasierte Teil von AoE und läuft im Userspace
- vblade, implementiert als Kernelmodul ist schneller als die Userspace-Implementierung
- qaoed – Mulithreaded ATA over Ethernet storage target läuft im Userspace
- qaoed – neuer Ort bei Google Code
- Aoeserver – Mulithreaded ATA over Ethernet storage target implementiert als Kernelmodul
- aoeserver – Abspaltung/Weiterentwicklung bei Google Code
- ggaoed – neueste Implementierung mit Spezialisierung auf Linuxeigenschaften für Geschwindigkeitsoptimierung
- It utilizes Linux kernel AIO, memory mapped sockets and other Linux features to provide the best performance.
Einzelnachweise
- ↑ http://support.coraid.com/documents/AoEr11.txt
- ↑ Linux Support for AoE EtherDrive (R) Storage
- ↑ Free AoE Initiator for Microsoft Windows
- ↑ WinAoE Driver: A bootable, open source AoE initiator
- ↑ WinVBlock Driver: A WinAoE fork capable of booting AoE targets, file-backed disks and RAM disks created with MEMDISK and GRUB4DOS
- ↑ 2DegreesFrost: AoE Treiber für OS X
- ↑ Small Tree – The Mac Network Experts: AoE Treiber für OS X
- ↑ Coraid AoE Solaris Support
- ↑ FreeBSD AoE Support
- ↑ VMWare CORAID AoE Support – EtherDrive ESX HBA Driver
- ↑ Plan 9 from Bell Labs
-
Wikimedia Foundation.