Spanning Tree的過程包含以下重要步驟:
1.選擇Root Bridge:
Root Bridge的選擇是以各Bridge(Switch)的ID大小來做選擇,ID值越小,優先權越高。
這個ID值包含Priority + VLAN ID,Priority預設值為32768,要調整這個值需要以4096為單
位做增減。
一般來說這一個ID值都會是一樣的,所以一開始,每一台Switch會以各自的
System MAC address來做比較,這一個MAC address也可以從show version中的Base ethernet MAC Address的知,MAC address的大小最好以二進位來做比較,值越小優先權越高。
如上圖,由於每一台的ID值都是32768+1=32769 (1為VLAN ID),所以比較每一台Switch
System MAC address結果:00E0>0030>000D>0004,優先權0004>000D>0030>00E0,
也就是Switch1>Switch0>Switch2>Switch4,所以Switch1為Root Bridge。
總的來說,這一個比較值的組合為4個bit的單位值(A)+12個bit的4096(B)+MAC address(C)
,預設值A=8,B永遠都是4096,C則因機器而異。
2.選擇Root Port(簡稱RP):
Root Port為每一個Switch通往Root Bridge的最短路徑的那一個Port,每一個Switch必須選
出唯一一個Root Port,最端路徑的計算方式為每一個通往Root Bridge的Cost加總,每一種
網路介面的速度有其預設上被定義好的cost,10G cost=1,1G cost=10,100M cost=19,
10M cost=100。在抉擇的過程中會遇到以下情況:
a.同一個Switch通往Root Bridge的cost相同,這時候以相鄰的Bridge中ID值最小的為優先,
如上圖,Switch4有四個Port(Fa0/5、Fa0/6、Fa0/7、Fa0/8)通往Root Bridge Switch1的cost
都相同,因Fa0/7、Fa0/8通往Root Bridge的路徑中相鄰的Switch1其Bridge ID比Fa0/5、
Fa0/6通往Root Bridge路徑中相鄰的Switch2其Bridge ID較低,所以會從Fa0/7、Fa0/8兩者
選擇其中一個Port當作Root Port。
b.同一台Switch通往Root Bridge的Root Port有兩個以上可以選擇,則選擇Port ID較低的
當作Root Port,如a.的結果,因為Fa0/7的Port ID較Fa0/7的Port ID低,所以選擇Fa0/7當
作Root Port。依此類推,整體架構中的Root Port還有Switch0的Fa0/1、Switch2的Fa0/3。
而與其做比較的Port就是non-Designated Port,也就是blocked Port。所以Switch3的
Fa0/8、Switch0的Fa0/2、Switch2的Fa0/4都是blocked port。
3.選擇Designated Port(簡稱DP):
Designated Port是除了Root Port以外通往Root Bridge的最短路徑的Port,其選擇方式與
Root Port相同,Root Bridge本身所有的Port都是Designated Port,而與Root Port相鄰的Port
也一定是Designated Port。
如果同一個Segment中無法依照上述原則決定DP時,則以Bridge ID較小的Switch上的Port
為DP,而相對應的就是non-DP。如本架構,Switch2的F0/5、Fa0/6與Switch3的Fa0/5、
Fa0/6做比較,因Switch2的Bridge ID較小,所以選擇Switch2的Fa0/5、Fa0/6當作DP(同一台
Switch可以有好幾個DP,所以不需要做Port ID比較)。所以Switch3的Fa0/5、Fa0/6會是
non-DP
其他:
如上圖,如果要更改Switch0的blocked port為Fa0/1,則需要更改對口的Port Priority,即
Switch1的Fa0/1的Port Priority大於預設值128。
綜合來說,STP的運算過程需要依賴所有參與的交換器所提供的資訊來做運算的依據,
這些資訊包含Bridge ID、通往Root Bridge的cost、Port Priority等。如果所有參與的交換器
所提供的資訊不足以作判斷時,就自己做判斷,比如說以Port ID來做判斷。
沒有留言:
張貼留言