Access、Hybrid和Trunk三种模式的理解 .

Untag 就是普通的 ethernet 报文,普通 PC 机的网卡是可以识别这样的报文进行通讯。 Tag 报文结构的变化是在源 mac 地址和目的 mac 地址之后,加上了 4bytes vlan 信息,也就是 vlan tag 头,一般来说这样的报文普通 PC 机的网卡是不能识别的。

802.1Q 的帧是在标准以太网帧上插入了 4 个字节的标识,其中包含:

1)        2 个字节的协议标示符( TPID ),当前置 0X8100 的固定值,表明该帧带有 802.1Q 的标记信息。

2)        2 个字节的标记控制信息( TCI ),包含了三个域:

l         priority 域,占 3bits ,表示报文的优先级,取值 0 7 7 为最高优先级, 0 为最低优先级,该域被 802.1Q 采用;

l         规范格式指示符域( CFI ),占 1bits 0 表示规范格式,应用于以太网, 1 表示非规范格式,应用于 Token Ring

l         VLAN ID 域,占 12bits ,用于标识 VLAN 的归属。

   

以太网端口的三种链路类型: access, trunk, hybrid

Access 类型的端口只能属于 1 VLAN ,一般用于连接计算机的端口;

Trunk 类型的端口可以允许多个 VLAN 通过,可以接收和发送多个 VLAN 的报文,一般用于交换机之间连接的端口;

Hybrid 类型的端口可以允许多个 VLAN 通过,可以接收的发送多个 VLAN 的报文,可以用于交换机之间连接,也可以用于连接用户的计算机。

Hybrid 端口可以允许多个 VLAN 的数据不带 tag ,而 802.1Q trunk 只能是 native vlan (即 pvid )对应的 vlan 的数据不带 tag ,应该说 hybrid 可以实现 trunk 端口的特性。实际使用时都可以用 hybrid 端口,而不用 trunk

Hybrid 端口和 Trunk 端口在接收数据时,处理方法是一样的,唯一的不同之处在于发送数据时, hybrid 端口可以允许多个 VLAN 的报文发送时不打标签,而 trunk 端口只允许缺省 VLAN 的报文发送时不打标签。

 

交换机接口出入数据处理过程:

接收:

1.         Access 端口

1)        收到一个二层帧

2)        判断是否有 VLAN 标签,没有转到第 3 步,有则转到第 4

3)        打上端口的 PVID ,并进行交换转发

4)        VLAN 标签和 PVID 一致,转发 VLAN 帧,否则直接丢弃

2.         Trunk 端口

1)        收到一个二层帧

2)        判断是否有 VLAN 标签,没有转到第 3 步,有则转到第 4

3)        打上端口的 PVID ,并进行交换转发

4)        判断该 trunk 端口是否允许该 VLAN 帧进入,允许则转发,否则直接丢弃

注意: trunk 口允许或不允许 VLAN 帧,是对进入的帧而言的,对出去的帧没有限制

3.         hybrid 端口

1)        收到一个二层帧

2)        判断是否有 VLAN 标签,没有转到第 3 步,有则转到第 4

3)        打上端口的 PVID ,并进行交换转发

4)        判断该 hybrid 端口是否允许该 VLAN 帧进入,允许则转发,否则直接丢弃。

可以看到, trunk hybrid 口对接收到得数据帧的处理规则是一样的。

发送:

1.         Access 端口

将报文的 VLAN 信息剥离,直接发送出去

2.         Trunk 端口

比较端口的 PVID 和将要发送报文的 VLAN 信息,如果两者相等则剥离 VLAN 信息,再发送;如果不相等则直接发送

3.         Hybrid 端口

判断该 VLAN 在本端口的属性( disp interface 即可看到该端口对哪些 VLAN untag ,哪些 VLAN tag ),如果是 untag 则剥离 VLAN 信息,再发送;如果是 tag 则直接发送。

你可能感兴趣的:(token,网卡,优先级,以太网,标示)