我在 Debian Wheezy Beta 4 (x86_64) KVM 客户机上运行 Mumble 服务器 (Murmur),该客户机在 Debian Wheezy Beta 4 (x86_64) KVM 虚拟机管理程序上运行。客户机通过 Virtio 网络接口连接到虚拟机管理程序系统上的桥接设备。虚拟机管理程序连接到 100Mbit/s 上行链路,并在客户机和其余互联网之间进行 IP 路由。
在此设置中,我们在客户端中双击频道和频道加入操作之间经历了明显的延迟。Linux 和 Windows 系统上 1.2.3 和 1.2.4 之间的许多不同客户端都出现了这种情况。
语音质量和延迟似乎完全不受此影响。大多数情况下,客户端的信息对话框显示语音和控制通道的延迟均为 16ms。控制通道的偏差通常比语音通道的偏差高很多。在某些情况下,控制通道的 ping 为 100ms,偏差约为 1000。看来 TCP 性能在这里是个问题。
我们在之前的设置上没有遇到任何问题,原则上它与新设置非常相似。我们使用基于 Debian Lenny 的 Xen 虚拟机管理程序和软虚拟化客户机以及 Mumble 1.2.3 系列的早期版本。
当前murmurd --version
说:1.2.3-349-g315b5f5-2.1
更新: 我找到了这个讨论有人在虚拟化系统上运行 Mumble,遇到了与我完全相同的问题。
我到目前为止已经尝试过(但没有任何成功):
- 在我的虚拟机管理程序系统上安装并试用了 Mumble 服务器
- 在客户系统上安装并试用了 beta 1.2.4 Mumble 服务器
- 将我的 SQLite 数据库从原来的 1MiB 减少到 300 KiB
- 禁用系统上的 IPv6 以检查其是否是问题根源。
- 使用 Debian Squeeze(稳定版)安装了客户系统并在那里尝试了 Mumble。
更新:之前我说过,我曾测试过将 Mumble 数据库和日志文件放入tmpfs
内存文件系统,但问题并未得到解决。我在那里犯了一个错误,所以它实际上并没有存储在 中tmpfs
。现在我已经真正做到了这一点,性能问题就消失了。但将其存储在 中tmpfs
并不是真正解决我的问题的方法。