Ни для кого не секрет, что современные ИТ системы требуют все большей производительности, надежности и одновременно гибкости, масштабируемости и эффективности, необходимых для удовлетворения запросов современного пользователя и решения задач бизнеса. Особенность сегодняшней ситуации также в том, что ни одним из этих параметров бывает невозможно пожертвовать.
Хорошо известно, что развитие Центров обработки данных уже позволило приблизиться к решению поставленной задачи. Другое дело, что ЦОД это не только и, наверное, не столько физическое объединение компонентов ИТ- инфраструктуры, сколько площадка сосредоточения передовых тенденций и разработок. А поскольку ЦОДы сегодня являются ключевыми элементами ИТ-ландшафта, развитие всех направлений корпоративных ИТ стало укладываться в единый вектор.
Если более конкретно, то в последнее время все чаще начинает звучать понятие программно-определяемого Дата центра (Software Defined Data Center — SDDC). В ходе реализации данной концепции общая задача ставится следующим образом: без деградации параметров надежности и производительности ИТ-решений в целом (верхнюю планку которым задавали и продолжают задавать аппаратные компоненты) повысить адаптируемость вычислительной инфраструктуры, степень утилизации оборудования, и таким образом все остальные вышеназванные характеристики.
В отношении технической реализации речь идет о том, что буквально все элементы ИТ-инфраструктуры, начиная от вычислительных мощностей и заканчивая наиболее универсальными сервисами обработки данных в ЦОДе (такими как, скажем, дедупликация данных, резервное копирование или балансировка нагрузки), начинают жить в пространстве виртуализации. И соответственно все элементы, которые традиционно реализовывались чисто аппаратным способом, становятся программно-определяемыми.
Надо сказать, что сетевая инфраструктура в этом отношении долго оставалась (да и сейчас в значительной степени является) весьма консервативной областью. Сами принципы, в соответствии с которыми формируется архитектура передачи информации, идеи структуризации информационного потока фактически оставались незыблемыми в течение десятилетий, в то время как архитектура вычислений и подходы к хранению данных претерпевали существенные изменения. И тем не менее термин Software Defined Networks постепенно становится все более популярным, а соответствующие системы все чаще внедряются на практике. По оценкам компании IDC, сделанными во второй половине прошлого года, к концу 2017-го рынок должен был достигнуть 1.2 млрд. долларов, увеличившись за два года с 225 млн. долл. Рост более чем в пять раз выглядит убедительно, хотя даже такие, казалось бы, внушительные цифры для технологии SDN явно далеки от потенциально достижимых.
Прежде чем говорить непосредственно об SDN, отмечу, что роль программных разработок в оптимизации сетевого трафика, уже в течение многих лет была и продолжает оставаться достаточно высокой. По крайней мере она всегда была выше, чем в сфере систем хранения данных, которым, кстати, сейчас тоже близки идеи software defined. Сегодня в обеспечении качества трафика пул самых различных софтверных систем совокупно играет едва ли не большую боль, чем вся «железная» основа, изначально заложенная в архитектуру того или иного сетевого устройства. Термин виртуализация, как часть тех же программных разработок, тоже нередко произносится в контексте разговора о сетевых устройствах. Многие, по сути, внешние программные сервисы, направленные на оптимизацию работы сетей и защиту данных, теперь уже прочно воспринимаются как неотъемлемая часть технологий передачи данных. Иными словами если утверждать, что программно-определяемые сети появились уже давно, то формально этот тезис будет правильным. Самый разнообразный софт давно и очень тесно вплетен в мир сетевых устройств, и чтобы лучше понять суть понятия software defined в его современном звучании, попытаемся явно отделить их от решений предыдущих поколений.
Конечно, нынешняя программная определяемость сетей не имеет ничего общего с логическим разделением каналов передачи, что уже очень давно является стандартной практикой реализации сетевых коммуникаций, и при обеспечении должного уровня производительности может всегда реализовываться программным образом. В SDN-сетях логическое разделение сохраняется, и по-иному быть просто не может.
Также следует явно отделить понятие SDN-сетей от довольно популярного в настоящее время NVF (Network Function Virtualization). Базовая идея NFV состоит в том, чтобы виртуализовать сетевые сервисы, таким образом абстрагируя их от оборудования того или иного производителя. В результате типичной аппаратной основой виртуализированных сетевых сервисов часто становятся обычные серверы. Идеи, заложенные в SDN, заметно шире, но при необходимости внутри соответствующих устройств виртуализация сетевых функций может быть реализована в полном объеме.
Отдельно следует выделить SDN на фоне целого набора программных технологий, связанных оптимизацией сетевого трафика и применяемых в конкретной конфигурации архитектурных решений, при конкретном профиле сетевого трафика профиля и требованиях к его защищенности. Тут следует сказать о такой технологии как Application Delivery Network (ADN), которая в свою очередь предусматривает реализацию нескольких механизмов: Application Delivery Controller (ADC), WAN Optimization Controllers (WOCs), Web Application Firewalls и Secure Access Gateways. Утомлять долгим перечислением отдельных функций этого пула механизмов вряд ли имеет смысл, поэтому отмечу только принципиальные моменты. То, что задача обеспечения безопасности передачи данных тут выделяется особо, ясно из приведенных выше названий. Что касается сетевой оптимизации, то она, безусловно, очень востребована и заметно повышает эффективность передачи. Своего рода «козырь» данной технологии состоит в том, что она действует по ситуации, складывающейся в определенный момент времени в определенном сегменте сети, и в соответствии с этой ситуацией задействует те или иные методы воздействия на трафик (как-то дедупликация, кэширование и целый ряд других ). Основу сетевой оптимизации и защиты сетевых сегментов часто составляют аппаратные комплексы, но в силу очень высоких требований в отношении адаптируемости функций этих устройств к практическим сценариям передачи данных, программное обеспечение тут тоже играют очень большую роль.
Возвращаясь к теме SDN, важно отметить, что в данном случае мы не имеем противоречия с ранее используемыми программными разработками. В случае необходимости SDN- устройства способны взять на себя и эти функции, что, как правило, исключает необходимость устанавливать специальные устройства как в ЦОДах, так и на удаленных площадках.
В результате мы смело можем утверждать, что Software Defined Networks позволяет реализовать полный набор сервисов, которые за все время существования сетей передачи данных появлялись в рамках отдельных технологических разработок. Эти разработки на том или ином этапе были продиктованы потребностями в оптимизации сетевого трафика, а также необходимостью защиты данных и в целом соответствовали уровню развития программной ИТ-инфраструктуры на тот или иной момент времени.
Иными словами SDN-сети представляют собой наиболее фундаментальный подход использования программных решений в построении сетей передачи данных. А благодаря идеологии и архитектуре могут предоставить заказчику и еще целый ряд дополнительных возможностей.
Безусловно, у SDN-сетей есть общая архитектура, которая заметно отличается от классической. В рамках традиционной парадигмы, как известно, лежит концепция статической сети. Первоначально созданные и настроенные сетевые домены составляют ее основу и в этом смысле реализованная первоначально архитектурная модель не изменяются со временем. Сетевые инженеры отвечают за проектирование топологии сети, конфигурирование параметров качества сервиса (QoS), а в ходе эксплуатации за соблюдение данных параметров, а также за локализацию и устранение проблем в коммутации или маршрутизации трафика.
В случае SDN-сетей подобное понятие фиксированной среды более не существует. Вместо этого схема маршрутизации может меняться в зависимости от имеющихся по факту потоков данных в различных участках в сети, которые в свою очередь зависят от профиля нагрузки работающих поверх этой сети прикладных систем.
В настоящее время существуют несколько по сути конкурирующих между собой моделей SDN-сетей, среди которой наиболее узнаваемой, пожалуй, является модель Open Network Foundation (ONF). Она уже весьма подробно представлена в литературных источниках и повторять многочисленные ее описания я не буду. Не смотря на свою узнаваемость, пока эту модель вряд ли можно назвать лидирующей на рынке. Скорее она является лишь одним из вариантов реализации концепции Software Defined Network, и наряду с ней также существуют альтернативные разработки. Среди них есть модели схожие по идеологии с тем, что предлагает ONF (так называемые fabric-based сети), есть, наоборот отличающиеся, среди которых можно назвать модель overlay-based, в основу которой во многом положены уже давно известные идеи тунелирования и инкапсуляции сетевого трафика. Подробный разбор этих схем является предметом глубоко профессионального повествования, что в условиях еще не очень уверенного понимания всех тонкостей технологий SDN даже в профессиональных кругах, все-таки представляется преждевременным.
Конечно, и предыдущее поколение маршрутизаторов не могли функционировать полностью в изолированном и статическом состоянии. Информационный обмен между ними, (по крайней мере в некоем «ближнем порядке»), приводящий к постоянному обновлению локальных таблиц маршрутизации на каждом устройстве, происходил всегда. Это штатный процесс, определяющий последующие маршруты движения данных в рамках заранее построенной топологии сети. Данный процесс реализуется при работе любой сети и в устоявшейся сетевой терминологии носит название пространства управления (control plane). На основе соответствующих настроек непосредственно происходит сквозное движение данных по сети, и это движение в совокупности носит название пространства данных (data plane). В традиционных сетевых устройствах такое разделение если и существует, то скорее как теоретическая парадигма, позволяющая структурировать отдельные функции сетевого устройства и таким образом лучше понять их работу. Логика на уровне внутренней архитектуры в данном случае остается абсолютно монолитной.
Базовая идея SDN-сетей состоит в том, чтобы разделить эти два пространства, что согласно уже имеющемуся опыту применения технологий программного управления различных аппаратных устройств должно приводить к упрощению управления и к появлению возможностей максимально гибкого его использования. В результате такого разделения control plane фактически превращается в операционную систему компьютерной сети, в то время как уровню data plane, наоборот, отводится роль пассивной маршрутизации, осуществляемой посредством команд, вырабатываемых на уровне control plane. Таким образом, развитие сетевых технологий вполне укладывается в общий технологический вектор. Если вернуться к теме программно-определяемых датацентров, то там решения тоже делятся на два пространства, — применительно к SDDC это то же пространство управления (control plane) и пространство сервисов (service plane).
Иными словами, сеть становится полностью программируемой, и самое главное в этом свойстве состоит в том, что данное программирование в большинстве практических ситуаций, по сути, инициируется не администраторами, а самими прикладными системами. То есть исходя из логики их функционирования и потребности в сетевых ресурсах на данный момент, прикладные системы «ставят задачу» SDN-сети.
В ближайшем будущем, когда широко известная концепция Интернета вещей начнет, наконец, начнет обретать практические очертания, сетевой трафик окажется и более динамичными, и более насыщенным, и более разнообразным по формату. Количество прикладных систем, с которыми работает как бизнес, так и индивидуальные пользователи тоже возрастет.
Появляющаяся сейчас концепция EDGE Computing, являющаяся по сути комплиментарной идеям IoT, напрямую говорит о том, что значительная часть нагрузки ляжет именно на филиалы.
Всеобщую мобильность на сегодняшний день также можно рассматривать как своего рода «пробу пера» для технологий Intentet of Things. На уровне функционирования прикладных систем эти два мира, наверное, кажутся совершенно разными, но в проекции на сетевые технологии у них как раз очень много общего. И в этом смысле не случайно, что сейчас можно встретить довольно большое количество публикаций, связывающих SDN и с мобильностью, и с IoT, и с EDGE Computing.
Еще один мощный потенциал для развития SDN-сетей лежит во взрывном росте видео-контента, как при использовании Интернета индивидуальными пользователями, так и в корпоративных сетях.
Есть также устойчивое мнение, что своего рода «точкой кристаллизации» развития SDN-сетей станет крупный бизнес, занимающийся проблемами формирования, хранения и распространения электронного контента по модели аутсорсинга. Это могут быть мобильные операторы, операторы домашнего телевидения или же компании, берущие на себя решения по поддержанию жизненного цикла электронных информационных ресурсов для своих корпоративных клиентов. Принято считать, что сначала концепция Software Defined Networks найдет широкое применение в их датацентрах, и спустя некоторое время начнет покрывать собой все пространство электронных коммуникаций.
Программно-управляемые и программно-определяемые
Хорошо известно, что развитие Центров обработки данных уже позволило приблизиться к решению поставленной задачи. Другое дело, что ЦОД это не только и, наверное, не столько физическое объединение компонентов ИТ- инфраструктуры, сколько площадка сосредоточения передовых тенденций и разработок. А поскольку ЦОДы сегодня являются ключевыми элементами ИТ-ландшафта, развитие всех направлений корпоративных ИТ стало укладываться в единый вектор.
Если более конкретно, то в последнее время все чаще начинает звучать понятие программно-определяемого Дата центра (Software Defined Data Center — SDDC). В ходе реализации данной концепции общая задача ставится следующим образом: без деградации параметров надежности и производительности ИТ-решений в целом (верхнюю планку которым задавали и продолжают задавать аппаратные компоненты) повысить адаптируемость вычислительной инфраструктуры, степень утилизации оборудования, и таким образом все остальные вышеназванные характеристики.
В отношении технической реализации речь идет о том, что буквально все элементы ИТ-инфраструктуры, начиная от вычислительных мощностей и заканчивая наиболее универсальными сервисами обработки данных в ЦОДе (такими как, скажем, дедупликация данных, резервное копирование или балансировка нагрузки), начинают жить в пространстве виртуализации. И соответственно все элементы, которые традиционно реализовывались чисто аппаратным способом, становятся программно-определяемыми.
Надо сказать, что сетевая инфраструктура в этом отношении долго оставалась (да и сейчас в значительной степени является) весьма консервативной областью. Сами принципы, в соответствии с которыми формируется архитектура передачи информации, идеи структуризации информационного потока фактически оставались незыблемыми в течение десятилетий, в то время как архитектура вычислений и подходы к хранению данных претерпевали существенные изменения. И тем не менее термин Software Defined Networks постепенно становится все более популярным, а соответствующие системы все чаще внедряются на практике. По оценкам компании IDC, сделанными во второй половине прошлого года, к концу 2017-го рынок должен был достигнуть 1.2 млрд. долларов, увеличившись за два года с 225 млн. долл. Рост более чем в пять раз выглядит убедительно, хотя даже такие, казалось бы, внушительные цифры для технологии SDN явно далеки от потенциально достижимых.
Прежде чем говорить непосредственно об SDN, отмечу, что роль программных разработок в оптимизации сетевого трафика, уже в течение многих лет была и продолжает оставаться достаточно высокой. По крайней мере она всегда была выше, чем в сфере систем хранения данных, которым, кстати, сейчас тоже близки идеи software defined. Сегодня в обеспечении качества трафика пул самых различных софтверных систем совокупно играет едва ли не большую боль, чем вся «железная» основа, изначально заложенная в архитектуру того или иного сетевого устройства. Термин виртуализация, как часть тех же программных разработок, тоже нередко произносится в контексте разговора о сетевых устройствах. Многие, по сути, внешние программные сервисы, направленные на оптимизацию работы сетей и защиту данных, теперь уже прочно воспринимаются как неотъемлемая часть технологий передачи данных. Иными словами если утверждать, что программно-определяемые сети появились уже давно, то формально этот тезис будет правильным. Самый разнообразный софт давно и очень тесно вплетен в мир сетевых устройств, и чтобы лучше понять суть понятия software defined в его современном звучании, попытаемся явно отделить их от решений предыдущих поколений.
Это вам не это и здесь вам не тут: разбираемся в деталях SDN
Конечно, нынешняя программная определяемость сетей не имеет ничего общего с логическим разделением каналов передачи, что уже очень давно является стандартной практикой реализации сетевых коммуникаций, и при обеспечении должного уровня производительности может всегда реализовываться программным образом. В SDN-сетях логическое разделение сохраняется, и по-иному быть просто не может.
Также следует явно отделить понятие SDN-сетей от довольно популярного в настоящее время NVF (Network Function Virtualization). Базовая идея NFV состоит в том, чтобы виртуализовать сетевые сервисы, таким образом абстрагируя их от оборудования того или иного производителя. В результате типичной аппаратной основой виртуализированных сетевых сервисов часто становятся обычные серверы. Идеи, заложенные в SDN, заметно шире, но при необходимости внутри соответствующих устройств виртуализация сетевых функций может быть реализована в полном объеме.
Отдельно следует выделить SDN на фоне целого набора программных технологий, связанных оптимизацией сетевого трафика и применяемых в конкретной конфигурации архитектурных решений, при конкретном профиле сетевого трафика профиля и требованиях к его защищенности. Тут следует сказать о такой технологии как Application Delivery Network (ADN), которая в свою очередь предусматривает реализацию нескольких механизмов: Application Delivery Controller (ADC), WAN Optimization Controllers (WOCs), Web Application Firewalls и Secure Access Gateways. Утомлять долгим перечислением отдельных функций этого пула механизмов вряд ли имеет смысл, поэтому отмечу только принципиальные моменты. То, что задача обеспечения безопасности передачи данных тут выделяется особо, ясно из приведенных выше названий. Что касается сетевой оптимизации, то она, безусловно, очень востребована и заметно повышает эффективность передачи. Своего рода «козырь» данной технологии состоит в том, что она действует по ситуации, складывающейся в определенный момент времени в определенном сегменте сети, и в соответствии с этой ситуацией задействует те или иные методы воздействия на трафик (как-то дедупликация, кэширование и целый ряд других ). Основу сетевой оптимизации и защиты сетевых сегментов часто составляют аппаратные комплексы, но в силу очень высоких требований в отношении адаптируемости функций этих устройств к практическим сценариям передачи данных, программное обеспечение тут тоже играют очень большую роль.
Возвращаясь к теме SDN, важно отметить, что в данном случае мы не имеем противоречия с ранее используемыми программными разработками. В случае необходимости SDN- устройства способны взять на себя и эти функции, что, как правило, исключает необходимость устанавливать специальные устройства как в ЦОДах, так и на удаленных площадках.
В результате мы смело можем утверждать, что Software Defined Networks позволяет реализовать полный набор сервисов, которые за все время существования сетей передачи данных появлялись в рамках отдельных технологических разработок. Эти разработки на том или ином этапе были продиктованы потребностями в оптимизации сетевого трафика, а также необходимостью защиты данных и в целом соответствовали уровню развития программной ИТ-инфраструктуры на тот или иной момент времени.
Иными словами SDN-сети представляют собой наиболее фундаментальный подход использования программных решений в построении сетей передачи данных. А благодаря идеологии и архитектуре могут предоставить заказчику и еще целый ряд дополнительных возможностей.
Что нам стоит сеть построить…
Безусловно, у SDN-сетей есть общая архитектура, которая заметно отличается от классической. В рамках традиционной парадигмы, как известно, лежит концепция статической сети. Первоначально созданные и настроенные сетевые домены составляют ее основу и в этом смысле реализованная первоначально архитектурная модель не изменяются со временем. Сетевые инженеры отвечают за проектирование топологии сети, конфигурирование параметров качества сервиса (QoS), а в ходе эксплуатации за соблюдение данных параметров, а также за локализацию и устранение проблем в коммутации или маршрутизации трафика.
В случае SDN-сетей подобное понятие фиксированной среды более не существует. Вместо этого схема маршрутизации может меняться в зависимости от имеющихся по факту потоков данных в различных участках в сети, которые в свою очередь зависят от профиля нагрузки работающих поверх этой сети прикладных систем.
В настоящее время существуют несколько по сути конкурирующих между собой моделей SDN-сетей, среди которой наиболее узнаваемой, пожалуй, является модель Open Network Foundation (ONF). Она уже весьма подробно представлена в литературных источниках и повторять многочисленные ее описания я не буду. Не смотря на свою узнаваемость, пока эту модель вряд ли можно назвать лидирующей на рынке. Скорее она является лишь одним из вариантов реализации концепции Software Defined Network, и наряду с ней также существуют альтернативные разработки. Среди них есть модели схожие по идеологии с тем, что предлагает ONF (так называемые fabric-based сети), есть, наоборот отличающиеся, среди которых можно назвать модель overlay-based, в основу которой во многом положены уже давно известные идеи тунелирования и инкапсуляции сетевого трафика. Подробный разбор этих схем является предметом глубоко профессионального повествования, что в условиях еще не очень уверенного понимания всех тонкостей технологий SDN даже в профессиональных кругах, все-таки представляется преждевременным.
Конечно, и предыдущее поколение маршрутизаторов не могли функционировать полностью в изолированном и статическом состоянии. Информационный обмен между ними, (по крайней мере в некоем «ближнем порядке»), приводящий к постоянному обновлению локальных таблиц маршрутизации на каждом устройстве, происходил всегда. Это штатный процесс, определяющий последующие маршруты движения данных в рамках заранее построенной топологии сети. Данный процесс реализуется при работе любой сети и в устоявшейся сетевой терминологии носит название пространства управления (control plane). На основе соответствующих настроек непосредственно происходит сквозное движение данных по сети, и это движение в совокупности носит название пространства данных (data plane). В традиционных сетевых устройствах такое разделение если и существует, то скорее как теоретическая парадигма, позволяющая структурировать отдельные функции сетевого устройства и таким образом лучше понять их работу. Логика на уровне внутренней архитектуры в данном случае остается абсолютно монолитной.
Базовая идея SDN-сетей состоит в том, чтобы разделить эти два пространства, что согласно уже имеющемуся опыту применения технологий программного управления различных аппаратных устройств должно приводить к упрощению управления и к появлению возможностей максимально гибкого его использования. В результате такого разделения control plane фактически превращается в операционную систему компьютерной сети, в то время как уровню data plane, наоборот, отводится роль пассивной маршрутизации, осуществляемой посредством команд, вырабатываемых на уровне control plane. Таким образом, развитие сетевых технологий вполне укладывается в общий технологический вектор. Если вернуться к теме программно-определяемых датацентров, то там решения тоже делятся на два пространства, — применительно к SDDC это то же пространство управления (control plane) и пространство сервисов (service plane).
Иными словами, сеть становится полностью программируемой, и самое главное в этом свойстве состоит в том, что данное программирование в большинстве практических ситуаций, по сути, инициируется не администраторами, а самими прикладными системами. То есть исходя из логики их функционирования и потребности в сетевых ресурсах на данный момент, прикладные системы «ставят задачу» SDN-сети.
SDN-ростки на ИТ-ландшафте
В ближайшем будущем, когда широко известная концепция Интернета вещей начнет, наконец, начнет обретать практические очертания, сетевой трафик окажется и более динамичными, и более насыщенным, и более разнообразным по формату. Количество прикладных систем, с которыми работает как бизнес, так и индивидуальные пользователи тоже возрастет.
Появляющаяся сейчас концепция EDGE Computing, являющаяся по сути комплиментарной идеям IoT, напрямую говорит о том, что значительная часть нагрузки ляжет именно на филиалы.
Всеобщую мобильность на сегодняшний день также можно рассматривать как своего рода «пробу пера» для технологий Intentet of Things. На уровне функционирования прикладных систем эти два мира, наверное, кажутся совершенно разными, но в проекции на сетевые технологии у них как раз очень много общего. И в этом смысле не случайно, что сейчас можно встретить довольно большое количество публикаций, связывающих SDN и с мобильностью, и с IoT, и с EDGE Computing.
Еще один мощный потенциал для развития SDN-сетей лежит во взрывном росте видео-контента, как при использовании Интернета индивидуальными пользователями, так и в корпоративных сетях.
Есть также устойчивое мнение, что своего рода «точкой кристаллизации» развития SDN-сетей станет крупный бизнес, занимающийся проблемами формирования, хранения и распространения электронного контента по модели аутсорсинга. Это могут быть мобильные операторы, операторы домашнего телевидения или же компании, берущие на себя решения по поддержанию жизненного цикла электронных информационных ресурсов для своих корпоративных клиентов. Принято считать, что сначала концепция Software Defined Networks найдет широкое применение в их датацентрах, и спустя некоторое время начнет покрывать собой все пространство электронных коммуникаций.