[ovs-discuss] Openvswitch performance problem

Ben Pfaff blp at nicira.com
Tue May 31 16:01:54 UTC 2011

On Sat, May 28, 2011 at 06:50:25PM +0200, Jose Luis Franco Arza wrote:
> I have been doing a small research about how many flows per second could
> handle the NOX controller and the surprise was that the bottleneck was in
> the OpenVSwitch.
> When trying to install 20000 flows (modifying the UDP port number per packet
> sent) after reaching the rate of 2000 packets per second then the
> ovs-openflowd wasn't able to handel all the income packets and it started to
> appear packet lost.

Are you using the kernel or userspace version of the switch?  If you
are using the userspace version, perhaps it would behave this poorly.
The userspace version is just for quick-and-dirty ports and simple
testing.  It is not a production switch.  I have not tested its

The kernel version of the switch should perform much better than
this.  If I recall correctly, my own test results from last year
were closer to 200,000 unique flow setups per second.  If you are
using the kernel version of the switch and only get 2,000 per second,
then something is seriously wrong.

What is in your OpenFlow flow table?  How many flows, and what
wildcards do they have?

> So, I decided to try withot the existance of the NOX controller installing a
> unique flow that would forward every packet in through the output port using
> the wildcards. And the results said that the openvswitch is not able to
> handle more than 2000 flows/sec.

That doesn't make sense.

P.S. You aren't running both ovs-openflowd and ovs-vswitchd, are you?
Sometimes people make that mistake.

More information about the discuss mailing list