Назад | Перейти на главную страницу

Пакеты STP отбрасываются (1 пакет каждые 2 секунды), когда к интерфейсу присоединяется нерелевантная многоадресная группа.

Я пытаюсь понять странную проблему с отбрасыванием пакетов при присоединении к определенной группе многоадресной рассылки.

Я думаю, что эта проблема связана с патчем, введенным в версии ядра 2.6.37.

Beginning with kernel 2.6.37, it has been changed the meaning of dropped
packet count. Before, dropped packets was most likely due to an error.
Now, the rx_dropped counter shows statistics for dropped frames because 
of:

Softnet backlog full -- (Measured from /proc/net/softnet_stat)
Bad / Unintended VLAN tags
Unknown / Unregistered protocols
IPv6 frames when the server is not configured for IPv6

If any frames meet those conditions, they are dropped before the 
protocol stack and the rx_dropped counter is incremented.

На чистом SLES11 SP3 мне удалось воспроизвести это, присоединившись к группе многоадресной передачи STP (01: 80: c2: 00: 00: 00).

Без каких-либо изменений в /proc/net/dev (RX) или netstat -i потому что моя система не присоединилась к группе многоадресной рассылки STP (поэтому пакеты игнорируются).

Когда я присоединяюсь к группе многоадресной рассылки STP, я вижу отбрасывание пакетов (1 пакет каждые 2 секунды), которые, как мне кажется, отбрасываются из-за патча, представленного в ядре 2.6.37 (Неизвестные / незарегистрированные протоколы), и это нормально.

hostname:~ # ip maddr add 01:80:c2:00:00:00 dev eth1

Насколько я понимаю, когда я вставляю модуль modprobe llc / stp в ядро, он распознает протокол и, следовательно, перестает сбрасывать пакеты (тесты доказывают, что я прав).

Модпробинг llc или stp модуль (зависит от ООО) "исправляет" проблему с отброшенным пакетом.

Теперь вопрос:

У меня есть приложение, которое при запуске присоединяется к нескольким группам многоадресной рассылки. И почему-то один определенные триггеры соединения сбрасывают проблему с пакетом (1 пакет в 2 секунды).

Проблема в том, что это не адрес групповой адресации stp 01:80:c2:00:00:00 но совсем другой (01:00:5e:46:ac:04 aka 239.70.172.4). Установка модуля llc / stp "исправляет" увеличение счетчика пропущенных пакетов. Все другие группы многоадресной рассылки не вызывают этой проблемы, например (01:00:5e:46:ac:02), а также многие другие.

Кадры STP - единственные, которые появляются на интерфейсе каждые 2 секунды, но их MAC-адрес назначения - 01: 80: c2: 00: 00: 00.

00:21:1b:4f:a3:bf > 01:80:c2:00:00:00, 802.3, length 119: LLC, dsap STP (0x42) Individual, ssap STP (0x42) Command, ctrl 0x03: STP 802.1s, Rapid STP, CIST Flags [Learn, Forward]

Как это возможно? Почему группа многоадресной рассылки 01: 00: 5e: 46: ac: 04 запускает такое поведение, как будто оно каким-то образом связано с группой STP и позволяет фреймам / пакетам проходить дальше через стек?