O slideshow foi denunciado.
Utilizamos seu perfil e dados de atividades no LinkedIn para personalizar e exibir anúncios mais relevantes. Altere suas preferências de anúncios quando desejar.

SDN технологии

135.250 visualizações

Publicada em

Презентация к linkmeup podcast от 25 апреля http://linkmeup.ru/blog/180.html

Publicada em: Software
  • Entre para ver os comentários

SDN технологии

  1. 1. Технология SDN OpenFlow контроллер, проблемы, применение Александр Шалимов ЦПИКС, МГУ http://arccn.ru/ ashalimov@arccn.ru @alex_shali @arccnnews
  2. 2. Часть I: Что такое SDN?
  3. 3. Что такое SDN/OpenFlow? Основные принципы • Физическое разделение уровня передачи данных от уровня управления сетевых устройств. • Логически централизованное управление. • Программируемость. • Открытый единый интерфейс управления. Преимущества • Упрощение управления сетью (OPEX) • Удешевление оборудования (CAPEX) • Разработка ранее недоступных сервисов Внедрения ... “SDN means thinking differently about networking” SDN = Software Defined Networking
  4. 4. Основы ПКС (SDN/OpenFlow) A B • Неизвестный пакет отправляется на контроллер (OF_PACKET_IN). • Контроллер вычисляет лучший маршрут через всю сеть (с наименьшей стоимостью и удовлетворяющий политикам маршрутизации). • Соответствующие правила OpenFlow устанавливаются на коммутаторы + сразу и обратный маршрут (OF_PACKET_OUT/FLOW_MOD). A B A -> B OpenFlow контроллер хост/клиент хост/клиент коммутатор 1 коммутатор 2 коммутатор 3 коммутатор 4
  5. 5. Основы ПКС (SDN/OpenFlow) A B • Неизвестный пакет отправляется на контроллер (OF_PACKET_IN). • Контроллер вычисляет лучший маршрут через всю сеть (с наименьшей стоимостью и удовлетворяющий политикам маршрутизации). • Соответствующие правила OpenFlow устанавливаются на коммутаторы + сразу и обратный маршрут (OF_PACKET_OUT/FLOW_MOD). • Динамическая переконфигурация в случае ошибки сети. A B OpenFlow контроллер хост/клиент хост/клиент коммутатор 1 коммутатор 2 коммутатор 3 коммутатор 4
  6. 6. Часть II: SDN/OpenFlow контроллер
  7. 7. Архитектура SDN/OpenFlow контроллера С технической стороны: • OpenFlow контроллер – это обычный TCP/IP сервер, слущающий сокет 6653, к которому подключаются OpenFlow коммутаторы • OpenFlow – протокол прикладного уровня, описывающий взаимодействие контроллер/коммутатор. • Т.е. контроллер – это ПО, устаналиваемое на компьютер с традиционной ОС. Общая архитектура Функциональность Производительность
  8. 8. Список контроллеров • OpenFlow контроллеров действительно много – Nox, Pox, MUL, Ruy, Beacon, OpenDaylight, Floodlight, Maestro, McNettle, Flower, Runos – Разные языки программирования от Python до Haskell, Erlang • Для обучения все используют Pox. • В целом eсть два больших комьюнити: – Floodlight (BigSwitch, Stanford) – OpenDayLight (Cisco) • В России наш Runos – arccn.github.io/runos
  9. 9. Требования к контроллеру ПКС • Производительность – Пропускная способность • events per second – Задержка • us • Надежность и безопасность – 24/7 • Программируемость – Функциональность: приложения и сервисы – Интерфейс программирования • ЦОД требует обработку >10M событий в секунду • Реактивные контроллеры более “чувствительные”
  10. 10. Результаты сравнения (2013) • Максимальная производительность 7 000 000 потоков в секунду. • Минимальное время задержки от 50 до 75 мкс. • Недостатки: – Надежность контроллеров вызывала вопросы – Производительность была не достаточна (DC >10M fps)
  11. 11. Программируемость • На языке контроллера [быстро] • На любом языке через REST интерфейс [медленно] • Специальные языки программирования с другой абстракцией (например, Pyretic, Maple)
  12. 12. Пример программы (L2 learning)
  13. 13. Примеры проблем Проблема запуска нескольких приложений, интеграция с приложениями других разработчиков – требуется статическая подстройка приложений под себя, порядок и способ передачи информации между ними. – нет механизма контроля и разрешения конфликтов между приложениями (генерация пересекающихся правил). Forwarding SPAN OpenFlow ip_dst:10.0.0.1 Rule 1 Rule 2 Flow table Rule 1 (fwd): ip_src:10.0.0.1 -> output:1 Rule 2 (span): ip_src:10.0.0.1 -> output:5 New packet never used
  14. 14. Проблемы с OpenFlow коммутаторами • Не дешевые – И даже дороже - поддержка • Не поддерживается весь OpenFlow – Несколько таблиц, групповые таблицы, QoS • Не быстрые – Общение с контроллером (packet_in, packet_out), – Загрузка новых правил (flow_mod) – Перезапись полей заголовка – Сравнение по факту только full tuple • Почему так? – Гибридные решения – Теже Broadcom чипсеты, в планах вроде даже и нет. • Выход? – Сейчас сетевые процессоры
  15. 15. Distributed OpenFlow
  16. 16. С чего начать изучение SDN? Широкий набор обучающих инструментов: – Mininet – Pox, Floodlight, OpenDayLight – FlowVisor http://archive.openflow.org/wk/index.php/OpenFlow_Tutorial
  17. 17. Часть III: Применение
  18. 18. Области применения 1. Телеком операторы и сервис провайдеры 2. ЦОД и облака 3. Компании
  19. 19. Телеком 1. Интеллектуальный Traffic Engineering: • Выбор оптимального пути • Реакция на отказ канала • Резервирование пропускной способности
  20. 20. Телеком • Как применить все это на практике? – Greenfield? – Проблемы интеграции с традиционной сетью • Нужно подыгрывать протоколам традиционной сети, т.е. правильно отвечать на запросы. • Чем меньше стыков с традиционной сетью, тем лучше. – Проблема интеграции с существующими системами управления
  21. 21. Телеком 2. Переход на виртуальные сетевый сервисы (NFV) • Динамическое развертывание • Связывание сервисов в цепочки
  22. 22. Пример Перераспределение сервисов между серверами в зависимости от нагрузки
  23. 23. ЦОД/Облака • Повышение утилизации оборудования и каналов • Мониторинг и оптимизация потоков • Виртуализация сети пользователей • Балансировка нагрузки • Обеспечение качества доступа
  24. 24. ЦОД/Облака • Как правило есть два SDN – Без OpenFlow и так есть в OpenStack • ТОЛЬКО виртуальные каналы • Туннели, таблицы, новые VM, политики – С OpenFlow для управление физическими устройствами • Качество канала, определение узких мест
  25. 25. Корпоративная сеть • Современные компания имеют сложную сетевую инфраструктуру: – Большое количество сетевых элементов – Разветвленная топология – Набор различных потилик маршрутизации и безопасности
  26. 26. Трудности администрирования • Сетевые администраторы отвечают за поддержания работы сетевой инфраструктуры: – Сетевые инженеры руками переводят высокоуровневые политики в низкоуровневые команды – Ручная настройка всех сетевых устройств – Ограниченный инструментарий по управлению сетевыми устройствами – Переучивание под каждого вендора
  27. 27. Возможности 1. Сделать сеть управляемой без ручного доступа к оборудования. 2. Повысить уровень абстракции управления сетью. 3. Более продвинутый zeroconf
  28. 28. Easyway [4] A. Shalimov, D. Morkovnik, S. Nizovtsev, R. Smeliansky EasyWay: Simplifying and automating enterprise network management with SDN/OpenFlow// 10th Central and Eastern European Software Engineering Conference in Russia, CEE-SECR 2014б, ACM SIGSOFT, Moscow, Russia.
  29. 29. Заключение • Нет чистых стартапов по SDN и нет продуктов для обычных людей. • Применение только в больших компаниях. • Продукты только от производителей сетевого оборудования. • Открытость? Программируемость? Пока нет. • Нет чистых железных OpenFlow коммутаторов. • Применение в основном на программных коммутаторах совместно с другими технологиями (NFV, OpenStack).

×