SDN
SDN (Software-defined networking) – программно-конфигурируемая сеть, которая подразумевает физическое разделение плоскости управления сетью от плоскости передачи данных.
2. История создания и развитияИдея создания программируемых сетей возникла после создания универсального языка программирования Java в 1995 году. Одним из первых решений программной сети была платформа GeoPlex от компании AT&T, позволяющая перенастраивать коммутаторы удаленно.
Термин «software-defined networking» впервые упоминается в 2006 году, когда студентами Стэнфордского университета для управления глобальными политиками сети был представлен протокол OpenFlow, впоследствии ставший основным протоколом сети SDN. Затем к исследованиям протокола подключился университет Беркли. Первым контроллером SDN был NOX, разработанный компанией Nicira Neworks в 2008 году. Чуть позже многие другие компании подключились к производству собственных контроллеров и программного обеспечения. Самыми популярными моделяи контроллеров являются: OpenDaylight, Beacon, Floodligh, Maestro, Ryu, Mul, FlowER, Trema.
В 2011 году был создан консорциум Open Networking Foundation (ONF) для продвижения сетей SDN и их стандартизации. Сейчас в ONF входят такие IT-компании как: Facebook, Google, Microsoft, Citrix, Cisco, Dell, Juniper Networks, HP, IBM, Huawei, Oracle и др.
3. Технические характеристикиАрхитектура SDN состоит из 3-х плоскостей:
● Плоскость сетевых приложений – управление сеть в целом, мониторинг трафика, управление политиками сети и т.д.;
● плоскость управления – реагирование на изменение топологии сети, количества устройств, реализация программного интерфейса для сетевых приложений (северный интерфейс);
● плоскость данных – перенаправляет трафик согласно решениям, принятым на уровне управления и представляет собой физические устройства в сети.
Главным элементом всей сети SDN является контроллер, осуществляющий управление ресурсами и топологией сети, управление и контроль всеми коммутаторами в сети посредством использования специального набора правил. Ярким примером такого набора правил является протокол OpenFlow. OpenFlow содержит одну или несколько таблиц правил обработки пакетов. Каждое правило в свою очередь выполняет определенное действие над конкретным типом трафика (включая отброс пакетов, пересылку и т.д.) В зависимости от правил, установленных контроллером на коммутаторе, коммутатор может выступать как межсетевой экран, маршрутизатор, простой коммутатор, транслятор адресов и т.д.
Процесс обработки пакетов заключается в следующем: при поступлении на коммутатор пакета, он посылает запрос на контроллер для получения указаний следующих действий. Контроллер обрабатывает информацию и посылает обратно коммутатору ответ с адресом/портом, куда необходимо переслать пакет. Таким образом, с коммутаторов снимается интеллектуальный функционал, что значительно удешевляет устройства.
4. Кейсы примененияSDN используется для построения сети, которая регулярно растет, а именно для выделения виртуальных сетевых ресурсов, создания дополнительных узлов в сети. Кроме того программно-конфигурируемые сети выгодно использовать в сетях ЦОД, за счет простоты управления серверами, сетью, облачными хранилищами.
Так, например, поступил Google и привел свою сеть центров обработки данных к принципам работы SDN. Также сети SDN интересны в использовании для подключения большого количества устройств к сети (Интернет вещей).
5. Полезные ссылки
- https://habrahabr.ru/company/safedata/blog/313320/
- https://northboundnetworks.com/blogs/sdn/sdn-resource-list
- http://sdnlab.ru/