br-ex网桥,作用时连接外部物理网络,桥里包含两个端口:
1、物理端口(如eth0),连接着外部物理网络;
2、phy-br-ex(另一端是int-br-ex),连接着br-int网桥;
br-ex默认使用的流表有4个,分别为table0~table3,各流表之间的关系如图(图中的数字代表优先级,先匹配优先级高的条目):
下面对各个表进行解析:
1、table0(LOCAL_SWITCHING)
对进入网桥的数据包做分类,其中从br-int网桥转过来的包,如非分布式router,且已带ext网络局部vlan的,则剥离vlan走二层转发,否则送入table1处理。
从其他端口来的包,则进入table3处理。
2、table1(DVR_PROCESS_VLAN)
该表没有其他处理工作,直接送入table2处理。
3、table2(LOCAL_VLAN_TRANSLATION)
该表完成从br-int网桥转过来的包vlan的转换。如果是分布式router,且已带ext网络局部vlan的,则剥离vlan走二层转发,否则直接丢弃。
4、table3(DVR_NOT_LEARN_VLAN)
如果从其他节点的分布式router发来的数据,则转到br-int处理,否则走二层转发
实际在用的数据包路径如下图所示:
1、从br-int转发来的包,经过table0 priority4,剥离ext内部vlan后,从物理端口转发出去
2、从物理端口进来的包,经过table0 priority1、table3 priority1,转发到br-int里
的