Portál AbcLinuxu, 7. května 2025 04:44
Zdravím,
řeším problém jak předejít zahlcení sítě při vytvoření smyčky. Síť má asi 100 koncových uzlů a topologie je stromová, asi takhle (všechny switche jsou 3com):
Když propojím 2250 switch sám se sebou přímým kabelem, vznikne smyčka, která položí síť (libovolný broadcast, který si switch posílá stále dokola a pokaždé ho pumpuje znovu do celé sítě?). Když propojím 2250 s 2816 (dublované spojení, které už existuje), síť se taky položí. 2816 se sám se sebou propojit nenechá, asi je inteligentnější.
Mám tedy 2 otázky − jsou začátečnické, omlouvám se, google mi ale nijak přímo neporadil, asi jsem nevěděl, na co se přesně zeptat:
Doufám že řešení je mezi židlí a klávesnicí a ne v nákupu lepších (dražších) switchů. Díky za nějaké rady, připadá mi že to je problém, který se musí nějak řešit všude, a přitom jsem toho našel pomálu.
Díky za obě odpovědi. Kromě jednoho switche (2250+) jsou ty switche unmanaged. Dá se nějak STP nastavit i na nich (přes snmp?)? Specifikace přitom uvádí u všech něco jako "IEEE 802.1d (bridging)", což je, jestli to chápu STP.
Pomocí STP si však akorát switche dávají mezi sebou vědět o topologii, ale pokud se to nedá nějak nastavit (třeba priorita), tak o samo o sobě problém neřeší, ne?
Dík, Vašek
Tyhle přepínače neznám, ale pokud podporují 802.1d (což píšeš, že ano), je STP implicitně povoleno. Přesněji, jde-li o IEEE 802.1D-2004, bude to RSTP - Rapid STP.
K tvému poslednímu souvětí: problém to řeší, protože přepínače si mezi sebou vyměňují BPDU zprávy na základě kterých rozhodnou o kořenovém přepínači (mostu). Vůči němu, kořeni, začnou tvořit logickou bezesmyčkovou (stromovou) topologii. Vhodně zvolená rozhraní přepínačů se pak přepnou do stavu blocking/discarding, kdy se neúčastní přepínaní rámců a případná smyčka se tak "rozpojí".
Pokud se ti ty přepínače chovají po zapnutí tak, že je zahltí broadcast storm, jak popisuješ, je někde velká chyba. Zvážil bych reklamaci, protože takto nejsou konformní s 802.1d.
> Pokud nevyzadujes rozesilani broadcastu po cele siti (pro wokenni sdileni), tak by melo jit rozdelit kolizni domeny.
Nejspíše překlep. Míněny jsou broadcastové domény, neboť přepínač sám o sobě terminuje kolizní domény na každém svém rozhraní. A v době fulduplexu už se s kolizemi ani nepočítá (nepoužívá se CSMA/CD).
Ono je ta činnost STP poněkud složitější. Předně, máme-li být přesní, nejde o "STP broadcast paket", ale o STP multicast rámec, což není nic jiného než tady již jednou zmíněný BPDU rámec. Pokud se přepínači tento odeslaný rámec vrátí jiným rozhraním, pozná podle BID (identifikátor přepínače/mostu složený z priority a MAC adresy přepínače), že na těchto dvou portech je připojen sdílený segment (např. HUB) a zakáže jedno z nich. Opět pro přesnost - to rozhraní, které má vyšší číselnou hodnotu PID (Port ID), bude mít roli Backup Port a stav Discarding (uvažujme RSTP); většinou se na prioritu portů nešahá, takže tímto rozhraním bude to, které je vyšší v pořadí.
A jak ví, že tam je sdílený segment? Protože pokud by na obou rozhraních "visel" další přepínač, nemohl by se vrátit stejný BPDU rámec - BID by odpovídalo tomuto dalšímu přepínači a ne tomu původnímu. To je i odpověď na otázku, "zda by zakazal i ten samy port kterym se STP paket vratil" - k tomuto nemůže v přepínaném Ethernet nikdy dojít (že by po jednom drátu přišlo stejné BPDU tam a zpátky).
Ad 1. "BPDU protection" je něco jiného než si představuješ. Tohle zajišťuje ochranu před připojením přepínače do rozhraní, které je nastaveno jako "Edge", tedy za kterým je očekávána pouze koncová stanice. Tedy vlastně je to částečně odpověď na Ad 2, jen z jiné strany. Provádí se to buď filtrací BPDU rámců nebo rezolutním zakázáním příslušného rozhraní.
Ad 2. Pokud ten přepínač podporuje STP, a žil jsem v představě, že jej podporují všechny, připojení dalšího přepínače způsobí pouze "přepočítání" logické topologie tak, aby tam ty smyčky zmizely. Jediné riziko je právě v nastavení rozhraní do role Edge, ale to u těch unmanaged přepínačů není jak udělat a téměř jistě tam tenhle problém není.
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.