Vblade - ATA over Ethernet

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

Jump to: navigation, search

162px-Harddisk-head.jpg

120px-Cat5-cable-with-RJ45.jpg

Contents

Background=

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. AoE does not rely on network layers above Ethernet, such as IP, UDP, TCP, etc.

Advantages

  • 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.[3][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 a great increase in security.

Disadvantages

  • 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.

Uses

  • 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.
Kurobrick.png
WARNING!

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



Installation

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]

USB Drive
Bar.png
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


Server (vblade)

FreeLink

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>

vblade 1 2 eth0 /dev/sda1 &

Client (aoetools)

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

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


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[14]

References

  1. Wikipedia:ATA over Ethernet
  2. Coraid:: The Linux Storage People
  3. Gentoo Linux Wiki:HOWTO aoe
  4. LinuxDevices.com - ATA-over-Ethernet enables low-cost Linux-oriented SAN
  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. Sourceforge: ATA Over Ethernet Tools
  13. Debian Package: aoetools - tools to assist in using ATA over Ethernet
  14. Linux Support for EtherDrive (R) Storage