Vblade - ATA over Ethernet

From NAS-Central Buffalo - The Linkstation Wiki
Revision as of 23:25, 28 August 2006 by Ramuk (Talk | contribs)

Jump to: navigation, search
162px-Harddisk-head.jpg 120px-Cat5-cable-with-RJ45.jpg


ATA over Ethernet (AoE)[1] is a network protocol developed by the Brantley Coile Company (now Coraid)[2], designed for accessing ATA storage devices over Ethernet networks. It gives the possibility to build SANs with low-cost, standard technologies.


iSCSI protocol stack
Data sync
AoE protocol stack IPsec
Ethernet Ethernet
Physical Physical
AoE vs. iSCSI[3]
  • AoE avoids the usual high-level TCP/IP or UDP protocols; it's a base-level protocol itself. (For the technically-minded, it is an OSI level 2 protocol.) This gives the advantage of higher speed transfers, as the protocol doesn't have to build upon existing structures. In comparison, iSCSI runs over TCP/IP.[4][5]
  • It apparently uses less CPU time than the similar iSCSI protocol. For the technically minded, the AoE specification[6] [7] is 8 pages compared with iSCSI's[8] 257 pages.
  • AoE is not routable over LANs and is intended for SANs only, which can provide greatly increased security.


  • Each partition on the server computer can only be used by one client at a time; AoE is not intended to be a replacement for NFS or similar protocols which run on top of filesystems. It is designed to work at a much lower level.
  • As the protocol is non-routable, the servers cannot be separated by routers.


  • ATA Over Ethernet is therefore useful for creating cheap SANs, but it is not intended for the average user. It is very definitely not useful for sharing files easily: NFS or Samba is much better for this.

There is a possibility that you could brick your NAS with these instructions. Please make sure that you read the entire page carefully. This was a proof of concept exercise that someone on the IRC proposed. I bricked my LS the first time I played with this and had to reflash


USB Drive
I bricked my LS when trying to mount an internal partition the first time I tried this, so I used a usb drive this time around. Which on my LinkStation was /dev/sda1 - Ramuk

The Linkstation is used as a server running vblade. A separate computer is a client running aoetools. This version of vblade runs in userspace, however there are versions that run in kernelspace.[9] [10]

Server (vblade)


Use aptitude to install the vblade componant of AoE[11]. You will need to have the unstable branch added.

  1. Get access to packages from the Debian unstable branch
  2. use apt-get to install vblade:
apt-get install vblade

usage: vblade <shelf> <slot> <ethn> <device>

The first number (1) is the shelf number, the second (2) the slot number, change these numbers to your liking. The eth0 part tells vblade what interface to use, it will only be available to that interface on that direct connection. It can't go through routers and it can't be redirected. The last argument is the device name to share, this could be /dev/sda1 or some other device.

vblade 1 2 eth0 /dev/sda1 

Or instead to have it run on startup and stay up since Vblade may not take well to being forked. Adding it to /etc/inittab as a command that would respawn itself should "daemonize" vblade[12]. If someone has a better solution please put it in here, it may be possible to add it to init.d

echo "e1:2:respawn:/usr/sbin/vblade 1 2 eth1 /dev/sda1" >> /etc/inittab
init q 

Client (aoetools)

My Client
In this case I have a PIII/600 Compaq Armada laptop running Ubuntu Dapper Drake. - Ramuk

Install the aoetools[13] package [14] using aptitude. You will need to have Unstable (Debian) or Testing (Debian) branch enabled.

sudo apt-get aoetools
mkdir mountpoint
sudo modprobe aoe

check to see that your vblade device is available to mount

sudo aoe-stat

you should see output like this:

e1.2        20.003GB   eth0 up

Mount this device on your client

sudo mount -t vfat /dev/etherd/e1.2 mountpoint/

and try it out, hopefully it works. There is some useful Linux support on the Coraid site[15]


  1. Wikipedia:ATA over Ethernet
  2. Coraid:: The Linux Storage People
  3. LinuxDevices.com - ATA-over-Ethernet enables low-cost Linux-oriented SAN
  4. Gentoo Linux Wiki:HOWTO aoe
  5. Linux Journal - Kernel Korner - ATA Over Ethernet: Putting Hard Drives on the LAN
  6. Advanced Technology Attachment(ATA) over Ethernet - (AoE)
  7. Coraid: The AoE Protocol
  8. RFC 3720 - Internet Small Computer Systems Interface - (iSCSI)
  9. Vblade Linux kernel module
  10. Sourceforge: Kvblade
  11. Sourceforge: Vblade
  12. Building a Xen Cluster
  13. Sourceforge: ATA Over Ethernet Tools
  14. Debian Package: aoetools - tools to assist in using ATA over Ethernet
  15. Linux Support for EtherDrive (R) Storage