Многопоточная маршрутизация в sdn Евгений Чемерицкий,...
TRANSCRIPT
МНОГОПОТОЧНАЯ МАРШРУТИЗАЦИЯВ ПРОГРАММНО-КОНФИГУРИРУЕМЫХ
СЕТЯХ
Евгений ЧемерицкийЕвгений Степанов
Центр Прикладных ИсследованийКомпьютерных Сетей
Московский Государственный Университетим. М.В. Ломоносова
Устройство MP TCP
Standard socket API
Multi Path TCP
TCP subflow
TCP subflow
TCP subflow
Application Layer
Transport Layer
Network Layer
Packet Scheduling & Reordering
MP TCP в проводных сетях
Традиционные маршрутизаторы выбирают пути передачи данных на основе IP адерсов
Маршрутизация на уровне TCP возможна, но подпотоки могут пойти по одному маршрутом
MP TCP & SDN
SDN Controller
SYN
Контроллер извлекает опции TCP заголовка, детектирует открытие
нового MP TCP соединения и прокладывает *кратчайший* маршрут
MP TCP & SDN
SDN Controller
SYN
Контроллер извлекает опции TCP, детектирует открытие нового
подпотока для известного MP TCP соединения и прокладывает *альтернативный* маршрут.
Контроллер может прокладывать маршруты с учётом состояния сети
SDN Controller
Маршруты одного соединения не должны пересекать одни и
те же точки перегрузки
Качество Сервиса
• Приложения предъявляют новые требования к качеству серсиса сети– Растёт число сетевых приложений– Увеличивается разнообразие требований
• Для борьбы с перегрузками используется экстенсивное наращивание ресурсов– Широкие каналы, быстрые коммутаторы– Неэффективность планирования ресурсов
приводит к использованию «грубой силы»
Проблема низкой утилизации
Ресурсы
Время
Приложение способно
использовать
Приложению непременно требуется
Сеть работает правильно, пока каждое приложение получает необходимое количество ресурсов
Чтобы обеспечить ресурсами все приложения сеть без управления
качеством сервиса должна выполнять наибольшие запросы приложений
Ресурсы, которые можно забрать и поделить
Внутренняя фрагментация
ресурсов
1. Модель Integrated Services
• Резервирует ресурсы элементов сети вдоль маршрутов передачи потоков данных
• Низкая утилизация из-за внутренней фрагментации ресурсов сети
2. Модель Differentiated Services
• Разделяет потоки данных на классы и выделяет на обработку каждого из них долю ресурсов на каждом коммутационном устройстве сети
• Ограниченный и косвенный контроль за качеством обслуживания конкретных потоков
F1 F1
F2
F2
F3
F3
3. Модель централизованного
планирования• Контроллер наблюдает за сетью и динамически
вырабатывает *оптимальное* распределение ресурсов сети между потоками данных
• Планирование распределения ресурсов –задача многокритериальной оптимизации
F1 F1
F2
F2
F3F3
4. Модель многопоточной маршрутизации
• MP TCP агенты самостоятельно определяют количество подпотоков, необходимое для корректной работы приложения
• Контроллер выполняет роль арбитра и ограничивает активность MP TCP агентов
• Решение по принципу «разделяй и властвуй»
F1 F1
F2
F2
F3F3
Условие открытия потока
1. Скорость передачи меньше желаемой/положенной2. Приложение передаёт больше, чем принимает сеть
Time
Bytes
ACK
𝑉 𝑏𝑢𝑓
𝑉 𝑏𝑢𝑓max
Used Buffer
Max Buffer
Условие открытия потока
1. Скорость передачи меньше желаемой/положенной2. Приложение передаёт больше, чем принимает сеть
Time
Bytes
ACK
𝑉 𝑏𝑢𝑓
𝑉 𝑏𝑢𝑓max
Used Buffer
Max Buffer
Алгоритм адаптивного изменения количества
потоков
N
O
C𝑡𝑐−𝑡 𝑠≥ Δ𝑡𝑂
𝑡𝑐−𝑡 𝑠≥ ΔtC𝑂𝑝𝑒𝑛𝑒𝑑(𝑝)
𝐶𝑙𝑜𝑠𝑒𝑑 (p)𝑉 𝑐−𝑉 𝑠>Δ𝑣𝑂
𝐶𝐶𝑙𝑜𝑠𝑒𝐶𝑂𝑝𝑒𝑛
𝑉 𝑐−𝑉 𝑠<Δ𝑣𝐶