From Surf Wiki (app.surf) — the open knowledge base
ATA over Ethernet
Storage network protocol
Storage network protocol
ATA over Ethernet (AoE) is a network protocol developed by the Brantley Coile Company, designed for simple, high-performance access of block storage devices over Ethernet networks. It is used to build storage area networks (SANs) with low-cost, standard technologies.
Protocol description
AoE runs on layer 2 Ethernet. AoE does not use Internet Protocol (IP); it cannot be accessed over the Internet or other IP networks. In this regard it is more comparable to Fibre Channel over Ethernet than iSCSI.
With fewer protocol layers, this approach makes AoE fast and lightweight. It also makes the protocol relatively easy to implement and offers linear scalability with high performance. The AoE specification is 12 pages compared with iSCSI's 257 pages.
:AoE Header Format:
0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 0 | Ethernet Destination MAC Address | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 4 | Ethernet Destination (cont) | Ethernet Source MAC Address | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 8 | Ethernet Source MAC Address (cont) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 12 | Ethernet Type (0x88A2) | Ver | Flags | Error | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 16 | Major | Minor | Command | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 20 | Tag | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 24 | Arg | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
AoE has the IEEE assigned EtherType 0x88A2.
ATA encapsulation
SATA (and older PATA) hard drives use the Advanced Technology Attachment (ATA) protocol to issue commands, such as read, write, and status. AoE encapsulates those commands inside Ethernet frames and lets them travel over an Ethernet network instead of a SATA or 40-pin ribbon cable. Although internally AoE uses the ATA protocol, it presents the disks as SCSI to the operating system. Also the actual disks can be SCSI or any other kind, AoE is not limited to disks that use the ATA command set. By using an AoE driver, the host operating system is able to access a remote disk as if it were directly attached.
The encapsulation of ATA provided by AoE is simple and low-level, allowing the translation to happen either at high performance or inside a small, embedded device, or both.
Routability
AoE is a layer 2 protocol running at the data-link layer, unlike some other SAN protocols which run on top of layer 3 utilizing IP. While this reduces the significant processing overhead of TCP/IP, this means that routers cannot route AoE data across disparate networks (such as a campus network or the Internet). Instead, AoE packets can only travel within a single local Ethernet storage area network (e.g., a set of computers connected to the same switch or in the same LAN Subnet or VLAN).
Security
The non-routability of AoE is the only security mechanism (i.e., an intruder can't connect through a router—they must physically plug into the local Ethernet switch where Ethernet frame tunneling over routed networks is not in use). However, there are no AoE-specific mechanisms for password verification or encryption. The protocol provides for AoE targets such as Coraid Storage appliances, vblade and GGAOED to establish access lists ("masks") allowing connections only from specific MAC addresses (although these can be spoofed). Most secure AoE by using Ethernet VLANs.
Config string
The AoE protocol provides a mechanism for host-based cooperative locking. When more than one AoE initiator is using an AoE target they must communicate to avoid interfering with one another as they read and write the config string data on the shared AoE device. Without this cooperation file-system corruption and data loss is likely, unless access is strictly read-only or a cluster file system is used.
One option provided by AoE is to use the storage device itself as the mechanism for determining specific host access. This is the AoE "config string" feature. The config string can record who is using the device, as well as other information. If more than one host tries to set the config string simultaneously, only one succeeds. The other host is informed of the conflict.
Operating system support
The following operating systems provide ATA over Ethernet (AoE) support:
| OS | Support | Third-party drivers | Linux | Windows | Mac OS X 10.4 and up | Mac OS X 10.5 and 10.6 | Solaris | FreeBSD | OpenBSD | VMware | Plan 9 from Bell Labs |
|---|---|---|---|---|---|---|---|---|---|---|---|
| Native (2.6.11+) | Coraid | ||||||||||
| Third-party | StarWind Software AoE Initiator, WinAoE, WinVBlock | ||||||||||
| Third-party | From 2006 through 2010, 2°Frost Technologies developed proprietary software and marketed AoE storage solutions in the Windows and Mac markets. The Mac implementation was its own and the Windows version was OEM-ed from StarWind Software. | ||||||||||
| Third-party | Small Tree Communications | ||||||||||
| Third-party | Coraid | ||||||||||
| Third-party | Coraid (outdated) | ||||||||||
| Native (4.5 to 5.6) | |||||||||||
| Third-party | Coraid | ||||||||||
| Native |
Hardware support
Coraid offered an array of AoE SAN appliances under the EtherDrive brand, along with diskless gateways that add network-attached storage functionality, using the NFS or SMB protocols, to one or more AoE appliances. The Coraid brand is now owned by SouthSuite, Inc., a company founded by Brantley Coile who founded Coraid.
References
References
- S. Hopkins, B. Coile. (February 2009). "AoE (ATA over Ethernet)".
- Quanstrom, Erik. "aoecfg(8) - Linux man page". die.net.
- [http://www.starwindsoftware.com/aoe-ataoverethernet-initiator StarWind Free AoE Initiator for Microsoft Windows]
- [https://winaoe.org/ WinAoE Driver]: A bootable, open source AoE initiator, EOL-ed and phased out by WinVBlock successor
- {{usurped
- [https://www.small-tree.com/ Small Tree – The Mac Network Experts]
- [https://www.openbsd.org/plus57.html OpenBSD 5.7 changelog]
- "Plan 9 from Bell Labs".
This article was imported from Wikipedia and is available under the Creative Commons Attribution-ShareAlike 4.0 License. Content has been adapted to SurfDoc format. Original contributors can be found on the article history page.
Ask Mako anything about ATA over Ethernet — get instant answers, deeper analysis, and related topics.
Research with MakoFree with your Surf account
Create a free account to save articles, ask Mako questions, and organize your research.
Sign up freeThis content may have been generated or modified by AI. CloudSurf Software LLC is not responsible for the accuracy, completeness, or reliability of AI-generated content. Always verify important information from primary sources.
Report