CPU является неотъемлемой частью любого сетевого устройства, потому что берёт на себя задачи Control Plane. В данном разделе будет описание каждой очереди, дефолтные лимиты и причины их переполнения.
Traffic type | Default rate limit (in pps) | Description |
stack | - | Стековый трафик. Трафик, который попадает с Backup/Slave юнита на Master. Ограничен протокольным лимитом каждой очереди. |
http | 256 | В данной очереди обрабатывается трафик, предназначенный для коммутатора, с 80 и 443 портами (http/https). |
telnet | 512 | Обрабатываются Telnet подключения (порт 23) |
ssh | 512 | Обрабатываются SSH подключения (порт 22) |
snmp | 160 | Обрабатываются SNMP опросы (порт 161) |
ip | 1024 | Обрабатываются входящие и исходящие ICMP пакеты |
link local | 512 | Пакеты OSPF (Hello, DBD, LSU, LSA) |
arp | 256 | Обрабатывается протокол ARP |
arp inspection | 256 | Очередь для формирования записей в control-plane для функционала ARP Inpection. |
stp bpdu | 256 | STP/RSTP BPDU |
other bpdu | 256 | RPVST BPDU, GVRP, LLDP, LACP PDU |
routing | 256 | Обрабатывается Route unknown трафик |
ip options | 128 | Фрагментация пакетов (MTU exceeded) |
dhcp snooping | 128 | Очередь для формирования записей в control-plane для функционала DHCP Snooping |
igmp snooping | 1024 | Обрабатываются IGMP сообщения |
mld snooping | 128 | Обрабатываются MLD сообщения |
ace | 32 | Очередь для логирования правил в ACL |
vrrp | 64 | Обрабатываются VRRPv2/v3 пакеты |
multicast routing | 32 | Обрабатывается мультикастовый трафик при использовании PIM |
tcp syn | 256 | Очередь для работы функционала Security-suite (защита от DoS-атак) |
Route Unknown
Основные причины утилизации очереди:
1. Для connected-сетей. На коммутатор поступает трафик с адресами назначения, для которых нет полной записи в ARP-таблице. Коммутатор не может корректно перенаправить этот трафик, пытается добавить arp-запись в arp-таблицу для маршрутизации трафика, но хосты не отвечают. Вследствие чего весь транзитный трафик на эти хосты перехватывается на CPU, утилизация CPU в такие моменты обычно возрастает. Зачастую такое встречается у клиентов, когда на сети работают различные системы мониторинга, которые периодически с большим pps подключаются к хостам и снимают различную информацию независимо от того, включено оборудование конечного хоста или нет. Также возможны всплески в данной очереди по причине флаша мак таблицы, как правило из-за перестроения xSTP, например на какой-либо порт пришла TCN BPDU--------> флашнулась мак таблица-------> запись в ARP таблице стала невалидна--->коммутатор перехватывает трафик до момента заполнения ARP таблицы.
Посмотреть с какого порта пришла TCN BPDU можно по команде sh spanning-tree в поле Number of topology changes
spine-1(config)#do sh spanning-tree *********************************** Process 0 *********************************** Spanning tree enabled mode RSTP Default port cost method: long Loopback guard: Disabled Loop guard default: Disabled TC protection: Disabled Root ID Priority 32768 Address e4:5a:d4:d7:8c:40 This switch is the root Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec Number of TC BPDU handled 0 Number of topology changes 1 last change occurred 00:00:36 ago from te1/0/2 Times: hold 1, topology change 35, notification 2 hello 2, max age 20, forward delay 15
Также если наблюдается проблема со всплесками pps в очереди route unknown - то стоит обратить внимание как меняется значение Dynamic unicast в выводе sh mac address-table count. Если большое количество маков удаляется/добавляется за короткий промежуток времени, это будет дополнительным подтверждением, что проблема связана с xSTP
spine-1#sh mac address-table count Capacity : 32768 Free : 32755 Used unicast : 13 Used multicast : 0 Used IPv4 hosts : 0 Used IPv6 hosts : 0 (each IPv6 host consumes 2 entries in MAC address table) Secure : 0 Dynamic unicast : 8 Static unicast : 0 Internal : 5 Service dynamic : 0
2. Для не connected-сетей. Это обычный route unknown трафик, который попадает на коммутатор, т.е трафик, для которого нет маршрута в таблице маршрутизации. В маршрутизируемой сети должен распространяться black hole route для предотвращения описанной проблемы.
3. Формирование icmp redirect сообщений. Может возникнуть при неоптимально настроенной маршрутизации трафика независимо от того, какая используется маршрутизация, статическая или динамическая. Обычно встречается в комбинированных сетях с множественным доступом. В большинстве случае понять, что загрузку очереди route unknown вызывают icmp redirect сообщения, можно по загруженным процессам IPG и 3SWF. Пример:
----------------- show tasks utilization ------------------ Task name five seconds one minute five minutes --------- ------------ ------------ ------------ 3SWF 19% 16% 16% IPG_ 15% 14% 13%
В таске IPG формируются icmp redirect сообщения, в 3SWF осуществляется передача пакетов между канальным и сетевым уровнем, т.е в неё также попадает и обрабатывается icmp трафик. ICMP Redirect генерируются при следующих условиях:
- Интерфейс, на который поступает полезный трафик, также является выходным для этого трафика при маршрутизации (один и тот же SVI для входящего и исходящего трафика);
- IP адрес источника трафика находится в той же подсети при отправке маршрутизируемого трафика на следующий next-hop;
- На l3 интерфейсе включена отправка icmp redirect сообщений (по умолчанию включено).
Для большинства сетей хорошей практикой является отключение icmp redirect на всех l3 интерфейсах. Практического применения у данного функционала в текущих реалиях нет, рекомендуется отключать его на всех l3 интерфейсах коммутатора. Отключается в контексте ip интерфейса:
spine-1#sh ip interface IP Address I/F I/F Status Type Directed Prec Redirect Status admin/oper Broadcast ------------------ ------------- ---------- ------- --------- ---- -------- ------ 172.16.0.1/24 vlan 10 UP/UP Static disable No enable Valid console#conf console(config)#interface ip 172.16.0.1 console(config-ip)#no ip redirects
В данном случае необходимо понимать, что периодический рост route unknown - это обычное явление в эксплуатационной сети, в данную очередь попадает полезный трафик для формирования соответствующих записей в control-plane и аппаратного перенаправления трафика.
to be continued...