Тема программно определяемых сетей сейчас у всех на устах. С ней сталкиваются специалисты практически из всех сегментов ИТ. SDN обладает достаточным потенциалом, чтобы произвести революционные изменения в отрасли — в этом мнении эксперты едины. Но что вообще представляет из себя SDN и какие преимущества эта технология обеспечивает для центров обработки данных?

 

Концепция программно определяемых сетей (Software-Defined Networking, SDN) состоит из трех тематических подразделов: виртуализация сетевых функций (Network Function Virtualization, NFV), оркестровка и управление потоками. В случае NFV речь идет о замене специализированного аппаратного обеспечения на программные решения. К примеру, физическую систему балансировки нагрузки (Load Balancer) можно заменить на соответствующее программное решение (Virtual Load Balancer), запускаемое на собственной виртуальной машине или на выделенном сервере. Виртуализацию сетевых функций можно рассматривать как в качестве составного элемента программно определяемых сетей, так и в виде дополнения к ним.

Под оркестровкой подразумевается централизованная конфигурация целых ЦОД или даже всей инфраструктуры облачных провайдеров (Cloud Service Provider, CSP). Она охватывает конфигурации виртуализированных вычислительных сред (виртуальных машин), систем хранения, а также сетей (см. Рисунок 1). Только наличие эффективных централизованных инструментов для оркестровки позволит реализовать экономически выгодное и динамичное управление крупномасштабными средами CSP (IaaS, SaaS). Таким образом, вместо выполнения множества одиночных заданий на конфигурирование и внедрение можно за короткое время автоматически создать и протестировать индивидуальные виртуализированные ИТ-среды (без физического вмешательства, а в некоторых случаях даже через клиентские порталы), а по завершении работы освободить использовавшиеся ресурсы для дальнейшей эксплуатации.

Рисунок 1. Схематическое изображение программно определяемой сети облачного сервис-провайдера с поддержкой множественной аренды (Multitenancy).
Рисунок 1. Схематическое изображение программно определяемой сети облачного сервис-провайдера с поддержкой множественной аренды (Multitenancy).

 

Для оркестровки важны два момента: наличие у задействованных компонентов подходящих административных интерфейсов (к примеру, RESTful API) и способность центрального конфигуратора эффективно настраивать имеющиеся ресурсы и управлять ими через эти интерфейсы. Для использования в ЦОД доступны, помимо отдельных решений от различных производителей, подходы с открытыми исходными кодами — к примеру, OpenStack или CloudStack. Для того чтобы выполнить конфигурацию определенного ресурса с помощью инструмента для оркестровки, понадобится подходящий драйвер или подключаемый модуль для этого инструмента. При этом особое значение имеет интеграция как с проприетарными решениями, так и со средами оркестровки с открытыми исходными кодами.

За понятием «управление потоками» (Flow-Management), или «программируемый контроль» (Programmatic Control), скрывается процесс централизованного управления отдельными потоками данных (Flow). Многие считают его ключевым подразделом SDN. Альянс Open Networking Foundation (ONF) предложил стандарт OpenFlow, который описывает прямой доступ к подсистеме коммутации трафика (Forwarding Plane) на физических или виртуальных / базирующихся на гипервизоре коммутаторах и маршрутизаторах.

Такой подход позволяет разнести подсистемы коммутации и управления (Control Plane) сетевого узла: вместо традиционной децентрализованной концепции, когда названные подсистемы реализуются производителем на одном сетевом узле, теперь подсистему управления можно отделить от определенного сетевого узла и реализовать централизованно. В результате повышаются гибкость и эффективность функций управления потоками пакетов в локальных сетях ЦОД, а также в кампусных, городских (MAN) и даже глобальных (WAN) сетях. Кроме того, отделение этих функций от аппаратных средств и контроллеров позволяет ускорить реализацию новых возможностей в масштабах всей сети.

Существует два основных подхода к управлению потоками: концепция на основе узлов (Node) и использование наложенных сетей (Overlay). В первом случае управление отдельными сетевыми узлами осуществляется с помощью стандарта OpenFlow через централизованный контроллер. Этот способ наиболее предпочтителен при построении новых сетей. При наложенном подходе (к примеру, в случае VXLAN) специализированное программное обеспечение осуществляет сквозное туннелирование отдельных потоков данных через стандартные IP-сети, и тогда не надо поддерживать OpenFlow в масштабах всей сети — требуется лишь инициализация соответствующих туннелей. Такой способ чаще всего используется в уже существующих сетях.

ETHERNET FABRICS

Помимо программно определяемых сетей, широко обсуждается тема коммутирующих структур (Fabric). Термин «фабрика», или «виртуальный кластер коммутации» (Virtual Cluster Switching, VCS), означает объединение физических узлов в виртуальные. Важным фактором, способствующим распространению принципов фабрики, является возможность использования внутри фабрики оптимизированных протоколов передачи данных и решений, позволяющих улучшить характеристики процесса передачи данных (к примеру, поддержку множественных маршрутов — Multipathing). Благодаря использованию общей распределенной подсистемы управления упрощается эксплуатация структуры Fabric (то есть виртуального кластера).

Наличие в ЦОД комбинации из программно определяемых сетей и Ethernet Fabric — это беспроигрышный вариант. В результате объединения сложных структур в виртуальные узлы затраты усилий на оркестровку и управление потоками значительно сокращаются. Вместо того чтобы осуществлять настройку множества отдельных физических узлов, а затем их контролировать и обслуживать, требуется уделять внимание лишь нескольким логическим узлам.

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

Для обеспечения взаимосвязи хост-систем Ethernet Fabric предлагает ряд значимых нововведений. К примеру, при одновременном использовании параллельных соединений между соседними узлами фабрики доступная пропускная способность значительно повышается благодаря распределению нагрузки (Load Balancing). Кроме того, алгоритмы определения кратчайших путей (Shortest Path First) позволяют находить наиболее оптимальные соединения между всеми узлами внутри фабрики. Интегрированная технология передачи по множественным равнозначным каналам (Equal Cost Multi-Path, ECMP) обеспечивает при любой топологии сети возможность параллельного использования равновеликих путей передачи данных, проходящих через разные сетевые узлы. При этом отдельные потоки данных равномерно распределяются по равнозначным параллельным соединениям внутри фабрики. Благодаря такому оптимальному использованию инфраструктуры сокращается необходимое число каналов (а следовательно, и затраты на инфраструктуру) и уменьшается время передачи пакетов, что способствует более быстрой реакции приложений.

При централизации и виртуализации сервисов в облачных ЦОД важной и сложной задачей является комбинирование самых разнообразных типов трафика. Применение гибких правил SDN позволяет централизованно и в реальном времени осуществлять идентификацию отдельных потоков данных и при необходимости применять для них особые правила маршрутизации. Это может потребоваться в следующих случаях:

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

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

ЗАКЛЮЧЕНИЕ

Технология программно определяемых сетей предоставляет большое количество новых возможностей и преимуществ. Однако пока она находится еще на очень раннем этапе развития. Ее преимущества частично нивелируются повышенными затратами усилий на внедрение соответствующих решений, а также на программирование уникальных интерфейсов контроллеров, к примеру для порталов самообслуживания и управления неисправностями (Fault-Management). В долгосрочной перспективе сетевые решения на базе технологии SDN будут использоваться не только внутри отдельных ЦОД и для организации соединений между несколькими ЦОД, но и в масштабах глобальных сетей.

Ули Брокс — системный инженер в компании Brocade, Йоханнес Вайнгарт — старший продукт-менеджер в компании Brocade.