Huawei QinQ → VSI: проверьте стек тегов перед настройкой
Сначала определите стек тегов, а затем проверьте входную классификацию, действие тега и привязку VSI именно на той платформе Huawei, которую вы настраиваете
Два сбоя являются причиной большинства сбоев передачи обслуживания QinQ в VSI, и ни один из них не отображается как отключенный интерфейс. Либо входной порт поглощает тег клиента до того, как классификация сможет его увидеть, либо схема подключения привязана к VSI, к которому дальний конец никогда не подключался. Со стороны клиента они выглядят идентично: схема сообщает, что кадры не пересекаются. Выполните четыре проверки ниже по порядку и остановитесь на первой, где кадр, который вы наблюдаете, отличается от записанного вами кадра.
Запишите стек тегов, прежде чем прикасаться к устройству
Выберите один репрезентативный сервис и опишите его как фреймы, а не как конфигурацию. Для услуги, которая сохраняет клиентские VLAN 100 и 200 внутри VLAN 900 поставщика, контракт короткий: входящие кадры содержат один тег клиента, поставщик добавляет один тег службы, а собственный тег клиента остается нетронутым.
customer to provider: [ C-tag 100 | payload ]
provider inside: [ S-tag 900 ][ C-tag 100 | payload ]
provider to customer: [ C-tag 100 | payload ]Напишите также направление возврата, потому что контракт, описывающий только вход, пройдет одностороннюю проверку и не будет работать в рабочей среде. Дальний конец должен передать клиенту кадр, который он ожидает, а это означает, что его собственная операция извлечения должна быть точно обратной вашей операции push. Все, что не симметрично в этом описании, — это дизайнерское решение, которое вы еще не приняли.
Сначала проверьте входное совпадение
Классификация происходит до любой операции с тегом и может соответствовать только тому, что поступает. Убедитесь, что порт настроен как доступ, магистральный или гибридный, какие типы кадров он принимает и как идентификатор VLAN порта влияет на нетегированный кадр. На порту доступа тег клиента удаляется по прибытии, поэтому более позднему правилу, соответствующему C-тегу 100, больше нечего сопоставлять, и служба без каких-либо ошибок присоединяется к неправильному широковещательному домену.
Захват на стороне провайдера решает эту проблему за секунды: правильно классифицированный кадр QinQ показывает два тега, а кадр с одной меткой означает, что внутренний тег был использован.
Проверьте, что на самом деле делает действие тега
Укладка и трансляция — это разные операции, и платформы представляют их как разные объекты. При стекировании внешний тег помещается, а внутренний остается в покое, что и требуется для приведенного выше контракта. Трансляция перезаписывает один тег в другой, что является допустимой конструкцией, но создает в сети другой кадр. В некоторых семействах также необходимо явно включить QinQ на порту, прежде чем правило стекирования вступит в силу, а внешний TPID можно настроить между значениями 802.1Q и 802.1ad.
Обратный путь заслуживает не меньшего внимания. Если выходное правило извлекает внешний тег на одном субинтерфейсе, а другой субинтерфейс передает ответ без соответствующего правила, клиент видит работающую передачу и мертвый прием.
Проверьте привязку службы, а не номер интерфейса
VSI идентифицируется своими собственными идентификаторами службы и виртуального канала, и партнер должен использовать совпадающие значения, прежде чем будет сформирован псевдопроводной канал. Затем схема подключения привязывает этот VSI к определенному порту и VLAN, что является отдельным утверждением от правила, классифицирующего кадр. Номер субинтерфейса, который выглядит правильно, ничего не говорит ни о какой привязке.
Проверьте состояние псевдопровода и состояние цепи подключения отдельно, а также проверьте сеанс сигнализации, по которому передается псевдопровод. Два из этих трех могут быть здоровыми, а третий нет, и тот, который не работает, подскажет вам, какую сторону нужно исправить.
Изоляция — это отдельное обещание. Сохранение нетронутых тегов клиентов внутри одного VSI не отделяет клиентов друг от друга, поскольку обучение MAC охватывает весь экземпляр; если в контракте говорится об изоляции, необходимы отдельные экземпляры или явная политика для каждой VLAN.
Проверьте размер бюджета, а затем подтвердите контракт
Внешний тег добавляет четыре байта, а инкапсуляция псевдопровода добавляет стек меток и, возможно, управляющее слово поверх него. Поместите все это в бюджет MTU и MRU на обоих периферийных устройствах провайдера и не отключайте управляющее слово только для того, чтобы отключить предупреждение о размере, поскольку это может потребоваться на дальнем конце. Сохраняйте путь управления, который не зависит от службы, которую вы меняете.
Затем протестируйте три случая на клиентском подключении: первый допустил C-VLAN в обоих направлениях, второй допустил C-VLAN и VLAN, которая, как указано в контракте, должна быть запрещена. Наблюдайте за кадрами, а не считывайте состояния интерфейса, и повторяйте действия после любого изменения правила тега.
Восходящий VSI говорит только о том, что псевдопровод сформирован. Здесь ничего не говорится о том, является ли пересекающий его кадр тем, за который заплатил клиент.