openstack如何支持vlan trunk功能

      大多數場景下,主機收發的是不帶tag的報文,但是在實際環境中,無論是windows還是Linux環境都通過各自的方法可以收發帶有vlan tag的報文。 而一個虛機要想接收不同vlan tag的報文,則需要在虛機上接入不同網絡,就意味着在虛機上多一個虛擬網卡,這樣如果很多vlan就會有很多接口,管理起來很不方便。尤其在NFV場景中,虛機充當了一個虛擬網絡設備,因此接收多個vlan tag的報文就是硬性需求。因此openstack創建的虛機中,能接收帶有vlan tag的報文這個需求就更加迫切了。

      爲了解決這個問題,openStack 先後出了兩個方案,一個方案是Neutron VLAN Transparency,另一個方案是VLAN aware VMs。

     (一) Neutron VLAN Transparency

       在openstack kilo版本特性,VLAN trunking networks for NFV。該功能是802.1ad協議,而當時openvswitch是不支持802.1ad的,所以當時這個功能發佈的主要針對一個SDN網絡組建。該功能不需要修改配置,只需要在創建network的時候,增加一個參數vlan-transparent=True即可,driver支持就支持,不支持返回來“Backend does not support VLAN Transparency.”。

         按是實際上openvswitch在2.8版本(2017年)後,已經支持了802.1ad,詳見https://github.com/openvswitch/ovs/commit/f0fb825a3785320430686834741c718ff4f8ebf4

        因此從這種意義來說,老openstack版本這個功能在升級openvswitch版本後,是否就可以很好的支持,需要驗證;

    (二)VLAN aware VMs

     OpenStack Newton版本的特性,由VLAN aware VMs定義。標準的802.1Q協議。這個openvswitch早就支持(有多早呢?在ovs 1.3 就開始支持trunk accss等特性)

     需要修改neutron.conf配置,service_plugins=,,,trunk 增加trunk。然後在創建好的network上增加相應的屬性。

 

   

參考文檔:

 https://www.sdnlab.com/19761.html

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章