ZapaL писал(а):
Прошу рассмотреть возможность исправления алгоритма работы Loopback detection.
Есть подозрение, что и на другом оборудовании D-Link этот алгоритм такой же.
А он должен выглядеть примерно так:
При появлении петли (принятии своего пакета LOOP-DETECT) на порту или в отдельном VLAN, трафик/порт блокируется.
При заблокированном трафике, пакеты LOOP-DETECT отправляются с интервалом %recover_timer%.
Если пакет не пришел обратно, разблокируем трафик.
Это не только обезопасит сеть от шторма, но и снизит нагрузку на CPU во время петли.
Интересная идея, но имхо самая большая проблема петли в том, что до возвращения loop-фрейма с проблемного порта могут вернуться и другие фреймы, в т.ч. с адресом шлюза. Коммутатор перестроит свою таблицу коммутации и трафик полетит в проблемный порт. Сразу после этого петля обнаруживается и порт блокируется. Теоретически, поскольку передача продолжается, маки практически мгновенно должны изучиться на правильных портах, но на практике прерывание связи для конечного потребителя может достигать 40 минут. Почему так, для меня непонятно, но я такое видел. По хорошему, сначала надо исследовать и решать эту проблему, иначе корректировка механизма LBD не имеет смысла.