На протяжении последних двух лет тема программно-конфигурируемых сетей (SDN) остается в центре внимания профессионалов ИТ-индустрии и производителей оборудования и программного обеспечения. Тем не менее говорить о каких-либо масштабных внедрениях этой технологии в корпоративном или операторском секторе пока не приходится. Наша статья является попыткой ответить на вопрос «когда технология SDN придет и в нашу сеть?».
Немного истории
Итак, для чего же создавалась эта технология? Какие преимущества она дает по сравнению с традиционной сетевой инфраструктурой? Чтобы она прижилась и пошла в массы, должны иметь место существенные плюсы от ее применения. Безусловно, такие плюсы есть, это:
- единый механизм управления всеми сетевыми устройствами (протокол OpenFlow);
- возможность самостоятельно определять логику коммутации внутри сети.
Если по первому пункту выгоды от внедрения вполне очевидны (стандартизация и, как следствие, автоматизация и упрощение управления сетью) то по второму все далеко не так просто. Да, безусловно, реализация собственной логики коммутации – это интересно, но какие выгоды она дает конечному потребителю?
На самом деле, фундаментальных выгод всего две:
- возможность организации виртуальных сетей (Virtual Tenant Networks);
- создание сервисных цепочек (Service Chaining).
Стоит упомянуть также такие «встроенные» возможности сетей на базе SDN, как балансировка трафика и использование произвольных сетевых топологий, но все же определяющими являются именно первые два преимущества.
Аппаратная поддержка SDN
Любой технологии, претендующей на существенную долю рынка, необходима поддержка со стороны производителей аппаратного обеспечения. В случае SDN это прежде всего коммутаторы с поддержкой протокола OpenFlow. В настоящий момент на рынке представлено некоторое количество таких устройств от различных производителей. Их условно можно поделить на три группы:
- большие модульные коммутаторы (Core switch);
- коммутаторы уровня Top of the Rack для ЦОД (ToR switch);
- коммутаторы доступа (Access switch).
В табл. 1 представлены основные характеристики групп коммутаторов.
Табл. 1. Основные характеристики коммутаторов различных групп, представленных на рынке
Какие выводы можно из нее сделать?
- На рынке наблюдается существенный дефицит в сегменте коммутаторов доступа. При этом их текущие характеристики в части количества Flow оставляют желать лучшего. Прибавив к этому весьма скромные возможности по модификации трафика у подавляющего числа моделей, можно сделать неутешительный вывод – в этом сегменте практически нет устройств, пригодных для практического использования. Более того, скорее всего, достойных коммутаторов и не появится, так как производители вряд ли будут вкладывать деньги в выпуск новых гигабитных моделей.
- Наиболее полноценный сегмент рынка на настоящий момент – коммутаторы класса ToR (Top-of-the-Rack). Изначально этот класс оборудования предназначался для ЦОД, но такие коммутаторы могут быть успешно использованы на уровне агрегации корпоративной сети или сети оператора связи. Такое положение дел обусловлено тем, что коммутаторы построены на современных чипсетах, которые обладают значительными объемами памяти и широкими возможностями по модификации трафика. Более того, модельный ряд данного сегмента активно расширяется, поэтому стоит ожидать появления гораздо более продвинутых в части SDN коммутаторов.
- Что же касается коммутаторов уровня ядра, то достойных представителей этого семейства можно пересчитать по пальцам одной руки. Тем не менее такое положение нельзя назвать катастрофическим: коммутаторы подобного класса, как правило, строятся на базе весьма умных чипсетов либо сетевых процессоров, что позволяет производителям в случае необходимости реализовать полноценную поддержку SDN в уже существующих моделях.
Есть ли выход?
Да, безусловно, выход есть всегда. Если в настоящий момент не получается использовать SDN на аппаратных коммутаторах ввиду их малого распространения, можно рассмотреть возможность использования оверлейных сетей и виртуальных коммутаторов.
Отметим, что использование оверлейных сетей возможно далеко не во всех случаях. Ту же корпоративную сеть невозможно полностью построить, используя наложенные сети. Но в центрах обработки данных или распределенных сетях (WAN) использование технологии представляется весьма уместным.
В настоящий момент среди протоколов инкапсуляции, используемых для построения наложенных сетей, определились 2 основных лидера – это всем знакомый GRE (Generic Routing Encapsulation) и новый протокол VxLAN. Они оба, по сути, являются инкапсуляцией, позволяющей организовать общение виртуальных коммутаторов на втором уровне через традиционную L2/L3 сетевую инфраструктуру. Таким образом, использование оверлейных сетей позволяет совместить в рамках одной сетевой инфраструктуры как традиционный подход, так и технологию SDN.
SDN + NFV
Другим трендом последних лет является виртуализация всего и вся. Как следствие, виртуализация добралась и до сетевых функций – маршрутизации, NAT, фильтрации и исследования трафика и т.д. Многие производители, выпускающие аппаратные решения в этой области, либо уже выпустили, либо готовят к выпуску виртуализованные версии своих продуктов.
Этот бум обусловлен двумя обстоятельствами – существенным увеличением производительности x86-серверов и появлением большого числа SDN-подобных технологий. За первым фактором, помимо закона Мура, стоят усилия многих компаний по существенному увеличению производительности платформы x86 в задачах обработки трафика. В частности, компания Intel, специализирующаяся на аппаратном обеспечении, вкладывает значительные средства в разработку библиотек для высокоскоростной обработки трафика и разработки сетевых приложений. Разработанная ею библиотека Intel DPDK (Data Plane Development Kit) используется в продуктах очень многих компаний и позволяет сетевым приложениям достигать производительности от 20 до 40 Гбит/с на один процессор в зависимости от сложности задачи.
Что касается второго обстоятельства, то появление на рынке большого количества фирменных SDN-подобных решений также требует наличия виртуализованных сетевых функций. Работать с виртуализованным оборудованием куда проще, чем с реальным: резервирование и масштабирование не вызывают в этом случае особых проблем.
Для конечного потребителя процесс виртуализации сетевых функций сулит сплошные выгоды: независимость от аппаратных платформ, плавное увеличение производительности и использование недорогих x86-серверов общего назначения. Однако применение лишь технологии NFV (Network Function Virtualization) не дает больших преимуществ в части администрирования сети. При замене физического оборудования на виртуальное никуда не исчезают проблемы с обеспечением отказоустойчивости, балансировкой нагрузки, настройкой маршрутизации, коммутации и т.д.
Хорошей идеей в данном случае является симбиоз 2 технологий – SDN и NFV. Используя возможности SDN по изоляции трафика, созданию сервисных цепочек и балансировке нагрузки и применяя в рамках создаваемой инфраструктуры виртуализованные сетевые функции, можно добиться поразительного результата. Становится возможным персонализировать набор сетевых услуг вплоть до конкретного подразделения или сотрудника в корпоративном секторе либо до конкретного абонента в случае оператора связи. А это прямой путь к предоставлению сетевых услуг по столь популярной в настоящее время сервисной модели, когда конечный потребитель платит только за то, что ему необходимо.