в сети штормило …

Posted: 2019-02-13 in IT, Networks
Метки:,

Иногда некоторые сервисы, использующие мультикаст, могут порождать массовую генерацию мультикаст-траффика.

мультикастовый шторм 2gbps

Вот эти два пика — случившийся в одном из сегментов сети мультикаст-шторм мощностью примерно в 1,5 — 2 гбит/сек, предположительно порожденный сглючившими процессами corosync. От такой херни весь сегмент сети начинает очень сурово колбасить, потери пакетов достигают 80%, любое сетевое взаимодействие становится крайне медленным и нестабильным, всё становится очень нехорошо.
Чтобы такой херни не происходило, необходимо включать такую вещь, как Storm Control.

На джунипере оно для мультикаста по умолчанию _выключено_.
Конфигурим:

Amin@EX3300> show configuration ethernet-switching-options storm-control
interface xe-0/1/0.0 {
bandwidth 65536;
multicast;
}
interface all {
bandwidth 16384;
multicast;
}

Можно задать максимально допустимое количество принимаемого в порт широковещательного траффика как в процентах от толщины канала (level), так и в абсолютных значениях (bandwidth), в килобитах/сек. Задаваемые значения зависят от используемых приложений, в штатном режиме в логах не должно быть ругани на срабатывание storm control.

Пара подводных камней:
1). Есть ELS и не-ELS версии. Для els версий настройка немного иная (forwarding-options storm-control-profiles):
https://www.juniper.net/documentation/en_US/junos/topics/example/rate-limiting-storm-control-configuring-els.html

2). Для broadcast и unknown-unicast траффика ограничения storm control могут применяться по умолчанию, но им может быть разрешено съедать до 80% полосы.

Такая простая настройка дополнительно убережёт вашу сеть от опасно сглючивших девайсов.

- комментарии
  1. Более-менее гуманно

  2. Amin:

    Сервера были на гигабитных линках, так что да — сеть поколбасило, но обошлось без жестких ребутов и крайних мер. В случае менее надёжного софта железа или шторма в десятки гигабит могло прилечь и более серьёзно.

    Негуманно то, что подобные штормы бывает не всегда просто задетектить, как минимум за короткое время.