橋接
OSI網路模型的鏈路層的一種功能
橋接器是用於在兩個或多個網段或子網間提供通信路徑的互聯設備。這些網段或子網具有相同的地址及網路拓撲結構。
一般的交換機,網橋就有橋接作用。就交換機來說,本身有一個埠與mac的映射表,通過這些,隔離了衝突域(collision)。簡單的說就是通過網橋可以把兩個不同的物理區域網連接起來,是一種在鏈路層實現區域網互連的存儲轉發設備。網橋從一個區域網接收MAC幀,拆封、校對、校驗之後,按另一個區域網的格式重新組裝,發往它的物理層,通俗的說就是通過一台設備(可能不止一個)把幾個網路串起來形成的連接,比如圖中就是一種通過橋接來實現無路由雙機上網的連接方案。
橋接
擴展整個網路的距離和節點數目。
減少連接節點過多引起的通信瓶頸。
鏈接不同網路,如乙太網、令牌環網。並且在它們之間傳送分組。前提是假設它們採用相同的網路協議。
橋接器可以是一個獨立的設備,或者通過安裝一個或多個網卡在伺服器中建立,前提是伺服器操作系統支持橋接。通過橋接器相連的每個LAN網段都有一個特定的網路號碼。打個比方,網路號類似於街道名,工作站號類似於房間號。橋接器在相聯網段間傳送數據分組。Novell NetWare、Banyan VINES及Microsoft公司的網路具有伺服器橋接功能。如果橋接功能使伺服器陷入癱瘓,就需要外部橋接器,外部橋接器由Cisoc、3COM、Cabletron等供應商製造。
橋接器具有過濾功能,該功能的實現是通過讀取乙太網或令牌環幀中的地址來確定數據分組屬於哪一個LAN網段。但是,橋接器不能訪問網路層協議信息,所以它不能提供最優路徑選擇。路由器可以通過編程(或學習)在專門路徑中為分組選擇路由以減少費用或者避免通信擁塞。而且多協議路由器能夠用於處理具有多通信協議的網路通信。
隨著網路的增長,橋接的數目也隨之增大,可能會出現循環迴路或者無效路徑。在橋接網路中避免循環迴路將在以後討論。橋接器缺少擁塞管理,無法確定最優數據路徑。當許多工作站都需要發送時就會引起擁塞。在橋接的網路中,流控制由端系統完成。橋接器在為彌補擁塞問題而傳送額外的分組時,實際上可能反而使問題擴大了。這些問題將在本節“生成樹演演算法”中討論。
橋接器類型總的說來有兩種:本地與遠程橋接器。本地橋接器為LAN提供連接點,用於在同一建築物或區域內互連LAN網段。如圖B-12下端所示。遠程橋接器具有連接遠地網路模擬或數字通信鏈路埠,如圖B-12上端所示。遠程橋接器之間的連接採用的是使用數據機的模擬線路,或者採用吞吐量為1.544Mbps的T1等數字專用線路。
模擬線路基本上是聲音級撥號電話線,提供橋接器連接的線路可以是臨時的(參見本書的“電路交換服務”),也可以是長期的(參見“專用線路”)。由於電話公司能夠對連接負責,所以專用線比撥號連接的速度快、質量好,但是,租費可能與網路的使用需要不相符。撥號線適於偶爾的使用,如文件傳輸或公司場地間的電子函件的批量傳輸。而租用線路是連續使用的最佳選擇。
橋接器可以連接兩個相似或不相似的LAN網段,可以將橋接器看作郵件分類裝置,查看數據分組的地址並且送到合適的網段。橋接發生在相當於開放系統互連(OSI)協議模型的數據鏈路層。遵循IEEE 802標準的介質訪問控制(MAC)規程的設備能夠通過橋接器相連。乙太網、令牌環、光纖分散式數據介面(FDDI)都是遵循IEEE 802標準進行MAC級橋接的例子。正因為如此,將乙太網或令牌環網連到FDDI主幹網的橋接設備使用較普遍,參見“主幹網”中的討論。
數據鏈路層又可以分為上部的邏輯鏈路控制(LLC)子層與下部的MAC子層。支持IEEE 802標準的設備有一個模塊化MAC子層,可以適用於許多網路類型,如乙太網、令牌環,見圖B-13所示。上部的LLC子層用作“交換板”,在MAC子層中的網路模塊之間轉移數據分組。在上文的例子中,將乙太網的幀解包,採用令牌環的幀格式重新包裝。這種額外的處理帶來了一些延遲,所以橋接器的速率由它每秒能夠處理的分組而定。
幀傳送 幀傳送是一種形式的過濾,如果數據分組的地址與段地址相匹配,那麼橋接器將數據分組傳送到LAN網段上,這可以防止在本段編址的數據分組通過橋接器。如果沒有過濾作用,那麼數據分組被傳送到網上的每個位置。當數據分組到達橋接器時,橋接器讀出其目的地址,並且決定它是否應該能夠通過橋接器朝前傳送。
循環迴路解決方案 大量橋接的LAN可能存在循環迴路,從而引起數據分組連續不停地傳送,一些橋接器會檢測出這些循環的數據分組並且加以攔截。
學習技能 橋接器建立了描述路由的地址表。方法是通過檢查分組流動或者從旅行中學得網路拓撲的“偵探分組”中獲得信息。第一種方法叫做透明式橋接,第二種方法叫做源路由選擇,這些學習技能將在以下的部分中討論。
早期的橋接器要求網路管理員手工輸入地址表,這是一項非常乏味的工作。如果某工作站的用戶轉移到其它位置,那麼該表必須定期更新。現在的先進橋接器能夠採用這裡談到的技術獲得網路上其它工作站的地址。注意,透明橋接器常常稱為自學習橋接器,採用的是IEEE 802.1標準的生成樹演演算法。乙太網環境中採用的是透明式橋接,令牌環環境中採用的是源路由選擇技術。
透明式橋接器在安裝通電后能夠自動獲悉網路環境的拓撲結構。當數據分組傳送到橋接器的埠,透明式橋接器查看其源地址,並且在橋接表中增添表項。這些表項建立了源地址與分組經過網路的地址的聯繫。具有兩個LAN網段(123網段和456網段)的典型表格如圖B-14所示,橋接表經常隨著新源地址的增加或者網路的改變而更新。
到達的數據分組根據橋接表信息繼續向前發送,如果目的網路類型發生了改變則必須被重新包裝。如果一個地址在表中沒有找到,那麼一個發現過程將被重新啟動。將一幀發送到不包括發出其幀的所有LAN網段,如果目的點以網路地址作為響應返回,那麼橋接器在橋接表中可以新增一條表目,如果有足夠的時間后,橋接器可以得到網路上所有節點的地址。
網際網路段的數目是學習過程中必須了解的問題,如果一個橋接器只與兩個網段相連,那麼橋接表的創建就相對簡單。哪些工作站在橋接器這一邊,哪些在另一邊就可確定下來。但是橋接器必須首先通過將數據分組從橋接器的一邊傳送到另一邊,並且等待目的站點的應答才知道每個連接的網路的地址。
如何將多個LAN網段互連起來呢?圖B-15上面的網必須將左邊網段的數據分組經過中間網段傳送到右邊網段。這將在中間部分引起性能問題。但是,僅僅需要兩個橋接器。一種替換的方法是在每一個LAN網段上連接一個橋接器,這些橋接器又全部接到象FDDI環那樣的主幹網上。如圖B-15下面所示。
在大型網際網路中,多條橋接路徑可能會形成閉合迴路,使數據分組無休止地循環,從而導致性能降低或者整個網路陷入癱瘓。最糟的是,為解決這個問題無休止產生的那些新分組導致“傳播風暴”.但是多條路徑對容錯又是必要的,如圖B-16所示。如果LANA與LANB之間的鏈路斷開了,間接通過LANC的替換鏈路可以保持傳輸的正常進行。生成樹演演算法(STA)可以建立多條路徑而不引起循環迴路,但是它採用的方法是封鎖一條路徑,直到需要時才允許使用。被封鎖的路徑應該是僅在需要時才工作的模擬或數字鏈路。另外一種被稱作負載分擔的策略也能在一定程度上解決該問題。
生成樹橋接器通過禁止乙太網中的某些鏈路來檢測和中止循環傳送。IEEE801.2-D生成樹協議(STP)由維持輔助橋接器作為備份來抑制冗餘橋接器中的循環迴路。如果主橋接器不工作了,輔助 橋接器將代替 它繼續工作。
該演演算法為每一個橋接器分配一個唯一的標識,該標識通常是橋接器的MAC地址。
每個橋接器分配一個優先順序值。
為每個橋接器的每個埠分配一個唯一的標識。
每個橋接器埠被賦予一個路費權值。網路管理員可以人工改變路費權值,為特殊埠設立優先權。
該演演算法從橋接器中選定一個作為根橋接器,具有最小標識的橋接器被選作根。一旦選定了根橋接器其它橋接器就能夠確定通過哪個埠訪問根橋接器的路費權值最小,該埠稱作該橋接器的根埠。如果幾個埠的路費權值一樣,那麼就選擇橋接器間網段數最少的埠。最後一步是根據最少路費原則確定由哪個橋接器的哪個埠提供路徑通過網路達到其根。
該過程允許使用一部分埠以到達某些橋接器,另一部分埠封閉以防止循環迴路。封閉埠連到一撥就通的數據機或者某些橋接器,這些橋接器僅僅在需要路徑或線路在引起迴路的情況下仍能安全使用時才建立與交換通信鏈路的連接。
負載分擔橋接器
當橋接器使用專線跨越較大區域時,絕大多數網路管理員都認為阻塞線路和將其僅用於備份不是經濟可行的。一些橋接器生產廠家推出了負載分擔橋接器,它使用備份鏈路來分擔網路負載而不會引起迴路。這是最有效的橋接器型式,它採用生成樹演演算法和使用雙鏈路來傳送數據分組,改進了網際網路的性能。
IBM的令牌環網採用了一種特殊的源路由選擇方法,不僅告訴橋接器數據分組的目的地,而且告訴它如何到達。在源路選擇器中,數據分組本身具有繼續傳送的信息,由於分組中有路徑信息,所以能夠自己找到路徑從而在網路中繼續傳送。
通過“發現”方法來實現源路由選擇的橋接器,首先確定一個分組走向目的站應該選擇的路由。注意,雖然這聽起來象路由選擇,其實源路由選擇橋接器只是確知其餘橋接器地址的傳送設備。數據分組中具有有利於廣域網的最優路由選擇信息。在透明式橋接中,有必要將某些鏈路封鎖起來防止環路的出現。而在源路由選擇橋接中,避免了循環迴路,所以可以方便、安全地在廣域鏈路中建立平行冗餘路徑。
“偵探分組”被源橋接器發出以發現一條通過網路的路徑。網路中有多個橋接器就有多個偵探分組從中間橋接器到達目的地,目的節點便向源節點發送迴響應信息。然後根據象橋接器之間網段數等因素確定最優路徑。該路徑被存入橋接器中,並加在發送到目的地的所有的後繼數據分組中。
路徑發現處理最初需要完成一些工作,但最後橋接器知道了最常用的路徑。如果令牌環網路較大,那麼有可能出現建立偵探分組的“風暴”,使網路陷入癱瘓。令牌環的硬體限制橋間網段數為7,有助於減少“風暴”的出現,但是同時也限制了網路的大小。
我們一直假設在全乙太網或者全令牌環環境之中裝置橋接器,但是這樣的情況很少。組織往往需要橋接部門LAN,形成混合的拓撲結構。其中遇到的問題有:
乙太網使用生成樹演演算法的自學習橋接器,令牌環網採用源路由選擇技術;乙太網橋接器保持地址表而令牌環網保持路徑信息。
乙太網與令牌環網的幀狀態和錯誤信息編碼不同。
兩種網路類型間有些幀信息沒有相應成分。例如令牌環採用了優先機制,表明某些幀較其它幀更重要,而乙太網沒有這種特性。
1500位元組分組和令牌環4,000~17,800位元組的分組在分組結構上不同。
這些問題需要轉換橋接器解決,轉換橋接器IBM 8209具有一個乙太網埠和一個令牌環埠,它提供轉換服務使兩個網路能夠互相交換分組。它通過強制令牌環網使用1,500位元組幀來解決幀的問題。對令牌環節點,橋接器作為源路由選擇橋接器出現;對乙太網節點,它作為生成樹橋接器出現。
FDDI Backbone BridgesFDDI主幹網橋接器
光纖分散式數據介面(FDDI)標準是一種適用於大樓或校園環境中的主幹網介質。具有FDDI介面的橋接器能夠將LAN網段鏈接到FDDI主幹網。當將乙太網橋接到FDDI主幹網時,乙太網的幀要在網路中傳輸必須重新打包。
方法有以下兩種:
封裝 該方法僅僅在乙太網的幀上再加一層FDDI封裝,將其作為分組在主幹網中傳輸。當它被送到目的網路的橋接器時,被解封並且傳送到目的點。封裝的方法被大部分的乙太網-FDDI網橋接器所採用,它假定除橋接器外乙太網上的節點不需要與直接連接到FDDI區域網的節點通信。封裝使幀信息只有他們在接收網橋接器中被解封后才能使用。
轉換 轉換橋接器可以將乙太網分組轉換為FDDI分組,大多數有關問題及某些解決措施將在最後討論。轉換雖然不如封裝有效,但是它允許乙太網上的節點與FDDI網上的節點通信,在FDDI僅僅用作主幹道網的情況下,封裝比轉換好。
Remate Bridging Technigues 遠程橋接技術
遠程橋接器有多種連接方法,本書後面的條目“數據傳輸率”介紹了常見網路應用的傳輸速率和能夠幫助確定滿足傳輸需求的活動。
非同步橋接器 撥號數據機和非同步鏈路對偶爾的低容量的網際網路通信已經足夠了。大容量的通信需要專用模擬線路或下面將討論的數字線路。非同步橋接設備有連接高速數據機的RS-232和V.35埠。V.32bis數據機能夠工作於14.4Kbps的速率,正在出現的標準使用壓縮方法能提供更高的速率。見本書後面“數據機”。
專用或交換數字線路 數字線路的速率可為64Kbps或更高,上至T1速率為1.544Mbps,T3速率為45Mbps。T1中有24條能處理聲音或數據通信的通道,通道服務單元/數據服務單元(CSU/DSU)將橋接器與數字線路相連,如圖B-17所示。如果打算混合傳送聲音與數據,那麼需要一個多路復用器。請參見“多路復用”、“T1/T3服務”和“廣域網”的有關內容。
分組交換服務 分組交換服務能夠提供任意點到任意點的連接,相對於專線點對點的連接。橋接器能夠在分組交換網中建立與多個遠距離節點的鏈路。由於鏈路是交換的,連接時間可以較短,所以客戶只需按使用付費。一些分組交換服務列舉如下:
X.25分組交換傳輸速度為56Kbps。
幀中繼是一種速率為1.544Mpbs或更高的流水線幀傳送服務。它假定現代傳輸工具是可靠的,相對而言沒有錯誤,因而取消了額外的錯誤檢測。
交換式多兆位數據服務(SMDS)是在光纖環網路上運行的城域網服務。
Bridging Versus Routing橋接方式與路由選擇方式的比較
路由器往往比橋接器好,因為它們能夠在複雜網路中提供更好的通信管理。路由器可以通過與另一個路由器共享網路狀態信息繞過擁塞或失效的連接。相當於OSI協議棧中的網路層協議能夠採用這個網路狀態信息,但橋接器卻看不到。由於路由器工作在網路層,他們能夠在數據分組中得到更多的信息,並且能夠利用它們改進分組的傳送。