ONOS¶
ONOS (Open Network Operating System) — это операционная система с открытым исходным кодом для программно-конфигурируемых сетей (SDN), предназначенная для управления сетевыми устройствами и сервисами в масштабируемых, высокопроизводительных и отказоустойчивых сетях. ONOS предоставляет платформу для разработки и развертывания приложений, управляющих поведением сети, и поддерживает стандартные протоколы, такие как OpenFlow, NETCONF и P4.
¶История
Проект ONOS был основан в 2014 году некоммерческой организацией Open Networking Foundation (ONF), которая занимается продвижением и стандартизацией технологий SDN. Первоначальная разработка велась при участии таких компаний, как AT&T, NTT Communications, SK Telecom, Verizon, а также ряда университетов и исследовательских центров. Целью проекта было создание открытой, модульной и масштабируемой SDN-контроллера, способного работать в сетях операторского класса.
Первая стабильная версия ONOS 1.0 была выпущена в декабре 2014 года. С тех пор проект активно развивался, получив несколько крупных релизов, включая версии с поддержкой виртуализации сетевых функций (NFV), интеграции с облачными платформами (например, OpenStack) и расширенной аналитикой. В 2018 году ONF объединила ONOS с другим своим проектом — CORD (Central Office Re-architected as a Datacenter), что привело к созданию платформы ONOS CORD, предназначенной для построения сетей доступа и агрегации.
¶Архитектура и ключевые особенности
ONOS построена на модульной архитектуре, что позволяет гибко настраивать и расширять её функциональность. Основные компоненты включают:
- Ядро (Core): Обеспечивает базовые функции управления сетью, такие как обработка событий, управление состоянием устройств и маршрутизация.
- Северный интерфейс (Northbound API): Предоставляет API для разработки приложений, которые могут управлять сетью на высоком уровне. Поддерживаются REST API, Java API и другие.
- Южный интерфейс (Southbound API): Отвечает за взаимодействие с сетевыми устройствами через протоколы, такие как OpenFlow, NETCONF, P4Runtime, OVSDB и другие.
- Модули расширения (Providers): Реализуют поддержку конкретных протоколов и устройств.
- Приложения (Apps): Выполняют различные задачи, такие как мониторинг трафика, управление качеством обслуживания (QoS), виртуализация сетей, балансировка нагрузки и т.д.
Ключевые особенности ONOS:
- Масштабируемость: ONOS может работать в кластерной конфигурации, объединяя несколько инстансов в единую логическую систему управления. Это позволяет обрабатывать большие объёмы трафика и управлять тысячами устройств.
- Отказоустойчивость: Кластерная архитектура обеспечивает высокую доступность: при сбое одного узла его функции автоматически перераспределяются между остальными.
- Гибкость: Благодаря модульной архитектуре и поддержке множества протоколов, ONOS может использоваться в различных сетевых средах — от дата-центров до сетей операторов связи.
- Открытый исходный код: ONOS распространяется под лицензией Apache 2.0, что позволяет свободно использовать, модифицировать и распространять код.
¶Применение
ONOS находит применение в различных областях:
- Сети операторов связи: Используется для управления опорными сетями (backbone), сетями доступа и агрегации. Позволяет операторам динамически настраивать пропускную способность, внедрять новые услуги и оптимизировать трафик.
- Дата-центры: Применяется для управления виртуальными сетями, обеспечения изоляции между арендаторами (multi-tenancy) и автоматизации развертывания сетевых сервисов.
- Исследовательские и образовательные проекты: Благодаря открытости и гибкости, ONOS широко используется в университетах и исследовательских лабораториях для изучения SDN и разработки новых протоколов.
- Интернет вещей (IoT): ONOS может использоваться для управления сетями IoT-устройств, обеспечивая их надёжное подключение и обработку данных.
¶Примеры использования
- AT&T: Использовала ONOS для построения своей сети SDN (Software-Defined Network) в рамках проекта Domain 2.0. Это позволило оператору автоматизировать управление сетью и сократить время на внедрение новых услуг.
- NTT Communications: Применяла ONOS для управления своей глобальной сетью, обеспечивая динамическое распределение ресурсов и повышение отказоустойчивости.
- Проект CORD: ONOS является основой для платформы CORD, которая позволяет операторам связи строить сети доступа на базе стандартного оборудования и облачных технологий.
¶Критика и ограничения
Несмотря на широкие возможности, ONOS имеет и некоторые ограничения:
- Сложность настройки: Развёртывание и настройка ONOS, особенно в кластерной конфигурации, требуют высокой квалификации администраторов.
- Зависимость от сообщества: Развитие ONOS в значительной степени зависит от вклада сообщества и компаний-участников ONF. Это может приводить к неравномерному развитию отдельных компонентов.
- Производительность: В некоторых сценариях, особенно при большом количестве устройств или высокой частоте событий, производительность ONOS может быть ниже, чем у коммерческих решений.
¶Интересные факты
- ONOS написана на языке Java, что делает её кроссплатформенной и облегчает интеграцию с другими Java-приложениями.
- Проект ONOS активно использует технологии контейнеризации (Docker) и оркестрации (Kubernetes) для упрощения развёртывания и управления.
- ONOS поддерживает протокол P4, который позволяет программировать поведение сетевых устройств на уровне пересылки пакетов, что даёт ещё большую гибкость по сравнению с OpenFlow.
¶Источники
- Open Networking Foundation. (2024). ONOS Documentation.
- Thomas D. Nadeau, Ken Gray. (2013). SDN: Software Defined Networks. O'Reilly Media.
- Paul Goransson, Chuck Black, Timothy Culver. (2016). Software Defined Networks: A Comprehensive Approach. Morgan Kaufmann.
- ONF. (2024). ONOS Architecture Overview.
- AT&T. (2015). AT&T Domain 2.0: A Software-Defined Network.
- NTT Communications. (2016). NTT Communications' SDN Strategy.
BFOmetr — база данных и аналитика по компаниям России.
На главную BFOmetr →


