KVM Client Packet Loss on X86

We have OpenWRT running as a client and it’s dropping packets to the i5 router running v5.16.
It’s getting it’s IP via DHCP and pinging from the client to the router has terrible packet loss.
Tried both the PCNET and e1000 driver with the same results:

root@OpenWrt:/# ping 10.38.210.1
PING 10.38.210.1 (10.38.210.1): 56 data bytes
64 bytes from 10.38.210.1: seq=1 ttl=64 time=0.219
64 bytes from 10.38.210.1: seq=2 ttl=64 time=0.192
64 bytes from 10.38.210.1: seq=3 ttl=64 time=0.181
64 bytes from 10.38.210.1: seq=4 ttl=64 time=0.210
64 bytes from 10.38.210.1: seq=5 ttl=64 time=0.169
64 bytes from 10.38.210.1: seq=6 ttl=64 time=0.178
64 bytes from 10.38.210.1: seq=7 ttl=64 time=0.200
64 bytes from 10.38.210.1: seq=8 ttl=64 time=0.209
64 bytes from 10.38.210.1: seq=10 ttl=64 time=0.20
64 bytes from 10.38.210.1: seq=11 ttl=64 time=0.21
64 bytes from 10.38.210.1: seq=12 ttl=64 time=0.21
^C
--- 10.38.210.1 ping statistics ---
14 packets transmitted, 11 packets received, 21% p
round-trip min/avg/max = 0.169/0.199/0.219 ms



/kvm
add comment="Linux DNS" cpu-count=1 disabled=no disk-images=\
    hda:openwrt-x86-ep80579-rootfs.tar.gz initrd="" kernel=\
    openwrt-x86-ep80579-vmlinuz kernel-cmdline="console=ttyS0" memory=512MiB \
    name="Linux DNS" snapshot=no vnc-server-address=X.X.X.X \
    vnc-server-display=0
/kvm interface
add disabled=no dynamic-bridge=kvm_bridge host-mac-address=02:49:37:FE:1F:0F \
    model=e1000 type=dynamic virtual-machine="Linux DNS" vm-mac-address=\
    02:3B:E6:D9:C6:7B

OpenWRT is the latest build as pulled down from their site. Any idea what could be causing this?

is there any reason you cannot use virtio. That should be primary choice and other ones are more of a legasy, in case you are running guest that does not know nothing about virtio. I thought that OpenWRT has virtio support.

Couldn’t find the virtio driver. What is it called in OpenWRT?

if un understand conrrectly then Changeset 22943 introduced the virtio device support into openwrt
https://dev.openwrt.org/changeset/22943

however you could get better results on openwrt forums/messageboards

Same problem with the virtio driver:

> ping 10.38.210.254
HOST                                     SIZE TTL TIME  STATUS                  
10.38.210.254                                           timeout                 
10.38.210.254                                           timeout                 
10.38.210.254                                           timeout                 
10.38.210.254                              56  64 0ms  
10.38.210.254                                           timeout                 
10.38.210.254                              56  64 0ms  
10.38.210.254                                           timeout                 
10.38.210.254                              56  64 0ms  
10.38.210.254                                           timeout                 
10.38.210.254                              56  64 0ms  
    sent=10 received=4 packet-loss=60% min-rtt=0ms avg-rtt=0ms max-rtt=0ms



/kvm interface
add disabled=no dynamic-bridge=kvm_bridge host-mac-address=02:49:37:FE:1F:0F \
    model=virtio type=dynamic virtual-machine="Linux DNS" vm-mac-address=\
    02:3B:E6:D9:C6:7B

rather than using virtio or e1000, i use pcnet the most stable
it’s depend on guest version we used i think

  _______                     ________        __
 |       |.-----.-----.-----.|  |  |  |.----.|  |_
 |   -   ||  _  |  -__|     ||  |  |  ||   _||   _|
 |_______||   __|_____|__|__||________||__|  |____|
          |__| W I R E L E S S   F R E E D O M
 Backfire (10.03.1, r29638) ------------------------
  * 1/3 shot Kahlua    In a shot glass, layer Kahlua 
  * 1/3 shot Bailey's  on the bottom, then Bailey's, 
  * 1/3 shot Vodka     then Vodka.
 ---------------------------------------------------
root@OpenWrt:/# uptime
 13:59:42 up 31 days, 22:58, load average: 0.00, 0.00, 0.00

Tried that as well with no success. :frowning:

pcnet is 100MB interface, while other 2 are faster ones. As i posted before - check what OpenWRT has as OpenWRT on x86 should have virtio device drivers that are native to KVM and as such, they should be provided by kernel team.

rather than using trunk, i prefer openwrt stable backfire for production
and i don’t need much speed, as this openwrt just serving bind for local domain auth and caching for clients.