STP的主要作用是防止網(wǎng)橋網(wǎng)絡(luò)中的冗余鏈路形成環(huán)路,工作在OSI模型 的第2層。但某些特定因素會導(dǎo)致STP失敗,要排除故障可能非常困難,這取決于網(wǎng)絡(luò)設(shè)計。所以要先做好周密準(zhǔn)備和規(guī)劃,以免發(fā)生故障后束手無策。
圖1 網(wǎng)絡(luò)拓?fù)鋱D
許多時候,人們在著手排除故障時才發(fā)現(xiàn)自己不知道根橋的位罝在哪里,如圖1所示,不要將根橋交由STP來決定。對于每個VLAN,通常都可以確定哪臺交換機最適合作為根橋。一般情況下,選擇位于網(wǎng)絡(luò)中央位置、而且功能較強的網(wǎng)橋,如果將位于網(wǎng)絡(luò)中央、直接連接到服務(wù)器和路由器的設(shè)備定為根橋,便可縮短從客戶端到服務(wù)器和路由器的平均距離。
由圖1可知:如果交換機SW2是根橋,則會在SW1或SW3上阻塞從SW1到SW3的鏈路,此時連接到交換機SW2的主機PC1能夠通過2跳訪問服務(wù)器和路由器,連接到網(wǎng)橋SW3的主機PC2能夠通過3跳訪問服務(wù)器和 路由器,因此平均距離是兩跳半。
如果交換機SW1是根橋,那么連接到SW2和SW3的主機PC1、PC2都能通過兩跳到達路由器和服務(wù)器,現(xiàn)在的平均距離為兩跳。
圖1所描述的只是一個非常簡單的網(wǎng)絡(luò)拓?fù)?,如果在更?fù)雜的網(wǎng)絡(luò)拓樸結(jié)構(gòu)中以上的邏輯同樣使用,所以根橋的選擇在現(xiàn)實環(huán)境中顯得尤為重要,并不是隨便配置一下,讓網(wǎng)絡(luò)自主選擇根橋,能夠連通就OK了。而且當(dāng)出現(xiàn)一些不是很明顯的網(wǎng)絡(luò)故障時,會讓我們不知所措。
措施:可以通過配置網(wǎng)橋優(yōu)先級來指定根橋,默認(rèn)32768,數(shù)值越小優(yōu)先級越高(但必須是4096的倍數(shù)),現(xiàn)在改為4096,最好配另一臺為備用根橋,優(yōu)先級可以配為8192。
STP之所以能夠成功阻止環(huán)路,采取的惟一一項重要舉措就是阻塞端口。只要有一個阻塞端口錯誤轉(zhuǎn)換到轉(zhuǎn)發(fā)狀態(tài),就可能對大面積的網(wǎng)絡(luò)造成負(fù)面影響。這就是使用STP可能帶來的風(fēng)險,但是,我們可對此風(fēng)險加以限制,盡量減少阻塞端口數(shù)目。
要想在將來發(fā)生STP故障的時候更容易加以解決,就要在一開始的時候規(guī)劃好冗余鏈路。
在非分層式網(wǎng)絡(luò)中,可能需要微調(diào)STP開銷參數(shù)來決定要阻塞的端口。然而,如果采用的是分層設(shè)計而且根橋所在的位置恰當(dāng),那么一般不需要調(diào)整該參數(shù)。
注意:為了得到穩(wěn)定網(wǎng)絡(luò),務(wù)必了解每個VLAN中應(yīng)阻塞哪些端口,應(yīng)具備一張網(wǎng)絡(luò)圖,其中應(yīng)清晰顯示網(wǎng)絡(luò)中的每個物理環(huán)路以及斷開這些環(huán)路的阻塞端口。
圖2 網(wǎng)絡(luò)拓?fù)鋱D
圖3 網(wǎng)絡(luò)拓?fù)鋱D
此外,了解冗余鏈路的位罝有助于找出偶然的橋接環(huán)路以及原因。了解阻塞端口的位置也有助于確定錯誤的位置。
在交換網(wǎng)絡(luò)中,兩個節(jié)點之間可能需要兩條以上的冗余鏈路。然而,圖2所示的配置相當(dāng)常見。每臺到匯聚層交換機分別連接到兩臺核心層交換機,即交換機LSW1和 LSW2。
接入交換機LSW5和LSW6連接到匯聚層交換機LSW3和LSW4, LSW5和LSW6上的用戶都只位于網(wǎng)絡(luò)中可用VLAN的子集中。在該圖中,交換機LSW3連接的用戶都位于VLAN 20中;交換機LSW4只連接VLAN 30中的用戶。
默認(rèn)情況下,中繼承載 VTP域中定義的所有VLAN。使用VTP修剪,交換機LSW3轉(zhuǎn)發(fā)VLAN 20的流量,但阻塞不必要的VLAN 30的流最。核心層交換機LSW1和LSW2之間。
一共有3條冗余路徑。這種冗余設(shè)置會導(dǎo)致更多的端口被阻塞,形成環(huán)路的機率也更高。
所有不必要的VLAN流都應(yīng)該從適當(dāng)?shù)闹欣^鏈路中剪除掉。VTP修剪可以起到一定的作用,但是在網(wǎng)絡(luò)的核心層則沒有必要使用此功能。
建議:只使用接入VLAN將匯聚層交換機連接到核心層(圖 3),在此設(shè)計中,每個VLAN只阻塞了一個端口。此外,如果關(guān)閉LSW1或LSW2,那么只需一個步驟 即可刪除所有冗余鏈路。
注意:VTP是思科專有的協(xié)議,在IEEE標(biāo)準(zhǔn)中有GVRP 協(xié)議,允許對802.1Q VLAN 進行控制。GVRP交換機之間能夠相互交換VLAN配置信息,裁剪不必要的廣播和未知單播流量以及在通過 802.1Q干線連接的交換機上動態(tài)創(chuàng)建和管理VLAN。
第3層交換意味著以第2層交換的速度執(zhí)行路由。路由器執(zhí)行的兩種主要功能如下。
1.構(gòu)建路由表,路由器一般通過路由協(xié)議與對等點交換信息;
2.接收數(shù)據(jù)包,并根據(jù)目的地址將它們轉(zhuǎn)發(fā)到正確的接口。
第3層交換機現(xiàn)在能夠使用與第2層交換功能一樣快的速度來有效地執(zhí)行第2層功能,如圖3所示(虛線框),路由的跳轉(zhuǎn)以及LSW1與LSW2之間的額外網(wǎng)段上沒有任何對速度的不利影響。
核心層交換機LSW1和LSW2是第3層交換機。VLAN 20與VLAN 30現(xiàn)在在LSW1與LSW2之間路由, 因此不可能形成環(huán)路。第三層設(shè)備限制了VLAN 20與VLAN 30的廣播域邊界,而依賴第3層路由協(xié)議,冗余功能仍然存在,此設(shè)計保證收斂速度比802.1DSTP的收斂速度更快。STP不再阻塞任何單個端口,因此不可能形成橋接環(huán)路。
在交換機初始啟動之后,交換機的所有端口即加入到默認(rèn)VLAN中。讓所有這些交換機端口參與默認(rèn)VLAN會使這些端口全部位于同一個廣播域中。這樣一來,連接到交換機任何端口的任何設(shè)備都能與連接到其它端口的其它設(shè)備通信。交換機的默認(rèn)VLAN是VLAN 1。VLAN 1具有VLAN的所有功能,但是不能對它進行重命名,也不能刪除。第2層的控制流量(例如CDP流量和生成樹協(xié)議流量)始終從屬于 VLAN 1——這一點無法改變。
本 征VLAN分 配 給802.1Q中繼端口。802.1Q中繼端口支持來自多個VLAN 的流量(有標(biāo)記流量),也支持來自VLAN以外的流量(無 標(biāo) 記 流 量)。802.1Q中繼端口會將無標(biāo)記流量發(fā)送到本征VLAN。
默認(rèn)情況下TRUNK會把默認(rèn)VLAN1作為本征VLAN,這樣一來,所有無標(biāo)記流量都通過VLAN1,大量的廣播或組播流量太高會對CPU造成不利影響,削弱其處理重要的BPDU的能力。因此,用戶流量不應(yīng)在VLAN1上傳輸。
最佳做法是使用VLAN 1以外的VLAN作為本征VLAN。這樣VLAN1就可以保證二層的控制流量(例如CDP流量和生成樹協(xié)議流量)暢通。