Область применения: Windows Server 2022, Windows Server 2019, Windows Server 2016
Программно-определяемая сеть (SDN) позволяет централизованно настраивать и контролировать физические и виртуальные сетевые устройства, например маршрутизаторы, коммутаторы и шлюзы в центре обработки данных. Вы можете использовать существующие устройства, совместимые с SDN, чтобы обеспечить более глубокую интеграцию между виртуальной сетью и физической сетью. Такие элементы виртуальной сети, как виртуальный коммутатор Hyper-V, виртуализация сети Hyper-V и шлюз RAS, являются неотъемлемой частью инфраструктуры SDN.
на узлах Hyper-V и виртуальных машинах, на которых выполняются серверы инфраструктуры SDN, такие как узлы сетевого контроллера и программной балансировки нагрузки, должен быть установлен Windows Server 2019 или 2016 datacenter edition.
узлы Hyper-V, содержащие только виртуальные машины рабочей нагрузки клиента, подключенные к сетям, управляемым SDN, могут использовать Windows Server 2019 или 2016 Standard edition.
Это возможно, поскольку сетевые плоскости больше не привязаны к сетевым устройствам. однако другие сущности, такие как программное обеспечение для управления центром обработки данных, например System Center 2016, используют сетевые плоскости. SDN позволяет динамически управлять сетью центра обработки данных, предоставляя автоматизированный, централизованный способ удовлетворения требований приложений и рабочих нагрузок.
SDN можно использовать для:
SDN позволяет выполнять все эти операции, одновременно уменьшая общие затраты на инфраструктуру.
Обращение к группе разработчиков центра обработки данных и облачных сетей
Если вы заинтересованы в обсуждении технологий SDN с корпорацией Майкрософт или другими клиентами SDN, существует множество методов для связи.
С уверенностью можно утверждать — второе десятилетие XXI века окажется переходным в истории информационных технологий, начинается полоса перемен, по значимости не меньшая, чем создание микропроцессора сорок лет назад или Интернета спустя двадцать лет. На нынешней стадии начинающийся переходный процесс ассоциируется с недавно появившимся понятием «программно-определенный» (Software Defined, SD), встречающемся в сочетании с самыми разными технологиями. С 2012 года рядом с SD чаще всего упоминались сети, которые называют программно-конфиругируемыми или программно-определяемыми (Software Defined Networks, SDN). Но этим дело не ограничилось и вслед за сетями появились программно-определяемые системы хранения (Software Defined Storage, SDS), ЦОДы (Software Defined Data Center, SDDC) и системы защиты данных (Software Defined Protection, SDP) и другие области применения SD. На очереди Software Defined WAN, Software Defined WiFi и даже Software Defined Compute или SDC.
Справедливости ради, следует заметить. что впервые словосочетание Software Defined появилось намного раньше, в середине восьмидесятых, причем, вне связи с компьютерами, а в приложении к радио (Software-Defined Radio, SDR). Но программно-определяемые радиосистемы не получили массовое распространение, поэтому после периода затишья второе пришествие Software Defined началось с SDN, а затем активно пошло массовое распространение всех остальных самых разных Software Defined.
О переводе и содержании Software Defined
Многообразие при использовании сочетания Software-Defined с еще чем-то побуждает к анализу Software Defined как самостоятельного феномена, начнем с перевода этого термина. В сетевом контексте software defined обычно используют «программно-конфигурирумый», что совершенно адекватно сетевой специфике. SDN от традиционных сетей отличает разделение потока работ на две составляющие — поток управления (control path) и поток данных (data path. Это деление позволяет конфигурировать потоки данных посредством программного обеспечения, которому и передается функция формирования потока управляющих воздействий В какой-то мере ту идею дихотомии потоков можно распространить и на СХД, но уже здесь Software Defined рассматривается шире, чем конфигурирование и способы создания сложнее и многообразнее. Еще шире функция Software Defined в SDDC, SDP и SDC.
За короткий промежуток времени стало понятно, что Software Defined — это не частный случай, не альтернативный более эффективный подход к созданию сетей, а глобальный сдвиг компьютерной парадигмы, выражающийся в перемене мест, занимаемых программным и аппаратным обеспечением, в оценке того, что является первичным, а что вторичным. В итоге представляется разумнее переводить Software Defined как «программно-определяемый».
И еще о терминах, с появлением SD вынужденно приходится назвать все, что было прежде, аппаратно-определяемым или Hardware Defined (HD). Противопоставление HD и SD отражает суть происходящего в индустрии, развернувшийся активный процесс переориентации с «железа» на «софт». Вслед за SDN и SDS вскоре возникли другие концепции с префиксом SD, последнее слово по этой части програмно-определяемая безопасность (Software-defined security, SDsec), ее еще называют следующим поколением безопасности (next-generation security), основанном на виртуальных устройствах (software-based, virtual security appliances). В качестве обобщающих терминов для всего отмеченного тренда используют Software Defined Everything (SDx) и Software Defined Infrastructure (SDI). На конференции Gartner Data Center Conference 2014 (декабрь, Лас Вегас) SDx определили как «коллективный термин, отражающий усилия, направленные на абстрагирование традиционного пропраетарного аппаратного обеспечения от специализированных программных решений с тем, чтобы уменьшить привязку пользователя к определенному аппаратному обеспечению с целью повышения качества обслуживания (Quality of Service, QoS) и снижению стоимости».
Истоки SD
Чрезвычайно быстрому распространению феномена Software Defined способствует наличие двух встречных движений, одно со стороны бизнеса, другое со стороны технологий, они взаимно стимулируют друг друга и способствуют ускорению.
Происходящее в бизнесе разъяснил Марк Андриссен. Возможно не всем известно, что он является одним из самых харизматических персонажей современного Интернета. В прошлом он был основным автором первого популярного браузера NCSA Mosaic и сооснователем корпорации Netscape Communications. Проделанная им работа обеспечила невероятный рост популярности Web в девяностые, в сочетании с протоколом протокола Web, разработанным Тимом Бернерс-Ли, браузер Mosaic открыл возможность для создания простого полноценного пользовательского интерфейса и тем самым сформировал условия для взрывного интереса к Интернету. С тех пор ничего радикального нового в современных браузерах по сравнению с Моsaic не появилось. В начале 90-х всего за пару лет, благодаря Моsaic, Web превратился из малоизвестной информационной среды, доступной ограниченному кругу ученых и специалистов, в пространство, доступное всем и каждому. Сейчас Андриссен весьма приспевающий венчурный капиталист, невероятно удачливый, поэтому может позволить себе фундаментальные пророчества. Он четыре года назад опубликовал в Уолл Стрит Джорнел (WSJ) статью с впечатляющим названием: «Почему ПО пожирает мир» (Why Software Is Eating The World), которая получила заметную реакцию в бизнес и существенно меньшую в компьютерной медиа. Перевес пользу бизнеса понятен, поскольку статья обращена этому сообществу, не случайно она появилась в WSJ.
Название статьи Андриссена кажется слишком претенциозным, при ее прочтении становится ясно, что речь в ней не идет вовсе не обо всем мире и даже не о всех компьютерных технологиях, и тем более не о «пожирании», а всего лишь о смещении центра тяжести, оказывается бизнесу больше нравятся программные технологии, чем железные, они прибыльнее. Андриссен объясняет причины успеха софтверной индустрии высоким показателем соотношения инвестиций к прибыли (Price/Earnings, P/E), чем в «железных» отраслях. Самые большие и быстрые накопления были созданы когда-то Microsoft и Oracle, а сейчас Google, Facebook, список можно продолжить. Высокая доходность софтверного бизнеса привела к тому, что многие в прошлом аппаратные компани меняют свой статус и становятся в большей мере программными компаниями, чем железными. Андриссен считает, что в ближайшие годы существующее положение дел в индустрии будет нарушено существующими и вновь созданными компаниями из Силиконовой долины, причем тех кого этот процесс не затронет существенно меньше, чем тех, кто испытывает его влияние.
Высокие темпы развития софтверного бизнеса легко объяснимы. Мы живем в период экономики знаний, а знания, что очевидно, легче и быстрее реализовать в программах, чем в железе, поскольку дистанций между идей и реализацией короче и нематериальное производство куда менее инерционно, чем любой материальное.
Но, разумеется, практическая возможность возникновения парадигмы SD объясняется не столько с интересами бизнеса, столько с тем, что за годы существования компьютинга были созданы необходимые для этого технологические предпосылки. Нынешний взрывной характер распространения SD исторически предопределен, он является логическим следствием всей семидесятилетней эволюцией компьютинга, начиная с работы The First Draft of a Report on the EDVAC Джона фон Неймана. Причины почему все сложилось так, а не иначе, описаны в статье «Архитектура фон Неймана как историческая случайность». В First Draft фон Нейман изложил один, но далеко не единственно возможный из подходов к распределению функций между аппаратным и программным обеспечением, этот подход получил название «модель фон Неймана».
Идеи, изложенные Нейманом, удачно соответствовали техническим возможностям пятидесятых годов и поэтому были беспрекословно приняты мировым сообществом, чтобы в итоге стать самым важным закладным камнем и фундаментальной основной всего современного компьютинга. Неймановская модель создавалась исходя из очевидного на тот момент постулата: главное — дорогое и составляющее это аппаратное обеспечение, оно дает возможность разместить в памяти и выполнить программу. Стоимость ПО была попросту несоизмерима со стоимостью оборудования, оставаясь много лет ниже на порядки. Программы рассматривались как нечто вторичное, даже специальное слово software появилось существенно позже, чем компьютер только лишь в 1958 году, то есть более чем через 10 лет после первых современных компьютеров.
Универсальность по-новому
Компьютеры всегда называли универсальными вычислительными машинами (general-purpose computer), понимая под универсальностью возможность на одном и том «железе» выполнять совершенно разные программы. Один и тот же мэйнфрейм использовали и для бизнеса и доя расчетов, один и тот же мини-компьютер и для управления, и для обработки экспериментальных данных. Появление Software Defined меняет само представление об универсальности, теперь универсальность можно понимать шире, как возможность выполнять любые приложения на любом железе, использовать любое железо. Предпосылки к такому переходу можно проследить по основным вехам в история компьютинга:
За каждым из шагов стоит имплицитное движение от хард к софт. В период с 1950 по1980 развитие рынка определялось исключительно производителями аппаратного обеспечения, только в 80-е ПО становится самостоятельной областью индустрии. А далее постепенно инвестиции в ПО становятся сравнимыми с инвестициями в аппаратное ПО и даже больше. В конце 90-х годов под влиянием массового производства комплектующих для ПК в компьютерной индустрии начался процесс комодитизации «железа», самые яркие примеры — EMC и кластеры Beowolf. В статье «На Шоссе 128» раскрыта история успеха EMC, компания смогла противопоставить очень дорогим специализированным накопителям IBM более дешевые, но не менее надежные СХД, собранные и доступных на рынке дисков. Пожалуй, это был первый успешный пример комодитизации в приложении к корпоративным системам.
В университетском сообществе в то же время стали собирать кластеры из рабочих станций, большая часть современных суперкомпьютеров являются их наследниками. Комодитизация заметно изменяет соотношение между хард/софт в пользу софт, железо может быть универсальным и относительно дешевым, а все специальные функции переносятся в ПО.
Что впереди?
К чему же приведут трансформации, связанные с появлением Software Defined? Скорее всего к исчезновению привычного прямого соответствия между логическими и физическими компонентами информационных систем, времена, когда войдя в машинный зал, можно было с уверенностью сказать «кто есть кто» уйдут в прошлое, но традиции деления на серверы, диски, сети и прочее, заложенные в приложения, останутся, получается что-то вроде «Московского комсомольца». Основным наполнением залов SDDC станет некоторое гетерогенное программно-определяемое окружение (Software Defined Environment, SDE). В ней от серверов остается только название, их заменит эластичная среда с неограниченной мощностью (Software Defined Compute – SDC) из которой под нужды приложений можно будет выделять фрагменты, обладающие необходимыми качествами. Диски и ленты, как таковые, с точки зрения приложения тоже перестанут быть устройствами в современном понимании, они превратятся в некоторые виртуальные пространства хранения данных, которые можно разумно распределять (thin provisioned), удобно компрессировать, реплицировать, перемещать с ровня на уровень, из одного физического места в другое, они образуют среду хранения (Software Defined Storage – SDS). Новые сети будут меньше всего похожи на провода с клемниками, вни превратятся в динамические каналы (Software Defined Networks – SDN), предоставляющие сервисы и работающие на виртуальных машинах.
В SDE все основные составляющие (SDC, SDS и SDN) будут сосуществовать совместно, что позволит оптимизировать распределение нагрузки на всех уровнях и более эффективно использовать ресурсы всей гетерогенной среды.
Сегодня: Hardware Defined Environment
Завтра: Software Defined Environment
Нагрузка вручную силами администраторов статично распределяется между серверами, системами хранения и сетями. Системный администратор определяет виртуальные машины в требуемых конфигурациях и предполагаемыми характеристиками. Силами ИТ-персонала приложения развертываются на виртуальных машинах. Оценка соответствия инфраструктуры требованиям и оптимизация выполняются вручную.
Нагрузка распределяется автоматически и динамически, основываясь на требованиях приложений и наличия доступных ресурсов. Силами ПО, имеющегося в составе SDE, определяются требуемые виртуальные машины с нужными конфигурациями, оно же развертывает приложения, автоматически проверяет соответствие конфигурации требованиям и осуществляет оптимизацию.
Software Defined и облака
И, наконец, облака, как же без них. SDE и облака можно представить как две стороны одной медали. Термин «облако» получил широкое распространение в частности потому, что он оказался на редкость удачным маркетинговой точи зрения, обозначая определенную модель потребления сервисов из соответствующим образом организованных источников, с оплатой по мере потребления, с элементами самообслуживания и т.д. Напротив, SDE корнями из технологической сферы, он символизирует новый инфраструктурный подход, одна из целей которого заключена в создании ЦОДов, наилучшим образом адаптированных к облачным нагрузкам. Такой подход не исключает создание на основе принципов SDE и таких ЦОДов, которые не предполагают поддержку облаков, тем не менее они будут к ней подготовлены на тот случай, если возникнет необходимость.
Сетевые технологии SDN – Software Defined Networking
В современном мире, бизнес в сфере информационных технологий предъявляет все большие требования к гибкости и масштабируемости компьютерных сетей. Так, старожилу IT рынка компании AOL для привлечения одного миллиона клиентов понадобилось 9 лет, Facebook понадобилось 9 месяцев, а онлайн сервису DrawSomething понадобилось всего 9 дней.
При всем этом, можно наблюдать, что основными трендами развития корпоративных сетей и сетей центров обработки данных являются: • стремительный рост объемов трафика и изменение его структуры в сторону передачи видео и унифицированных коммуникаций (UC-C); • необходимость поддержки мобильных пользователей (BYOD) и социальных сетей; • высокопроизводительные кластеры для обработки Больших Данных (BIG DATA); • виртуализация для предоставления облачных сервисов (Cloud Bursting).
При этом сеть в классическом ее виде (управление через командную строку и конфигурационные файлы) становиться ограничивающим фактором развития вычислительной инфраструктуры. Классические подходы к решению проблем, к примеру, на основе виртуализации сетей (VLAN, VRF), не соответствует уровню развития виртуализации серверов и систем хранения данных. Традиционные сети прежде всего статичны и не соответствуют быстрой динамике развития современного IT бизнеса. Возможности масштабирования традиционных сетей не соответствуют требованиям крупного бизнеса и сервис провайдеров (Deutsche Telekom, Facebook, Google, Microsoft, Verizon и Yahoo), а распределенное управление устройствами традиционных сетей слишком сложное и не эффективное. Привязка же к выбранному сетевому производителю не гарантирует поддержку будущих приложений и сервисов, так, по слухам, очередной апгрейд сетевого оборудования компании Amazon имел ценник с девятью нулями. Как результат наблюдается картина, что традиционные архитектуры/дизайны сетей становятся неэффективны в динамических средах.
Необходима новая технология или подход к построению информационных сетей позволяющая решить перечисленные выше проблемы. Такая технология есть и носит название — Software Defined Networking или сокращенно SDN.
Что такое SDN?
По определению от Wikipedia: Программно-конфигурируемая сеть (SDN от англ. Software-defined Networking, также программно-определяемая сеть) — сеть передачи данных, в которой уровень управления сетью отделён от устройств передачи данных и реализуется программно, одна из форм виртуализации вычислительных ресурсов.
Давайте расшифруем это определение. Если рассмотреть современное сетевое устройство (роутер или коммутатор, не принципиально), то оно, как пирог, логически состоит из трех компонентов. 1. Уровень управления – это CLI, встроенный веб-сервер или API и протоколы управления. Задача этого уровня обеспечить управляемость устройством. 2. Уровень управления трафиком – это различные алгоритмы и функционал задачей которого является автоматическая реакция на изменения трафика т. е. интеллект устройства. 3. Передача трафика – функционал обеспечивающий физическую передачу данных, уровень микросхем и сетевых пакетов.
Рисунок 1 Типичное сетевое устройство
Что если: • централизовать управление трафиком, отделив управление от устройств? • централизовать управление устройствами?
В результате «новый» роутер или коммутатор обслуживает только поток данных (уровень передачи трафика DATAPLANE), становиться более простым соответственно более дешевым. Конечно же лишить полностью интеллекта сетевое устройство не получиться, но его достаточно заменить простой таблицей переадресации (forwarding table).
Весь интеллект (MANAGEMENT PLANE и CONTROL PLANE) переносится в отдельное центральное устройство называемое контроллером SDN.
Рисунок 2 Логическая модель сетевых устройств SDN
Итак, мы получаем: • Разделение функций передачи трафика от функций управления (включая контроль как самого трафика, так и осуществляющих его передачу устройств) • Единый, стандартный, открытый интерфейс между устройствами управления и передачи (получивший название OpenFlow) • Централизованное управление сетью (Контроллер SDN) • Виртуализация физических ресурсов сети • Возможности программирования как оборудования (OpenFlow), так и приложений (API — Контроллер SDN) • Быстрее реагировать на изменения в сети • Оптимизировать передачу трафика (L2/3) через большее количество резервных путей • Легче и быстрее настраивать сети • Существенно сократить время развертывания приложений • Упростить управление сетевыми устройствами • Сократить затраты на управление сетями • Централизованное применение политик, увеличение производительности, уменьшение задержек приводит к более эффективному взаимодействию пользователей и приложений как в корпоративных сетях, так и в сетях датацентров • Простота управления. Управление целыми сетями, а не сетевыми устройствами • Открытые, основанные на стандартах протоколы позволят взаимодействовать различным производителям сетевого оборудования между собой, одновременно увеличивая выбор заказчику и конкуренцию между вендорами при снижении затрат, ускоряя инновации как в области программного обеспечения, так и аппаратных средств. • Контроллер SDN поддерживает открытый интерфейс программирования (API), который позволяет программировать его извне, создавая среду для автоматизации и контроля, а также масштабировать функционал для будущих приложений. • Приложение может запрашивать напрямую определенные требования к сети • Видимость всего трафика сети контроллером
Рисунок 3 Общая архитектура SDN
Как видно из архитектуры, кроме классического управления сетью прямыми командами системного администратора к контроллеру, SDN контроллер поддерживает запуск на себе приложений управления сетью. Что из себя представляют эти приложения?
Каждое SDN приложение, по сути, являет собой интерфейс оптимизации сети под конкретное бизнес приложение (к примеру Microsoft Lynk) и его основная роль — изменение сети в реальном времени под текщие нужды обслуживаемой программы. В случае Microsoft Lynk это может быть, к примеру, изменение QoS сети между двумя телефонными абонентами для предачи HD видеозвонка в реальном времени без задержек или создание VPN тоннеля между двумя абонентами.
Рисунок 4 SDN приложение для MS Lynk
Если рассмотреть более подробно информационные потоки в архитектуре SDN, можно заметить два основных направления обмена информацией: первый – между SDN приложениями и второй для управления физическими сетевыми устройствами.
Рисунок 5 Структура и компоненты SDN
Первый поток получил название «северный мост», а второй «южный мост». В качестве «северного моста» выступает протокол на основе RESТ API, а в качестве «южного моста» прижился протокол OpenFlow.
Рисунок 6 Управляющие информационные потоки контроллера SDN
Что же такое OpenFlow?
Openflow — стандартный протокол, является основным элементом концепции SDN который обеспечивает взаимодействие контроллера с сетевыми устройствами. Контроллер используется для управления таблицами потоков коммутаторов, на основании которых принимается решение о передаче принятого пакета на конкретный порт коммутатора. Таким образом, в сети формируются прямые сетевые соединения с минимальными задержками передачи данных и необходимыми параметрами.
Соответственно коммутатор OpenFlow состоит, как минимум, из двух компонент: • таблицы потоков (flow table); • безопасного канала (secure channel)
Рисунок 7 Пример таблицы потоков OpenFlow
Коммутаторы с поддержкой OpenFlow уже доступны на рынке, так в портфолио лидера в разработки концепции SDN – компании Hewlett-Packard, уже более 40 моделей коммутаторов поддерживают OpenFlow версии 1.3, соответственно готовы выступать «кирпичиками» построения реальной сети SDN.
Кроме коммутаторов Hewlett-Packard предлагает несколько моделей готовых контроллеров SDN и бесплатно предоставляет несколько готовых приложений SDN для конкретных бизнес программ, к примеру, Microsoft Lync. Компания HP также поддерживает активное сообщество разработчиков SDN (sdndevcenter.hp.com), где пользователи могут делиться своими идеями, а также онлайн-магазин приложений SDN App Store, откуда пользователи могут скачивать различные приложения на контроллер HP VAN SDN всего в несколько кликов.
Такой интерес Hewlett-Packard к технологии SDN не случаен. Считается, что SDN изменит сети так же, как это сделала в свое время виртуализация на рынке корпоративных серверных систем. Соответственно SDN для компании Hewlett-Packard это стратегическое направление, ведь успех в этом направлении может предоставить лидерство на рынке, пример тому, успех таких крупных игроков на рынке сетевых сервисов как Amazon и Google активно использующих SDN в своей работе.
Hewlett-Packard также считает, что SDN должна строиться на базе открытых стандартах, чтобы каждый желающий мог в этом поучаствовать. Такая открытая экосистема возобновит процесс внедрения инноваций в области сетевых технологий, который приостановился за последние два десятилетия.