- CheatSheet
- Bufferbloat – проблемы с задержкой/джиттер из-за буфферизаций в сети
- Congestion management/avoidance возможно реализовать в Linux, см. например qdisc tc-sfb
- Когда SD-WAN еще не был моден – многие его реализовывали
- ViPNet координаторы умели (умеют?) отсылать SYN-ACK на SYN от себя, ускоряя 3whs для спутниковых каналов
- Запускал пару проектов с узлами во всех федеральных округах. Каналы надо было по 3-5 Мбит/с. Разбирательства с качеством там такая песня была. И это не какой-то один провайдер — за несколько месяцев пилотных тестов перепробовали всех, что смогли, ± у всех одинаково. В проекте ставили оборудование спец., которое требовало каналы с % потерь не более 0.5. Итог: арендовали полосу в 2.5 раза больше, на оборудовании включили режим дублирования (каждый пакет передается в 2-х экземплярах).
-
Сохранение маркировки на шифрованных пакетах – устоявшийся принцип работы большинства туннелей.
при инкапсуляции трафика в GRE/IPSec используют уже устоявшейся в индустрии механизм переноса внутренней DSCP маркировки во внешний GRE/IPSEC заголовок пакета, что позволяет синхронизировать политики QoS организации и оператора связи (при наличии соответствующего SLA).
Основные приоритеты пересылки пакета в IP сетях.
EF (Expedited Forwarding) – ускоренная передача. Рекомендован для высокоприоритетного трафика, например, для передачи пакетов голосового сервиса LTE – VoLTE.
AF1 (Assured Forwarding class 1) – гарантированная пересылка. Трафик нечувствительный к задержкам, но чувствительный к потерям.
AF4 (Assured Forwarding class 4) – гарантированная пересылка. Трафик нечувствительный к задержкам, но чувствительный к потерям.
BE (Best Effort) – лучшее усилие. Низкоприоритетная передача.
PHB – Per-Hop Behavior – определяет, что QoS работает по модели diff-service и каждый хоп на основе своих политик определяет приоритет пакета в очереди.
ping DSCP
Работает на Linux, нужно правильное по разрядности значение просто выставить
ping 8.8.8.8 -Q 96 ping 8.8.8.8 -Q 224 https://ttl255.com/build-dscp-tos-conversion-table-python
Пример настройки QoS (маркировка трафика определенной подсети) на Cisco 3850.
Выставляем DSCP для подсети на определенном интерфейсе, весь остальной трафик метим нулевым.
csco(config)#access-list 1 permit 172.1.0.0 0.0.0.128 csco(config)#class-map match-all ef csco(config-cmap)#match access-group 1 csco(config)#policy-map ef csco(config-pmap)#class class-default csco(config-pmap-c)#set dscp default # можно так же set dscp 0 csco(config-pmap)#class ef csco(config-pmap-c)#set dscp ef csco(config)#interface tenGigabitEthernet 1/0/12 csco(config-if)#service-policy input/output ef
Пример разбивки bandwidth под разные классы приложений app на VSS линке
class map
class-map match-any VSL-MGMT-PACKETS match access-group name VSL-MGMT class-map match-any VSL-DATA-PACKETS match any class-map match-any VSL-L2-CONTROL-PACKETS match access-group name VSL-DOT1x match access-group name VSL-BPDU match access-group name VSL-CDP match access-group name VSL-LLDP match access-group name VSL-SSTP match access-group name VSL-GARP class-map match-any VSL-L3-CONTROL-PACKETS match access-group name VSL-IPV4-ROUTING match access-group name VSL-BFD match access-group name VSL-DHCP-CLIENT-TO-SERVER match access-group name VSL-DHCP-SERVER-TO-CLIENT match access-group name VSL-DHCP-SERVER-TO-SERVER match access-group name VSL-IPV6-ROUTING class-map match-any VSL-MULTIMEDIA-TRAFFIC match dscp af41 match dscp af42 match dscp af43 match dscp af31 match dscp af32 match dscp af33 match dscp af21 match dscp af22 match dscp af23 class-map match-any VSL-VOICE-VIDEO-TRAFFIC match dscp ef match dscp cs4 match dscp cs5 class-map match-any VSL-SIGNALING-NETWORK-MGMT match dscp cs2 match dscp cs3 match dscp cs6 match dscp cs7
policy map
Policy Map VSL-Queuing-Policy Class VSL-MGMT-PACKETS bandwidth percent 5 Class VSL-L2-CONTROL-PACKETS bandwidth percent 5 Class VSL-L3-CONTROL-PACKETS bandwidth percent 5 Class VSL-VOICE-VIDEO-TRAFFIC bandwidth percent 30 Class VSL-SIGNALING-NETWORK-MGMT bandwidth percent 10 Class VSL-MULTIMEDIA-TRAFFIC bandwidth percent 20 Class VSL-DATA-PACKETS bandwidth percent 20 Class class-default bandwidth percent 5
policy apply
interface TenGigabitEthernet1/1 service-policy output VSL-Queuing-Policy
RSVP
С точки зрения теории QoS RSVP использует IntServ модель, которая является противовесом diffserv модели.
Under IntServ, every router in the system implements IntServ, and every application that requires some kind of QoS guarantee has to make an individual reservation.