“Честная” терминация VLAN

В режиме “честной” терминации (bras_vlan_terminate=1) FastDPI BRAS удаляет из исходящих (LAN → WAN) пакетов все VLAN-теги, а во входящие пакеты (WAN→LAN) – вставляет VLAN теги. При приземлении трафика VLAN-теги берутся из свойств IP-адреса получателя (из внутренней БД UDR).

Следует учитывать, что при приземлении трафика пакет расширяется – добавляются L2 VLAN-теги, - что может привести к превышению размера пакета (фактически, это аналог MTU), задаваемому конфигурационным параметром snaplen. Если добавление VLAN-тегов приводит к такому превышению, fastDPI BRAS не добавляет VLAN и пишет в лог сообщение о критической ошибке; при этом пакет не дропается – идет его дальнейшая обработка.

legacy pf_ring-версия СКАТ, CentOS 6: режим "честной" терминации VLAN-тегов создает значительную дополнительную нагрузку на fastDPI, так как приходится изменять размер пакета. Возникающее при этом копирование пакетов может снизить производительность fastDPI на 25-30%.
DPDK-версия СКАТ на CentOS 8 практически лишена этого недостатка, - снижения производительности fastDPI практически не происходит благодаря оптимизациям при обработке пакета
При приземлении QinQ-трафика, когда требуется вставить в пакет два VLAN-тега, возникает неоднозначность выбора EtherType для внешнего (outer) VLAN.