[neutron] Can br-ex and br-tun use the same interface?

Sean Mooney smooney at redhat.com
Tue Feb 18 11:39:25 UTC 2020

On Tue, 2020-02-18 at 19:12 +0800, Zhengyu Pan wrote:
> hi,
>     I have only two physical  interfaces. In my deploying, network node and compute node are the same. 
> Can Bridge br-tun and br-ex use the same interface when using vxlan network type ? management network use the other
> interface?
yes they can. the way this works wehn ovs encapsulates teh packet the vxlan tunnel endpoint ip is used to lookup what
interface to transmit the packet on. so to use the same interface for both tunnels and provider networks you need
to assign the tunnel endpoint ip to br-ex. ovs has a special operation at the dataplane level call out_port which is
different form output. if ovs detects that the the source ip adress of the vxlan tunnel is assocaited with a bridge,
in this case  br-ex and if that bridge is connect to the bridge with the tunnel port directly or indirectly via patch
ports i it will use the out_port action to skip sending the packet via the kernel networking stack.

so if you use use an interface that is attached to an ovs bridge it will actully imporve performance in general.
that said adding the tunnel endpoint ip to the br-tun and adding an interface to br-tun used to crash ovs. i dont know
if that was ever fixed but i would recommend not trying and just adding the tunnel enpoint ip to br-ex.

not that this is the recommended way to deploy ovs-dpdk as if you dont add the tunnel endpoint ip to br-ex all packets
that use vxlan will be sent via the kernel which will significantly reduce performance.

im not sure if this works with hardwar offloaded ovs but i would consider it a bug if it did not.

More information about the openstack-discuss mailing list