Сейчас Mesh сети распространяются по миру, причем при строительстве сетей можно выбирать между Mesh протоколами, есть проверенный временем B.A.T.M.A.N adv, есть новый и активно разрабатываемый cjdns, а есть «официальный» — IEEE 802.11s
О 802.11s крайне мало информации в рунете, так что давайте поговорим о том как он устроен, зачем он нужен и что он делает.
Содержание:
- Зачем нужен
- Что умеет
- Какие режимы работы поддерживает
- Сравнение с BATMAN/cjdns
- Почему хорошо, а почему не очень
Зачем нужен
В мире намечается тенденция на Mesh сети, причем некоторые их используют в локальном проявлении а кто-то в глобальном.
Самый простой пример локального использования — в отелях, кафе и ресторанах.
При запуске Mesh сети в коммерческой структуре мы получаем все плюсы управляемых Mesh сетей
1) Не надо тянуть к каждой точке доступа свой кабель
2) Точки автоматически конфигурируются в сети
3) Потеря одной точки ведет к перестроению маршрутизации с минимальной деградацией сервиса у абонентов
Но есть и глобальные, не управляемые сети — в мире их огромное количество en.wikipedia.org/wiki/List_of_wireless_community_networks_by_region
Очевидно, что в глобальных сетях нет смысла использовать управляемые протоколы, да и вообще, желательно что бы сеть сама решала конфликты и сама настраивалась.
Что умеет
IEEE 802.11s Позволяет создавать управляемые сети, теоретически, можно создать и не управляемую, но он для этого не предназначен.
Протокол занимается обновлением таблиц маршрутизации в пределах всей сети, работает на L2 уровне по модели OSI, а вот IP адреса вам придется или самим настроить на каждой точке доступа, или воспользоваться услугами старичка DHCP.
Так же отвечает за поиск и взаимодействие с соседними точками, интеграция новых точек в Mesh сеть.
Mesh сеть может работать как с общим паролем и быть закрытой, так и без, шифрование (как и в обычной Wi-Fi сети) имеется только до точки доступа (при использовании сети с паролем) никакого туннельного end-to-end шифрования — нет.
Для подключения к сети построенной на основе IEEE 802.11s вам потребуется:
- Оборудование которое поддерживает IEEE 802.11s
- Mesh ID сети
- Прописанный IP адрес на ТД или же настроенный DHCP в сегменте
Если же сеть защищена паролем, к требованиям добавляется пароль сети.
Какие режимы работы поддерживает
Топология в обычной сети:
Топология в Mesh сети:
Mesh Point (MP) — Полноправный участник Mesh сети, взаимодействует с своими соседями по Mesh протоколам
Mesh AP (MAP) — Позволяет подключатся STA к Mesh AP
Mesh Portal (MPP) — Мост в другую сеть, например проводную
Station (STA) — Выходные узлы из Mesh сети для подключения обычных клиентов не по Mesh протоколу
Сравнение с BATMAN/cjdns
802.11s отличается от BATMAN/cjdns тем, что для него на данный момент нет свободной реализации для UNIX, но вот тут её пытаются сделать
Кроме того, BATMAN adv уже был протестирован в течении многих лет, показав свою стабильность, ну и про железную поддержку не стоит забывать.
По сравнению c cjdns, протокол имеет те же минусы как и все остальные (кроме netsukuku)
- Отсутствие end-to-end шифрования
- Невозможность объединять mesh сегменты туннелями через интернет
- Отсутствует децентрализованная генерация IP адресов
Почему хорошо, а почему не очень
Таким образом, получается, что протокол 802.11s, впрочем как и Batman, отлично подходит для строительства управляемых mesh сетей, а вот самоорганизующиеся стоит отдать другим технологиям — ntsukuku/cjdns.
Если публикации на тему 802.11s вам интересны, в следующий раз мы рассмотрим с вами:
1) Маршрутизация в сети 802.11s
2) Настройка централизованного выхода в интернет из 802.11s mesh сети
3) Объединение 2 Lan сетей и 1 mesh в одну общую
PS Результаты регистрации на карте (в проекте сjdns), зачем это нужно и что дальше — будут чуть позже