STP與RSTP的差異:連接埠狀態與角色、切換速度、BPDU與相容性比較

以備援路徑連接交換器時,廣播訊框會在迴圈中不斷繞行,引發廣播風暴。STP(生成樹協定)讓交換器之間交換稱為BPDU的訊息,封鎖部分連接埠,形成以根橋接器為根、沒有迴圈的樹狀。不過傳統的STP(IEEE 802.1D)為了不產生迴圈,會一面以計時器等待一面把連接埠推進到轉送狀態,因此以預設值而言,故障後的切換需要30〜50秒。RSTP(Rapid STP,IEEE 802.1w)沿用根橋接器的選法與封鎖連接埠的想法,並藉由與鄰近交換器的提議與同意交換,以及事先決定替代連接埠的機制,把切換時間縮短到一般數秒以內。RSTP已併入2004年版的IEEE 802.1D,成為取代傳統STP的標準。

項目STPRSTP
標準IEEE 802.1D(至1998年版)IEEE 802.1w。已併入2004年版的IEEE 802.1D
連接埠的狀態停用、封鎖、聆聽、學習、轉送共5種丟棄、學習、轉送共3種
連接埠的角色根連接埠與指定連接埠。兩者皆非的連接埠會被封鎖除了根連接埠與指定連接埠,還有可取代根連接埠的替代連接埠,以及作為指定連接埠備用的備份連接埠
故障後的切換時間以預設計時器為30〜50秒(最大存活時間20秒+轉送延遲15秒×2)一般數秒以內
快速切換的機制無。一面以計時器等待,一面經過聆聽與學習後才開始轉送在點對點鏈路上與鄰居交換提議(proposal)與同意(agreement),不必等待計時器就開始轉送。根連接埠斷線時,替代連接埠立即接手
BPDU的傳送方式與故障偵測各交換器中繼根橋接器送出的BPDU。BPDU的資訊在最大存活時間(預設20秒)內未更新,就視為故障各交換器每隔問候時間(預設2秒)自行送出BPDU。連續3次未收到就視為故障
拓撲變更的傳達方式察覺變化的交換器以TCN BPDU通知根橋接器,再由根橋接器傳遍全體。MAC位址表把登錄的保存時間縮短為轉送延遲(15秒),以清除舊的登錄察覺變化的交換器直接傳給周圍,收到的交換器立即清除MAC位址表中舊的登錄
連接終端的連接埠標準中不加區分。連接終端後也要等約30秒才開始轉送設定為邊緣連接埠後立即開始轉送。收到BPDU時則當作一般連接埠處理
相容性與RSTP的交換器連接時,仍以STP運作在與STP交換器相連的連接埠上,切換為與STP相同的動作(該連接埠的切換會變慢)

數值為具代表性的大致參考值,會因世代或產品而異。

適用於什麼情況

STP
為了相容於不支援RSTP的舊交換器而保留的方式。新建的網路幾乎沒有理由特地選擇傳統的STP。
RSTP
以備援方式連接交換器之網路的標準選擇。把連接終端的連接埠設定為邊緣連接埠,交換器之間使用全雙工的點對點鏈路,就能充分發揮快速切換的效果。

常見問題

STP的切換為什麼需要30〜50秒?

因為為了不產生迴圈,它會謹慎地推進連接埠。若是遠處的故障,首先要等待最大存活時間20秒,直到收不到的BPDU資訊消失。之後在聆聽與學習兩個狀態各等待轉送延遲15秒,合計最多為 20 + 15 × 2 = 50 秒。若是自己連接埠的鏈路中斷,不必等待最大存活時間,約為30秒。

RSTP與STP的交換器可以混用嗎?

可以。RSTP的交換器在收到傳統STP之BPDU的連接埠上,會切換為與STP相同的動作。不過該連接埠無法使用提議與同意的交換,需仰賴計時器,因此切換會變慢。要獲得快速切換,需把網路中的交換器統一為RSTP。

STP與RSTP選擇根橋接器的方式不同嗎?

相同。由優先順序與MAC位址組成之橋接器ID最小的交換器成為根橋接器。優先順序的預設值為32768,不做任何設定時會選出MAC位址最小的交換器,因此一般會把放在中心之交換器的優先順序設定得較小。

想為每個VLAN建立不同的樹時該怎麼做?

STP與RSTP在整個網路中只建立一棵樹,因此被封鎖的鏈路在任何VLAN中都不會被使用。使用能為每組VLAN建立不同樹(實例)的MSTP(IEEE 802.1s,現已納入IEEE 802.1Q),就能讓不同VLAN使用不同的鏈路,也能活用備援鏈路。

理解度檢測

在以備援路徑連接交換器的網路中,生成樹協定(STP)所扮演的角色,下列何者正確?

  1. A在邏輯上停用部分連接埠,使路徑成為沒有迴圈的樹狀,防止廣播訊框不斷繞行
  2. B把訊框平均分配到交換器之間的多條鏈路上,以增加頻寬
  3. C在不同的VLAN之間轉送訊框,讓VLAN之間能夠通訊
查看答案與解析

正確答案:A. 在邏輯上停用部分連接埠,使路徑成為沒有迴圈的樹狀,防止廣播訊框不斷繞行

把交換器連成迴圈時,廣播與目的地未知的訊框會在迴圈中不斷繞行並增加(廣播風暴),使網路停擺。這是因為乙太網路訊框沒有像IP的TTL那樣計算經過次數並丟棄的機制。STP讓交換器之間交換稱為BPDU的訊息,封鎖部分連接埠,使路徑成為以根橋接器為根的樹狀。使用中的鏈路斷線時,會把原本封鎖的連接埠轉為轉送狀態,切換到其他路徑。

在STP中,已知3台交換器的橋接器ID如下:SW1的優先順序為32768、MAC位址為 00-00-5E-00-53-01;SW2的優先順序為61440、MAC位址為 00-00-5E-00-53-05;SW3的優先順序為4096、MAC位址為 00-00-5E-00-53-0A。被選為根橋接器的交換器是下列何者?

  1. ASW1
  2. BSW2
  3. CSW3
查看答案與解析

正確答案:C. SW3

在STP中,橋接器ID最小的交換器會成為根橋接器。橋接器ID是把優先順序放在上位、MAC位址放在下位的值,因此先比較優先順序,只有相同時才比較MAC位址。這裡優先順序最小的4096的SW3,不論MAC位址為何都會成為根橋接器。優先順序的預設值為32768,若不做任何設定,就會選出MAC位址最小的交換器,因此一般會把位於網路中心之交換器的優先順序設小。

把3台交換器SW1、SW2、SW3兩兩以一條鏈路連接成三角形。STP的根橋接器為SW1,橋接器ID是SW2比SW3小。設所有鏈路的路徑成本相同。被封鎖(不轉送訊框)的連接埠是下列何者?

  1. ASW1接往SW3的連接埠
  2. BSW2接往SW3的連接埠
  3. CSW3接往SW2的連接埠
查看答案與解析

正確答案:C. SW3接往SW2的連接埠

根橋接器的連接埠全部是指定連接埠,處於轉送狀態。SW2與SW3會把到根橋接器成本最小的、直接接往SW1的連接埠設為根連接埠。在剩下的SW2–SW3鏈路上,兩台交換器到根橋接器的成本相同(一條鏈路),因此橋接器ID較小的SW2的連接埠成為指定連接埠。既不是根連接埠也不是指定連接埠的SW3連接埠會被封鎖,三角形的迴圈就此切斷。

  1. 傳統的STP(IEEE 802.1D)在預設計時器下,故障後原本被封鎖的連接埠要開始轉送,大約需要30~50秒。RSTP加快切換速度的機制,下列何者正確?

前往網路設計與維運的練習題

相關名詞的解說

生成樹協定(STP)
Spanning Tree Protocol的縮寫。在以備援路徑連接交換器的網路中,於邏輯上封鎖部分連接埠,使路徑成為沒有迴圈的樹狀,以防止廣播風暴的協定(IEEE 802.1D)。使用中的路徑斷線時,會改用原本封鎖的連接埠切換路徑。加快切換速度的改良版為RSTP(快速生成樹協定)。
MAC位址
在乙太網路與無線區域網路中,用來指定同一網路內設備的48位元位址。上位24位元代表製造商,在製造時分配給每個介面。
廣播網域
廣播訊框可到達的範圍。交換器與集線器會轉送廣播,因此屬於同一範圍,由路由器(或L3交換器的路由)劃分範圍。使用VLAN時,可把一台交換器內部依VLAN分成各自獨立的廣播網域。範圍太大時,ARP等廣播會增加,使通訊效率下降。
VLAN
虛擬區域網路。以交換器的連接埠等為單位,在實體上相同的設備上建立邏輯上各自獨立之網路(廣播網域)的功能。交換器之間以IEEE 802.1Q的標籤區分。
乙太網路(Ethernet)
有線區域網路的標準規格群(IEEE 802.3)。把資料放進訊框,以MAC位址指定目的地傳送。使用雙絞線或光纖,速度從10 Mbit/s到數百Gbit/s。訊框尾端附有以CRC-32計算的錯誤偵測碼(FCS)。現在一般以全雙工連接交換器,不再使用早期以CSMA/CD控制碰撞的方式。

相關的比較