- 網絡互連與互聯網(第2版)
- 劉化君等
- 4644字
- 2020-07-02 15:27:29
第二節 網橋
網橋提供了一種最簡單的將局域網網段連接成可維護、高可靠性擴展網絡的方法。網橋工作在OSI參考模型中數據鏈路層的MAC子層,它監聽所有流經它所連接的網段的數據,檢查每個數據幀的目的網卡地址,并決定是否將該幀送往網絡的其他部分。現在,網橋已經不像以前那樣廣泛使用了,但它的工作原理仍然支撐著網絡互連。網橋的功能常常被捆綁在交換機、路由器中,因此了解網橋和橋接的工作原理仍然是很重要的。
學習目標
?掌握透明橋接方法和源路由橋接方法;
?了解透明橋接和源路由橋接之間的不同。
關鍵知識點
?網橋只轉發其目的地址位于其他網段的數據幀,從而增加了網絡的有效吞吐量。
?終端站點并不知道透明網橋的存在;在源路由橋接中,所有環上的站點都建立和維護它們自己的路由表。
利用網橋互連異種局域網
在本叢書的《局域網(第2版)》一書中,已經比較詳細地介紹了網橋的工作原理。網橋是一種在數據鏈路層實現局域網互連的存儲轉發設備。局域網網絡結構的差異性體現在介質訪問控制(MAC)協議上,因而網橋被廣泛用于異種局域網的互連。
最基本的網橋用來連接兩個或更多的局域網網段。網橋和每個局域網網段之間的接口稱為端口,連接到每個端口的局域網稱為一個網段,如圖2.8所示。

圖2.8 網橋端口和網段
網橋監聽它連接的每個網段上所傳輸的數據,它將每個數據幀的地址與自身軟件維護的一個地址表進行比較。當一個數據幀的目的設備地址和它的發送設備地址是在兩個不同的網段時,網橋就將該幀轉發到和目的網段相連的端口。由于只轉發目的設備地址在其他網段的數據幀,網橋增加了整個網絡吞吐量的有效性。
廣域網網橋(半網橋)也能通過電信鏈路連接遠程網絡。廣域網網橋只轉發那些目的地址在遠程網絡的數據幀,這樣就保證了在那些速率較低、價格昂貴的租用線路上的流量能夠相對小一些。
網橋的橋接方式
網橋最重要的部分是它用來構建和維護網橋表的軟件。沒有這個軟件,網絡管理員就必須人工建立和維護網橋表。按照創建網橋表的方法或算法進行分類,網橋的橋接方法可分為透明橋接、源路由橋接和源路由透明橋接等方式。
透明橋接
透明網橋通常用于連接以太網網段,也可以用于連接令牌環網和FDDI網絡,它使得數據幀可以在兩個使用同樣MAC層協議的網段之間來回傳輸。之所以把這種類型的橋接稱為透明橋接,是因為源站點向目的站點傳輸數據幀就好像它們在同一個物理網段上一樣,終端站點似乎不知道在網絡中存在網橋。
透明網橋不允許轉發含有錯誤的數據幀。它們必須檢驗校驗和,但不會嘗試再生該幀來生成一個正確的校驗和;因為它們并不知道錯誤發生在數據幀的什么位置。因此,如果一個網橋檢測到了一個錯誤,就丟棄該幀。
透明網橋具有幀過濾和轉發、地址學習、活動環路(生成樹算法)等很有用的特性。
1.幀過濾和轉發
橋接的一個主要目的是防止一個網段自身的內部數據流到其他網段。圖2.9示出了一個網橋轉發將要送往主機E的數據幀,而忽略將要發往主機A的數據幀。

圖2.9 幀的過濾和轉發
網橋是怎么知道哪一幀該轉發,哪一幀該忽略的呢?網橋內有一個通過每個端口所能達到的硬件地址數據庫(網橋表),網橋將每個幀的目的地址和自身的地址數據庫進行比較:如果目的地址和源地址在相同的網段,它就將該幀過濾掉,即丟棄該幀;如果目的地址和源地址在不同的網段,就會查出哪個端口和目的地址相關,并將該幀轉發送到相應的端口;如果目的地址不在地址數據庫中,就將該幀發往除接收端口以外的所有端口。這將保證該幀在下一步可以被正確地送往它的目的地,當然也可能下一步不是最終的一步。
2.地址學習
當網橋接收到一個數據幀時,它將其源地址和自身的地址數據庫進行比較。如果源地址不在數據庫中,網橋會將它加入,同時加入的還有接收該數據幀的端口號。通過這種方式,網橋學習并知道了網絡中設備的地址。因為網橋具有這種學習能力,新的設備就可以添加到網絡中而不必再花人工去配置每個網橋。圖2.10示出了一個網橋經過學習并已知道所有連接到其端口的MAC地址。

圖2.10 網橋學習
3.學習、過濾和轉發實例
圖2.11示出了網橋是如何使用其地址數據庫去控制網絡流量的。

圖2.11 學習、過濾和轉發實例
假定站點A和站點B是網段1中的新設備。開始時,站點A向站點B發送一個數據幀,網橋檢測到站點A的網絡地址不在地址數據庫中,于是將其加入網段1的地址數據庫中。又由于網橋并不知道站點B的網絡地址,所以它將該幀轉發往網段2。與此同時,由于和站點A處于同一個網段中,站點B也收到該幀。
當站點B向站點A回送一個數據幀時,網橋檢測到站點B的網絡地址不在地址數據庫中,于是將其加入地址數據庫中。然后,網橋在地址數據庫中查找站點A的地址,得知站點A也在網段1中,于是過濾掉站點B的回應幀,不將其轉發往網段2,如圖2.12所示。當站點A或站點B向站點E發送數據幀時,網橋由地址數據庫知道站點E在網段2中,于是將該幀轉發往網段2。

圖2.12 網橋過濾
學習、過濾和轉發功能依賴于網絡中任何兩個設備之間有且只有一條路徑。在簡單的拓撲結構中,保證兩個設備之間只有一條通路相對簡單;但是,隨著互聯網絡變得更大、更復雜,不經意在兩個設備之間創建多條路徑或“活動環路”的情況也在急劇地增加。
4.活動環路(生成樹算法)
當網絡中的網橋數量增多時可能帶來環路,這時可能使得網橋的兩個端口都會收到同樣的源MAC地址,從而造成互相轉發,甚至無限次地循環發送,使網橋失去作用并引發很大問題。圖2.13示出了一個包含活動環路的拓撲結構。每次站點A向站點E發送數據幀時,每個網橋都要發送一個該幀的樣本,導致兩個相同幀在互連的網絡中無限次地循環傳送?;顒迎h路可能為橋接和網絡帶來嚴重的問題,因為該環路會不必要地復制數據幀,而這些多余的流量可能會嚴重降低網絡的性能。

圖2.13 活動環路
為了解決活動環路問題,借助圖論中提取連通圖生成樹的簡單算法,可通過阻塞一些網橋的端口來消除環路。該解決方法就是生成樹算法(STA),它已經成為網橋功能的一個基本組成部分,但這會使網絡的延遲增加。
生成樹是一系列經由網絡設備到設備的路徑,其網絡中任何兩個設備之間有且只有一條路徑。STA通過網橋和網橋之間的一系列協商構建出一個生成樹。這些協商決定哪些路徑可以用于傳輸,哪些路徑將至少是暫時不可用的。協商的結果是,每個網橋都有一個端口被置于轉發狀態,其他端口則被置于阻塞狀態。該過程將保證網絡中任何兩個設備之間只有一條通路,并可以防止出現任何形式的活動環路。
換句話說,通過不使用某些路徑,也就是將一些冗余的路徑置于阻塞模式,生成樹算法創建了一個邏輯上無環路的網絡拓撲結構。在圖2.14中,左圖顯示了一個包含環路的網絡結構,右圖顯示了如何在該網絡結構中放置一個生成樹來消除環路。一個網橋被選作根網橋,并開始協商消除冗余的路徑。

圖2.14 生成樹的例子
STA還可提供更多的功能,如果因為某種原因使獨一無二的路徑不通了,其中的某些網橋可以激活阻塞的端口來創建新的生成樹。這樣,STA允許使用網橋的互聯網絡中含有一些不會產生與活動環路相關的問題的冗余路徑。STA的這一特性使得網絡在某個網橋或某段網線不通的情況下可以迅速自動恢復。
生成樹算法(STA)如圖2.15所示。如果沒有STA,活動環路就會在公司局域網、局域網A和局域網B之間出現;使用STA后,56kb/s的鏈路被阻塞了,因此只有T1鏈路可以使用。如果某條T1鏈路不通,STA則會自動激活56kb/s鏈路。

圖2.15 生成樹算法
STA可以解決很多問題。它可以通過橋接來創建一個廣域的互聯網絡。如果在網絡的長距離部分存在一條活動環路,STA會通過阻塞其中的一條或多條來消除環路。即使一條鏈路被阻塞了,物理連接仍然完好地存在。網絡管理員可能會發現他們在為不能使用的長距離線路付費,因為這些線路被STA置為阻塞了。因此,如果網絡管理員要使用網橋創建廣域網,必須確保在租用的電信線路上沒有活動環路。
源路由橋接
源路由橋接允許一個環路上的站點(結點)通過網橋與其他環路上的結點通信。通過源路由橋接方法,每個環上的站點都可以收集和維護向其他環上的站點發送幀所必需的路由信息。
1.源路由橋接的工作過程
每個環上的源站點都要動態地決定和維護到達環上的目的站點的路由信息。簡單地說,路由就是當數據幀通過多環令牌環局域網時,從源站點到目的站點的傳輸路徑。在一個環上,源站點在向遠程環上的目的站點發送幀之前,必須首先決定是否有一條或多條到達目的站點的路由。
環上的源站點通過發送一種特殊的包含目的結點邏輯地址的“探測幀”(Discovery Frame)來請求該目的站點的硬件地址。每個源路由網橋將“探測幀”轉發到所有的端口,在整個多環網絡中擴散該地址請求。
當目的結點收到“探測幀”時,發送一個包含自身硬件地址的應答幀。每個轉發該應答幀的源路由網橋都更新該幀,使得該幀中包含路由中經過的每個環的標號。當應答幀回到源站點時,該幀包含了從源站點到目的站點的完整的路徑記錄。
如果有超過一條的路徑,源站點將查看哪個應答幀包含最少的經由中間環的跳步數。之后源站點用該最短路徑路由更新自身的路由表。每次源站點向目的站點發送幀時,它都將完整的路由信息放在該幀的目的地址中。圖2.16示出了站點A的路由表。采用這種方法,最短路徑路由有可能不會被采納。

圖2.16 路由表
2.使用源路由網橋進行網絡互連
源路由網橋可以連接不同速率的環網。例如,一個網橋可以連接速率為4Mb/s或16Mb/s的多個環網。
網橋可以克服令牌環網所允許的最大站點數的限制。例如,在一個使用3類UTP的4Mb/s單個環網上最多允許72個站點,16Mb/s的單個環網上最多允許260個站點。通過安裝另外一個環網,并將它和原來的環網用網橋連接起來,就可以克服這種最大結點數的限制。這種方法有效地增加了整個令牌環網的結點數,而單個環網的站點數仍可保持在最大站點數限制下。
為了能夠提供容錯功能,可以使用并列的源路由網橋來連接環網網段。這樣,如果一個網橋出現故障,并行的網橋就可以自動維護其連接,為兩個環網之間的數據傳輸提供一條可替換的路由。在這種情況下,需要發送一系列新的“探測幀”來確定新路由。
源路由透明橋接
雖然透明橋接具有許多優點,很多網絡仍然使用源路由橋接。源路由透明(SRT)網橋提供了一種連接,使得這兩種類型的橋接網絡可以共同存在于同一個互聯網絡之中。
顧名思義,源路由透明網橋既有源路由網橋的功能也有透明網橋的功能。如果該網橋收到了一個帶有源路由信息的幀,它會執行源路由橋接的功能;同樣,如果收到一個不攜帶源路由信息的幀,它會執行透明橋接的功能。
當將源路由透明網橋和透明網橋在同一個網絡中一起使用時,會出現一個嚴重的問題。當一個源路由站點使用源路由橋接來探測路由時,它可能會努力去找到一條優于使用生成樹和透明幀的到達目的路由。如果只有部分網橋是源路由透明網橋,并且其他的網橋是透明網橋,那么源路由幀只能通過源路由透明網橋。依賴于源路由透明網橋的數目和位置,最佳的源路由路徑可能很明顯地劣于使用透明網橋和生成樹的路由。
練習
1.透明橋接需要網絡管理員為該功能配置結點。判斷正誤。
2.透明橋接用來連接以太局域網網段和令牌環局域網網段。判斷正誤。
3.生成樹算法是用來防止生成活動環路的。判斷正誤。
4.包含做轉發決定所需的信息的網橋表,是由網橋軟件自動生成的。判斷正誤。
5.源路由橋接路由對于正在與其他結點通信的結點來說是透明的。判斷正誤。
6.根據其橋接算法,源路由橋接具有減少流量的優點。判斷正誤。
7.簡要解釋術語“學習”“過濾”和“轉發”。
8.簡述透明橋接和源路由橋接之間的3個不同之處。
補充練習
1.使用Internet作為調查研究工具,討論在哪兒可以發現:(1)透明網橋;(2)源路由網橋。然后總結討論結果。
2.使用Web,查找生成樹算法(IEEE802.1)的信息。