i think both a new vnic_type and a new vif_type should be added. now vnic has three types: normal, direct, macvtap, then we need a new type of "uservhost".
as for vif_type, now we have VIF_TYPE_OVS, VIF_TYPE_QBH/QBG, VIF_HW_VEB, so we need a new VIF_TYPE_USEROVS I don't think it's a good idea to directly reuse ovs agent, for we have to consider use cases that ovs and userovs co-exists. Now it's a little painful to fork and write a new agent, but it will be easier when ML2 agent BP is merged in the future. ( https://etherpad.openstack.org/p/modular-l2-agent-outline) On Wed, Jul 9, 2014 at 11:08 PM, Czesnowicz, Przemyslaw < przemyslaw.czesnow...@intel.com> wrote: > Hi > > > > We (Intel Openstack team) would like to add support for dpdk based > userspace openvswitch using mech_openvswitch and mech_odl from ML2 plugin. > > The dpdk enabled ovs comes in two flavours one is netdev incorporated into > vanilla ovs the other is a fork of ovs with a dpdk datapath ( > https://github.com/01org/dpdk-ovs ). > > Both flavours use userspace vhost mechanism to connect the VMs to the > switch. > > > > Our initial approach was to extend ovs vif bindings in nova and add a > config parameter to specify when userspace vhost should be used. > > Spec : https://review.openstack.org/95805 > > Code: https://review.openstack.org/100256 > > > > Nova devs rejected this approach saying that Neutron should pass all > necessary information to nova to select vif bindings. > > > > Currently we are looking for a way to pass information from Neutron to > Nova that dpdk enabled ovs is being used while still being able to use > mech_openvswitch and ovs_neutron_agent or mech_odl. > > > > > We thought of two possible solutions: > > 1. Use binding_profile to provide node specific info to nova. > > Agent rpc api would be extended to allow agents to send node profile to > neutron plugin. > > That info would be stored in db and passed to nova when binding on this > specific host is requested. > > This could be used to support our use case or pass other info to nova (i.e > name of integration bridge) > > > > 2. Let mech_openvswitch and mech_odl detect what binding type to use. > > When asked for port binding mech_openvswitch and mech_odl would call the > agent or odl to check what bindings to use (VIF_TYPE_OVS or > VIF_TYPE_DPDKVHOST) > > > > So, what would be the best way to support our usecase, is it one of the > above ? > > > > Best regards > > Przemek > > -------------------------------------------------------------- > Intel Shannon Limited > Registered in Ireland > Registered Office: Collinstown Industrial Park, Leixlip, County Kildare > Registered Number: 308263 > Business address: Dromore House, East Park, Shannon, Co. Clare > > This e-mail and any attachments may contain confidential material for the > sole use of the intended recipient(s). Any review or distribution by others > is strictly prohibited. If you are not the intended recipient, please > contact the sender and delete all copies. > > > _______________________________________________ > OpenStack-dev mailing list > OpenStack-dev@lists.openstack.org > http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev > >
_______________________________________________ OpenStack-dev mailing list OpenStack-dev@lists.openstack.org http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev