複製鏈接
請複製以下鏈接發送給好友

二層交換機

鎖定
二層交換機工作於OSI模型的第2層(數據鏈路層),故而稱為二層交換機。二層交換技術的發展已經比較成熟,二層交換機歸屬於數據鏈路層設備,可識別數據幀中的MAC地址信息,依據MAC地址進行轉發,並將這些MAC地址與對應的端口記錄在自己內部的一個地址表中。
中文名
二層交換機
外文名
Layer 2 switches
領    域
網絡
參    數
端口、芯片、地址表
協    議
路由協議
功    能
決定最優路由和轉發數據幀

二層交換機工作流程

二層交換機過程

(1) 當交換機從某個端口收到一個數據幀,它先讀取包頭中的源MAC地址,這樣它就知道源MAC地址的機器是連在哪個端口上的;
(2) 再去讀取數據幀頭中的目的MAC地址,並在地址表中查找相應的端口;
(3) 如表中有與這目的MAC地址對應的端口,把數據幀直接複製到這端口上;
(4) 如表中找不到相應的端口則把數據幀廣播到所有端口上,當目的機器對源機器迴應時,交換機又可以學習一目的MAC地址與哪個端口對應,在下次傳送數據時就不再需要對所有端口進行廣播了。
不斷的循環這個過程,對於全網的MAC地址信息都可以學習到,二層交換機就是這樣建立和維護它自己的地址表。

二層交換機工作原理

從二層交換機的工作原理可以推知以下三點:
(1) 由於交換機對多數端口的數據進行同時交換,這就要求具有很寬的交換總線帶寬,如果二層交換機有N個端口,每個端口的帶寬是M,交換機總線帶寬超過N×M,那麼這交換機就可以實現線速交換
(2) 學習端口連接的機器的MAC地址,寫入地址表,地址表的大小(一般兩種表示方式:一為BUFFER RAM,一為MAC表項數值),地址表大小影響交換機的接入容量;
(3) 還有一個就是二層交換機一般都含有專門用於處理數據幀轉發的ASIC (Application specific Integrated Circuit)芯片,因此轉發速度可以做到非常快。由於各個廠家採用ASIC不同,直接影響產品性能
以上三點也是評判二三層交換機性能優劣的主要技術參數,這一點請大家在考慮設備選型時注意比較。

二層交換機路由技術

路由器工作在OSI模型的第三層---網絡層操作,其工作模式與二層交換相似,但路由器工作在第三層,這個區別決定了路由和交換在傳遞包時使用不同的控制信息,實現功能的方式就不同。工作原理是在路由器的內部也有一個表,這個表所標示的是如果要去某一個地方,下一步應該向哪裏走,如果能從路由表中找到數據包下一步往哪裏走,把鏈路層信息加上轉發出去;如果不能知道下一步走向哪裏,則將此包丟棄,然後返回一個信息交給源地址。
路由技術實質上來説不過兩種功能:決定最優路由和轉發數據包。路由表中寫入各種信息,由路由算法計算出到達目的地址的最佳路徑,然後由相對簡單直接的轉發機制發送數據包。接受數據的下一台路由器依照相同的工作方式繼續轉發,依次類推,直到數據包到達目的路由器。

二層交換機路由更新

距離矢量路由協議
在所有的動態路由協議中,最簡單的就是距離矢量路由協議(D-V)。它使用的是最簡單的距離矢量(Distance-Vector,簡稱D-V)路由算法
距離矢量算法通過上述方法累加網絡距離,並維護網絡拓撲信息數據庫。距離矢量協議定期直接傳送各自路由表的所有信息給鄰居(RIP默認是30秒)。網絡中的路由器從自己的鄰居路由器得到路由信息,並將這些路由信息連同自己的本地路由信息發送給其他鄰居,這樣一級一級地傳遞下去以達到全網同步。每個路由器都不瞭解整個網絡拓撲,它們只知道與自己直接相連的網絡情況,並根據從鄰居得到的路由信息更新自己的路由表。它所有的信息都靠道聽途説,它相信所有鄰居告訴它的所有信息,只在這些鄰居中選擇最優的來採用,類似於“傳話”這個遊戲。

二層交換機解決方案

二層交換機定最大值

如上所述,發生路由環路時,路由器去往網絡11.4.0.0的跳數會不斷增大,網絡無法收斂。為解決這個問題,我們給跳數定義一個最大值,在RIP路由協議中,允許跳數最大值為15,當跳數到達最大值時,網絡11.4.0.0被認為是不可達的,路由器會在路由表中顯示網絡不可達信息,並不再更新到達網絡11.4.0.0的路由。
通過定義最大值,距離矢量路由協議可以解決發生環路時路由權值無限增大的問題,同時也校正了錯誤的路由信息。但是,在最大權值到達之前,路由環路還是會存在。也就是説,這個方案只是補救措施,不能避免環路產生,只能減輕路由環路產生的危害。

二層交換機水平分割

水平分割是在距離矢量路由協議中最常用的避免環路發生的解決方案之一。分析產生路由環路的原因,其中一條就是因為路由器將從某個鄰居學到的路由信息又告訴了這個鄰居。水平分割的思想就是在路由信息傳送過程中,不再把路由信息發送給接收此路由信息的接口上。

二層交換機抑制時間

路由中毒和抑制時間結合起來,也可以在一定程度上避免路由環路產生,同時也可以抑制因復位接口等原因引起的網絡動盪。這種方法在網絡故障或接口復位時,使相應路由中毒,同時啓動抑制時間,控制路由器在抑制時間內不要輕易更新自己的路由表,從而避免環路產生、抑制網絡動盪。

二層交換機觸發更新

觸發更新機制是在路由信息產生某些改變時,立即發送給相鄰路由器一種稱為觸發更新的信息。路由器檢測到網絡拓撲變化,立即依次發送觸發更新信息給相鄰路由器,如果每個路由器都這樣做,這個更新會很快傳播到整個網絡。
當網絡11.4.0.0 不可達了,路由器C立即通告網絡11.4.0.0不可達信息,路由器B接收到這個信息,就從S0口發出網絡11.4.0.0不可達信息,依次路由器A從E0口通告此信息。
從以上敍述可以看出,使用觸發更新方法能夠在一定程度上避免路由環路發生。但是,仍然存在兩個問題:
(1)包含有更新信息的數據包可能會被丟掉或損壞。
(2)如果觸發更新信息還沒有來得及發送,路由器就接收到相鄰路由器的週期性路由更新信息,使路由器更新了錯誤的路由信息。
為解決以上的問題,我們可以將抑制時間和觸發更新相結合。抑制時間方法有一個規則就是當到某一目的網絡的路徑出現故障,在一定時間內,路由器不會輕易接收到這一目的網絡的路徑信息。因此,將抑制時間和觸發更新相結合,就可以確保觸發信息有足夠的時間在網絡中傳播。
在多路徑的情況下,要綜合使用這幾種方案才能在一定程度上解決環路問題。距離矢量協議無論是實現還是管理都比較簡單,但是它的收斂速度慢,報文量大,佔用較多網絡開銷,並且為避免路由環路需要做各種特殊處理

二層交換機路由協議

是使用最廣的一類域內路由協議。它採用一種“拼圖”的設計策略,即每個路由器將它到其周圍鄰居的鏈路狀態向全網的其他路由器進行廣播。這樣,一個路由器收到從網絡中其他路由器發送過來的路由信息後,它對這些鏈路狀態進行拼裝,最終生成一個全網的拓撲視圖,近而可以通過最短路徑算法來計算它到別的路由器的最短路徑。
鏈路狀態路由選擇協議的目的是映射互連網絡拓撲結構。每個鏈路狀態路由器提供關
於它鄰居的拓撲結構的信息。這包括:
· 路由器所連接的網段(鏈路)。
· 那些鏈路的情況(狀態)。
這個信息在網絡上泛洪,目的是所有的路由器可以接收到第1手信息。鏈路狀態路由器並不會廣播包含在它們的路由表內的所有信息。相反,鏈路狀態路由器將發送關於已經改動的路由的信息。鏈路狀態路由器將向它們的鄰居發送呼叫消息,這稱為鏈路狀態數據包( L S P )或者鏈路狀態通告( L S A )。然後,鄰居將L S P複製到它們的路由選擇表中,並傳遞那個信息到網絡的剩餘部分。這個過程稱為泛洪( f l o o d i n g )。它的結果是向網絡發送第1手信息,為網絡建立更新路由的準確映射。
鏈路狀態路由選擇協議使用稱為代價的方法,而不是使用跳。代價是自動或人工賦值的。根據鏈路狀態協議的算法,代價可以計算數據包必須穿越的跳數目、鏈路帶寬、鏈路上的當前負載,或者甚至其他由管理員加入的權重來評價。
(1)當一個鏈路狀態路由器進入鏈路狀態互連網絡時,它發送一個呼叫數據包,以瞭解其鄰居。
(2)鄰居用關於它們所連接的鏈路以及相關的代價度的信息進行應答。
(3) 起始的路由器用這個信息來建立它的路由選擇表。
(4) 然後,作為定期更新的一部分。路由器向它的鄰居發送鏈路狀態數據包。這個L S P包括了那個路由器的鏈路及相關代價。
(5)每個鄰居賦值數據包,並且將L S P傳遞到下一個鄰居。這個過程稱為泛洪。
(6)因為路由器並沒有在向前泛洪L S P之前重新計算路由選擇數據庫,聚合時間減少了。鏈路狀態路由選擇協議的一個主要優點就是這樣的一個事實,即路由選擇循環不可能形成,原因是鏈路狀態協議建立它們自己的路由選擇信息表的方式。第2個優點是,在鏈路狀態互連網絡中聚合是非常快的,原因是一旦路由選擇拓撲出現變動,則更新在互連網絡上迅速泛洪。這些優點又釋放了路由器的資源,因為對不好的路由信息所花費的處理能力和帶寬消耗都很少。維護路由器區域的鏈路狀態數據庫將在路由器上加入R A M負擔。類似的是,
D i j k s t r a算法不得不在每次路由改變的時候運行;這在所有的路由器上加重了C P U的負擔。
D i j k s t r a算法首先是最短的路徑,在這裏對路徑長度的迭代確定了最短的路徑生成樹
由於路由器需要做大量的路徑計算工作,一般處理器的工作能力直接決定其性能的優劣。當然這一判斷還是對中低端路由器而言,因為高端路由器往往採用分佈式處理系統體系設計。