1、引言
在一個(gè)橋接的局域網(wǎng)里,為了增強(qiáng)可靠性,必然要建立一個(gè)冗余的路徑,網(wǎng)段會(huì)用冗余的網(wǎng)橋連接。但是,在一個(gè)透明橋橋接的網(wǎng)絡(luò)里,存在冗余的路徑就能建立一個(gè)橋回路,橋回路對(duì)于一個(gè)局域網(wǎng)是致命的。它會(huì)帶來如下問題:
A.廣播風(fēng)暴
B.同一幀的多份拷貝
C.不穩(wěn)定的MAC地址表
因此,在交換網(wǎng)絡(luò)中必須有一個(gè)機(jī)制來阻止回路。
2、生成樹協(xié)議
生成樹協(xié)議就是IT界中常用的機(jī)制.生成樹協(xié)議是一種橋嵌套協(xié)議,在IEEE 802.1d規(guī)范里定義,可以用來消除橋回路。它的工作原理是這樣的:生成樹協(xié)議定義了一個(gè)數(shù)據(jù)包,叫做橋協(xié)議數(shù)據(jù)單元BPDU(Bridge Protocol Data Unit)。網(wǎng)橋用BPDU來相互通信,并用BPDU的相關(guān)機(jī)能來動(dòng)態(tài)選擇根橋和備份橋。但是因?yàn)閺闹行臉虻饺魏尉W(wǎng)段只有一個(gè)路徑存在,所以橋回路被消除。
在一個(gè)生成樹環(huán)境里,橋不會(huì)立即開始轉(zhuǎn)發(fā)功能,它們必須首先選擇一個(gè)橋?yàn)楦鶚,然后建立一個(gè)指定路徑。在一個(gè)網(wǎng)絡(luò)里邊擁有最低橋ID的將變成一個(gè)根橋,全部的生成樹網(wǎng)絡(luò)里面只有一個(gè)根橋。根橋的主要職責(zé)是定期發(fā)送配置信息,然后這種配置信息將會(huì)被所有的指定橋發(fā)送。這在生成樹網(wǎng)絡(luò)里面是一種機(jī)制,一旦網(wǎng)絡(luò)結(jié)構(gòu)發(fā)生變化,網(wǎng)絡(luò)狀態(tài)將會(huì)重新配置。
當(dāng)選定根橋之后,在轉(zhuǎn)發(fā)數(shù)據(jù)包之前,它們必須決定每一個(gè)網(wǎng)段的指定橋,運(yùn)用生成樹的這種算法,根橋每隔2秒鐘從它所有的端口發(fā)送BPDU包,BPDU包被所有的橋從它們的根端口復(fù)制過來,根端口是接根橋的那些橋端口。BPDU包括的信息叫做端口的COST,網(wǎng)絡(luò)管理員分配端口的COST到所有的橋端口,當(dāng)根橋發(fā)送BPDU的時(shí)候,根橋設(shè)置它的端口值為零。然后沿著這條路徑,下一個(gè)橋增加它的配置端口COST為一個(gè)值,這個(gè)值是它接收和轉(zhuǎn)發(fā)數(shù)據(jù)包到下一個(gè)網(wǎng)段的值。這樣每一個(gè)橋都增加它的端口的COST值為它所接收的BPDU的包的COST值,所有的橋都檢測(cè)它們的端口的COST值,擁有最低端口的COST值的橋就變?yōu)榱酥付ǖ臉。擁有比較高端口COST值的橋置它的端口進(jìn)入阻塞狀態(tài),變?yōu)榱藗浞輼。在阻塞狀態(tài),一個(gè)橋停止了轉(zhuǎn)發(fā),但是它會(huì)繼續(xù)接收和處理BPDU數(shù)據(jù)包。