× Install ThecoreGrid App
Tap below and select "Add to Home Screen" for full-screen experience.
B2B Engineering Insights & Architectural Teardowns

In-band SDN масштабируется через border-switch графы

In-band SDN с несколькими контроллерами упирается в координацию и рост состояния. Periplus решает это через border-switch forwarding graphs, удерживая state локальным.

Первое узкое место in-band SDN — это не сам контроль трафика, а его эволюция при росте сети. Когда один контроллер перестаёт справляться, сеть делят на домены. Но появляется новая проблема: multi-controller coordination. Контроллеры должны обнаруживать друг друга и обмениваться состоянием по тем же каналам (in-band), не раздувая таблицы потоков (flow tables) на каждом коммутаторе. В классических подходах это ломается о масштаб: каждый новый контроллер добавляет состояние на все switches. В итоге выигрыша от partitioning почти не остаётся — растёт не latency, а state overhead.

Periplus выбирает более локальную стратегию. Основная идея — ограничить forwarding state только пограничными узлами (border switches). Для этого используется механизм Controller Advertisement (C-Adv) и инкрементальная сборка маршрутов между контроллерами. Вместо того чтобы прокладывать полный путь через всю сеть, каждый домен добавляет только свой сегмент в forwarding graph. Это похоже на segment routing, но с важным отличием: граф не задаётся целиком на входе, а “достраивается” на границах доменов. Компромисс здесь очевиден: больше логики на border switches, но резкое снижение давления на interior switches.

Реализация опирается на несколько ключевых механизмов:

  • C-Adv сообщения выполняют двойную роль: discovery и liveness. Они распространяются контролируемым flooding без штормов.
  • Каждый контроллер ведёт soft-state таблицу соседей с таймерами (alive counter).
  • Для предотвращения циклов используется логика, аналогичная BGP AS_PATH.
  • Маршруты строятся через Dijkstra внутри домена, но только до ближайшего border switch.

Forwarding graph кодируется в пакетах через NSH (Network Service Header) с использованием расширений Open vSwitch. Это важно: не требуется модификация firmware. Однако появляется зависимость от возможностей OVS и его таймингов. В эксперименте даже понадобился патч, чтобы ускорить reconnection — иначе поведение контроллера маскируется задержками на уровне реализации.

Отдельный аспект — отказоустойчивость. Если контроллер падает, коммутатор не ждёт явного сигнала. Его flow entries просто истекают (hard timeout), и он возвращается в bootstrap-состояние. Далее он повторно подключается к любому доступному контроллеру через C-Adv или ARP. Это даёт простую модель recovery без централизованной координации. Trade-off — временная потеря управления и зависимость от таймеров.

Результаты показывают, что архитектурное решение работает именно за счёт локальности состояния.

  • В топологии с 96 коммутаторами и до 5 контроллеров bootstrap занимает около 10 секунд после partitioning.
  • Время обнаружения контроллеров — несколько секунд, зависит от связности, а не от их количества.
  • Recovery после отказа контроллера — около 10 секунд (в patched OVS).
  • Главное: количество правил на коммутаторе определяется ролью (root, border, interior), а не размером сети.

Interior switches держат постоянное число правил независимо от числа контроллеров. Дополнительное состояние появляется только на border switches и линейно зависит от числа соседних доменов, а не всей сети. Это и есть ключевой эффект: масштабирование через изоляцию состояния.

Важно отметить ограничения:

  • Нет строгой модели консистентности между контроллерами. Это оставлено на уровень приложений.
  • Балансировка нагрузки между контроллерами — примитивная (first-come-first-served).
  • Все результаты получены в Mininet; поведение на реальной сети может отличаться.

В индустрии давно обсуждают, что in-band SDN — это компромисс между стоимостью и управляемостью. Periplus делает этот компромисс более управляемым: он не устраняет сложность, но локализует её. Вместо того чтобы бороться с ростом состояния глобально, система ограничивает его географией доменов.

Это прагматичный шаг. Не универсальное решение, но рабочая модель для сетей, где выделенный control plane невозможен и где важнее предсказуемость, чем идеальная консистентность.


Источник информации

arXiv — крупнейший открытый репозиторий препринтов (с 1991 года, под эгидой Корнелла), где исследователи оперативно размещают рабочие версии статей; материалы общедоступны, но не проходят полное рецензирование, поэтому результаты следует считать предварительными и, по возможности, сверять с обновленными версиями или рецензируемыми журналами. arxiv.org

Смотреть оригинал исследования PDF

×

🚀 Deploy the Blocks

Controls: ← → to move, ↑ to rotate, ↓ to drop.
Mobile: use buttons below.