Описание

by Sasha Shkrebets last modified Feb 06, 2023 12:35 PM
Что такое программно-конфигурированные сети (SDN), каковы преимущества SDN по сравнению с обычными сетевыми архитектурами, краткий обзор курса.
История SDN, ее инфраструктура ... 
Как разрабатываются и строятся SDN, приложения их использование. 

Что такое SDN?

SDN - это тип сетевой архитектуры, разделяющий плоскость сетевых данныхсетевых устройств, которые пересылают трафик
и плоскость управления
программная логика, которая  контролирует  трафик  через сеть.

Разделение плоскости данных  и плоскости управления, позволяет 
сетевому оператору контролировать поведение сети, посредством высокоуровневой программы управления.

Две части инфраструктуры SDN: 
плоскость данных, которая является программируемыми коммутаторами и  
плоскость управления, которая является контроллерами в 
приложениях, которые управляют тем, как плоскость данных пересылает трафик.

Развертывание программного обеспечения, определяющего сеть, часто используется 
для решения различных проблем управления сетью в реальных сетях. 
Чтобы понять SDN, можно сравнить ее парадигму с обычной архитектурой сети.
 
На рисунке  показан пример текущей сетевой архитектуры, где сетевые устройства конкретных маршрутизаторов 
объединены со специализированной плоскостью управления и различными функциями. 

Например,  когда вы покупаете маршрутизатор, вы покупаете  оборудование и  к нему прилагается ПО и  для конфигурации и функционирования этого конкретного маршрутизатора. 

Таким образом, эта вертикальная интеграция  связывает вас с  ПО  и функциональностью  этого конкретного устройства. 

Это объединение эффективно замедляет инновации. 
На самом низком уровне у нас есть пересылка данных,  коммутаторы, которые отвечают за  эту пересылку данных. 

На более высоком уровне существуют более сложные программы для управления сетями - плоскость управления,
которая взаимодействует с плоскостью данных через четко определенный программный интерфейс, такой как, OpenFlow, например.
Поверх этой плоскости управления у нас могут быть более сложные приложения, написанные на языках программирования более высокого уровня, которые выполняют операции управления, такие как 
балансировка нагрузки трафика или типы безопасности приложений.

Как появилась эта идея -  SDN? 

Из наблюдения, что конфигурация распределенной сети, то есть сети, в которой все сетевые устройства настраиваются независимо, на низком уровне устройства, может оказаться ошибочной и непредсказуемой.

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

Рассматривали конкретные  конфигурации и анализировали  поведение сети  в зависимости от конфигурации более низкого уровня.

Один из примеров - это, конфигурация BGP и анализ с целью выяснить, какие междоменные маршруты будут определены  этой конфигурацией.

Было обнаружено, что  было бы проще, если бы вместо этого единая централизованная точка управления могла бы просто диктовать поведение пересылки данных по сети. В этом случае контрольная точка действительно будет знать ответы на это, эти вопросы пересылки уже.

Это было сделано на основе  протокола BGP и  центральная контрольная точка называлась  Платформа управления маршрутизацией, или RCP.

Позже эта архитектура была обобщена в нечто, называемое архитектурой 4D. (Data,Discovery,Dissimination, Decision)

В 4D архитектуре плоскость данных находится на самом низком уровне и отвечает  только за пересылку сетевого трафика. 
Выше плоскости данных являются плоскости обнаружения и распространения
Обнаружение позволяет точке управления сетью обнаруживать, какие ресурсы доступны. 
Распространение основывается  на обнаруженной топологии сети. 
Кроме того, у нас есть логика, которая фактически контролирует поведение сети или плоскости принятия решений  и это  концептуально похоже на RCP.
 
Несколько лет спустя мы увидели еще один экземпляр SDN под названием OpenFlow
Где с помощью SDN или контроллера высокого уровня управляется поведением коммутаторов через четко определенный интерфейс. 
Более подробно  об архитектуре OpenFlow и каналах управления  будет рассказано в более поздних модулях.

Итак, каковы преимущества SDN по сравнению с обычными сетевыми архитектурами? 

Прежде всего, SDN гораздо проще координировать, в частности сетевой оператор может написать программу, которая позволяет координировать поведение различных сетевых устройств. 
Например, если вы хотите балансировать нагрузку по сети, или если вы хотите убедиться, что ваши политики безопасности не мешают политике балансировки нагрузки. 
Эти типы координации гораздо проще в SDN, но в обычной сети  оператор сети должен иметь возможность самостоятельно настраивать и контролировать каждое устройство на языке поставщика низкого уровня. 

 
Так что, если вернуться к той картине, где мы говорили о вертикальной интеграции это очень трудно развивать, потому что программное обеспечение поставляется с аппаратным обеспечением, и любые функции также связаны с конкретным оборудованием. 

Если мы разделим  передачу данных и управление как мы это сделали в SDN, мы можем совершенствовать плоскость управления или  ПО для управления сетями, поведение сети гораздо легче, потому что оно отделено от  базовых сетевых устройств.

Если управлять  поведением сети с помощью высокоуровневой программы это делает поведение сети проще. 
Потому что вы можете посмотреть на любую отдельную программу и выяснить что эта программа будет делать и как она будет управлять сетью. 

И, наконец, упрощается применение различных традиционных подходов к информатике, таких как языки программирования, разработка ПО и тестирование. 

Таким образом, инфраструктура SDN складывается  из двух частей. 

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

Существуют различные области, в которых  приложения SDN могут сильно упростить управление сетью,  такие как центры обработки данных, магистральные сети, корпоративные сети, 
точки обмена Интернетом или внутренние доменные маршрутизации и домашние сети. Таким образом, более в последующих  модулях курса будет показано как SDN может решить проблемы управления сетью в различных областях, таких как эти перечисленные.
Navigation