SDN – разделяй и властвуй. Часть I

14 январь, 2014 - 09:46Леонід Бараш

Сегодня на многих конференциях и в специализированной прессе активно обсуждается новое направление развития сетевых технологий, называемое Software-defined Networking (SDN). Предлагаемая публикация основана на подборке статей и материалов, доступных в Интернете.

Предпосылки для перемен

Ряд тенденций, четко обозначившихся в последние годы, требуют пересмотра существующей сетевой архитектуры. Среди основных – распространение мобильных устройств и мобильного контента, виртуализация серверов и наступление эры облачных сервисов.

Многие из традиционных сетей являются иерархическими, построенными на нескольких уровнях Ethernet-коммутаторов, образующих древовидную топологию. Такое построение имело смысл, когда доминировала модель вычислений клиент-сервер, но такая статическая архитектура плохо подходила для динамичных вычислений и потребностей СХД в современных корпоративных ЦОД, кампусах и в системах операторского класса. Приведем некоторые из основных тенденций в современных вычислениях, требующих новой сетевой парадигмы.

Прежде всего, это изменение картины трафика, особенно в корпоративных ЦОД. В противоположность приложениям клиент-сервер, где основной объем трафика приходился на каналы «один клиент – один сервер», современные приложения обращаются за данными к различным БД и серверам, создавая пиковые нагрузки в каналах между серверами и СХД (так называемый трафик «восток – запад») прежде чем данные будут переданы на устройство пользователя (трафик «север – юг»). В то же время пользователи также изменяют картину сетевого трафика, требуя доступа к корпоративным данным с любого устройства, в любом месте и в любое время. Наконец, многие CIO пристально присматриваются к модели вычислений, которая может включать частные и публичные облака или некоторую их смесь, что увеличивает трафик в глобальных сетях.

В качестве второй тенденции аналитики отмечают нарастающее использование персональных устройств, таких как смартфоны, планшеты и ноутбуки, для доступа к корпоративной сети, – так называемая консьюмеризация ИТ, если использовать кальку с английского consumerization of IT. От ИТ требуют разрешить доступ этим устройствам к сети с учетом всех их особенностей и в то же время обеспечить безопасность корпоративных данных, интеллектуальной собственности и соответствие нормативным требованиям.

Рост облачных сервисов также включен в число основных ИТ-тенденций. Корпорации очень благосклонно принимают как публичные, так и частные облачные сервисы, что вызвало их беспрецедентный рост. Бизнес-подразделения теперь хотят иметь возможность большего маневра при доступе к приложениям, инфраструктуре и другим ИТ-ресурсам. Обеспечение самообслуживания будь то в частных или публичных облаках требует эластичного масштабирования вычислений и сетевых ресурсов, в идеальном случае – с единым подходом и набором инструментов.

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

Ограничения существующих сетевых технологий

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

Решению проблем традиционными методами препятствует ряд ограничений, присущих имеющейся архитектуре. Существующие сетевые технологии включают множество дискретных наборов протоколов, разработанных для надежной связи хостов на произвольных расстояниях, различных пропускных способностей каналов и топологий. Для удовлетворения запросов бизнеса и технических требований в последние несколько десятилетий индустрия разработала набор сетевых протоколов, которые обеспечивают более высокие производительность, надежность и безопасность. Протоколы определяются изолированно и решают специфическую задачу. Это порождает одно из главных ограничений – сложность. Например, чтобы добавить или убрать какое-нибудь устройство, сетевые администраторы должны провести корректировки в многочисленных коммутаторах, маршрутизаторах, брандмауэрах, порталах веб-аутентификации и т. п., адаптировать списки доступа (ACL), VLAN, QoS и другие базирующиеся на протоколах механизмы, используя для этого инструменты управления на уровне устройств. Во внимание также должны быть приняты топология сети, производители и модели коммутаторов, версии ПО. Такая сложность приводит к относительной статичности сетей, поскольку администраторы стремятся минимизировать риски, привносимые сервисом.

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

Многие корпорации используют общие сети для передачи голоса, данных и видео. Хотя существующие сети могут обеспечить дифференцированные уровни QoS для каждого из трафиков, выделение ресурсов во многих случаях требует ручного управления. Администраторы должны конфигурировать устройства каждого производителя отдельно и настраивать такие параметры, как полоса пропускания и QoS, основываясь на сессиях и приложениях, поскольку статическая природа сетей не допускает динамическую адаптацию при изменении трафика, приложений и пользовательских запросов.

Далее, для реализации общесетевых политик администраторы иногда должны конфигурировать тысячи устройств и механизмов. Например, каждый раз, когда создаются новые ВМ, необходимы часы, а в некоторых случаях и дни, для корректировки ACL в масштабах всей сети. Сложность сетей создает администраторам значительные трудности в применении целостного набора правил доступа, безопасности, QoS и других политик по отношению к возрастающему количеству мобильных пользователей, которые порождают новые угрозы и бреши в корпоративной безопасности.

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

Эти и ряд других несоответствий между запросами рынка и возможностями существующих сетей привели индустрию к переломному моменту – были разработаны программно-управляемые сети (SDN).