爲加速網絡融合並解決與生成樹和虛擬 LAN ( VLAN )交互相關的地址可擴展性限制的問題, IEEE 開發了在 802.1w 中定義的快速生成樹協議( RSTP )和在 802.1s 中定義的多生成樹協議( MST )。這篇由思科的 Chiara Regale 撰寫的文章介紹了 IEEE 802.1w 和 802.1s 的主要特性,討論了與傳統生成樹協議的互操做性, 並提供了一些協議移植準則。
關鍵詞: 網橋協議數據單元( BPDU ),思科多實例生成樹協議( MISTP ), IEEE 802.1D , IEEE 802.1s , IEEE 802.1w ,多生成樹協議( MST ),快速生成樹協議( RSTP ),生成樹協議( STP ), VLAN
深刻閱讀
有關生成樹、 RSTP 和 MSTP 的具體信息,請閱讀如下白皮書:
配置生成樹
瞭解快速生成樹協議 802.1w
瞭解多生成樹協議 802.1s
功能強大、可靠的網絡須要有效地傳輸流量,提供冗餘和故障快速恢復功能。在第二層網絡中,路由協議不可用,生成樹協議經過從網格化物理拓撲結構而構建一個無環路邏輯轉發拓撲結構,提供了冗餘鏈接,消除了數據流量環路的威脅。原始生成樹協議 IEEE 802.1D 一般在 50 秒內就能夠恢復一個連接故障 [ 融合時間 = ( 2xForward_Delay ) +Max_Age] 。當設計此協議時,這種停機仍是可接受的,可是當前的關鍵任務應用(如語音和視頻)卻要求更快速的網絡融合。
爲加速網絡融合並解決與生成樹和虛擬 LAN ( VLAN )交互相關的地址可擴展性限制的問題, IEEE 委員會開發了兩種新標準:在 IEEE 802.1w 中定義的快速生成樹協議( RSTP )和在 IEEE 802.1s 中定義的多生成樹協議( MST )。
本文介紹了 802.1w 和 802.1s 的主要特性、與傳統生成樹協議的互操做性,並提供了一些協議移植準則建議。
IEEE 802.1w 快速生成樹協議
IEEE 意識到原始 802.1D 生成樹協議的融合特性與現代化的交換網絡和應用相比是有差距的,爲此設計了一種全新的 802.1w 快速生成樹協議( RSTP ),以解決 802.1D 的融合問題。 IEEE 802.1w RSTP 的特色是將許多思科增值生成樹擴展特性融入原始 802.1D 中,如 Portfast 、 Uplinkfast 和 Backbonefast 。(瀏覽這些思科特性的 具體信息 )經過利用一種主動的網橋到網橋握手機制取代 802.1D 根網橋中定義的計時器功能, IEEE 802.1w 協議提供了交換機(網橋)、交換機端口(網橋端口)或整個 LAN 的快速故障恢復功能。經過將生成樹「 hello 」做爲本地連接保留的標誌, RSTP 改變了拓撲結構的保留方式。這種作法使原始 802.1D fwd-delay 和 max-age 計時器主要成爲冗餘設備,目前主要用於備份,以保持協議的正常運營。
除了下面章節中列舉的新概念外, RSTP 引入了新的 BPDU 處理和新的拓撲結構變動機制。每一個網橋每次「 hello time 」都會生成 BPDU ,即便它不從根網橋接收時也是如此。 BPDU 起着網橋間保留信息的做用。若是一個網橋未能從相鄰網橋收到 BPDU ,它就會認爲已與該網橋失去鏈接,從而實現更快速的故障檢測和融合。
在 RSTP 中,拓撲結構變動只在非邊緣端口轉入轉發狀態時發生。丟失鏈接——例如端口轉入阻塞狀態,不會像 802.1D 同樣引發拓撲結構變動。 802.1w 的拓撲結構變動通知( TCN )功能不一樣於 802.1D ,它減小了數據的溢流。在 802.1D 中, TCN 被單播至根網橋,而後組播至全部網橋。 802.1D TCN 的接收使網橋將轉發表中的全部內容快速失效,而不管網橋轉發拓撲結構是否受到影響。相形之下, RSTP 則經過明確地告知網橋,溢出除了經由 TCN 接收端口瞭解到的內容外的全部內容,優化了該流程。 TCN 行爲的這一改變極大地下降了拓撲結構變動過程當中, MAC 地址的溢出量。
端口做用
RSTP 在端口狀態(轉發或阻塞流量)和端口做用(是否在拓撲結構中發揮積極做用)間進行了明確的劃分。除了從 802.1D 沿襲下來的根端口和指定端口定義外,還定義了兩種新的做用(見圖 1 ):
圖 1
• 備份端口 ——用於指定端口到生成樹樹葉的路徑的備份,僅在到共享 LAN 網段有 2 個或 2 個以上鍊接,或 2 個端口經過點到點鏈路鏈接爲環路時存在
• 替代端口 ——提供了替代當前根端口所提供路徑、到根網橋的路徑
這些 RSTP 中的新端口實現了在根端口故障時替代端口到轉發端口的快速轉換。下面的例子中詳細解釋了此過程。
端口狀態
端口的狀態控制轉發和學習過程的運行。
RSTP 定義了 3 種狀態:放棄、學習和轉發。根或指定端口在拓撲結構中發揮着積極做用,而替代或備份端口不參與主動拓撲結構。在穩定的網絡中,根和指定端口處於轉發狀態,替代和備份端口則處於放棄狀態。
快速融合概述
如前所述, RSTP 旨在儘快地將根端口和指定端口轉成轉發狀態,以及將替代和備份端口轉成阻塞狀態。爲防止生成轉發環路, RSTP 在網橋間採用了明確的「握手」功能,以確保端口做用在網絡中分配的一致性。
圖 2
圖 2 介紹了將端口轉換成轉發前達成的協定 / 建議握手。當連接激活時,「 P1 」和「 P2 」都成爲處於放棄狀態的指定端口。
在這種狀況下,「 P1 」將向交換機 A 發送一個建議 BPDU 。收到新 BPDU 後,交換機 A 將確認根交換機有較優根成本。由於 BPDU 包含較高的根優先級,交換機 A 在將新的根端口「 P2 」轉入轉發狀態前,會先啓動同步機制。若是一個端口處於阻塞狀態或是一個邊緣端口(位於網橋 LAN 邊緣或鏈接到終端工做站),該端口與根信息同步。
端口 3 (「 P3 」)已知足上述要求,由於它已是阻塞的。所以,不會對該端口採起任何行動。可是,「 P4 」是一種指定端口,須要阻塞。一旦交換機 A 上的全部接口處於同步狀態,「 P2 」就會認可從前從根接收的建議,並能夠安全地轉入轉發狀態。在收到交換機 A 的承認後,根交換機將當即將「 P1 」轉入轉發。建議 / 協定信息的相似傳送波將從「 P4 」傳播至網絡枝葉部分。
因爲這種握手機制不依賴計時器,所以它能夠快速地傳播至網絡邊緣,並在拓撲結構變動後迅速恢復鏈接。若是協定並未複製建議信息,端口會轉換成 802.1D 模式,並經過傳統聽學順序轉入轉發狀態。須要說明的是, 802.1w 協議只適用於點到點連接。在媒體共享的狀況下, 802.1w 協議將轉換成 802.1D 運行。
多生成樹協議
在 Cisco MISTP[ 多實例生成樹協議 ] 的推進下, MST 經過將一些基於 VLAN 的生成樹匯聚入不一樣的實例,而且每實例只運行一個(快速)生成樹,從而改進了 RSTP 的可擴展性。爲肯定 VLAN 實例的相關性, 802.1s 引入了 MST 區域概念。每臺運行 MST 的交換機都擁有單一配置,包括一個字母數字式配置名、一個配置修訂號和一個 4096 部件表,它與潛在支持某個實例的各 4096 VLAN 相關聯。做爲公共 MST 區域的一部分,一組交換機必須共享相同的配置屬性。重要的是請記住,配置屬性不一樣的交換機會被視爲位於不一樣的區域。
爲確保一致的 VLAN 實例映射,協議須要識別區域的邊界。所以,區域的特徵都包括在 BPDU 中。交換機必須瞭解它們是否像鄰居同樣位於同一區域,所以會發送一份 VLAN 實例映射表摘要,以及修訂號和名稱。當交換機接收到 BPDU 後,它會提取摘要,並將其與自身的計算結果進行比較。爲避免出現生成樹環路,若是兩臺交換機在 BPDU 中所接收的參數不一致,負責接收 BPDU 的端口就會被宣佈爲邊界端口。
IEEE 802.1s 引入了 IST (內部生成樹)概念和 MST 實例。 IST 是一種 RSTP 實例,它擴展了 MST 區域內的 802.1D 單一輩子成樹。 IST 鏈接全部 MST 網橋,並從邊界端口發出、做爲貫穿整個網橋域的虛擬網橋。 MST 實例( MSTI )是一種僅存在於區域內部的 RSTP 實例。它能夠缺省運行 RSTP ,無須額外配置。不一樣於 IST 的是, MSTI 在區域外既不與 BPDU 交互,也不發送 BPDU 。 MST 能夠與傳統和 PVST+ 交換機互操做。思科實施定義了 16 種實例:一個 IST (實例 0 )和 15 個 MSTI ,而 802.1s 則支持一個 IST 和 63 個 MSTI 。
與傳統生成樹的互操做性
RSTP 和 MSTP 都可以與傳統生成樹協議互操做。可是,當與傳統網橋交互時, 802.1w 的快速融合優點就會失去。
爲保留與基於 802.1D 網橋的向後兼容性, IEEE 802.1s 網橋在其端口上接聽 802.1D 格式的 BPDU 。若是收到了 802.1D BPDU ,端口會採用標準 802.1D 行爲,以確保兼容性。例如,在圖 3 中,交換機 A 上的「 P4 」一旦在至少兩倍的「 hello time 」中檢測到 PVST+ BPDU ,它就會發送 PVST+ BPDU 。要說明的是,若是 PVST+ 網橋從網絡中刪除後,交換機 A 就沒法發現拓撲結構變動,須要人工重啓協議移植。
圖 3
圖 3 介紹了應用於 VLAN 2000 的轉發拓撲結構,它映射至 RSTP/MSTP 區域中的 MST #2 。用於 IST 和 MST #2 的根交換機駐留於 RSTP/MSTP 區域內。 MSTI BPDU 並未發送至邊界端口「 P4 」外,只有 IST BPDU 是如此。經過在 PVST+ 域全部現用 VLAN 上覆制 ISTP BPDU , MST 區域模擬了 PVST+ 鄰居。而後, PVST+ 域接收 IST 上發送的 BPDU ,並選擇交換機 B 做爲 VLAN 2000 的根交換機(注:交換機 B 是 IST 的根。)
若是 PVST+ 域中出現拓撲結構變動,在傳統雲中生成的相應的拓撲結構變化通知( TCN ) BPDI 將由 IST 在 MST 域中處理,不致影響 MST 轉發拓撲結構。爲了不可能致使環路的錯誤配置,強烈建議爲 MST 域中的 PVST+ 實例(即 IST 根)配置根交換機。
主要定義
IEEE 802.1D —— IEEE 建議,在整個第二層域中定義單一無環路拓撲結構。因爲 802.1D 無虛擬 LAN ( VLAN )感知功能,所以轉發拓撲結構是惟一的,獨立於網絡中現用的 VLAN 。這種方案從計算開支的角度是可擴展的,但在配置多個 VLAN 的狀況下,沒法爲冗餘連接提供負載均衡功能 。
PVST+ ——思科生成樹爲每一個 VLAN 構建了一個不一樣的邏輯拓撲結構。這種方案經過容許每一個 VLAN 擁有不一樣的轉發連接,實現了負載均衡,但它倒是 CPU 密集型的——網橋協議數據單元( BPDU )是根據各個 VLAN 生成並處理的。
CHIARA REGALE 是思科城域以太網部的技術營銷工程師。她主要從事城域以太網領域的解決方案設計和修正工做。從意大利 Politecnico of Turin 得到電信工程理學碩士學位後, Regale ××× Cisco Catalyst 6000 生成樹協議開發團隊,負責設計和實施特性,以改進生成樹性能。她的聯繫方式爲 chiara@cisco.com 。有關一些交換機轉發拓撲結構的移植策略和樣本配置,請參考 Packet Online 。