博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Bridge的VLAN接口模式
阅读量:6833 次
发布时间:2019-06-26

本文共 2162 字,大约阅读时间需要 7 分钟。

一个Bridge可以抽象为两部分:交换模块(基于VLAN ID做报文交换)和接口,如下图所示:

 

在此介绍接口在报文的进与出时,Bridge接口关于VLAN ID的处理方式。

处理方式有三种模式:Access、Trunk、Hybrid。这三种模式都是报文在进入或者离开接口时,针对报文的VLAN ID的处理策略。
一 名词介绍
Tag报文:指的是报文中有VLAN ID,简称Tag。
Untag:指的是报文中没有VLAN ID,简称Untag。
VID:就是VLAN ID。
PVID:基于VID的端口,PVID与报文无关,是Bridge端口的一种属性,简单的说,就是端口的默认VLAN ID。
Default VID:端口默认VLAN ID,也可以称为PVID。Bridge端口默认VLAN ID,默认取值为“1”,当然,也可以修改为其他默认值。
VLAN Native:这个是Cisco创造的名词。就是默认VID,即PVID。
二 Bridge的三种接口模式:Access、Trunk、Hybrid
1 Access接口模式
报文进入和离开Bridge的Access模式接口如下图:

 

1.1 报文入接口原则

针对Tag报文:直接丢弃。
针对Untag报文:打上Default VID Tag,送入交换模块。
1.2 报文出接口原则
从交换模块转发到端口带有Tag标签的报文(肯定带有Tag标签,而且这VID等于Default VID),先去除Tag,再从接口出去。
2 Trunk接口模式
报文进入和离开Bridge的Trunk模式接口的情况如下图:

 

Trunk模式,首先要配置允许进入接口的VLAN ID列表,比如配置为:10,11,30~50,表示允许这些VLAN ID可以进入端口,其他则不允许进入。

2.1 报文入接口原则
针对Tag报文,VLAN ID不在Trunk允许范围内:直接丢弃(哪怕这个报文的VID等于这个端口的Default VID)。
针对Tag报文,VLAN ID在Trunk允许范围内:送入进入交换模块,并且VLAN ID保持不变。
针对Untag报文:打上Default VID Tag,送入交换模块。
2.2 报文出接口原则
从交换模块转发到端口的带有Tag标签的报文,如果VLAN ID等于Default VID,先去除Tag,再从接口出去。
从交换模块转发到端口的带有Tag标签的报文,如果VLAN ID不等于Default VID,则不去除Tag,VLAN ID保持不变,再从接口出去。
3 Hybrid接口模式
Hybrid模式,在Trunk模式的基础上又多了一部分内容。Trunk模式,在报文出接口时,如果VLAN ID等于default VID,那么VLAN Tag会去除。而Hybird模式,允许配置哪些VLAN ID的报文,在出接口时,需要去除VLAN Tag,比如配置在VLAN ID在40~50这个范围内容的报文,但其出接口,VLAN Tag要去除。如下图所示:

 

3.1 报文入接口原则(与Trunk模式相同)。

针对Tag报文,VLAN ID不在Trunk允许范围内:直接丢弃(哪怕这个报文的VID等于这个端口的Default VID)。
针对Tag报文,VLAN ID在Trunk允许范围内:送入进入交换模块,并且VLAN ID保持不变。
针对Untag报文:打上Default VID Tag,送入交换模块。
3.2 报文出接口原则
从交换模块转发到端口的带有Tag标签的报文,如果VLAN ID等于Default VID,先去除Tag,再从接口出去。
从交换模块转发到端口的带有Tag标签的报文,如果VLAN ID在去除VID范围内,先去除Tag,再从接口出去。
从交换模块转发到端口的带有Tag标签的报文,如果VLAN ID不在去除标签VID范围内,也不等于Default VID,则不去除Tag,VLAN ID保持不变,再从接口出去。
三 VLAN接口模式的应用举例
Access接口模式的典型场景是:Bridge对接Host或者VM。Trunk或Hybrid接口模式的典型使用场景是:Bridge之间的对接(级联)。Hybrid模式比Trunk模式更加灵活。两种典型场景,如下图:

 

Neutron计算节点中的几个Bridge,它们的VLAN接口模式与这种典型使用场景也非常吻合,如下图:

图中VM发出的报文是untag报文。qbr实际起到的是安全作用,并不是真正承担Bridge作用,而且与VM是1:1,它的接口VLAN模式是Access。

抛开安全不谈,我们可以把qbr当做一根线。这个时候我们看到:br-int下接VM,上接br-ethx。所以,br-int与qbr/VM对接的接口,其接口VLAN模式是Access,而br-int与br-ethx,属于Bridge之间互连(级联),所以它们之间的接口都是Trunk模式。
两个计算节点之间的br-ethx互连也是属于Bridge之间的互联(级联),所以它们之间的接口也是属于trunk模式。

转载于:https://www.cnblogs.com/fire909090/p/10613245.html

你可能感兴趣的文章
MySQL load data infile
查看>>
TCommThread -- 在delphi线程中实现消息循环
查看>>
Windows内核之线程的调度,优先级,亲缘性
查看>>
按键控制电机显示速度
查看>>
分享工作中遇到的问题积累经验 事务日志太大导致insert不进数据
查看>>
怎样删除windows.old文件
查看>>
微软职位内部推荐-Senior Software Engineer
查看>>
线程同步中使用信号量AutoResetEvent
查看>>
软件架构学习小结
查看>>
hessian学习
查看>>
Lua 之 userdata
查看>>
致青春:不虚度,是对青春最好的交代
查看>>
sersync2 实时同步配置
查看>>
mysql 的存储过程调试软件
查看>>
Apache Solr配置
查看>>
getDimension()、getDimensionPixelOffset()和getDimensionPixelSize()区别详解
查看>>
退出Activity(转)
查看>>
前端开发者喜欢的20个学习文档和指南
查看>>
“超级课程表”余佳文:初生牛犊不怕虎
查看>>
php 不依赖数据实现删除图片,核心代码
查看>>