KVMとLibvirt:ゲストのCPU/ネットワークパフォーマンスの低下

KVMとLibvirt:ゲストのCPU/ネットワークパフォーマンスの低下

仮想ルーターを実行するArch Linuxホストがあります。

LXCゲストをルーターとして使用すると、すべてが正常です。私のアップストリーム/ダウンストリーム速度は100MBitsで、CPU使用率はほとんどありません。

しかし、libvirt gest(pfSense FreeBSD)をルーターとして使用すると、ゲストを介してネットワークトラフィックが増えるたびにCPU使用率が途方もなく高くなり(最大100%)、最悪の部分はネットワークスループットが半分に減るということです。 !私の最大速度は45-49Mbitsです。

ホストはPCIパススルーをサポートしていないので、これは私のlibvirtd仮想マシン構成です。

Nic1 (wan)
Network source: Direct ‘eth0’
Source mode: passthrough
Device model: virtio

Nic2 (lan)
Bridge name: br0
Device model: virtio

e1000を使ってみましたが、全く変わりませんでした。

Host CPU: AMD A4-5000 Kabini
Guest CPU: default or Opteron_G3

pfSense ではハードウェアポーリングが無効になっており、pfSense ifconfig では以下を表示します。http://storage5.static.itmages.com/i/16/1217/h_1481996196_8871112_a2f0d75655.png

KVMを使い始めてから1年以上経ちました。この問題を解決しないと、これらのパフォーマンスは許可されないため、libvirtをダンプする必要があります。

答え1

これは、Linuxドライバほど速く実行できないVirtioのFreeBSDドライバと関連しています。

https://forum.proxmox.com/threads/poor-virtio-network-performance-pfsense-guest-proxmox-3-4.23933/

^^上記は、ゲストとホストとpfSense設定でハードウェアチェックサムのオフロードをオフにするなど、役立つ可能性があるいくつかのタスクを詳しく説明する記事です(もう一度テストする前にVMを再起動する必要があります)。

私はProxmox(Debianベース)上でpfSenseを実行しようとしました。

関連情報