Access和Trunk端口的报文收发规则

Access端口的报文收发规则如下
Access端口在收到一个报文(Access端口通常是从终端PC中接收报文)后,先判断该报文中是否有VLAN标记信息:如果没有VLAN标记,则打上该Access端口的PVID后继续转发(毕竟Access端口收到报文后是向其他端口发送的,可以识别带有VLAN标记的报文);如果有VLAN标记(这个报文肯定是来自其他非Access端口和终端PC,因为Access端口和终端PC网卡不会发送带VLAN标记的报文),则默认直接丢弃。
Access端口上发送报文时,会先将报文中的VLAN信息去掉(因为Access端口发送报文一般是到终端PC,PC中的网卡是不能识别VLAN标记的。还有一种情况是发送到另一个同VLAN中的Access端口,因为Access端口也不接受带有VLAN标记的报文),然后再直接发送,所以Access端口发关出去的报文都是不带VLAN标记的。
Trunk端口的报文收发规则如下
在Trunk端口上发送报文时,先会将要发送报文的VLAN标记与Trunk端口的PVID进行比较,如果与PVID相等,则从报文中去掉VLAN标记再发送;如果与PVID不相等,则直接发送。这样一来,如果将交换机级连端口都设置为Trunk,并允许所有VLAN通过后,默认情况下除VLAN 1外的所有来自其他VLAN中的报文将直接发送(因为这些VLAN不是Trunk端口的默认VLAN),而作为Trunk端口默认VLAN的VLAN 1,则需要通过去掉报文中的VLAN信息后再发送。
在Trunk端口收到一个报文时,会首先判断是否有VLAN信息:如果没有VLAN标记,则打上该Trunk端口的PVID,视同该帧是来自PVID所对应的VLAN转发到PVID所对应的VLAN接口上;如果有VLAN标记,判断该Trunk端口是否允许该VLAN的报文进入,如果允许则直接转发,否则丢弃。
PVID和VID区别
PVID英文解释为Port-base VLAN ID,是基于端口的VLAN ID,一个端口可以属于多个vlan,但是只能有一个PVID,收到一个不带tag头的数据包时,会打上PVID所表示的vlan号。

VID(VLAN ID)是VLAN的标识,定义其中的端口可以接收发自这个VLAN的包,一个端口可以接收多个不同VID的包,即属于多个VLAN,即有个VID表


















本文转自lq201151CTO博客,原文链接: http://blog.51cto.com/liuqun/2044942,如需转载请自行联系原作者











你可能感兴趣的:(Access和Trunk端口的报文收发规则)