我正在研究VLAN。经过几个小时的搜索,我知道802.1Q没有封装原始帧,而是在源MAC地址和原始帧的“EtherType”字段之间添加了32位字段。但我无法弄清楚原因。有人可以向我解释为什么802.1Q没有封装原始帧吗?非常感谢。
答案 0 :(得分:1)
802.1q的前身是思科的ISL。 ISL完全封装了框架。这意味着当任何设备接收到ISL帧时,它必须能够理解ISL标记,否则整个帧被认为是格式错误。
在802.1q中,帧的前12个字节(无论是否标记)始终相同。
为了准确说明标签修改的内容,这里是没有标签的帧的数据包捕获,然后是带有标记的相同帧:
橙色的括号部分全部来自原始帧。绿色的括号部分是802.1q标签添加到框架中的部分。
请注意,在这两种情况下,前12个字节是目标MAC地址和源MAC地址。
此外,在这两种情况下,帧的接下来的2个字节都是" EtherType"字段,表示封装在数据报中的下一个协议。
这意味着无论转接设备是否理解802.1q标签,该帧的处理都不会改变。这意味着802.1q标签仍将“工作”#34;通过一个......
的设备总的来说,它允许VLAN和VLAN标记的实现和标准化,而无需修补每个创建Layer 2处理的设备,以教他们如何解释"完全封装的VLAN标记策略" (像ISL)。相反,可以修补需要支持VLAN的设备以了解802.1q,并且传输中的所有其他设备可以简单地继续运行而不会有任何麻烦。
当然,现在很少遇到不了解VLAN的主机或交换机,但从最初发明VLAN和标记概念的角度考虑它。