Sdn nov-21-v1.1
description
Transcript of Sdn nov-21-v1.1
![Page 1: Sdn nov-21-v1.1](https://reader031.fdokumen.site/reader031/viewer/2022020101/559416531a28ab98468b4691/html5/thumbnails/1.jpg)
![Page 2: Sdn nov-21-v1.1](https://reader031.fdokumen.site/reader031/viewer/2022020101/559416531a28ab98468b4691/html5/thumbnails/2.jpg)
Даниил Гинсбург
Сетевой архитектор
SDN –революция или эволюция?
![Page 3: Sdn nov-21-v1.1](https://reader031.fdokumen.site/reader031/viewer/2022020101/559416531a28ab98468b4691/html5/thumbnails/3.jpg)
План выступления
Критиканство!
Пессимизм!
Скепсис!
Чуть-чуть конструктива
![Page 4: Sdn nov-21-v1.1](https://reader031.fdokumen.site/reader031/viewer/2022020101/559416531a28ab98468b4691/html5/thumbnails/4.jpg)
Может быть все и так хорошо в
сетевом мире?
А может быть не надо?
![Page 5: Sdn nov-21-v1.1](https://reader031.fdokumen.site/reader031/viewer/2022020101/559416531a28ab98468b4691/html5/thumbnails/5.jpg)
5
Что сейчас не так в сетевом мире
• Передача полезного трафика (data-plane)
устроена сложно
• Управление сетью (control-plane) устроено
сложно
• Ущербные и невыразительные абстракции
• Используется 5%* возможностей
оборудования, а оплачивается 100%
• Отсутствие программируемости – мы
заложники у вендоров
• Крайне затрудненная автоматизация
![Page 6: Sdn nov-21-v1.1](https://reader031.fdokumen.site/reader031/viewer/2022020101/559416531a28ab98468b4691/html5/thumbnails/6.jpg)
6
Надо что-то делать!
Давайте сделаем что-то …
… и назовем это SDN!
![Page 7: Sdn nov-21-v1.1](https://reader031.fdokumen.site/reader031/viewer/2022020101/559416531a28ab98468b4691/html5/thumbnails/7.jpg)
Scott Schenker
Not a revolutionary technology....
-....just a way of organizing network functionality
SDN - о чем это?
![Page 8: Sdn nov-21-v1.1](https://reader031.fdokumen.site/reader031/viewer/2022020101/559416531a28ab98468b4691/html5/thumbnails/8.jpg)
8
SDN – это магическая штука, которая
• Даст нам удобные абстракции– Простые!
– Понятные и естественные!
– Выразительные!
• Позволит пользователю реализовывать
функции сети самостоятельно
• Обеспечит независимость от вендора
• Даст возможность автоматизировать ВСЁ!
• Преобразит мир!
![Page 9: Sdn nov-21-v1.1](https://reader031.fdokumen.site/reader031/viewer/2022020101/559416531a28ab98468b4691/html5/thumbnails/9.jpg)
9
Как предлагается этого достичь
• Разделить прохождение трафика (data-
plane) и сигнализацию/управление (control-
plane)
• Сделать элементы data-plane крайне
простыми
• Централизовать control-plane
• Это все позволит быстро и просто
реализовывать удобные абстракции в
control-plane независимо от data-plane
![Page 10: Sdn nov-21-v1.1](https://reader031.fdokumen.site/reader031/viewer/2022020101/559416531a28ab98468b4691/html5/thumbnails/10.jpg)
10
Разделить control и data
• Разделить прохождение трафика (data-
plane) и сигнализацию/управление (control-
plane)
• Совсем-совсем разделить data-plane и
control-plane?
![Page 11: Sdn nov-21-v1.1](https://reader031.fdokumen.site/reader031/viewer/2022020101/559416531a28ab98468b4691/html5/thumbnails/11.jpg)
11
Разделить control и data
• Идея не нова – так устроен любой
современный роутер (плюс миллион
примеров из истории)
![Page 12: Sdn nov-21-v1.1](https://reader031.fdokumen.site/reader031/viewer/2022020101/559416531a28ab98468b4691/html5/thumbnails/12.jpg)
12
Разделить control и data
• Крайне усложняет модель отказов
![Page 13: Sdn nov-21-v1.1](https://reader031.fdokumen.site/reader031/viewer/2022020101/559416531a28ab98468b4691/html5/thumbnails/13.jpg)
13
Простой сетевой элемент
• Сделать элементы data-plane крайне
простыми (или сделать вид)
• Насколько просто должен выглядеть
сетевой элемент?
![Page 14: Sdn nov-21-v1.1](https://reader031.fdokumen.site/reader031/viewer/2022020101/559416531a28ab98468b4691/html5/thumbnails/14.jpg)
14
Сетевой элемент - идея
• Lookup
• Rewrite
• Forward
• …
• PROFIT!
![Page 15: Sdn nov-21-v1.1](https://reader031.fdokumen.site/reader031/viewer/2022020101/559416531a28ab98468b4691/html5/thumbnails/15.jpg)
15
Сетевой элемент - реальность
Крайне упрощенная схема сетевого элемента
![Page 16: Sdn nov-21-v1.1](https://reader031.fdokumen.site/reader031/viewer/2022020101/559416531a28ab98468b4691/html5/thumbnails/16.jpg)
16
Сетевой элемент – openflow
• OpenFlow 1.0 – multi-field lookup
• Крайне примитивная модель
• Комбинаторный взрыв
![Page 17: Sdn nov-21-v1.1](https://reader031.fdokumen.site/reader031/viewer/2022020101/559416531a28ab98468b4691/html5/thumbnails/17.jpg)
17
Комбинаторный взрыв
Задача: Пропускать трафик на N хостов на
одни и те же M TCP-портов, остальной
сбрасывать.
Решение OpenFlow 1.0: NxM записей
![Page 18: Sdn nov-21-v1.1](https://reader031.fdokumen.site/reader031/viewer/2022020101/559416531a28ab98468b4691/html5/thumbnails/18.jpg)
18
Сетевой элемент – openflow
• OpenFlow 1.1 – multiple tables
• Избавление от комбинаторного взрыва
• Сравнительно элегантная модель
• Плохо отображается на железо
• Дорогое удовольствие
![Page 19: Sdn nov-21-v1.1](https://reader031.fdokumen.site/reader031/viewer/2022020101/559416531a28ab98468b4691/html5/thumbnails/19.jpg)
19
Комбинаторный взрыв
Задача: Пропускать трафик на N хостов на
одни и те же M TCP-портов, остальной
сбрасывать.
Решение OpenFlow 1.1+: N записей в одной
таблице, M записей в другой
![Page 20: Sdn nov-21-v1.1](https://reader031.fdokumen.site/reader031/viewer/2022020101/559416531a28ab98468b4691/html5/thumbnails/20.jpg)
20
Сетевой элемент – openflow
• OpenFlow X.X – FAWG
• Вся сложность наружу
• Ну и где же абстракция для data-plane?
![Page 21: Sdn nov-21-v1.1](https://reader031.fdokumen.site/reader031/viewer/2022020101/559416531a28ab98468b4691/html5/thumbnails/21.jpg)
21 Если так пришлось сделать, значит уровень абстракции выбран неверно
![Page 22: Sdn nov-21-v1.1](https://reader031.fdokumen.site/reader031/viewer/2022020101/559416531a28ab98468b4691/html5/thumbnails/22.jpg)
22
Централизация и децентрализация
• Централизовать control-plane
• Насколько централизованным должен быть
control-plane?
![Page 23: Sdn nov-21-v1.1](https://reader031.fdokumen.site/reader031/viewer/2022020101/559416531a28ab98468b4691/html5/thumbnails/23.jpg)
23
Централизация и децентрализация
• Колебательный процесс между двумя
крайностями– «Развитие идѐт через постоянное отрицание противоположностей
друг другом, их взаимопревращение, вследствие чего в
поступательном движении происходит возврат назад, в новом
повторяются черты старого» - Ф. Энгельс
• Нормальное явление в индустрии
• Диктуется не только модой и маркетингом, а
еще и объективными факторами (иногда)
• Вывод: нужна гибкость
![Page 24: Sdn nov-21-v1.1](https://reader031.fdokumen.site/reader031/viewer/2022020101/559416531a28ab98468b4691/html5/thumbnails/24.jpg)
24
It is always possible to agglutinate multiple separate
problems into a single complex interdependent solution.
In most cases this is a bad idea.
RFC 1925
![Page 25: Sdn nov-21-v1.1](https://reader031.fdokumen.site/reader031/viewer/2022020101/559416531a28ab98468b4691/html5/thumbnails/25.jpg)
25
Централизация openflow-style
• Элемент крайне туп и не способен ни к
каким самостоятельным действиям
• Контроллер должен реагировать на все
события в сети
• Как это масштабировать? Новым витком
спирали централизация/децентрализация?
![Page 26: Sdn nov-21-v1.1](https://reader031.fdokumen.site/reader031/viewer/2022020101/559416531a28ab98468b4691/html5/thumbnails/26.jpg)
Делать SDN правильно!
Так делать-то чего?
![Page 27: Sdn nov-21-v1.1](https://reader031.fdokumen.site/reader031/viewer/2022020101/559416531a28ab98468b4691/html5/thumbnails/27.jpg)
27
SDN – это магическая штука, которая
• Даст нам удобные абстракции– Простые!
– Понятные и естественные!
– Выразительные!
• Позволит пользователю реализовывать
функции сети
• Обеспечит независимость от вендора
• Даст возможность автоматизировать ВСЁ!
• Это отличные свойства и их действительно
стоит хотеть!
![Page 28: Sdn nov-21-v1.1](https://reader031.fdokumen.site/reader031/viewer/2022020101/559416531a28ab98468b4691/html5/thumbnails/28.jpg)
28
Что же для этого надо сделать?
• Стандартизовать один механизм data-plane
• Выбрать правильную абстракцию элемента
• Обеспечить возможность реализовать
сетевые функции как централизованно, так
и децентрализовано
• Обеспечить возможность комбинирования
функций
![Page 29: Sdn nov-21-v1.1](https://reader031.fdokumen.site/reader031/viewer/2022020101/559416531a28ab98468b4691/html5/thumbnails/29.jpg)
29
Почему оба стиля управления важны
• Есть естественно централизованные
функции – например, высокоуровневые
политики
• Есть естественно децентрализованные
функции – например, перемашрутизация
при сбоях
• А есть функции, которые можно
реализовывать там, где это выгодно здесь и
сейчас – например, вычисление пути
![Page 30: Sdn nov-21-v1.1](https://reader031.fdokumen.site/reader031/viewer/2022020101/559416531a28ab98468b4691/html5/thumbnails/30.jpg)
30
Комбинирование
• Сеть может иметь доменную структуру –
например: DC и WAN, access и core, RAN
backhaul и т.д.
• В разных доменах функции могут
реализовываться по-разному
• Домены нужно «сшивать» и «накладывать»
• Поверх транспорта мы можем реализовать
«сервисы»
![Page 31: Sdn nov-21-v1.1](https://reader031.fdokumen.site/reader031/viewer/2022020101/559416531a28ab98468b4691/html5/thumbnails/31.jpg)
31 Домены сети могут управляться по-разному
![Page 32: Sdn nov-21-v1.1](https://reader031.fdokumen.site/reader031/viewer/2022020101/559416531a28ab98468b4691/html5/thumbnails/32.jpg)
32 Домены сети могут управляться по-разному
![Page 33: Sdn nov-21-v1.1](https://reader031.fdokumen.site/reader031/viewer/2022020101/559416531a28ab98468b4691/html5/thumbnails/33.jpg)
33 Необходимо строить наложенные домены
![Page 34: Sdn nov-21-v1.1](https://reader031.fdokumen.site/reader031/viewer/2022020101/559416531a28ab98468b4691/html5/thumbnails/34.jpg)
34 И поверх них можно создавать сервисы
![Page 35: Sdn nov-21-v1.1](https://reader031.fdokumen.site/reader031/viewer/2022020101/559416531a28ab98468b4691/html5/thumbnails/35.jpg)
35
Правильная абстракция элемента
• Должна действительно прятать сложность
сетевого элемента
• Должна позволять комбинирование стилей
управления
• Похоже, что правильную абстракцию(-ии)
предоставит i2rs от IETF – более высокий
уровень
![Page 36: Sdn nov-21-v1.1](https://reader031.fdokumen.site/reader031/viewer/2022020101/559416531a28ab98468b4691/html5/thumbnails/36.jpg)
Что надо развертывать завтра
Где мы сейчас
![Page 37: Sdn nov-21-v1.1](https://reader031.fdokumen.site/reader031/viewer/2022020101/559416531a28ab98468b4691/html5/thumbnails/37.jpg)
37
Зачем?
• На сегодня два с половиной самых
актуальных применения SDN:
• Сетевая виртуализация
• Сцепление сервисов
![Page 38: Sdn nov-21-v1.1](https://reader031.fdokumen.site/reader031/viewer/2022020101/559416531a28ab98468b4691/html5/thumbnails/38.jpg)
Компоненты решения
• Уровень транспорта и уровень
виртуализации
• Транспорт – IP/MPLS– Распределенная сигнализация
– С PCE (stateful PCE) или без – по потребности
• Виртуализация – Начинается от хоста
– MPLS-метка в качестве сервисного демультиплексора
– Гибридное управление наложенной сетью
• Централизация политик
![Page 39: Sdn nov-21-v1.1](https://reader031.fdokumen.site/reader031/viewer/2022020101/559416531a28ab98468b4691/html5/thumbnails/39.jpg)
Заключение
![Page 40: Sdn nov-21-v1.1](https://reader031.fdokumen.site/reader031/viewer/2022020101/559416531a28ab98468b4691/html5/thumbnails/40.jpg)
40
Заключение
• Идея хороша. SDN обещает нам много, и
обещанного стоит желать
• Первый блин комом: OpenFlow – по
большей части лабораторная игрушка
• SDN это не только OpenFlow
• Централизация – не самоцель
• «Традиционные» сети и SDN будут жить
вместе
• Архитектура SDN должна быть гибкой и
допускать частичное внедрение
![Page 42: Sdn nov-21-v1.1](https://reader031.fdokumen.site/reader031/viewer/2022020101/559416531a28ab98468b4691/html5/thumbnails/42.jpg)
Backup slides
![Page 43: Sdn nov-21-v1.1](https://reader031.fdokumen.site/reader031/viewer/2022020101/559416531a28ab98468b4691/html5/thumbnails/43.jpg)
Почему надо пересмотреть data-plane
• Очень много разных механизмов
• Когда их надо сочетать, всѐ становится
сложно
• Многие из них тесно связаны с неуклюжими
абстракциями высших уровней и тянут их за
собой в железо
![Page 44: Sdn nov-21-v1.1](https://reader031.fdokumen.site/reader031/viewer/2022020101/559416531a28ab98468b4691/html5/thumbnails/44.jpg)
44
Какой он, идеальный data-plane?
• Простой (на самом деле простой!)
• Гибкий
• Поддерживает иерархичность от природы
• Не ставит препятствий для
масштабирования
• Не несет с собой предположений, о том как
он должен управляться
![Page 45: Sdn nov-21-v1.1](https://reader031.fdokumen.site/reader031/viewer/2022020101/559416531a28ab98468b4691/html5/thumbnails/45.jpg)
45
Называется он MPLS
А способ комбинирования –
indirect FEC resolution