CCNA2.0笔记_STP
STP介紹
STP的主要任務是阻止在第二層網絡(網橋或交換機)上產生網絡環路(通過將特定的端口選為 Blocking state),來實現無環的拓撲?;
STP交換機之間使用Trunk連接 ;
Cisco Catalyst交換機默認開啟pvst;所有接口默認啟用STP.
STP采用生成樹算法(STA),它首先創建一個拓撲數據庫,然后搜索并破壞掉冗余的鏈路.
STP協議:
1.CST(公有協議) 不支持單Vlan(stp進程) ;
2.PVST(思科私有協議) 支持64個Vlan實例 ;
3.PVST+(思科增強的私有協議) 支持128個實例,支持擴展系統ID.
STP的操作
STP將一個環形網絡生成無環拓撲的步驟:
1.每個廣播域選擇一個根橋(Root Bridge)
2.每個非根橋上選擇一個根端口(Root Ports)
3.每個網段(鏈路)選擇一個指定端口(Designated Ports)
4.阻塞非指定端口(NDP)
*網橋是交換機的前身,由于STP是在網橋基礎上開發的,因此現在在交換機中仍然沿用網橋這一術語
1,每個STP域(廣播域)內選舉一臺Root Bridge(根交換機/根橋)
最初廣播域中的每臺交換機都會認為自己是Root Bridge,并向其他所有交換機發送BPDU(每個BPDU都包含一個BID),所有參與 STP 的交換機互相交換 BPDU 幀,以確定網絡中哪臺交換機的BID最小。選出Root Bridge之后,只有Root Bridge可以周期性地發送BPDU,所有NRoot Bridge(非根橋)停止發送BPDU. BPDU組播地址:01-80-C2-00-00-00
在根橋上,不會有被阻塞的接口
選擇根網橋依據:
BID(橋ID)最小的交換機為根橋(Root Bridge);
*BID:(網橋ID號)
BID是由 橋優先級+網橋mac地址 的組合來決定的;
優先級出廠時都是一樣的,都是32768,范圍0~65535;但是mac地址必然不同
先比較優先級,優先級小的直接選為根橋
如果優先級相同,則選取MAC地址最小的為根橋
用 show spanning-tree 可以查看優先級
啟用系統擴展ID:
(config)#spanning-tree extend system-id//低端交換機默認開啟;高端交換機需要手動開啟//啟用擴展系統ID,以支持1024 個MAC 地址
校驗是否啟用系統擴展ID:
Switch# show spanning-tree summary | include ExtendedExtended system ID is enabled.手工配置vlan10 橋優先級
(config)#spanning-tree vlan 10 priority 8192 //只能改為4096的整數倍手動設置為Vlan10的主根橋
(config)#spanning-tree vlan 10 root primary手動設置為Vlan10的次根橋
(config)#spanning-tree vlan 10 root secondary *改變默認優先級是選舉根橋的最佳方式
*將優先級設置為0意味著該交換機將始終是根橋
*每個VLAN都可以有不同的根橋,通過改變交換機vlan的默認優先級,以迫使交換機成為STP網絡中的根橋
*對于網絡中的每個VLAN,如果你想將某臺交換機設置為根橋,那么必須改動每個VLAN的優先級
*PVST+可以控制每個Vlan流量的走向,將不同的VLan流量分擔到不同路徑,既實現了負載均衡,又通過STP避免了環路
選擇根橋舉例
2,在所有?非根橋?上選舉一個唯一的Root Port(根端口)
除了根橋外,其他所有的交換機都是?非根橋(NRoot Bridge);
根端口是指?直連到根橋的鏈路?所在的端口,或者到根橋的路徑最短的端口;
如果有多條鏈路連接到根橋,就檢查每條鏈路的?端口開銷(由鏈路帶寬來決定),開銷最低的鏈路所在的端口就成為根端口;
如果多條鏈路的開銷相同,就使用?(除根橋外)BID最小的那臺交換機?上的鏈路端口作為根端口。
如果多條鏈路來自同一臺設備,就使用?端口號?最小的端口作為根端口。
*端口號:(端口ID)
選擇根端口的依據
?根路徑成本(端口/路徑開銷)最低
?直連網橋的BID最小
?直連網橋的端口號(Port ID)最小
選擇根端口舉例
配置端口開銷(Cost)
(config)#interface gigabitethernet 0/4 (config-if)#spanning-tree cost 40重置端口開銷(Cost)
(config)#interface gigabitethernet 0/4 (config-if)#no spanning-tree cost 配置端口優先級(包含在port id中)
3,選完 根端口 之后,在 每兩臺交換機之間 的 每條鏈路兩端 選舉一個指定端口(Designated port)
---在那條鏈路上的端口提供到根橋最大的帶寬
在每個?鏈路?上,選擇一個指定端口(有最低開銷的端口就是指定端口)
★根橋上的每個端口都是指定端口
RP(根端口)對端一定是DP(指定端口);DP對端可能是RP,也可能是NDP(非指定端口)
第一步,比較鏈路兩端的發送者(出站方向)的Cost of path(路徑成本)值,誰小誰就是DP
第二步,比較鏈路兩端的發送者(出站方向)BID,誰小誰就是DP
第三步,(除非交換機自己連自己,否則不采用)比較鏈路兩端的發送者(出站方向)的Port-ID,誰小誰就是DP
*NDP,非指定端口將被置為阻塞狀態。
*轉發端口(Forwarding port)指能夠轉發幀的端口。
*阻塞端口(Blocked port)是指不能轉發幀的端口,這樣做是為了防止產生環路。但被阻塞的端口將始終監聽幀。
選擇指定端口的依據
根路徑成本最低
端口所在交換機的BID值最小
端口號最小
選擇指定端口舉例
?
STP端口狀態
對于運行STP的網橋或交換機來說,其端口狀態會在下列5種狀態之間轉變:
阻塞(Blocking) 被阻塞的端口將不能轉發幀,它只監聽BPDU。設置阻塞狀態的意圖是防止使用有環路的路徑。當交換機加電時,默認情況下所有的端口都處于阻塞狀態。
偵聽(Listening) 端口都偵聽BPDU,以確信在傳送數據幀之前,在網絡上沒有環路產生。處在偵聽狀態的端口,在沒有形成MAC地址表時,就準備轉發數據幀。
學習(Learning) 交換機端口偵聽BPDU,并學習交換式網絡中的所有路徑。處在學習狀態的端口形成了MAC地址表,但不能轉發數據幀。轉發延遲意味著將端口從偵聽狀態轉換到學習狀態所花費的時間,默認時設置為15秒,可以用命令show spanning-tree顯示出來。
轉發(Forwarding) 在橋接的端口上,處在轉發狀態的端口發送并接收所有的數據幀。如果在學習狀態結束時,端口仍然是指定端口或根端口,它就進入轉發狀態。
禁用(Disabled) 從管理上講,處于禁用狀態的端口不能參與幀的轉發或形成STP。處于禁用狀態下,端口實質上是不工作的。
說明:只有在學習狀態或轉發狀態下,交換機才能填寫MAC地址表;
被阻塞的端口仍然能接收BPDU,它們只是不能發送任何幀。
??STP收斂
當網橋或交換機上的所有端口都轉變到轉發或阻塞狀態時,就產生了收斂;
在收斂完成之前,交換機不能轉發任何數據。在重新轉發數據之前,所有的設備都必須更新;
交換機開機需要等待30秒時間開始轉發數據;
從阻塞狀態轉變到轉發狀態通常要花50秒.
端口快速(Port Fast)
跳過STP計算,直接進行轉發,通常用于交換機直連(接入層)工作站/PC/服務器(如果連接交換機則會造成環路);
Access口和Trunk口都可以配置PortFast功能;
只能在接入層的交換機上配置此命令,用戶是直接連接到接入層交換機的,在核心交換機上,不能配置此命令。
BPDU防護
在開啟ProtFast和BPDU防護的接口上,如果檢測到該端口連接的是交換機,則該端口會被Shutdown(為了防止環路);
BPDU防護只對配置了PortFast的端口起作用;
某端口配置Portfast和BPDU防護:
(config)#interface fastEthernet 0/1 (config-if)#spanning-tree portfast (config-if)#spanning-tree bpduguard enable在全局非Trunk口上啟用Portfast,并為所有支持Portfast的端口啟用BPDU防護
(config)#spanning-tree portfast (config)#spanning-tree bpduguard default相關命令:
手動啟用生成樹:
(config)#spanning-tree mode pvst啟用某VlanSTP:
(config)#spanning-tree vlan 10關閉某Vlan的STP:
(config)#no spanning-tree vlan 10端口單獨配置Vlan開銷(Cost):
(config)#interface gigabitethernet 0/4 (config-if)#spanning-tree vlan 10 cost 40查看VlanSTP信息 :
Show spanning-tree vlan 10檢驗端口和路徑開銷 :
Show spanning-tree activeSTP要記住六點:
1.根橋負責維護網絡拓撲,根橋的所有端口都是指定端口
2.選擇根端口和制定端口的BPDU幀總是從根橋的所有端口向外發
3.選舉指定端口,站在鏈路上比較所有端口發送的BPDU
4.選舉根端口,站在橋上比較所有端口接收的BPDU(接收的BPDU+本接收端口線路帶寬的cost)
5.交換機接收BPDU時開銷值增加,發送BPDU時開銷值不變
6.選舉過程:選舉根橋——>根端口——>指定端口——>其余為阻塞端口
?
轉載于:https://www.cnblogs.com/airoot/p/4161519.html
總結
以上是生活随笔為你收集整理的CCNA2.0笔记_STP的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: scrapy爬取某宝心得
- 下一篇: mybatis控制台打印日志