一、生成樹介紹
生成樹協議是一種二層管理協議,它通過選擇性地阻塞網絡中的冗余鏈路來消除二層環路,同時還具備鏈路備份的功能。
與眾多協議的發展過程一樣,生成樹協議也是隨着網絡的發展而不斷更新的,從最初的STP(Spanning Tree Protocol,生成樹協議)到RSTP(Rapid Spanning Tree Protocol,快速生成樹協議)和PVST(Per-VLAN Spanning Tree,每VLAN生成樹),再到最新的MSTP(Multiple Spanning Tree Protocol,多生成樹協議)。
二、生成樹配置
1、配置生成樹工作模式
操作 |
命令 |
說明 |
進入系統視圖 |
system-view |
- |
配置生成樹的工作模式 |
stp mode { mstp | pvst | rstp | stp } |
缺省情況下,生成樹的工作模式為MSTP模式 |
2、配置MST域
兩台或多台開啟了生成樹協議的設備若要屬於同一個MST域,必須同時滿足以下兩個條件:第一是選擇因子(取值為0,不可配)、域名、修訂級別和VLAN映射表的配置都相同;第二是這些設備之間的鏈路相通。
在配置MST域的相關參數(特別是VLAN映射表)時,會引發生成樹的重新計算,從而引起網絡拓撲的振盪。為了減少網絡振盪,新配置的MST域參數並不會馬上生效,而是在使用active region-configuration命令激活,或使用命令stp global enable全局開啟生成樹協議后才會生效。
操作 |
命令 |
說明 |
進入系統視圖 |
system-view |
- |
進入MST域視圖 |
stp region-configuration |
- |
配置MST域的域名 |
region-name name |
缺省情況下,MST域的域名為設備的MAC地址 |
配置VLAN映射表 |
instance instance-id vlan vlan-id-list |
二者選其一 缺省情況下,所有VLAN都映射到CIST(即MSTI 0)上 |
vlan-mapping modulo modulo |
||
配置MSTP的修訂級別 |
revision-level level |
缺省情況下,MSTP的修訂級別為0 |
(可選)顯示MST域的預配置信息 |
check region-configuration |
- |
激活MST域的配置 |
active region-configuration |
- |
3、配置根橋和備份根橋
可以通過計算來自動確定生成樹的根橋,用戶也可以手工將設備配置為指定生成樹的根橋或備份根橋。
操作 |
命令 |
說明 |
進入系統視圖 |
system-view |
- |
配置設備為根橋 |
STP/RSTP模式: stp root primary |
缺省情況下,設備不是根橋 |
PVST模式: stp vlan vlan-id-list root primary |
||
MSTP模式: stp [ instance instance-list ] root primary |
操作 |
命令 |
說明 |
進入系統視圖 |
system-view |
- |
配置設備為備份根橋 |
STP/RSTP模式: stp root secondary |
缺省情況下,設備不是備份根橋 |
PVST模式: stp vlan vlan-id-list root secondary |
||
MSTP模式: stp [ instance instance-list ] root secondary |
4、配置設備優先級
設備的優先級參與生成樹計算,其大小決定了該設備是否能夠被選作生成樹的根橋。數值越小表示優先級越高,通過配置較小的優先級,可以達到指定某台設備成為生成樹根橋的目的。
操作 |
命令 |
說明 |
進入系統視圖 |
system-view |
- |
配置設備的優先級 |
STP/RSTP模式: stp priority priority |
缺省情況下,設備的優先級為32768 |
PVST模式: stp vlan vlan-id-list priority priority |
||
MSTP模式: stp [ instance instance-list ] priority priority |
5、配置邊緣端口
當端口直接與用戶終端相連,而沒有連接到其他設備或共享網段上,則該端口被認為是邊緣端口。網絡拓撲變化時,邊緣端口不會產生臨時環路。
由於設備無法知道端口是否直接與終端相連,所以需要用戶手工將端口配置為邊緣端口。如果用戶將某個端口配置為邊緣端口,那么當該端口由阻塞狀態向轉發狀態遷移時,這個端口可以實現快速遷移,而無需等待延遲時間。
對於直接與終端相連的端口,請將該端口設置為邊緣端口,同時開啟BPDU保護功能。這樣既能夠使該端口快速遷移到轉發狀態,也可以保證網絡的安全。
操作 |
命令 |
說明 |
進入系統視圖 |
system-view |
- |
進入二層以太網接口視圖/二層聚合接口視圖 |
interface interface-type interface-number |
- |
配置當前端口為邊緣端口 |
stp edged-port |
缺省情況下,端口為非邊緣端口 |
6、配置端口的路徑開銷
需要注意的是,當端口的路徑開銷值改變時,系統將重新計算端口的角色並進行狀態遷移。
操作 |
命令 |
說明 |
進入系統視圖 |
system-view |
- |
進入二層以太網接口視圖/二層聚合接口視圖 |
interface interface-type interface-number |
- |
配置端口的路徑開銷 |
STP/RSTP模式: stp cost cost-value |
缺省情況下,自動按照相應的標准計算各生成樹上的路徑開銷 |
PVST模式: stp vlan vlan-id-list cost cost-value |
||
MSTP模式: stp [ instance instance-list ] cost cost-value |
7、配置端口的優先級
端口優先級是確定該端口是否會被選為根端口的重要依據,同等條件下優先級高的端口將被選為根端口。
操作 |
命令 |
說明 |
進入系統視圖 |
system-view |
- |
進入二層以太網接口視圖/二層聚合接口視圖 |
interface interface-type interface-number |
- |
配置端口的優先級 |
STP/RSTP模式: stp port priority priority |
缺省情況下,端口的優先級為128 |
PVST模式: stp vlan vlan-id-list port priority priority |
||
MSTP模式: stp [ instance instance-list ] port priority priority |