2015-01-22 6 views
5

Я просматривал документы для Open DayLight и, похоже, не мог обернуть мою голову вокруг того, что есть программная сеть. Все рекламные шумы, блоги и статьи, которые я могу найти на SDN, пронизаны ключевыми словами, которые не имеют для меня ничего общего, как инженера. Поэтому я спрашиваю: Что (точно) есть SDN? Что такое конкретные использует случаи/проблемы, которые он решает? ли:Что такое Software-Defined Networking (SDN)?

  • Просто делает запатентованное сетевое оборудование служит сетевые интерфейсы API, что позволяет программам настроить их (вместо ИТ ребят с помощью консоли или веб-интерфейс) ?; или
  • Внедрение (традиционно проприетарное) сетевого оборудования в качестве программного обеспечения; или
  • Написание программного обеспечения, которое каким-то образом интегрируется с оборудованием виртуальной сети, используемым платформами виртуализации (vLAN, vSwitches и т. д.) ;; или
  • Что-то еще полностью?!?

BONUS: Как Open DayLight вписывается в это уравнение здесь?

+0

Посмотрите на раздел III настоящего документа: [Software-Defined Networking: всеобъемлющий обзор] (HTTP: // Arxiv. орг/PDF/1406.0440v3.pdf). В опросе также размещаются различные контроллеры/платформы/технологии. – jmiserez

ответ

3

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

Основной смысл SDN заключается в том, что он позволяет программировать сетевые функции с API. В прошлом сетевые устройства, такие как коммутаторы и маршрутизаторы, были конфигурированы только с использованием проприетарного интерфейса (будь то специализированные инструменты или только CLI на устройстве), и не было никаких API-интерфейсов, которые позволяют настраивать аспекты OSI L2-L3, такие как VLAN и маршруты но и L6 - L7, такие как балансировка нагрузки очень динамично. Btw. В случае функций L6 - L7 термин NVF = Сетевая виртуализованная функция, похоже, уже установлена.

Это особенно необходимо для виртуализованных систем IaaS, поддерживающих многопользовательскую аренду. Вы можете создавать новые VPC и организовывать их по желанию. Чтобы действительно изолировать арендаторов друг от друга, вам необходимо изолировать L2, и поэтому такая же динамика, которая предлагается для VPC, распространяется на сети для их соединения.

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

Что касается OpenDaylight: Это кулон OpenStack для SDN. Они также активно продвигают интеграцию с OpenStack. Они говорят, что они являются «открытой, справочной базой для программируемости и контроля через SDN с открытым исходным кодом и решением NFV». Это означает, что он обеспечивает (как вы говорите) фасад для manfold aspects of networking. У них есть все большие имена в качестве членов, которые, вероятно, означают, что у них есть возможность установить де-факто стандарт, такой как OpenStack. Пользователям выгодно, что они могут предоставлять плагины, интеграцию и адаптацию для своих продуктов, чтобы они легко интегрировались с OpenDayligh, и вам нужно только заботиться о одном стандартном API.

+0

Спасибо @vanthome (+1) - это помогает мне начать видеть лес через деревья здесь. Несколько последующих вопросов для вас (если вы не возражаете): могу ли я предположить, что Open DayLight, являющийся Java-проектом, направлен на создание набора API-интерфейсов, с которыми могут взаимодействовать Java-клиенты, которые в конечном итоге пересылают запросы клиентов на специфическое (проприетарное) оборудование? Другими словами: Open DayLight - это фасад/обертка для API SDN, предлагаемых поставщиками сетевого оборудования? Еще раз спасибо! – smeeb

+0

Извините, забыли бонус OpenDaylight, я продлил ответ. – vanthome

2

SDN - это программируемые сети. Различные решения SDN предоставляют различные функции в своих API-интерфейсах для разработчика приложений.

Существует хороший обзор SDN для разработчиков программного обеспечения здесь:

https://github.com/BRCDcomm/BVC/wiki/SDN-applications

Наиболее распространенные элементы для решения SDN являются

  1. Северо-связанный API: программный интерфейс, используемый приложение/сценарий для мониторинга, управления и управления топологией сети и потоками пакетов в сети.
  2. Элементы сети. Элементы сети коммутации или маршрутизации, которые обеспечивают соблюдение правил, предоставляемых приложением через API с привязкой к северу. Эти элементы могут быть физическими (Cisco, Brocade, Tallac и т. Д.) Или виртуальными (Open VSwitch, Brocade Vyatta vrouter, Cisco 1000 и т. Д.) Или комбинацией.

Решения на базе контроллера имеют кластерный архитектурный элемент («контроллер»), который обеспечивает привязку с северной стороны к приложениям и расширяемый набор интерфейсов, привязанных к югу, к которым подключаются сетевые устройства. Некоторые контроллеры, доступные сегодня, - OpenDaylight, Open Network Operating System (ONOS), Juniper Open Contrail, Brocade Vyatta Controller (дистрибутив ODL), контроллер HP VAN и другие.

Лучшие Эмпирические правила разобраться в SDN предложение:

  1. Читайте его северо переплете API - это говорит вам, что вы будете в состоянии контролировать, управлять и контролировать в сети.
  2. Узнайте, какие интерфейсы, поддерживаемые южными интерфейсами, поддерживаются - это говорит вам, с какими коммутаторами/маршрутизаторами он может работать.

Некоторые SDN случаи использования/применения:

  • DevOps/автоматизации Администратор - Приложения и сценарии, которые делают сетевым администратором или DevOps жизнь проще за счет автоматизации. OpenStack Neutron - распространенный пример.
  • Безопасность - HP предоставляет «Сетевой протектор», который изучает топологию сети, а затем контролирует деятельность, предоставляющую оповещения и/или устранение несоответствующих поведения.
  • Оптимизация сети
    • Brocade предлагает «Менеджер трафика», который отслеживает использование сети и изменяет потоки трафика в режиме реального времени для оптимизации качества на основе определенных политик.
    • HP предоставляет «Оптимизатор сети HP», который обеспечивает сквозной оптимизированный голос для корпоративных пользователей Microsoft Lync.
    • Лятисс предоставляет сети AWS в реальном времени для удовлетворения потребностей приложений.
  • Мониторинг времени в классе - Elbrys предоставляет приложение, которое предоставляет учителю панель инструментов для мониторинга времени выполнения задачи студента в реальном времени и перенаправления отдельных студентов на выбранные веб-страницы. (Отказ от ответственности: Я работаю Elbrys Networks)
  • OpenDaylight страницу проекта предложения - https://wiki.opendaylight.org/view/Project_Proposals:Main