1. 程式人生 > >計算機網路總結(四)

計算機網路總結(四)

本篇文章核心內容:
(1)如何通過資料鏈路層對乙太網進行擴充套件
(2)交換機和路由器的區別

1、在資料鏈路層擴充套件乙太網

之所以說在資料鏈路層擴充套件乙太網那是因為也可以在物理層通過使用多個集線器的方式擴充套件乙太網。
在資料鏈路層擴充套件乙太網要使用網橋(bridge)。網橋工作在資料鏈路層,它根據MAC幀的目的地址對收到的幀進行轉發過濾。當網橋收到一個幀時,並不是向所有的介面轉發此幀,而是先檢查此幀的目的MAC地址,然後在確定將此幀轉發到哪一個介面,或者是把它丟棄(即過濾)。

1.1、網橋的內部結構

通過網橋連線起來的多個乙太網,其中原來的每個乙太網可以稱為一個網段


這裡寫圖片描述
網橋轉發依靠轉發表來轉發幀。轉發表也叫轉發資料庫路由目錄
網橋是通過內部的介面管理軟體和網橋協議實體來完成操作的。
注:網橋在轉發幀時,不改變幀的源地址

1.2、透明網橋

“透明”指的是乙太網上站點並不知道所傳送的幀將經過哪幾個網橋,乙太網上的站點看不見乙太網上的網橋。透明網橋還是一種即插即用的裝置

當網橋剛剛接到乙太網上的時候,其轉發表是空的,這時若網橋收到一個幀,它將怎樣處理呢?網橋將按照自學習演算法處理收到的幀(這樣就逐步建立轉發表),並按照轉發表把幀轉發出去。這種自學習的演算法並不複雜,因為:若從某個站A發出的幀從介面x進入了某網橋,那麼從這個介面沿相反方向一定可以把一個幀傳送到A。

所以網橋只要每收到一個幀,就記錄下其源地址進入網橋的介面,作為轉發表中的一個專案。(注:轉發表中並沒有“源地址”這一欄,而只有“地址”這一欄。)在建立轉發表時是把幀首部中的源地址寫在“地址”這一欄的下面。在轉發幀時,則是根據收到的幀首部中的目的地址來轉發的。這時就把“地址”欄下已經記錄的源地址當作目的地址,把記錄下的進入進口當作轉發介面來轉發。

網橋的自學習和轉發幀的一般步驟:

  1. 網橋收到一幀後先進行自學習。查詢轉發表中與收到的幀的源地址有無相匹配的專案。如沒有,就在轉發表中增加一個專案(源地址,進入的介面和時間)。如有,則把原有的專案進行更新。
  2. 轉發幀。查詢轉發表中與收到的幀的目的地址有無相匹配的專案。如沒有,則通過所有其他介面(進入網橋的介面除外)。如有,則按轉發表中給出的介面進行轉發。但應注意,若轉發表中給出的介面就是該幀進入網橋的介面,則應丟棄這個幀(因為這個幀不需要網橋進行轉發)。

透明網橋還使用了一個生成樹演算法,即互連在一起的網橋在進行彼此通訊後,就能找出原來的網路拓撲的子集。在這個子集裡,整個連通的網路中不存在迴路,即在任何兩個站間只有一條路徑。

1.3、源路由網橋

透明網橋最大的優點就是容易安裝,一接上就能工作。但是網路資源的利用還不充分。因此,另一種由傳送幀的源站負責路由選擇的網橋就問世了,這就是源路由網橋。

源路由網橋是在傳送幀是把詳細的資訊放在幀的首部中。

這裡的關鍵是源站用什麼樣的方法才能知道應當選擇什麼樣的路由。

為了發現合適的路由,源站以廣播的方式向欲通訊的目的站傳送一個發現幀作為探測之用。發現幀將在整個乙太網中沿著所有可能的路由傳送。在傳送過程中,每個發現幀都記錄所經過的路由。當這些發現幀到達目的站時,就沿著各自的路由返回源站。源站在得知這些路由後,從所有可能的路由中選擇一個最佳路由。

1.4、多介面網橋——乙太網交換機

從技術上講,網橋的介面數很少,一般只有2~4個,而乙太網交換機通常由十幾個介面。因此,乙太網交換機實質上就是一個多介面的網橋和工作在物理層的轉發器、集線器有很大的區別。此外,乙太網交換機的每個介面都直接與單個主機火另一個集線器相連(注:普通網橋的介面往往是連線到乙太網的一個網段),並且一般都工作在全雙工方式。

特別要指出的是,利用乙太網交換機可以很方便的實現虛擬區域網VLAN。

2、交換機和路由器的區別

一般人覺得交換機和路由器長得差不多,都是一個盒子幾個插口,都是網路用的東西,就以為是一種東西,其實不然,這兩個還真不是一樣的東西,這兩者在功用上還是有很大區別的。

2.1、交換機

我們經常說到的乙太網交換機實際是一個基於網橋技術的多埠第二層網路裝置,它為資料幀從一個埠到另一個任意埠的轉發提供了低時延、低開銷的通路。 交換機內部核心處有一個交換矩陣,為任意兩埠間的通訊提供通路,或是一個快速交換匯流排,以使由任意埠接收的資料幀從其他埠送出。
這裡寫圖片描述

2.2、路由器

而路由器是OSI協議模型的網路層中的分組交換裝置(或網路層中繼裝置),路由器的基本功能是把資料(IP報文)傳送到正確的網路。

  1. 在主幹網上,路由器的主要作用是路由選擇。主幹網上的路由器,必須知道到達所有下層網路的路徑。這需要維護龐大的路由表,並對連線狀態的變化作出儘可能迅速的反應。路由器的故障將會導致嚴重的資訊傳輸問題。
  2. 在地區網中,路由器的主要作用是網路連線和路由選擇,即連線下層各個基層網路單位--園區網,同時負責下層網路之間的資料轉發。
  3. 在園區網內部,路由器的主要作用是分隔子網。早期的互連網基層單位是區域網(LAN),其中所有主機處於同一邏輯網路中。隨著網路規模的不斷擴大,區域網演變成以高速主幹和路由器連線的多個子網所組成的園區網。在其中,處個子網在邏輯上獨立,而路由器就是唯一能夠分隔它們的裝置,它負責子網間的報文轉發和廣播隔離,在邊界上的路由器則負責與上層網路的連線。
    這裡寫圖片描述

2.3、交換機和路由器的區別

兩者的主要區別在於:

  1. 工作層次不同:最初的的交換機是工作在OSI/RM開放體系結構的資料鏈路層,也就是第二層,而路由器一開始就設計工作在OSI模型的網路層。由於交換機工作在OSI的第二層(資料鏈路層),所以它的工作原理比較簡單,而路由器工作在OSI的第三層(網路層),可以得到更多的協議資訊,路由器可以做出更加智慧的轉發決策。

  2. 迴路:根據交換機地址學習和站表建立演算法,交換機之間不允許存在迴路。一旦存在迴路,必須啟動生成樹演算法,阻塞掉產生迴路的埠。而路由器的路由協議沒有這個問題,路由器之間可以有多條通路來平衡負載,提高可靠性。

  3. 子網劃分:交換機只能識別MAC地址。MAC地址是實體地址,而且採用平坦的地址結構,因此不能根據MAC地址來劃分子網。而路由器識別IP地址,IP地址由網路管理員分配,是邏輯地址且IP地址具有層次結構,被劃分成網路號和主機號,可以非常方便地用於劃分子網,路由器的主要功能就是用於連線不同的網路。

  4. 負載集中:交換機之間只能有一條通路,使得資訊集中在一條通訊鏈路上,不能進行動態分配,以平衡負載。而路由器的路由協議演算法可以避免這一點,OSPF路由協議演算法不但能產生多條路由,而且能為不同的網路應用選擇各自不同的最佳路由。

  5. 廣播控制:交換機只能縮小衝突域,而不能縮小廣播域。整個交換式網路就是一個大的廣播域,廣播報文散到整個交換式網路。而路由器可以隔離廣播域,廣播報文不能通過路由器繼續進行廣播。

  6. 介質相關:交換機作為橋接裝置也能完成不同鏈路層和物理層之間的轉換,但這種轉換過程比較複雜,不適合ASIC實現,勢必降低交換機的轉發速度。因此目前交換機主要完成相同或相似物理介質和鏈路協議的網路互連,而不會用來在物理介質和鏈路層協議相差甚元的網路之間進行互連。而路由器則不同,它主要用於不同網路之間互連,因此能連線不同物理介質、鏈路層協議和網路層協議的網路。路由器在功能上雖然佔據了優勢,但價格昂貴,報文轉發速度低。

  7. 保密問題:雖說交換機也可以根據幀的源MAC地址、目的MAC地址和其他幀中內容對幀實施過濾,但路由器根據報文的源IP地址、目的IP地址、TCP埠地址等內容對報文實施過濾,更加直觀方便。