ATA over Ethernet (AoE)

AoE (ATA over Ethernet) — это сетевой протокол для доступа к блочным устройствам хранения (дискам, SSD, RAID-массивам) по обычной Ethernet-сети.

AoE инкапсулирует команды ATA прямо в Ethernet-кадры и работает на канальном уровне (Layer 2), без использования TCP/IP.

Для чего используется AoE

Как это работает

+-------------------+
| AoE Server        |
| Linux + RAID +    |
| vblade            |
+---------+---------+
          |
      Ethernet
          |
+---------+---------+
| Client Server     |
| sees remote disk  |
| as local block dev|
+-------------------+

AoE в embedded-устройствах

В embedded-среде AoE часто используют для загрузки и прошивки firmware-образов по Ethernet.

Обычно схема выглядит так:

Архитектура

+----------------------+
| AoE Server           |
| firmware.img         |
| vblade export        |
+----------+-----------+
           |
        Ethernet
           |
+----------+-----------+
| Embedded Device      |
| bootloader/Linux     |
| AoE initiator        |
| sees remote ATA disk |
| as sata0a            |
+----------------------+

Что такое sata0a

Название sata0a обычно встречается в:

Обычно означает:

Пример цепочки загрузки

1. BootROM стартует
2. Загружается U-Boot
3. U-Boot получает IP
4. Инициализируется AoE client
5. Firmware image подключается как ATA disk
6. Linux видит:
   /dev/etherd/e0.1
7. Образ прошивается:
   dd if=/dev/etherd/e0.1 of=/dev/mmcblk0

AoE сервер на Linux

Чаще всего используется утилита vblade.

vblade 0 1 eth0 firmware.img

Где:

Преимущества AoE

Недостатки

Сравнение AoE и iSCSI

Характеристика AoE iSCSI
Уровень Ethernet (L2) TCP/IP
Маршрутизация Нет Да
Сложность Низкая Средняя
Производительность Очень высокая в LAN Хорошая
Сейчас AoE используется реже, чем раньше, но всё ещё встречается в embedded recovery, production flashing и простых isolated storage networks.