這三種類型的報文,交換機會進行泛洪:廣播、組播、未知單播

隨著互聯網的發展,各種應用層出不窮,日新月異,對網絡設備的要求也越來越高,對廣大設備廠商也提出更多的要求。不過這些事情都與二層交換機沒有關係:) ,因為

各種應用的數據到達二層交換機時,都只會變成一個一個數據包(幀),交換機基本不會去識別其屬於哪種類型的應用。

對於二層交換機來說,它在轉發報文時,只有四種類型的報文:廣播、組播、未知單播、已知單播。雖然看起來比較簡單,但是根據我多年的經驗,能理解這四種報文轉發機制的小夥伴不多,大多數人一直都很迷糊,但是還成功的活了這麼多年:)。我們今天就來先看一下這四種報文中的三種:廣播、組播、未知單播,下一篇文章會單獨的介紹已知單播。

交換機對廣播、組播、未知單播 三種報文處理方式相同

俗話說“物以類聚,人以群分”,估計有小夥伴會有疑問了,廣播、組播、未知單播這三種類型的報文看起來差別挺大的,沒有什麼聯繫,為什麼要放在一起講呢?

這個世界總是屁股決定腦袋,每個人都有自己的立場,這幾個報文對我們來說不一樣,但是對於二層交換機來說,處理這三種報文的方式是一樣的:將它們進行泛洪,所以會把它們放在一起講述。

不過在講解泛洪之前,我們先來認識一下什麼是二層廣播、組播和未知單播報文。

二層廣播報文

當二層交換機收到一個報文時,會取出報文的目的MAC地址,如果MAC地址為全FF,則這個報文就是二層廣播報文,例如下面的wireshark抓包截圖:

這三種類型的報文,交換機會進行泛洪:廣播、組播、未知單播

二層廣播報文

二層組播報文

如果二層交換機收到的報文的MAC地址是以 000:01:5E開頭的報文,則這個報文就是二層組播報文,例如下面的wireshark抓包:

這三種類型的報文,交換機會進行泛洪:廣播、組播、未知單播

二層組播報文

未知單播報文

那未知單播報文是什麼呢?首先它是一個單播報文,那啥是單播報文呢?簡單說除了廣播和組播以外的報文,就是單播報文了,即目的MAC地址既不是全F,也不是01:00:5E開頭的報文。例如下面的wireshark抓包的內容,就是單播報文了:

這三種類型的報文,交換機會進行泛洪:廣播、組播、未知單播

二層單播報文

那什麼是未知單播報文呢?是指哪些在交換機MAC地址表中,沒有表項的單播報文,例如下圖:

這三種類型的報文,交換機會進行泛洪:廣播、組播、未知單播

MAC地址表

當交換機收到目的MAC地址為0000:2222:2222報文時,會查找MAC地址表,發現沒有表項存在,就認為這個報文是未知單播報文。

相反的,當交換機收到目的MAC地址為0000:1111:1111報文時,能查找到表項,就認為這個報文是已知單播報文。

二層交換機對這三種報文全部泛洪處理

上面我們已經掌握交換機如何判別一個報文屬於哪種類型,並且說了二層交換機對廣播、組播、未知單播的處理方式相同,那到底怎麼處理它們呢?網絡界有一個專有名詞,叫做泛洪,就是為它們專門定製的!

泛洪,英文單詞是flooding,表示像洪水一樣,會佔滿所有的空隙,不留任何空間。在交換機裡,也是一樣的,當一個端口收到上面所說的任何一種報文以後,就會從所有在同一個VLAN裡、UP的端口轉發出去,例如下圖:

這三種類型的報文,交換機會進行泛洪:廣播、組播、未知單播

報文泛洪

當交換機端口P1收到廣播、組播、未知單播中的任何一種,會在交換機內部複製4份,然後從P2-P5這4個端口都轉發出去。就像洪水佔滿所有空隙一樣,交換機也會把報文從所有的端口發送出去!

總結

經過上面的解釋,各位小夥應該對二層交換機處理報文的機制有一定了解了吧,我在來做一個簡單的總結:

  1. 在二層交換機的世界裡,報文只分為4類:廣播、組播、未知單播、已知單播;
  2. 二層廣播報文是指目的MAC為全F的報文,即FF:FF:FF:FF:FF:FF;
  3. 二層組播報文指的目的MAC以01-00-5E開頭的報文;
  4. 二層未知單播指的是在MAC不是廣播和組播,在交換機中無表項的單播報文;
  5. 交換機對廣播、組播、未知單播的處理方式相同:泛洪處理;

最後給大家推薦一個OSPF專欄,預計100節,針對OSPF的每個知識點都進行詳細的解釋,歡迎選購!


分享到:


相關文章: