由于入手了群晖nas系统,前几天把在使用的r4s软路由从多媒体箱拆下来了,用群晖的vmm虚拟机装openwrt发现宽带测速跟下载速度跑不满1000m宽带问题,经过半小时的研究折腾发现问题出现在虚拟网卡上面了,今天就来说说群晖虚拟机安装openwrt旁路由选择网卡的一些坑。
网上的一些群晖虚拟机vmm装软路由openwrt固件都特别提醒我们在选择e1000虚拟网卡,如下图:
是的,如果在配置网络的时候选虚拟网卡为e1000,openwrt的连接口会显示为全双工,但是你在测速或者下载的时候就会发现,e1000网卡只能跑200m-300m网速。
起初我还怀疑群晖装openwrt不能发挥它的性能,但是仔细想一想,不应该啊,我给openwrt的配置2核6g怎么会不够用?问题应该出现在网卡上了。
群晖虚拟机里可选三种网卡:virtio、e1000、rtl8139
“e1000”系列提供intel e1000系列的网卡模拟,纯的qemu(非qemu-kvm)默认就是提供intel e1000系列的虚拟网卡。
“virtio” 类型是qemu-kvm对半虚拟化io(virtio)驱动的支持。
这三个网卡的最大区别(此处指最需要关注的地方)是速度:
rtl8139 10/100mb/s
e1000 1gb/s
virtio 10gb/s
注意virtio是唯一可以达到10gb/s的,根据文献一,其iperf测试速率可达到9.4。文献1还提到如果virtio配置不合理速度只能达到3.6。不用担心这个情况,经查验ovirt自己生成的虚拟机配置都是合理的。( use ‘-device virtio-net-pci’ option)
当然这并不意味着rtl8139和e1000是没有意义的,毕竟virtio需要在guest上面安装驱动。rtl8139和e1000在兼容的广泛度上占有优势。例如,如果ovirt的cpu不是x86,而是arm或者其它某些系列cpu,上述网卡未必全部支持。这点需要注意。
然后我把openwrt关机,网卡修改成virtio,开机openwrt speedtest测速:932
迅雷下载也基本满速:
如果你选的是e1000网卡,网速不能达标的话可以试试选择virtio网卡,貌似一些黑群晖或者dsm版本6.x的可以使用e1000网卡,总之自行测试吧。
我的家庭网络硬件配置:
宽带:电信1000m宽带
群晖:ds920
交换机:tp-link千兆8口交换机
软路由:友善r4s
路由器:主路由器(客厅)tl-xdr5480 tl-xdr3010(主卧)组有线mesh,也就是ap模式,有线中继。
明年可以换2.5g网口的软路由跟2.5g的交换机。
结语:
关于群晖虚拟机装openwrt,我使用了几天,发现网络占用高的时候cpu占用达到了70-80,最重要的是发现了一个神奇的bug,就是手机wifi上网在打开微信高清图片的时候加载需要5-8秒的时间,打开微信的时候又连接中…这个不能忍,应该是虚拟机装的单队列的openwrt只是单队列只有一个核在处理报文,我也没有折腾了,改回r4s了。
评论列表(6条)
很棒 避免踩坑 还是入手硬路由吧
192.16801.1
谢谢老铁指点!网速又回来了!!!
谢谢。解决了
白裙vmm虚拟爱快 选的virtio iperf3测速 爱快做服务端 白裙客户端 上行网速550到750m浮动 下行3.6g 以至于现在宽带升了千兆 测速跑不满 只能到750m瓶颈 请问是什么问题有知道的吗?
@zecrown:群晖虚拟机损耗太大,发挥不了多少真实性能,建议使用pve