Какие есть открытые ОС для сетевого оборудования

На днях мы обсудили, как госучреждения в Европе переходят на открытое ПО. Теперь расскажем, кто делает что-то подобное на уровне ИТ-инфраструктуры — на примере пары открытых ОС.


Фото — Clint Adair — Unsplash
 

«Соник в сети»


Это открытая ОС, построенная на Linux. В качестве базового дистрибутива здесь выбран Debian. Она управляет свитчами и другим сетевым оборудованием от разных поставщиков. В разработке системы приняли участие такие организации, как Microsoft, Dell и Broadcom. Исходники распространяют под лицензией Apache 2.0. Операционная система работает на процессорах x86/64 и поддерживает спецификацию SAI (Switch Abstraction Interface). Это — стандартизованный API на C для программирования ASIC’ов. Проект SAI так же передан в open source и есть на GitHub.

Основу архитектуры составляет движок Redis. Он отвечает за репликацию данных и передачу сообщений между подсистемами ОС. Каждый её модуль размещен в docker-контейнере: dhcp-relay, bgp, sncd и несколько других. В общем виде связи между ними можно представить следующим образом:



Некоторые ключевые модули находятся в хост-системе Linux. Для работы с ними задействован особый модуль конфигурации sonic-cfggen и CLI.

Проект используют сами разработчики в собственных дата-центрах и добавляютподдержку системы в свое аппаратное обеспечение. Сегодня её также использует несколько крупных азиатских облачных провайдеров для упрощения работы с ИТ-инфраструктурой. Но резиденты Hacker News, которые успели поработать с этой ОС, все же выделили несколько недостатков.

Один из пользователей отметил относительную сложность настройки, так как в документации прописаны не все требования к портам, интерфейсам и линкам. Также проект использует версию Linux kernel 4.9.x, которая до сих пор поддерживается, но лишена некоторых сетевых возможностей.

Несмотря на открытость, внести изменения в конфигурацию может быть проблематично — разработчики принимают pull-запросы по предварительно одобренным и запланированным вопросам.


Фото — Philipp Katzenberger — Unsplash

Если вы хотите опробовать систему и решить для себя, интересен вам этот проект или нет, можно начать с wiki-странички и документации. Там есть how-to для разработчиков по развертке, тестированию и работе с SAI. Последние новости о проекте можно почерпнуть на оф. портале.
 

Открытый сетевой Линукс


Это дистрибутив Linux (GitHub), разработанный облачной компанией, выкупленной Arista Networks в начале года, для работы на коммутаторах. Он является частью технологического стека NOS (Network Operating System), в который также входит в проект SONiC.
 
Систему поддерживают крупные представители ИТ-рынка — например, производитель сетевых решений Edgecore Networks, а также Google и Facebook. В 2015 году представители Open Compute Project назвали дистрибутив Open Network Linux (ONL) эталонной сетевой ОС.

Open Network Linux имеет агента на базе OF-DPA (OpenFlow Data Plane Abstraction) — он позволяет использовать OpenFlow на коммутаторах с матрицами производства Broadcom. Текущая версия операционной системы основана на ядре Linux 4.14.109. На коммутаторы она устанавливается через стандартизированное окружение Open Network Install Environment (ONIE). Его тоже разрабатывают в рамках Open Compute Project.

Целевой аудиторией этой операционной системы являются небольшие облачные провайдеры и компании, предлагающие SaaS-решения. Авторы ONL и стека NOS надеются, что их проект упростит разработку свитчей и другого сетевого аппаратного обеспечения для массового рынка, поспособствует развитию ИТ-отрасли и популяризирует саму концепцию открытых сетевых ОС.
 

Больше материалов от 1cloud.ru:

Как автоматизировать управление ИТ-инфраструктурой — обсуждаем три тренда
Участие в open source проектах может быть выгодным для компаний — почему и что это дает
Большая часть суперкомпьютеров работает под управлением Linux — обсуждаем ситуацию
Подборка книг по кибербезопасности
История Fidonet за одну минуту