1. 程式人生 > >STP生成樹相關

STP生成樹相關

stp生成樹

端口協商參數:

speed - 速率;

duplex - 雙工模式

半雙工 - 同一時刻,只能收或者發;

全雙工 - 同一時刻,可以同時收和發;

建議:不同類型的設備之間進行互聯鏈路時,需要手動指定速率和雙工

傳統交換網絡存在的問題:

單點故障

解決方案:

增加冗余鏈路

增加冗余設備

環路是如何形成

數據轉發環路;

產生環路的數據,會不斷的在網絡中進行傳輸,從而消耗

網絡中鏈路資源和設備資源;

解決方案:

在交換機上運行 STP 協議;

STP - 生成樹協議; (802.1D)

-作用

存在冗余鏈路的情況下,實現環路的防護;

在LAN中,保證任何兩個通信終端之間永遠只有一個最短無環的轉發路徑。

-實現

BPDU - 橋接協議數據單元

-分類

PVST \ RSTP \ MSTP

工作過程:

1、確定交換機角色

根交換機

非根交換機

原則:比較每個交換機的 BID(橋ID),越小越好;

組成:

優先級+MAC

優先級 - 默認是32768

MAC - 交換機的主板MAC(基MAC)

查看命令:show version

2、確定端口角色

根端口 - 每一個非根交換機只有一個 距離 根交換機最近的口

指定端口 - 每一個“沖突域”中都存在一個距離根交換機最近的口

非指定端口- 其他所有端口,都叫做非指定端口

如何表示“距離”

在 STP 中,通過 cost 表示一個路徑的距離;

對於某些鏈路,均有默認的 cost 值:

10M - cost 100 ;

100M - cost 19 ;

1G - cost 4 ;

10G - cost 2 ;

BPDU -

Root-ID #表示根交換機是誰;

Cost #表示發送該BPDU的交換機到達 根交換機 的距離

BID #表示發送該BPDU的交換機的名字;

Port-ID #表示發送方交換機是在哪個端口發送出來的;

-組成:

端口優先級.端口號

-優先級默認值為 128 ;

3、確定端口狀態

disable #相當於shutdown,此時端口不能使用;

listening #偵聽,該狀態偵聽的是BPDU,用於確定端口角色

learning #學習,該狀態學習的是MAC,形成MAC地址表;

forwarding #轉發, 即端口的最終轉發狀態;(根端口 、指定端口)

blocking #阻塞,此時的端口是不可以發送數據的;(非指定端口)

修改交換機的 STP 優先級:

SW2(config)#spanning-tree vlan 1 priority 0 #手動指定

or

spanning-tree vlan 1 root priority #自動識別成為根

導致的結果,此時網絡中的“根交換機”由 SW1 變成了 SW2 ;

註意:當我們修改交換機的優先級的時候,發現問題:

SW2(config)#spanning-tree vlan 1 priority 1

% Bridge Priority must be in increments of 4096.

% Allowed values are:

0 4096 8192 12288 16384 20480 24576 28672

32768 36864 40960 45056 49152 53248 57344 61440

即:交換機的 STP 優先級必須得是 4096 的倍數;

開啟一個 VLAN 的 STP 協議:

默認情況下,交換機為每個 VLAN 打開了 STP ;

想關閉:no spanning-tree vlan 200

驗證:show spanning-tree

交換機如何區分不同 VLAN 的 BPDU :

我們使用 BID 中的 2 個字節的優先級中的 低12 bit 作為vlan 號 ;

由此得出:

前面2個字節的優先級字段,真正用來表示優先級的,僅有4

bit ; 所有呢,優先級只能有 16 個 ;

但是,在表示優先級數值的時候,後面的12bit,都必須算上

同時,必須是0;

即,每個交換機的 STP 的優先級,都是 2的12次方的 0-15

倍數,即 4096的倍數;

本文出自 “13393189” 博客,謝絕轉載!

STP生成樹相關