9 июня 2020

Noia- Протокол распределенной автономной маршрутизации (DARP)

Аннотация — В этой статье описывается протокол измерения задержки в mesh сети, который измеряет и идентифицирует лучший сетевой путь. Это позволяет узлам в сетке определить, когда лучше отправлять трафик через промежуточный узел, а когда отправлять его напрямую. Протокол непрерывно измеряет одностороннюю задержку в сети устройств для определения возможностей оптимизации. Узлы DARP объединяются с их открытыми ключами шифрования, которые распространяет DARP, позволяя создать зашифрованную сеть с полной ячеистой структурой.

Представлены три желательных варианта использования:

  1. (утопический) Интернет по умолчанию,
  2. безопасная модель IoT Exchange Point, которая имитирует сегодняшнюю модель межсетевого взаимодействия в Интернете, чтобы автоматически защищать устройства IoT в защищенной экосистеме, и
  3. мгновенный специальный защищенный канал между конечными точками Интернета.

Ключевые слова: сегментная маршрутизация, шифрование, Wireguard, NOIA, 5G-сеть, mesh сеть, сети с нулевым доверием.

ВВЕДЕНИЕ

Используемые сегодня протоколы интернет-маршрутизации не маршрутизируются в зависимости от текущих условий сети. Действительно, интернет-маршрутизаторы с радостью перенаправят трафик через сетевое соединение с 10% -ным отбрасыванием пакетов. Предполагается, что более высокие уровни будут ретранслироваться, или приложения будут распознавать последствия перегрузки и адаптироваться с помощью буферизации, кэширования или других методов оптимизации в программном обеспечении.

Интернет-провайдеры (ISP), лежащие в основе Интернета, активно конкурируют на рынке, и из-за этого давления, как правило, больше внимания уделяется минимизации стоимости услуг, чем максимизации качества обслуживания. Этот компромисс приводит к тому, что некоторые интернет-провайдеры вынуждены прокладывать маршруты по сетевым путям, чтобы минимизировать денежные затраты за счет производительности сети.

Например, провайдеры Интернет-услуг получают технические и финансовые выгоды от бесплатного обмена трафика между собой, так называемого “пиринга”, но только в том случае, если они поддерживают “коэффициенты пиринга” менее 2:1. Для поддержания такого соотношения провайдеры могут принудительно пропускать трафик через удаленный пункт обмена вместо того, чтобы отправлять его непосредственно в пункт назначения, чтобы поддерживать соотношение пирингов ниже 2:1. В результате плохая производительность сети может остаться незамеченной, а коэффициенты пиринга провайдеров и, следовательно, их дешевый обмен трафиком останется нетронутым.

Старая, но хорошая новость — это когда провайдер использует низкую производительность сети для привлечения клиентов. В этом сценарии интернет-провайдер настраивает свою маршрутизацию, чтобы заставить входящий контентный трафик проходить по более окольному сетевому пути. В результате задержка и потеря пакетов приводят к артефактам и плохому качеству видео. Клиенты жалуются как поставщику контента, так и провайдеру. Затем провайдер использует эти жалобы при обращении к продавцу контента с предложением продать «более эффективные» прямые соединения, чтобы улучшить взаимодействие с конечным пользователем.

Есть много других примеров, когда бизнес- провайдеры приводили к неоптимальной маршрутизации Интернета, задокументированной в книге Билла Нортона “Интернет-пиринг Playbook”. Протокол DARP измеряет производительность сети между сеткой сетевых устройств и, благодаря этой видимости, позволяет приложениям DARP переопределять путь проектирования трафика ISP, форсируя трафик по измеренному лучшему сетевому пути через промежуточные узлы, как показано зеленым цветом.

Рисунок 1. DARP определяет лучший путь через посредников

Поставщики контента (не интернет-провайдеры) всегда были ориентированы на конечного пользователя , и с этой целью они прилагают большие усилия для достижения даже номинального повышения производительности сети. В течение десятилетий контент-провайдеры требовали большей видимости и контроля над своим исходящим сетевым путем.

В этом документе описывается тонкая программная оболочка, которая измеряет производительность сети между коллекцией подключенных к сети устройств. Эти данные измерений автоматически распространяются по всем узлам в сети, поэтому каждый «пограничный» узел может воздействовать на эти данные, например, чтобы обойти традиционную маршрутизацию ISP для ретрансляции по лучшему сетевому пути.

Протокол распределенной автономной маршрутизации

Протокол распределенной автономной маршрутизации (DARP) измеряет одностороннюю задержку (OWL) между полной сеткой подключенных к сети устройств. Это дает возможность каждому узлу определять, быстрее ли он отправлять свой трафик непосредственно в пункт назначения или через промежуточный узел, который имеет измеренный лучший сетевой путь к месту назначения.

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

Каждый узел DARP отправляет один «импульсный» пакет каждому другому узлу в коллективе узлов, называемом «pulseGroup». Каждый узел получает импульсы и рассчитывает их одностороннюю задержку.

Каждый импульс содержит измеренные односторонние задержки отправляющего узла от других узлов. Эти измерения становятся основой для следующего цикла импульсов. Таким образом, протокол DARP эффективно измеряет задержку, в то время как он распространяет полную сетку измерений относительной задержки на каждого члена pulseGroup.

Рис. 2. Узлы DARP передают свое состояние и получают взамен матрицу задержки с полной сеткой.

С концептуальной точки зрения, протокол DARP приносит каждому узлу электронную таблицу с задержкой полной сетки, причем каждый столбец заполняется удаленными узлами, разделяющими измеренные сетевые задержки (см. Рисунок).

Интересно отметить, что значение протокола DARP для отдельного узла растет в геометрической прогрессии с увеличением размера группы Pulse. Каждый узел вносит n измерений и получает n-квадратные измерения, чтобы использовать их для определения лучших сетевых путей для своего трафика. Таким образом, 10-узловая группа импульсов требует, чтобы каждый узел отправлял 10 импульсов для возможностей оптимизации O (100), а 100-элементная группа импульсов требует 100 пакетов, но получает измерения O (1000) для возможностей оптимизации.

Также важно отметить, что каждый узел автоматически создает пару открытый / закрытый ключ для подключения к другому узлу DARP для последующего участия в защищенной ячеистой сети. Эти ключи распространяются по защищенной сетке, что позволяет приложениям динамически создавать специальные VPN и защищенные каналы с использованием этих распространенных открытых ключей.

Все данные сетки передаются в подписанные приложения на узлах для получения в реальном времени потоков импульса и матрицы.

DARP интерфейс

Импульсы в настоящее время отправляются один раз в секунду, и агрегированные результаты полной матрицы передаются подписывающимся приложениям с использованием шаблона pub / sub. Приложения DARP взаимодействуют с программным обеспечением DARP через CLI и / или API.

Рисунок 3. Архитектурная схема агента DARP

Интерфейс с хранилищем данных позволяет приложениям подписываться на «импульсные» или «матричные» каналы DARP.

Примеры использования DARP

Протокол DARP предоставляет потоки данных для нескольких начальных распределенных случаев использования приложения.

DARP для видимости сети. DARP в контейнере (изолированной вычислительной среде на компьютере) достаточно мал, чтобы использовать его во время сеансов устранения неполадок. Наилучшее использование до сих пор включает создание сети DARP для триангуляции аномалий маршрутизации и для обнаружения периодических проблем в сети путем непрерывного измерения из стратегических сетевых местоположений.

Проблемы с производительностью также могут быть легко определены. Это помогло нам обнаружить неиспользуемые лучшие сегменты сети Интернет и наблюдать широкий спектр аномалий интернет-маршрутизации.

Рисунок 4. Пример OWL Matrix с подсветкой возможностей оптимизации пути

Побочным эффектом этого проекта является то, что отладка программного обеспечения вызвала исследование сетевых аномалий, которые в противном случае могли бы остаться незамеченными. Как исследователь, он обеспечивает поток интересных аномалий для изучения.

Сеть NOIA SRv6. Матрицы OWL интегрируются в процесс взвешивания каналов и метрик маршрутизации в программном стеке NOIA SRv6 SDN. DARP будет работать вместе со стеком SDN NOv SRv6 для предоставления рекомендаций по возможностям оптимизации. [Примечание: автор является соучредителем Сети NOIA.]

AI / Машинное обучение применительно к большим данным. Приложения искусственного интеллекта будут ассимилировать данные в реальном времени в историческую производительность сегмента, чтобы искать лучшие группировки периферийных систем в pulseGroups для максимизации полезности всей системы.

Вдохновляющие случаи использования DARP

Утопия — Интернет по умолчанию. Если зашифрованные сетки DARP широко используются для трафика между источниками и приемниками контента, можно представить себе мир, в котором весь интернет-трафик зашифрован и пересекает наилучший возможный путь (прямой или через посредников).

В этом мире общедоступный Интернет становится транспортной сетью для этих защищенных сетей по требованию. Интернет становится набором сегментов между пограничными узлами, которые работают от имени конечных пользователей. Пограничные системы, а не поставщики услуг, контролируют маршрутизацию; Интернет-провайдеры оптимизируют свою часть Интернета, края решают, использовать ли их.

Перенаправление трафика является автоматическим следствием этой технологии — приложения просто не будут использовать плохой сетевой путь, если доступен более точный сетевой путь.

Затем недорогие общедоступные интернет-провайдеры будут переведены на более эффективные сети. Попытки интернет-провайдеров сохранить трафик внутри сети или обмениваться данными в удаленных точках обмена будут отвергнуты приложением конечного пользователя, которое обнаруживает измеренный, меньший период ожидания, меньшую потерю пакетов или меньший сетевой джиттер-путь и форсирует трафик по этому пути.

Точка обмена IoT. Крупнейшим бенефициаром DARP может быть экосистема IoT. Миллионы IoT-устройств могут быть направлены в Интернет и в межсистемную экосистему с улучшенной конфиденциальностью между компьютерами, которая масштабируется по мере масштабирования Интернета.

Взаимосвязанная экосистема IoT может располагаться в существующих густонаселенных центрах коллокации, не зависящих от оператора, где основная часть интернет-трафика уже обменена. IoT Exchange может быть смоделирован по общедоступной модели Internet Exchange Point с точки зрения миссии, бизнес и операционных моделей , технических возможностей, масштабирования и т. д.

Модель Internet Exchange Point (IXP) была создана для облегчения обмена интернет-трафиком между конкурирующими сетевыми объектами на расстоянии вытянутой руки. Интернет-трафик обменивается в контексте их взаимной взаимозависимости; они обмениваются трафиком, но они лишь минимально разделяют судьбу. Если какая-либо из сторон отключает сеанс пиринга, обе стороны теряют только те оптимизации, которые получены в результате пиринга напрямую друг с другом.

Точка обмена IoT могла бы применить эту устоявшуюся модель, чтобы позволить службам и устройствам IoT безопасно подключаться к экосистеме межсетевого взаимодействия IoT для:

  • Масштабирования взаимосвязей. Модель IoT Exchange Point обеспечивает эффективность агрегации трафика ее участников для IoT-трафика, а также экономическую и техническую эффективность для всего трафика, которым обмениваются на IoT-exchange. Трафик IoT напрямую связан, обеспечивая кратчайший путь между двумя услугами IoT. Как и при пиринге в Интернете, этот трафик также обходит измеренный путь через общедоступный Интернет.
  • Пропускной способности интернета. Головной терминал IoT может быть установлен в густонаселенных региональных колокационных центрах. Эти (обычно) независимые от оператора колокационные центры — это места, где крупнейшие интернет-каналы соединены вместе, поэтому обмен IoT здесь обеспечивает масштабирование IoT, которое идет в ногу с общедоступным масштабированием Интернета.
  • Масштабируемая модель Модель IoT Exchange Point также обеспечивает проверенную масштабируемую взаимосвязь — современные европейские IXP сегодня переключаются в диапазоне терабит в секунду.
  • Проверенная модель. Модель IXP также является проверенным и знакомым подходом в разных странах и пиринговых экосистемах Интернета. Почти все компоненты легко доступны и производятся в масштабе на конкурентном рынке.      Рисунок 7. Пример модели обмена IoT 

    Встроенная IoT-экосистема может быть реализована в виде оверлейной сети Интернет, защищенной от края до края с помощью чего-то вроде Wireguard (DARP будет распространять открытые ключи). Это обеспечило бы основу для региональной среды межсетевого взаимодействия IoT, которая масштабируется для поддержки автономного и безопасного доступа миллионов устройств IoT.

    Простое безопасное наложение. Можно реализовать множество простых типов сетей наложения DARP. Поскольку DARP распространяет открытые ключи для конечных систем, мгновенные специальные краткосрочные VPN станут жизнеспособными. Поскольку ключи автоматически меняются каждые несколько минут для идеальной конфиденциальности пересылки, можно также создать более долгосрочные защищенные каналы «точка-точка».

    Контроль маршрутизации провайдера контента — провайдеры контента могут доставлять свой контент напрямую конечным пользователям в виде защищенной специальной сети с оверлеем. Поскольку поставщик контента контролирует заполнение своих групп PulG, он может группировать узлы, чтобы использовать лучшие доступные сетевые пути.

    Поставщики контента требуют большего контроля за работой конечных пользователей, и теперь DARP может строить сетевые пути вокруг перегрузки в Интернете. Чем более изменчива базовая сеть, тем больше преимуществ можно извлечь из непрерывных измерений. Поставщики контента могут обрабатывать исключительные проблемы с производительностью сети конечных пользователей, переводя этих пользователей в разные группы DARP pulseGroup для улучшения соединения.

    5G — протокол DARP дает наилучшие результаты при применении в различных сетях, где никто не контролирует маршрутизацию базовой сети. Сети DARP могут использоваться в качестве основы для автономных роботов для выбора между сетями Wi-Fi и сотовой связи 5G, доступными на производственном этаже, среди других вариантов использования 5G.

    Есть много других применений, которые вытекают из исследования, но это начальные варианты использования.

    Вывод

    Протокол DARP измеряет производительность на уровне пакетов в mesh сети. Он поддерживает формирование защищенной mesh сети путем распространения открытых ключей, используемых для допуска, позволяя конечным точкам устанавливать зашифрованный путь между двумя конечными системами в коллективе, называемом «pulseGroup». PulseGroup непрерывно измеряет сетевой путь между узлами, предоставляя каждому узлу полную сетку односторонних измерений задержки. Эти данные могут использоваться для контрольно-измерительных приборов, настройки протокола маршрутизации и различных желательных приложений, когда весь интернет-трафик оптимизирован и зашифрован по сетевому пути.

    Об авторе

    Уильям Б. Нортон является соучредителем и главным техническим представителем NOIA Network. В 1990-х он разработал программное обеспечение (Internet-Rover), которое управляло ядром Интернета, магистралью NSFNET. Будучи первым председателем NANOG, он помогал конкурентам отрасли переходить от NSFNET к общедоступному Интернету сегодня.

    Будучи соучредителем и главным техническим представителем Equinix (1998–2008), Билл поощрял принятие общепринятой в настоящее время в сети сообщества практики взаимодействия друг с другом для взаимной выгоды. Это задокументировано в его официальных документах (например, «Бизнес-кейс для пиринга»). За более чем 25-летний опыт работы над интернет-технологиями Билл консультировал на всех континентах, от интернет-провайдеров и операторов связи до центров обработки данных, потоковых облачных игр, глобальных фирм электронной коммерции и инвестиционных аналитиков. Билл является признанным экспертом в области интернет-пиринга, а также автором десятков белых книг и The Internet Peering Playbook: Подключение к ядру интернета.

    Ссылки:

    Сайт https://noia.network/

    GitHub https://github.com/noia-network

    Facebook https://www.facebook.com/NOIANetwork/

    Twitter https://twitter.com/NoiaNetwork

    Medium https://medium.com/noia

    Reddit https://www.reddit.com/r/NOIA/

    Youtube https://www.youtube.com/channel/UChCZuura_kvQog6uiRDPu3g

    Telegram https://t.me/NoiaNetwork/

    Официальный русскоязычный телеграм чат https://t.me/NOIA_RUS

Обсудить в Discord!