Беркут-ETL и Cisco. Да будет шлейф!

b3etlvsciscoТак почему же Cisco «роняла» линк порта, когда к нему подключали Беркут-ET/Беркут-ETL в режиме шлейфа?

Как мы и предполагали, дело оказалось в keepalive фреймах. Для обнаружения петель на канальном уровне, Cisco периодически шлёт такие фреймы. Если на порту был принят keepalive с mac-адресом данного порта, то cisco определяет петлю на порту и опускает линк.

Как оказалось, в cisco’вских keepalive фреймах mac-адреса источника и получателя совпадают и равны mac-адресу порта с котрого были отправлены (у dlink, zyxel не так), вот и понятно почему при шлейфах 2 и 3 уровней блокировался порт (опускался линк).

Поэтому решение довольно простое: отфильтровывать фреймы с ethertype 0x9000 (он используется для cisco keepalive). Так что теперь все будет в порядке.

2 комментария

  1. Антон Фельдман:

    есть подозрение, что в режиме loopback вообще не нужно заворачивать фреймы, у которых совпадает source и destination MAC’и.

  2. Алексей Литвинов:

    Скорее всего так и сделаем, но вначале надо посмотреть, что говорят стандарты.