国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 網絡通信 > 正文

以太網交換機中生成樹協議的實現

2019-11-03 10:16:55
字體:
來源:轉載
供稿:網友
王作芬 王芙蓉 華中理工大學電信系
  摘要:生成樹算法和協議是自動生成網絡拓撲結構的基礎。本文闡述了生成樹算法和協議的內容,并給出了在以太網交換機中的具體實現過程。我們通過實踐證明,該方尖對于解析最優網絡拓撲結構效果良好。

  關鍵詞:以太網交換機 網橋 拓撲結構 生成樹 BPDU

  以太網交換機在第二層即MAC層必須具有路由功能。目前普遍使用的MAC層路由方式是IEEE802.1組織發布的標準:基于生成樹算法的路由。在局域網內的交換機執行了生成樹算法以后,會組成一個生成樹動態拓撲結構,該拓撲結構使局域網內任意兩個工作站之間不存在回路,以防止由此產生的局域網廣播風暴,同時,生成樹算法還負責監測物理拓撲結構的變化,并能在拓撲結構發生變化之后建立新的生成樹。例如當一個交換機壞了或某一條數據通咱斷了后,能提供一定的容錯能力而重新配置生成樹的拓撲結構。交換機根據生成樹動態拓撲結構的狀態信息來維護和更新MAC路由表,最終實現MAC層的路由。

  一、以太網交換機在MAC層體系結構

  以太網交換機在MAC層的功能主要是實現LAN的互連。根據IEEE802.1D協議的規定,在MAC層工作的體系結構必須包含以下內容:(1)一個用于連接交換機端口的MAC轉發實體;(2)至少兩個端口;(3)高層協議實體,其中包括交換機協議實體。如圖1所示。



  MAC轉發實體主要實現交換機不同端口間的內部通信。該實體存儲各個端口的工作狀態并維護一個過濾數據庫。數據庫中存放了一張MAC地址表,用以實現MAC層的路由。當數據幀從一個端口的底層服務進程傳上來時,MAC實體首先判斷目的端口的工作狀態,如果目的端口沒有被阻塞,MAC轉發實體將依據MAC地址表的對應關系將該幀從目的端口轉發出去。同時MAC轉發實體還可以進行過濾、記錄MAC地址等操作。

  交換機端口的功能是從與其相連的LAN上接收或傳送數據。端口的狀態由生成樹算法規定,包括轉發、學習、監聽、阻塞和禁止狀態。

  高層協議實體位于LLC層,主要用于計算和配置LAN的拓撲結構。下面介紹的生成樹協議算法就是運行在該協議實體內,用來實現MAC層的路由。在運行生成樹算法時,高層協議實體可以直接調用MAC轉發實體提供的服務,并能讀取或更改MAC實體數據庫中維護的信息,如從MAC實體中讀取或更改某端口的狀態信息等。

  在運行生成樹算法時,交換機的高層協議實體將使用一個統一的組地址01-80-C2-00-00-00作為目的MAC地址,該數據被稱為BPDU(橋協議數據單元)。BPDU中攜帶了實現生成樹算法的有關信息。在實現生成樹算法時,從端口接收上來BPDU,由LLC層的服務進程將其傳給交換機協議實體。在執行了生成樹算法以后,交換機的協議實體將根據算法的結果更新端口的狀態信息并更新過濾數據庫,以決定交換機端口的工作狀態(阻塞或轉發等),從而建立生成樹拓撲結構。

  二、生成樹協議

  1、生成樹協議介紹

  生成樹協議基于以下幾點:(1)有一個唯一的組地址(01-80-C2-00-00-00)標識一個特定LAN上的所有的交換機。這個組地址能被所有的交換機識別;(2)每個交換機有一個唯一的標識(Brideg Identifier);(3)每個交換機的端口有一個唯一的端口標識(Port Identifier)。對生成樹的配置進行管理還需要:對每個交換機調協一個相對的優先級;對每個交換機的每個端口調協一個相對的優先級;對每個端口調協一個路徑花費。

  具有最高優先級的交換機被稱為根(root)交換機。每個交換機端口都有一個根路徑花費,根路徑花費是該交換機到根交換機所經過的各個跳段的路徑花費的總和。一個交換機中根路徑花費的值為最低的端口稱為根端口,若有多個端口具有相同的根路徑花費,則具有最高優先級的端口為根端口。

  在每個LAN中都有一個交換機被稱為選取(designated)交換機,它屬于該LAN中根路徑花費最少的交換機。把LAN和選取交換機連接起來的端口就是LAN的選取端口(designated port)。如果選取交換機中有兩個以上的端口連在這個LAN上,則具有最高優先級的端口被選為選取端口。拓撲結構如圖2所示。



  由于交換機A具有最高優先級(橋標識最低),被選為根交換機,所以交換機A是LAN A和LAN B的選取交換機;假設交換機B的根路徑花費為6,交換機C的根路徑花費為4,那么交換機C被選為LAN C的選取交換機,亦即LAN C與交換機A之間的消息通過交換機C轉發,而不是通過交換機B。LAN C與交換機B之間的鏈路是一條冗余鏈路。

  2、BPDU編碼

  交換機之間定期發送BPDU包,交換生成樹配置信息,以便能夠對網絡的拓撲、花費或優先級的變化做出及時的響應。BPDU分為兩種類型,包含配置信息的BPDU包稱為配置BPDU(Configuration BPDU),當檢測到網絡拓撲結構變化時則要發送拓撲變化通知BPDU(Topology cHANGE nOTIFICATION BPDU)。配置BPDU編碼如圖3所示。



  拓撲變化通知BPDU編碼如圖4所示。



  對于配置BPDU,超過35個字節以外的字節將被忽略掉;對于拓撲變化通知BPDU,超過4個字節以外的字節將被忽略掉。

  3、形成一個生成樹所必需決定的要素

 ?。?)決定根交換機

  a、最開始所有的交換機都認為自己是根交換機;

  b、交換機向與之相連的LAN廣播發送配置BPDU,其root_id與bridge_id的值相同;

  c、當交換機收到另一個交換機發來的配置BPDU后,若發現收到的配置BPDU中root_id字段的值大于該交換機中root_id參數的值,則丟棄該幀,否則更新該交換機的root_id、根路徑花費root_path_cost等參數的值,該交換機將以新值繼續廣播發送配置BPDU。

 ?。?)決定根端口

  一個交換機中根路徑花費的值為最低的端口稱為根端口。

  若有多個端口具有相同的最低根路徑花費,則具有最高優先級的端口為根端口。若有兩個或多個端口具有相同的最低根路徑花費和最高優先級,則端口號最小的端口為默認的根端口。

 ?。?)認定LAN的選取交換機

  a、開始時,所有的交換機都認為自己是LAN的選取交換機。

  b、當交換機接收到具有更低根路徑花費的(同一個LAN中)其他交換機發來的BPDU,該交換機就不再宣稱自己是選取交換機。如果在一個LAN中,有兩個或多個交換機具有同樣的根路徑花費,具有最高優先級的交換機被先為選取交換機。在一個LAN中,只有選取交換機可以接收和轉發幀,其他交換機的所有端口都被置為阻塞狀態。

  c、如果選取交換機在某個時刻收一了LAN上其他交換機因競爭選取交換機而發來的配置BPDU,該選取交換機將發送一個回應的配置BPDU,以重新確定選取交換機。

  (4)決定選取端口

  LAN的選取交換機中與該LAN相連的端口為選取端口。若選取交換機有兩個或多個端口與該LAN相連,那么具有最低標識的端口為選取端口。

  除了根端口和選取端口外,其他端口都將置為阻塞狀態。這樣,在決定了根交換機、交換機的根端口、以及每個LAN的選取交換機和選取端口后,一個生成樹的拓撲結構也就決定了。

  4、拓撲變化

  拓撲信息在網絡上的傳播有一個時間限制,這個時間信息包含在每個配置BPDU中,即為消息時限。每個交換機存儲來自LAN選取端口的協議信息,并監視這些信息存儲的時間。在正常穩定狀態下,根交換機定期發送配置消息以保證拓撲信息不超時。如果根交換機失效了,其他交換機中的協議信息就會超時,新的拓撲結構很快在網絡中傳播。

  當某個交換機檢測到拓撲變化,它將向根交換機方向的選取交換機發送拓撲變化通知BPDU,以拓撲變化通知定時器的時間間隔中定期發送拓撲變化通知BPDU,直到收到了選取交換機發來的確認拓撲變化信息(這個確認信號在配置BPDU中,即拓撲變化標志位置位),同時選取交換機重復以上過程,繼續向根交換機方向的交換機發送拓撲變化通知BPDU。這樣,拓撲變化的通知最終傳到根交換機。根交換機收到了這樣一個通知,或其自身改變了拓撲結構,它將發送一段時間的配置BPDU,在配置BPDU中拓撲變化標志位被置位。所有的交換機將會收到一個或多個配置消息,并使用轉發延遲參數的值來老化過濾數據庫中的地址。所有的交換機將重新決定根交換機、交換機的根端口、以及每個LAN的選取交換機和選取端口,這樣生成樹的拓撲結構也就重新決定了。

  三、結果及結論

  筆者按照上述原理和方法實現的生成樹算法運行正常,能夠解析出最優的網絡拓撲結構。當管理員使某一個端口無效或某一條鏈路斷開后,該算法能及時響應網絡的拓撲變化而重新配置生成樹的拓撲結構。

  摘自《數據通信》2000年總第84期
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 比如县| 佳木斯市| 岗巴县| 榆树市| 普兰店市| 青冈县| 商南县| 兴业县| 呼和浩特市| 瓦房店市| 壶关县| 昌平区| 定陶县| 梅河口市| 太和县| 南和县| 松潘县| 沛县| 确山县| 龙泉市| 河西区| 南陵县| 公安县| 巴东县| 大关县| 阿荣旗| 林西县| 阜城县| 景宁| 读书| 沈丘县| 平遥县| 电白县| 福建省| 绥阳县| 安乡县| 探索| 盐津县| 永仁县| 江孜县| 贺州市|