В последнее время загрузка ЦП механизма маршрутизации на двух наших пиринговых маршрутизаторах Juniper увеличилась с ~ 10-20% средней нагрузки до 80 +%. Я пытаюсь выяснить, что вызывает это (и как уменьшить эту высокую нагрузку).
Немного информации о маршрутизаторах: оба работают в одной и той же версии JunOS, оба подключены к одним и тем же двум одноранговым локальным сетям IXP и имеют большое количество (несколько сотен) (почти идентичных) сеансов IPv4 и IPv6. Оба маршрутизатора подключены к другому провайдеру IP-транзита и одинаково подключены к остальной части нашей сети. Нагрузка на процессор механизмов маршрутизации не является ровной на 80 +%, есть спады к нормальным уровням от минут до часов, но эти падения не так часты.
Вещи, которые я проверил:
- в момент начала увеличения изменения конфигурации не вносились
- нет увеличения одноадресного трафика, направленного на контрольную плоскость
- нет (существенного) изменения в объеме пересылаемого трафика (хотя даже увеличение не должно иметь значения)
show system processes summary
указывает на то, чтоrpd
процесс вызывает высокую загрузку процессора- нет быстро колеблющихся пиров BGP, вызывающих большое количество изменений BGP
Одно возможное объяснение, которое я могу придумать, - это одноранговый узел (или более одного) на одном из обоих маршрутизаторов IXP, подключенных к отправке большого количества обновлений BGP. В настоящее время у меня есть только статистика по количеству сообщений BGP для моих транзитных сеансов (без аномальной активности), и с несколькими сотнями сеансов BGP в пиринговых локальных сетях не так просто определить проблемные сеансы, если мне нужно создать графики для все сеансы.
Мои вопросы:
- Есть ли какие-либо другие вещи, которые я должен проверить, чтобы найти причину этого увеличения нагрузки на процессор в механизмах маршрутизации?
- Как я могу легко узнать, какие сеансы вызывают эти проблемы (если мое предположение верно)? Включение трассировки BGP генерирует огромные объемы данных, но я не уверен, дает ли это мне какую-то реальную информацию.
Я знаю, что эта тема старая, но ради полноты:
Если высокая загрузка процессора происходит случайно, и вы не можете определить процесс, вызывающий это, мы можем создать скрипт ниже.
С помощью этого сценария мы собираемся охватить весь процесс, когда процесс поднимается выше нормального или ожидаемого порога, это не должно нарушать трафик, но MW по-прежнему рекомендуется. Однако я вижу, что вы сузили его до РПД.
ДИСПЛЕЙ НАСТРОЙКИ ВЫХОДА
Также вы проверили, были ли сообщения о каких-либо сообщениях ddos? Вы можете запустить следующие команды:
Тогда в зависимости от того, что вы видите, это можно сузить, например:
Juniper также имеет список сбора для этого типа проблем в KB22637
Команды CLI с высоким процессором
Включите учет заданий и соберите выходные данные учета заданий (три раза с интервалом в 30 секунд). Не забудьте выключить его после завершения.
бревна
Архив / var / log, как указано в шаге 1 выше Traceoptions
Также, если вы используете старую версию, которая была подвержена ошибкам, вы можете проверить жизненную поддержку кода:
http://www.juniper.net/support/eol/junos.html
Еще один момент, который следует упомянуть, который может быть векторной атакой, - это не защита вашего RE от трафика нежелательных исключений. Убедитесь, что у вас есть фильтр брандмауэра под обратной связью.
Я видел в прошлых сценариях на маршрутизаторе, вызывающих высокую производительность процессора, не уверен, что rpd попал мне в глаза, но это то, что вы можете не захотеть упускать.
Если вы видите в журналах много обращений с RPD_MPLS_PATH_BANDWIDTH_CHANGE, вы можете использовать очень агрессивный интервал регулировки
Проверьте любые сбросы в «show system queue»: это очередь ядра, может появиться некоторая подсказка.
источник