On Sun, Aug 21, 2016 at 04:31:17PM +0200, Levente Csikor wrote: > Hi all, > we've been experiencing with OVS and its patch ports, and we set up a > the following case: > > One OVS bridge instance (created via add-br) is connected to two > physical interfaces (our two-port Intel X710 NIC), and with an arbitrary > number of patch ports (we used 12,24,36,48, etc.) this OVS bridge > instance is connected to another bridge instance (created via add-br as > well). > For a simple setup, we installed the following rules into the flow tables: > The first OVS (having the physical ports) is receiving traffic from one > of the NIC ports (0), and forwards them to one of the patch ports > (differentiated via VLAN tags). The second OVS bridge instance > immediately loops the packets back on the same patch port where it > received them. Finally, the first OVS bridge instance put these > loop-backed traffic to the other NIC port (1) (see below - hopefully, > ASCII art did not fall into pieces). > > +----------+ +---------+ > 0 | OVS 1 |<---->|0 OVS 2 | > --->| |<---->|1 | > 1 | | .... | | > <---| |<---->|12 | > +----------+ +---------+ > > In this case, where the patch ports are basically "full-duplex" ones, > i.e., OVS 1 sends traffic on each of them, while OVS 2 also passes back > the packets on each of them, we deterministically experienced approx. > 10% packet drop (number of patch ports has no impact on this). > > However, if we doubled the number of patch ports, and set up OVS 2 to > loop-back the packets on the next patch ports instead, i.e., patch ports > were considered as "simplex" (see below), then the packet loss was not > observed. > > > +----------+ +---------+ > 0 | OVS 1 |----->|0 OVS 2 | > --->| |<-----|1 | > 1 | | .... | | > <---| |----->|23 | > | |<-----|24 | > +----------+ +---------+ > > We used the openvswitch kernel module, and DPDK, and the observation > applies to both cases, while we also 'played' with the sending rate as > well to avoid 'overloading'. > > > Could someone help us to understand this phenomenon?
It doesn't make sense to me. Patch ports are implemented as just function calls. I think you'll have to look it into closer yourselves. _______________________________________________ discuss mailing list discuss@openvswitch.org http://openvswitch.org/mailman/listinfo/discuss