Трансформация VLAN-тегов
В СКАТ начиная с версии 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 практически не происходит благодаря оптимизациям при обработке пакета