交換機收到幀後的處理方式?

交換機收到一個幀帶的標籤是vlan5,目的mac假設是macA,交換機的mac地址表有一條macA-介面1-vlan10,那麼這個幀交換機怎麼處理?會把它當做未知單播幀泛洪嗎?介面1收到後會怎麼處理這個泛洪幀?是vlan標籤不匹配丟棄還是發送出去?謝謝


首先交換機會依據幀頭802.1Q里的 VLAN ID = 5 ,在 VLAN 5 MAC Address Table 里進行查找MAC5,由於沒有查找到匹配(match / hit)的表相,交換機會在VLAN 5 里進行泛洪(flooding,除了接收的埠,會在屬於vlan 5的所有埠複製一份數據並發送出去),既然你提到的介面1在VLAN 10 里,自然不會接收到vlan 5 的泛洪幀,也不會有你接下來的假設。

------------------------------------------------

回復@Wusz評論:應該看啥交換機了,萬一三層的呢

如果接收幀的埠為三層介面,接收到802.1Q=5,所以應該使用了子介面如 interface.5,去掉802.1Q,

if Destination IP == local IP

yes,提交給本地特定上層程序。

no, 查詢路由表做轉發。

如果接收幀的埠為二層埠,但有對應的三層SVI介面,

If destination MAC == local MAC

yes

需要提交給SVI介面進一步處理

then if destination IP == local IP

Yes, 提交給本地特定上層程序

No, 查詢路由表做轉發

No

查詢vlan 5 MAC address table for MAC5

If match/ hit

轉發到對應的埠

Else

Flooding 到屬於vlan 5 的所有埠(收埠除外)


車總回答的很完善了……沒有我裝逼的機會了……

由此可見題主對於VLAN分割廣播域理解的不清楚,我們都知道VLAN會分割廣播域,不同的廣播域之間需要依靠IP進行L3轉發,因此題主所說的這種情況,即便是未知單播泛洪也只是在同一個VLAN中,絕對不會跨VLAN泛洪滴……

除非MACA和源在一個VLAN中,能夠響應泛洪的數據幀,從而讓交換機得以在該VLAN中記錄該MAC/Port的對應關係,否則,就不通啦~

或者也可以開ARP代理,但那是另一回事啦~


這種東西自己參照交換機處理數據幀的規則比對一下就明白了,並且百度也能知道結果。你可以在自己得出結論後怕有理解上的錯誤來知乎提問並附上你的思考結果,但不要不加思考的就來提問。

首先交換機工作的原理(IVL模式):

1.基於源MAC地址學習(VLAN-MAC-PORT)

2.基於目的MAC地址轉發(VLAN-MAC-PORT)

3.轉發數據時,根據VLAN ID查找轉發表,在表中查找出與DMAC匹配的表項並轉發至相應埠。如果沒有匹配到DMAC,則在該VLAN下所有埠泛洪

再來看一下交換機收到數據幀時的處理方式:

1.當從access介面收到數據幀時

(1)如果沒有標籤,打上埠的PVID並進行轉發

(2)如果有標籤且標籤和PVID一致,轉發數據

(3)如果有標籤但標籤和PVID不同,丟棄

2.當從trunk介面收到數據幀時

(1)如果沒有標籤,打上埠PVID,轉發(cisco默認是本徵vlan,即vlan1)

(2)如果有標籤但不允許該vlan數據幀進入,丟棄

(3)如果有標籤且標籤和PVID一致,去掉標籤,轉發

(4)如果有標籤且標籤和PVID不同,直接轉發

在這一步首先根據條件

交換機收到一個幀帶的標籤是vlan5

來進行分析,如果符合1(3)好2(2)那麼會直接丟棄;如果符合1(2)和2(4)進行轉發

目的mac假設是macA,交換機的mac地址表有一條macA-介面1-vlan10

根據交換機的工作原理,首先查找VLAN 5的對應的轉發表,沒有匹配到DMAC:macA,因此在VLAN 5的所有埠下進行泛洪。最終介面1並沒有收到該數據幀。

結論:

從PVID為vlan5的access介面收到該數據幀,但是由於DMAC無法匹配,在VLAN 5所有埠下泛洪該數據幀。

從PVID不為vlan5的access介面收到該數據幀,直接丟棄。

從trunk介面收到該數據幀,如果trunk介面不允許vlan5通過,丟棄。

從trunk介面收到該數據幀,trunk介面允許通過,根據VLAN ID查找轉發表,如果存在VLAN 5的轉發表繼續匹配DMAC地址,如果沒有VLAN 5的轉發表,丟棄。

其實這種問題驗證的最佳方式就是通過做實驗來看現象。


1.肯定不會發送到VLAN10裡面去的

2.不會泛洪,MAC條目找到了

3.VLAN信息不匹配丟棄

個人意見,總之認為是丟棄

如果你這麼執著於知道這個,看來還是個學生,可以用思科的PT模擬軟體,做實驗測試下,它有兩個模式,一個是實時模式,一個是時間節點模式,在時間節點模式可以觀察交換機包的處理過程。


好好看看書啊,這個是很基礎的內容了。

交換機沒這個VLAN的話會丟棄掉的。


推薦閱讀:

我該怎麼選擇?網路工程師、Linux運維工程師、虛擬化工程師
想入行做網路工程師,求好心人解惑?
為什麼招一個靠譜的網路工程師這麼難?
交換容量大於 埠數x速度x2 有什麼意義,怎麼算交換機帶機量?
關於網路拓撲圖搭建的書或者學習資料?

TAG:計算機網路 | 網路工程 | 網路工程師 |