Pull to refresh

Comments 13

у вас же в первой ссыле написано: Multiple Spanning Tree Protocol (MSTP). Почему MST?

Думаю, это тот самый случай, где будет уместен ответ "так исторически сложилось" :). Поясню, смысл в том, что MSTP - опирается на RSTP, но дополнительно использует концепцию деревьев, так что получается протокол всё же тут другой, а именно RSTP. Опять же, некоторая игра слов и в документации встречал оба варианта. Cisco везде указывает MST, а Juniper пишет MSTP.

С другой стороны, наверное правильно брать референс с какого-то более надежного источника, всё-таки вендора могут и что-то там себе придумать, поэтому вот нашёл статью на IEEE - https://www.ieee802.org/1/files/public/docs2005/qrev-rouyer-mstp-0105.pdf. В общем правильный вариант всё-таки MSTP.

UFO landed and left these words here

Они отличаются только TUI. Отслеживанием зависимостей занимается Kconfig.

UFO landed and left these words here

В справке по параметру указаны все его зависимости и в nconfig и в menuconfig. Включаются они автоматически без уведомлений. В этом плане различий у них нет.

UFO landed and left these words here

Тот самый случай, когда статья полностью на эльфийском)

Какие заметные преимущества и в каких условиях MSTP даёт перед STP?

А так-то в ядре много чего нет. Какие-нибудь OSPFы тоже идут отдельными демонами.

Ну тут не совсем так, по крайней мере если я правильно понимаю структуру. Есть отдельные внешние демоны - это ровно то, что я рекомендовал к использованию - mstpd, а есть встроенный пакет bridge_mst.c внутрь модуля iproute2, который идёт в составе ядра, вот с ним и не вышло, хотя по идее, казалось бы что должно.

MSTP перед STP имеет основное преимущество в том, что во-первых, он быстрее, т.к. использует RSTP, во-вторых имеет возможность делить разные вланы на разные деревья и поэтому влияние на одно, не приводит к влиянию на другое, что в случае с классическими STP и RSTP не так. Есть ещё вариант от Cisco, PVST+, где они делают каждое дерево, под каждый влан, но тут минус в том, что в MSTP можно самому поуправлять и сделать соотношение VLAN:INSTANCE равное 1:1, так и N:1.

Модуль iproute2 никак не может реализовывать MSTP. Это скорее всего просто средство настройки (как и весь пакет утилит iproute2), которая по сути является обёрткой надо API NetLink соркетов. Активная часть, которая рассылает и слушает пакеты должна крутиться либо в ядре, либо отдельным демоном.

Некропостинг режим. В самом ядре реализован только механизм состояний портов + ядерная реализация основного стандарта STP (802.1d который). Более навороченные разновидности STP реализуются через user space helper демона - mstpd или какого-нибудь другого. Но тут была ещё одна сложность - MSTP долго не поддерживался ядром из-за архитектурных ограничений реализации ethernet bridge - он имеет поддержку состояния только на уровне всего порта, а для MSTP требуется поддержка состояния на уровне порт+влан. В версии 6.0+ это вроде как исправили, но в mstpd поддержку этого всего не завезли полноценно, когда я смотрел его последний раз.

Sign up to leave a comment.

Articles