二層環路和三層環路的區別

1、環路的原因:

二層環路是由於物理拓撲出現環路,如3臺交換機三角形連接。

三層環路一般物理拓撲有環路,並且設備之間路由表形成互指。(物理拓撲不成環,2臺設備使用靜態路由互指也有可能成環,這種特殊情況除外。

2、二層設備和三層設備的工作行為區別

二層交換機工作行為:收到數據幀查看2層頭部,根據目的MAC地址轉發,目的Mac分廣播、組播、單播。

廣播:目的Mac為全F,收到廣播報文,除了接收的端口外,向其餘所有端口轉發(泛洪)

組播:目的Mac的第8位位1,收到組播報文,首先判斷目的Mac是否本機要接受,如收到STP的BPDU,而自身也運行STP,此報文上送協議處理,不做轉發,如果交換機自身沒有運行STP,華為的設備也可以識別STP的數據幀,也不做轉發。假如此報文自身不需要接受,則處理方式為泛洪。如果運行了IGMP snooping則根據snooping表項轉發。

單播:目的Mac的第8位為0.收到單播報文,如果目的Mac在自身MAC地址表中不存在,則稱為未知單播,處理方式為泛洪。假如目的Mac在自身MAC地址表中存在,則稱為已知單播,把報文向Mac表中的接口轉發(如果該接口等於報文的接收端口,則報文丟棄),所以單播報文的處理方式中有三種行為為:轉發、泛洪、丟棄。

三層設備工作行為:收到數據包查看三層目的ip,根據IP地址轉發,分為廣播、組播、單播。此處應該強調二層中的type字段,由type字段決定是交給哪個協議處理,列舉常見的type字段:

廣播:目的ip為全1.收到廣播包,路由器會交給相應的協議去處理,比如DHCP、RIP、ARP等都是廣播的(注意不是丟棄報文),三層設備是隔離廣播域,不是丟棄廣播報文。

組播:目的IP為224.0.0.0~239.0.0.0。開啟相關協議則轉發,否則查看本路由器是否加入該組,如果加入了就接收,沒有加入就丟棄。如224.0.0.5

單播:目的IP在路由表中存在則按出端口轉發,目的IP在路由表中不存在則丟棄,如果目標ip是自己的地址,則讀取協議號上送協議處理。

3、環路影響

二層環路:廣播風暴和數據幀複製,MAC地址震盪;假設交換機收到廣播幀或者組播幀或則未知單播幀,會採用泛洪形式處理,數據幀在轉發時候產生了拷貝複製,數據幀無休止被轉發,如此往復,最終導致整個網絡帶寬資源被消耗盡,設備負載過大,網絡癱瘓不可用。(此現象極易發生)

三層環路:數據報會在設備之間有限的互相轉發,因為在三層ip頭部存在TTL字段,所以報文不會無休止轉發。

4、防環機制

二層防環:STP,SMART-LINK等技術,或使用LACP鏈路捆綁和設備堆疊等技術,使得物理拓撲上沒有環路。

三層防環:只要依靠路由協議自身的防環機制。

5、總結

二層環路較易產生,需要運行破環機制經過計算阻塞某些端口實現預防,且由於二層設備的處理行為導致了後果特別嚴重。

三層環路不容易產生,由於三層設備的處理行為及TTL機制,所以後果並不是十分嚴重。且每種路由協議都有比較完善的防環機制,三層環路比較容易發生在特殊的場景下,如雙點雙向路由發佈。


分享到:


相關文章: