2016年9月20日 星期二

L2,L3 ,switch , router & routing table

Layer2:

1. Layer2 用OSI 第二層 MAC address 來交換資訊

2.  當Switch收到一個封包並要轉送時,會先去檢查封包中MAC位址是什麼,並且根據這個位址去查詢CAM表,這個表裡面有MAC位址及出口埠的對應。(CAM: Content Addressable Memory, 用來動態紀錄MAC地址。)

這個CAM表是經由學習得來的。怎麼學習呢?當Switch收到一個封包時,便會去查詢CAM表,如果沒有找到相關的資訊,為了找到這個封包目標MAC位址的出口埠時,Switch會以廣播的方式,將封包往全部的埠都丟出去,當擁有該目標MAC位址的Switch收到這個封包時,會回傳訊息給原來的Switch,而原來的Switch就會以收到這個訊息的埠,當成該目的MAC位址的出口埠,於是CAM表就學到了這筆記錄。 學習起來後,那麼下次就不用廣播而直接傳送。

而這筆記錄,在Switch重新開機、斷電或是一段時間內沒有收到該目的MAC位址的封包時,記錄就會被清掉,等到下次再收到同樣的封包時,由於沒有紀錄,就會再次廣播以重新習得該筆記錄。

廣播封包是很占頻寬的,為了防止這種情形發生,必須要有一種協調的機制,那個東西就是STP(Spanning-Tree Protocol),它會協調同一個區域網路中所有的Switch,並以Root Switch為起點,建立起一個樹狀結構的路徑,而樹狀結構的終點就是一個結束點,這個終點會Block起來,簡單來說,就是門被關起來不准通過。如此,當廣播封包到達這個點時就會直接停止,於是廣播風暴得以避免,而這個終點就是某臺Switch與其他Switch連接的埠。

3. 廣播風暴只會發生在一同個LAN裡面發生

4. 而Router及Switch的功能是不一樣,Router主司路由,也就是該封包要怎麼被轉送到另一個子網路,而Switch是用於區域網路的交換,在區域網路裡,設備之間是用MAC去溝通而不是IP,另外,Switch的交換速度是很快的,路由器是相對較慢的。


Layer3:

如果再把路由表的功能加入 L2 Switch,那麼它就會變成 L3 Switch,可以為 VLAN 建立適當的路由表,讓效能更加提昇。L3 的交換器又稱為 IP Switch 或 Switch Router,透過專屬的 ASIC 晶片來解析第三層表頭(如 IP Header)以達到傳送目的,因此通常可以提高到每秒百萬封包的效能以及數十個高速乙太網路連接埠之容量。L3 Switch 的路由表可以對 VLAN 做更有效的管制,讓廣播封包不會無限制的傳送。