第一節rstp協議
1、STP技術點的回顧
1.1、STP的作用是什么
1、通過阻塞端口來達到我們破環的目的
2、可以進行冗余備份
1.2、STP的端口角色有哪幾個?
根端口(RP) 在非根交換機上選舉
指定端口(DP)在每一個鏈路上進行選舉
阻塞端口(AP)在非根交換機在進行邏輯阻塞
總結:端口角色的變化是秒變
1.3、STP的端口狀態有哪幾個?
disable:是生成樹的關閉狀態
block:AP端口的最終狀態一定是block
listening:從偵聽到學習需要15s
learning:從學習到轉發需要15s
forwarding:DP端口和RP端口的最終狀態一定是forwarding
總結:一個端口從disbale到轉發至少需要30s的時間
1.4、STP的工作原理
1.4.1、在二層交換網絡中會選舉一個ROOT交換機出來
1.4.2、在非根交換機上會選舉一個RP端口 這個RP端口是到達ROOT交換機一條最優的路徑
1.4.3、在每一個鏈路上面會選舉一個指定端口 這個指定端口是用來發送BPDU報文或者轉發BPDU報文的 一般情況 ROOT交換機上面的所有接口是指定端口
1.4.4、阻塞端口 不轉發用戶流量 但是可以接收BPDU
1.5、端口(RP端口或者DP端口)的競選規則
1.5.1、比較設備的BID(就是比較ROOT交換機)
1.5.2、接口下比較到達ROOT交換機的開銷值(入向成本之和)一般就是比較RP端口這一塊
1.5.3、發送設備BID(一般是比較DP端口這一塊)
1.5.4、發送設備的PID
1.5.5、 自己的PID
Stp的缺點:
1 stp從初始狀態到完全收斂至少需經過30s
2 當 鏈路斷時,這時候原來的AP阻塞端口會轉為RP 根端口,端口狀態轉為forwarding 需要30s ,若當AP 接收到根發來的BPDU 包時,還需要再等20s的老化時間
3 stp交換機連接的終端設備,進入轉發狀態也需要30s
4 stp的拓撲變更
5 stp的端口狀態有5種,其中其中都是不轉發也不學習的
RSTP:
Rstp是stp的升級,他減少了stp的收斂時間
1 會添加BP 端口,作為DP 端口的備份, AP 端口作為RP 端口的備份
BP與AP 端口都起阻塞作用
在dp端口當時BP端口可以馬上轉為DP端口進入轉發狀態,
在RP端口當時AP 端口可以馬上轉為RP 狀態進入轉發狀態
2 在RSTP中端口狀態只有三種
3P/A機制:
條件:
1 點到點
2 RP 與 DP 之間
P/A機制:兩台交換機SW1和SW2之間連接 由於SW1的BID是4096 SW2的BID是8192 因為SW1會主動向SW2發送P置位的BPDU報文(此時的SW1的情況 Discarding 端口角色是DP) 當SW2收到之后同步變量(阻塞除邊緣端口外的其他端口,防止出現環路) 同步好之后 SW2會發送一個A置位的BPDU報文給SW1(SW2的情況 Forwarding RP端口) 當SW1收到之后收到A置位BPDU報文,端口立即進入Forwarding
如
情況1:
情況2:
當swa與swb交換機之間的鏈路壞,由於AP 端口收不到根交換發來的BPDU數據包, swb會把自己當做根發送有p置位的BPDU包,swc會回一個帶a置位的BPDU數據包,這樣swb的原DP端口轉為RP端口, 和swc的原AP 端口轉為DP 端口會迅速轉為轉發狀態,
不再需要等待swc交換機的老化時間20s了
此時swb的RP 與swc的dp之間就是P/A機制
4 邊緣端口:是用來接入終端設備的端口,
進入接口視圖,將該端口設為邊緣端口,接入的終端設備會迅速進入轉發狀態,不需要30s
Stp edge-port enable
第二課:
RSTP補充
1 拓撲變化處理機制:
當網絡發生拓撲變化時,變更點交換機直間向全文網發送TC置位的BPDU報文,而不是先通知根橋向全網發送TC報文,這樣在一定程度上節省了收斂時間。
判斷拓撲變化的唯一標准:
一個非邊緣端口遷移到forwarding狀態
拓撲變化處理:
除了發送接口,接受端口,邊緣端口之外的所有的端口的mac地址表刪除,這樣不用等待mac地址的老化時間,默認老化時間300s
邊緣端口故障不會觸發拓撲變化
保護:
1 BPDU保護
應用場景:防止有人偽造RST BPDU惡意攻擊交換設備,當邊緣端口接收到該報文時,會自動設置為非邊緣端口,並重新進行生成樹計算,引起網絡震盪。
實現原理:配置BPDU保護功能后,如果邊緣端口收到BPDU報文,邊緣端口將會被立即關閉
2根保護:
應用場景:由於維護人員的錯誤配置或網絡中的惡意攻擊,網絡中合法根橋有可能會收到優先級更高的RST BPDU,使得合法根橋失去根地位,從而引起網絡拓撲結構的錯誤變動。
實現原理:一旦啟用Root保護功能的指定端口收到優先級更高的RST BPDU時,端口狀態將進入Discarding狀態,不再轉發報文。在經過一段時間,如果端口一直沒有再收到優先級較高的RST BPDU,端口會自動恢復到正常的Forwarding狀態。
Root保護功能只能在指定端口上配置生效。
3 TC-BPDU泛洪保護:
交換機在接收到TC-BPDU報文后,會執行MAC地址表項的刪除操作。如果有人偽造TC-BPDU報文惡意攻擊交換機時,交換機短時間內會收到很多TC-BPDU報文,頻繁的刪除操作會給設備造成很大的負擔,給網絡的穩定帶來很大隱患。
啟用防TC-BPDU報文攻擊功能后,在單位時間內,RSTP進程處理TC類型BPDU報文的次數可配置(缺省的單位時間是2秒,缺省的處理次數是3次)。如果在單位時間內,RSTP進程在收到TC類型BPDU報文數量大於配置的閾值,那么RSTP進程只會處理閾值指定的次數;對於其他超出閾值的TC類型BPDU報文,定時器到期后,RSTP進程只對其統一處理一次。這樣可以避免頻繁的刪除MAC地址表項,從而達到保護交換機的目的。
配置實現:
stp enable //全局開啟STP
stp mode rstp //配置STP模式為RSTP
stp root primary //配置SWA為根橋
stp bpdu-protection //全局開啟BPDU防護,配合邊緣端口一起使用
stp edged-port enable //配置端口為邊緣端口
MSTP:
由於rstp,stp 都只有一顆生成樹,因此被阻塞后鏈路將不承載任何流量,無法在VLAN間實現數據流量的負載均衡,從而造成帶寬浪費。
為了彌補STP和RSTP的缺陷,IEEE於2002年發布的802.1s標准定義了MSTP。MSTP兼容STP和RSTP,既可以快速收斂,又提供了數據轉發的多個冗余路徑,在數據轉發過程中實現VLAN數據的負載均衡。
單生成樹的弊端:
l 如圖所示,網絡中有SWA、SWB、SWC三台交換機。配置VLAN2通過兩條上行鏈路,配置VLAN3只通過一條上行鏈路。
l 為了解決VLAN2的環路問題,需要運行生成樹。在運行單個生成樹的情況下,假設SWC與SWB相連的端口成為預備端口(Discarding狀態),那么VLAN3的路徑就會被斷開,無法上行到SWB。
l 為了實現流量分擔,需要配置兩條上行鏈路為Trunk鏈路,允許通過所有VLAN;SWA和SWB之間的鏈路也配置為Trunk鏈路,允許通過所有VLAN。將VLAN2的三層接口配置在SWA上,將VLAN3的三層接口配置在SWB上。
l 我們希望VLAN2和VLAN3分別使用不同的鏈路上行到相應的三層接口,但是如果連接到SWB的端口成為預備端口(Alternate Port)並處於Discarding狀態,則VLAN2和VLAN3的數據都只能通過一條上行鏈路上行到SWA,這樣就不能實現流量分擔。
MSTP原理
- MST域內可以生成多棵生成樹,每棵生成樹都稱為一個MSTI。MSTI之間彼此獨立,且每個MSTI的計算過程基本與RSTP的計算過程相同。
多生成樹協議即MSTP(Multiple Spanning Tree Protocol)。
MST域是多生成樹域(Multiple Spanning Tree Region),由交換網絡中的多台交換設備以及它們之間的網段所構成。同一個MST域的設備具有下列特點:
都啟動了MSTP。
具有相同的域名。
具有相同的VLAN到生成樹實例映射配置。
具有相同的MSTP修訂級別配置。
一個MST域內可以生成多棵生成樹,每棵生成樹都稱為一個MSTI,每個MSTI都使用單獨的RSTP算法,計算單獨的生成樹。
l 每個MSTI(MST Instance)都有一個標識(MSTID),MSTID是一個兩字節的整數。VRP平台支持16個MST Instance,MSTID取值范圍是0~15,默認所有VLAN映射到MST Instance 0。
VLAN映射表是MST域的屬性,它描述了VLAN和MSTI之間的映射關系,MSTI可以與一個或多個VLAN對應,但一個VLAN只能與一個MSTI對應。
MSTP兼容STP和RSTP,既可以快速收斂,又提供了數據轉發的各個冗余路徑,在數據轉發過程中實現VLAN數據的負載均衡。
怎么樣配置MSTP 1、二層接口的配置 也就是放行相應vlan通過 access接口 trunk接口 2、配置我們MSTP # stp region-configuration -------進入到mstp區域里面 region-name weiguo ------區域的名稱 revision-level 2 ------修訂的級別 instance 1 vlan 1 to 10 -----實例1映射的vlan 1~10 instance 2 vlan 11 to 20 -----實例2映射的vlan 11~20 active region-configuration # 總結:在四台交換機上面的MSTP的配置要要一模一樣 3、給不同實例給定不同級別 需求: 規定SW9為instance 1的ROOT交換機 規定SW10為instance 1的備根交換機 命令 SW9上面 stp instance 1 priority 4096 命令 SW10上面 stp instance 1 priority 8192 需求: 規定SW10為instance 2的ROOT交換機 規定SW9為instance 2的備根交換機 命令 SW10上面 stp instance 2 priority 4096 命令 SW9上面 stp instance 2 priority 8192
ETH-trunk 技術:
隨着網絡中部署的業務量不斷增長,對於全雙工點對點鏈路,單條物理鏈路的帶寬已不能滿足正常的業務流量需求。如果將當前接口板替換為具備更高帶寬的接口板,則會浪費現有的設備資源,而且升級代價較大。如果增加設備間的鏈路數量,則在作為三層口使用時需要在每個接口上配置IP地址,從而導致浪費IP地址資源。
單條鏈路的組網中沒有冗余的設計,如果接入層設備上聯的鏈路故障時,影響接入設備下聯的整個區域的設備正常通信
此時,可以把多個獨立的物理接口綁定在一起作為一個大帶寬的邏輯接口使用,即鏈路聚合技術,既不用替換接口板也不會浪費IP地址資源。Eth-Trunk是一種捆綁技術,將多個物理接口捆綁成一個邏輯接口,這個邏輯接口就稱為Eth-Trunk接口
根據不同的鏈路聚合模式,Eth-Trunk接口可以實現增加帶寬、負載分擔等,幫助提高網絡的可靠性。
Eth-Trunk可以用於二層的鏈路聚合,也可以用於三層的鏈路聚合。缺省情況下,以太網接口工作在二層模式。如果需要配置二層Eth-Trunk接口,可以通過portswitch命令將該接口切換成二層接口;如果需要配置三層Eth-Trunk接口,可以通過undo portswitch命令將該接口切換成三層接口。
配置:
int eth-trunk 12 進入eth-trunk配置視圖
mode manual load-balance 模式配置為手動 默認就是手動
trunk port g0/0/0 to g0/0/3 添加端口