Microsoft ведет игру на повышение в сфере программно-конфигурируемых сетей (SDN), в основном опираясь на тот факт, что эта технология оказывает ей существенную помощь в предоставлении облачных сервисов Azure для миллионов пользователей.
ИТ-гигант принял участие в конференции ACM SIGCOMM 2015 (Association for Computing Machinery’s Special Interest Group on Data Communications), состоявшейся в середине августа в Лондоне. Компания представила аудитории конференции беглый взгляд на то, как SDN обеспечивают функционирование крупномасштабных облачных нагрузок, которое неизбежно бы застопорилось при использовании традиционных сетевых архитектур.
Microsoft делает ставку на SDN-технологии не только для наращивания собственных облачных вычислительных ресурсов, но и для удовлетворения нужд корпоративных пользователей и операторов дата-центров, заинтересованных в более гибких способах управления своими сетями с учетом специфики работающих в них приложений. Только что выпущенная последняя предварительная версия Windows Server 2016 содержит новые возможности для использования SDN, включая масштабируемый сетевой контроллер и новый программный балансировщик нагрузки.
Начав с собственных ИТ-мощностей, Microsoft полностью вжилась в SDN как центральный компонент своего видения программно-конфигурируемого ЦОДа.
«Учитывая масштабность инфраструктур, которые нам приходится выстраивать, и потребности в создании программно-конфигурируемых дата-центров для миллионов пользователей, нам потребовалось всё изменить в сетевых решениях, и мы так и сделали на уровне оптических кабелей, серверов и сетевых плат, на уровне сетей ЦОДа, на уровне глобальных сетей, на уровне сетей доставки контента Edge/CDN и на уровне последней мили», — написал в корпоративном блоге Альберт Гринберг, заслуженный инженер подразделения Microsoft Networking Development.
Одним из фокусов внимания компании является открытая спецификация Switch Abstraction Interface (SAI), поборниками которой являются Microsoft, Dell, Big Switch Networks и Mellanox.
«SAI представляет собой первый API на базе открытых стандартов и языка Cи для программирования ASIC (специализированные интегральные микросхемы) сетевой коммутации. С ASIC вендоры занимаются очень активными инновациями в сфере ранее жесткой стыковки между коммутационной аппаратурой и ПО стека протоколов, которая мешала нам выбирать наилучшую комбинацию аппаратуры и ПО для построения сетей, поскольку мы не могли достаточно быстро переносить наше ПО», — пояснил Гринберг. Microsoft продемонстрировала на SIGCOMM свой Azure Cloud Switch — ПО коммутации, работающее поверх SAI.
В управлении своими сетями Клоза (топология, также используемая Google, в которой небольшие общераспространенные коммутаторы конфигурируются так, чтобы функционально заменить более крупный логический коммутатор) Microsoft использует технологии типа PingMesh и EverFlow, чтобы обеспечить готовность своих сервисов данных. «Если в масштабе облака происходят отказы компонентов, Azure прекрасно с ними справляется, так как мы используем горизонтальное масштабирование с большим числом компонентов. Наши системы обнаруживают, точно идентифицируют и изолируют неисправные компоненты, осуществляя маршрутизацию в их обход», — сказал Гринберг.
Он допускает, что, несмотря на гибкость, которую обеспечивает программный подход, он может оказаться недостаточным. В таком случае компания обращается к технологии Azure SmartNIC.
SmartNIC использует программируемые пользователем вентильные матрицы (FPGA), позволяющие переконфигурировать сетевую аппаратуру, говорит Гринберг: «Никто не знает, какие SDN-функции могут потребоваться через год. Наши SmartNIC на базе FPGA позволяют нам по мере необходимости перепрограммировать оборудование для наших нужд — именно перепрограммировать, а не перестраивать аппаратурные ресурсы».