====== Общее описание полисинга ====== {{indexmenu_n>1}} {{ :dpi:dpi_options:opt_shaping:shaping_description:policing.png?nolink&700 |}} СКАТ применяет полисинг на следующие логические объекты: - Общий канал (Common Channel) - Весь Трафик проходящий через DPI устройство, который не выделен в Виртуальный канал (vChannel). [[dpi:dpi_options:opt_shaping:shaping_settings|]]. - Виртуальный канал (vChannel) - Трафик, который описывается парой физических портов или VLAN или CIDR. Данный трафик не входит в Общий канал (Common Channel) и имеет собственную настройку [[dpi:dpi_options:opt_shaping:shaping_multi|]]. - Абонент (Subscriber) - Трафик конкретного абонента, который определяется списком IP адресов или CIDR. На трафик Абонента (Subscriber) может быть назначен [[dpi:dpi_options:opt_bandwidth_mgmt|]], но так же действует полисинг Общего или Виртуального канала, в котором находится Абонент. - Сессия (Session) - Трафик, который определяется набором параметров IPsrc:port, IPdst:port и признаком протокола TCP, UDP, ICMP etc. [[dpi:dpi_options:opt_shaping:shaping_session|]] Полисинг применяется для 8 классов трафика, выставляемых опцией [[dpi:dpi_options:opt_priority|]] Попадание протокола в свой класс также регулируется опцией ([[dpi:dpi_options:opt_priority:dscp_table|класс <-> приоритет]]). Такой подход позволяет комбинировать совместимым образом использование внешних и внутреннего полисеров. Доступны два механизма полисинга на выбор: - TBF без иерархии ([[https://en.wikipedia.org/wiki/Token_bucket|Token Bucket Function]]), используется для ограничения/блокировки конкретного класса полисинга. Ограничение полосы с поддержкой burst. - HTB с иерархией для 8 классов ([[http://www.opennet.ru/base/net/htb_manual.txt.html|Hierarchical Token Bucket]]), используется для приоритизации по классам трафика. Ограничение полосы с заимствованием. Сценарии применения полисинга Общего и Виртуального каналов: - контролировать приближение к верхней границе полосы канала ("полке") и приоритезировать трафик по протоколам и направлениям, так чтобы низкоприоритетный трафик вытеснялся из полосы в пользу высокоприоритетного. Данный механизм позволяет держать полку под контролем и экономить на том, что не требуется покупка избыточной полосы, можно даже понизить верхнюю границу на 10-15% без заметного для абонентов эффекта. - ограничить размер занимаемой полосы для группы протоколов. Популярное применение данный механизм находит для ограничения торрентов. Один из возможных use case описан в документе [[dpi:dpi_options:use_cases:opt_uplink|"Оптимизируем использование uplink канала"]] ===== Обработка TCP трафика ===== Для полисинга и правила drop по умолчанию СКАТ пропускает без обработки 2 первых пакета TCP Handshake (SYN и SYN-ACK) для оптимизации работы и устойчивости перед SYN Flood. В случае подключения любой услуги из списка ниже СКАТ обрабатывает TCP соединения с первого пакета. * 10 - DDOS защита * 11 - CGNAT и NAT 1:1 * 15 - спецабонент (весь трафик помещается в cs0, не применяется фильтрация (4 услуга) для vChannel и общего канал) Это связано с тем, что данные услуги требуют обработки всего трафика с первого пакета. ===== Обработка ICMP, UDP трафика ===== Полисинг и drop для ICMP регулируется отдельным протоколом. Полисинг и drop для UDP применяется в зависимости от протокола L7 в котором UDP используется как транспорт (пример QUIC).