Closed JackKuo-tw closed 3 years ago
A possible explanation is that your script above doesn't show you actually binding the NIC to the DPDK userspace driver. You can do that with our setup_environment.sh
script (or with the DPDK scripts it calls).
If that doesn't resolve the issue, then it sounds like these are DPDK issues, not OpenNetVM specific. I suggest you contact the DPDK Users mailing list to see if they have suggestions. We have not attempted to run DPDK/ONVM inside virtual box, so I suspect the underlying issue is problems with the NIC support.
@twood02 Thanks, I'll try to contact them.
setup_environment.sh
shows that my NIC has already bound to igb_uio, and that should be the DPDK driver.
Actually, Intel 82545EM can pass helloworld, just take a very very long time.
In my test, use time
command:
also, it can run /onvm/go.sh
after a very long time wait.
But if I use QEMU + KVM, everything is fine and can pass all the tests in installation and so fast.
Here is my command:
sudo qemu-system-x86_64 -smp 6 -hda ubuntu20.04.qcow2 -m 4g -vga virtio -accel kvm -nic tap,model=e1000 -nic tap,model=e1000 -cpu Skylake-Server
The virtio
doesn't support RSS, so it fails /onvm/go.sh
on QEMU, too.
It would not be too difficult to disable RSS in ONVM. We can add this as a feature if it would be helpful. ONVM uses the RSS value to support load balancing among NFs with the same service ID.
That would be great for those who want to try it on common VM simulators. 👍
Do you mean modifying ETH_MQ_RX_RSS
in onvm_init.c
to ETH_MQ_RX_NONE
? I did it and still failed...
I use Vagrant with VirtualBox and encounter some problems while executing the installation.
If I choose
virtio
as the network adaptor, the error seems to be the adaptor not support RSS: (But it finished the DPDK helloworld)Thus, I change the adaptor to
Intel 82545EM
, which is supported by DPDK, but stuck at DPDK helloworld testThat's weird, since
Intel 82545EM
can pass DPDK compilation and show that DPDK supports it:Here is my
Vagrantfile
andbootstrap.sh