vid(vlan id)是vlan的標識,在交換機裡面用來劃分埠。比如乙個交換機有8個埠,現在將port1,port2,port5三個埠的vid設定成1111,那麼這三個埠就能接收vlantag=1111的資料報。
擁有和資料幀tag標記一致的vid的物理埠,不論是否在這個vid上是untagged port或者tagged port,都可以接受來自交換機內部的標記了這個tag標記的tagged 資料幀。
擁有和資料幀tag標記一致的vid的物理埠,只有在這個vid上是tagged port,才可以接受來自交換機外部的標記了這個tag標記的tagged 資料幀。(注:這句話**於網上,和我的測試結果不一樣,我在rtl8304/rtl8363上面測試的結果是,untag port可以原樣接收帶有vlantag的資料幀)。
pvid英文解釋為port-base vlan id,是基於埠的vlan id,乙個埠可以屬於多個vlan,但是只能有乙個pvid,收到乙個不帶tag頭的資料報時,會打上pvid所表示的vlan號,視同該vlan的資料報處理。
乙個物理埠只能擁有乙個pvid,當乙個物理埠擁有了乙個pvid的時候,必定會擁有和pvid相等的vid,而且在這個vid上,這個物理埠必定是untagged port。
pvid的作用只是在交換機從外部接受到可以接受untagged 資料幀的時候給資料幀新增tag標記用的,在交換機內部**資料的時候pvid不起任何作用。
所謂的untagged port和tagged port不是講述物理埠的狀態,而是將是物理埠所擁有的某乙個vid的狀態,所以乙個物理埠可以在某乙個vid上是untagged port,在另乙個vid上是tagged port。
untag port和tag port是針對vid來說的,和pvid沒有什麼關係。比如有乙個交換機的埠設定成untag port,但是從這個埠進入交換機的網路包如果沒有vlan tag的話,就會被打上該埠的pvid,不要以為它是untag port就不會被打上vlan tag。
下圖是定義的各種埠型別對各種資料幀的處理方法(此圖**於網路)。紅色部分是我在rtl8363/rtl8304上測試後所做的修改。
rtl8304的結構框圖如下圖所示。mac0、mac1、mac2、mac3分別對應port1,port2,port3,port4。將port4和cpu相連,port1做成外部埠,然後將port4和port1劃為乙個vlan,並且該vlanid在port4和port1上都設定成untag port,這時候將port1和電腦相連,交換機上可以ping通電腦。因此反駁上圖中,untag埠丟棄tag資料幀的結論。
至於untag埠發出untag資料幀應該是不可能的,因為交換機內不存在untag資料幀。
PVID和VID的理解
vid vlan id 是vlan的標識,在交換機裡面用來劃分埠。比如乙個交換機有8個埠,現在將port1,port2,port5三個埠的vid設定成1111,那麼這三個埠就能接收vlantag 1111的資料報。擁有和資料幀tag標記一致的vid的物理埠,不論是否在這個vid上是untagged ...
PVID和VID徹底研究
pvid和vid徹底研究 上 pvid的作用及和vid的區別 pvid和vid經常出現於 二 三層交換機裡,由於pvid和vid的設定不合理,造成vlan劃分變得混亂。本文就對pvid和vid進行了徹底研究。pvid是交換機上的概念,說的是進入該埠的報文如果沒有打vlan id就按pvid的值打上,...
PVID和VID徹底研究
pvid和vid經常出現於 二 三層交換機裡,由於pvid和vid的設定不合理,造成vlan劃分變得混亂。本文就對pvid和vid進行了徹底研究。pvid是交換機上的概念,說的是進入該埠的報文如果沒有打vlan id就按pvid的值打上,vid是報文上的vlan tag的意思.不是同個概念哦.首先解...