Solved Performance of networking using NetDev vs native kernel module?

I am standing up a private server for virtualization and storage. I had originally wanted to use Linux but I really want ZFS so I decided to go with FreeBSD. One thing that I really wanted to install was Open vSwitch since it allows me to use some advanced features related to VLANs and QoS. However, I have read that the FreeBSD kernel lacks any kind of native kernel module for OVS and must rely on the NetDev dataplane. In the same places around the Internet I had seen that performance suffers when using NetDev vs a native kernel module.

At first this seemed like a deal breaker, then I realized I have no frame of reference for what is considered degraded performance. So was making a judgement without knowing all the facts. Could someone give me an idea of how bad OVS would run on FreeBSD using NetDev vs Linux (if possible) where it has a native kernel module? My suspicion is its either not going to be the best option and I should use something else or it will be better than I think and will work fine for my needs.
 
ZFS is supported by some linux distributions, namely ubuntu, so why not use that? Problem solved.

VLANs and QoS are easily implemented in ifconfig and ipfw etc etc. As to what exotic stuff you want to do, who knows unless you elucidate but I assume it cannot be done with available base tools or your lack of knowledge of FreeBSD means attempting to convert linux-isms?
 
I answered my own question by doing additional research, just had the find the right stuff. Turns out running OVS in netdev forces it to run in userspace only. This has significant performance issues and from what I read should only be used when you have something like DPDK running as the dataplane backing OVS.
 
Back
Top