声明:
本博客欢迎转载,但请保留原作者信息,并请注明出处:http://write.blog.youkuaiyun.com/!
作者:林凯
团队:华为杭州OpenStack团队
上一篇介绍完社区vlan aware VMs BP在北向数据模型和plugin实现之后,本篇介绍该BP在南向实现的方案。
社区在考虑该BP的南向实现的时候,基于以下几个角度考虑:
1.设计复杂度:完整的重构仅在某些情况下可取,VLAN aware VMS基于现有的OVS agent架构实现,值得注意的是,OVS agent设计已经相对复杂,因为其需要适应多个部署选项,特别是关于安全规则和或加速。
2.升级复杂度:能够改造现有的设计意味着现有部署不需要去通过叉车升级(断层式的升级方式)以推出新功能;
3.设计可重用性:所提出的设计可以容易地适配应用到各种技术后端,如Neutron L2 agent支持:打开vSwitch和Linux Bridge。
4.性能方面:如果它不能满足在分组吞吐量上高的严格要求,至少在长期上是无法满足客户的需求。
5.功能兼容性:需要考虑该特性与VLAN transparency(nfv-vlan-trunks)特性的兼容性。VLAN transparency是关于使平台不干扰从VM发送
出来的带有tag的报文,并让底层分辨这些报文发送到哪里。vlan aware vms是关于使平台用vlan tag关联到报文,以确定报文发送到哪儿。
社区在南向实现上考虑过3中方案::
1.VLAN子接口:这些接口允许在它到达br-int之前的流量分流并被隔离,发送到正确的目的地。
(1)设计复杂性:在现有的OVS设计上,相对变化较小,并且它可以与iptables和本地ovs安全规则一起工作。
(2)升级复杂性:采用此解决方案没有必要的重大升级,因此没有潜在的数据平面中断涉及。
(3)设计可重用性:VLAN接口可以很容易地使用用于Open vSwitch和Linux Bridge。 <