Перейти к содержанию

NX-OS

Настройка

Логирование команд пользователя

(config)#terminal log-all

Известные проблемы

Не проходит QinQ

На Nexus 9000 может возникнуть ситуация, когда он не захочет пропускать через себя QinQ трафик, хотя с MTU проблем нет - кадры 1500 и больше с DF битом проходят через него нормально.

The following CLI is mandatory only on LSE, EX, FX, FX2 based Cisco Nexus 9000 Series switches. For seamless packet forwarding and preservation of all VLAN tags on pure transit boxes in the SP cloud that have no Q-in-Q encapsulation or decapsulation requirement, configure the CLI command system dot1q-tunnel transit.

Следовательно разрешаем транзит dot1q тоннелей следующей командой

system dot1q-tunnel transit

Input discard

источник + дополнения

Обычно причина растущих счетчиков input discard на интерфейсах заключается в том, что на каком-то исходящем интерфейсе на пути прохождения трафика происходит перезгрузка.

image-20210312115034591

Эта картинка иллюстрирует проблему. Если 10-ый порт не успевает пересылать пакеты (испытывает перегрузку), то счетчики ingress discard будут расти на интерфейсах для входящего трафика (на каком-нибудь из портов 1,2,3,4,5).

Какой-то отдельной команды для просмотра счетчиков для исходящей перегрузки на интерфейсе нет. Нужно выполнить несколько действий. В первую очередь экспериментально определить, какие ASIC-и используются на устройстве. Например для Nexus 5500 это Carmel, для Nexus 5010 это Gatos для встроенных портов и Atherton для платы расширения. Далее пример для Nexus 5010.

Смотрим, какой асик обслуживает нужные интерфейсы.

show hardware internal gatos all-ports 

image-20210312115725857

В моем случае подозрение пало на интерфейсы Eth1/1-6. Они объединены в LAG и аналогично картинке являются потенциально узкиим местом для трафика (как Port10). Вверху у меня все линки 10Gbit, а 1-6 гигабитные. Из таблицы видно что за эти интерфейсы отвечают асики 0 и 1 (столбик gat - Gatos). В столбце mac сразу запоминаем номер обработчика, который занимается перекладыванием пакетов соотвествующего интерфейса.

Дале, чтобы увидеть исходящий перегруз вводим следующее:

show hardware internal gatos asic 0 registers match .*STA.*frh.* | i eg
show hardware internal gatos asic 1 registers match .*STA.*frh.* | i eg

image-20210312130622547

Если в столбце Value ненулевое значение, значит интерфейс испытывает перегрузку на выходе. Следует заметить, что данная табличка показывает только текущее значение, поэтому команды для верности нужно ввести несколько раз.

_eg**X* - X - это как раз номер хандлера, который мы запомнили выше. В соответствии с ним можно определить, какой физический порт испытывает проблему.

Таким образом мы определили причину inbound discards. Дальше нужно разбираться, почему возникает перегруз на выходе у рассмотренных интерфейсов.

Данный алгоритм подходит только для младших моделей. В более старших есть более легкий инструмент VOQ.