В СКАТ начиная с версии 7.4 добавлена поддержка трансформации VLAN-тегов. Режим трансформации похож на
режим подмены, но количество VLAN-тегов
в пакете абонента может не совпадать с количеством, заданным в параметре bras_vlan_subst.
Примеры:
bras_vlan_terminate=3
bras_vlan_subst=1071
Для такого режима:
если входящий пакет не имеет VLAN-тегов - ему будет добавлен VLAN=1071
если входящий пакет имеет один VLAN-тег - его значение будет заменено на VLAN=1071
если входящий пакет имеет два VLAN-тега (QinQ) - один будет отрезан, для второго будет указан VLAN=1071
bras_vlan_terminate=3
bras_vlan_subst=1071.65
Для такого режима:
если входящий пакет не имеет VLAN-тегов или имеет только один - ему будет добавлен QinQ outerVLAN=1071, innerVLAN=65
если входящий пакет имеет два VLAN-тега (QinQ) - их значения будут изменены на outerVLAN=1071 и innerVLAN=65
При оригинации применяются обратные правила.
legacy pf_ring-версия СКАТ, CentOS 6: следует учитывать, что режимы добавления/удаления VLAN-тегов для СКАТ весьма накладны в случае изменения размера пакета (то есть удаления/добавления VLAN-тегов), что может значительно сказаться
на общей производительности СКАТ.
DPDK-версия СКАТ на CentOS 8 практически лишена этого недостатка, - снижения производительности fastDPI практически не происходит благодаря оптимизациям при обработке пакета