2.6. 实时 KVM
现有的虚拟机监控程序不是为满足 NFVi 的要求而设计或目标,并且需要进一步的协作措施才能启用 NFV 功能。KVM 允许高性能和低延迟。不同的用例对延迟有不同允许,但许多需求小于 20 微秒延迟。有些系统甚至需要 5-10 微秒,且该性能必须保证。要实现这些数字,需要仔细设置系统,以避免各种高延迟系统操作,例如,没有 CPU 频率更改、不会加载或卸载内核模块,且没有交换。除了非实时帮助程序外,还必须调整应用程序以避免缓慢的设备,如磁盘或声音设备。因此,部署实时 KVM 需要深入了解系统,例如确保时间戳计数器稳定,且系统永远不会回退到另一个时钟源。使用 Real-time KVM 允许更高的延迟,且峰值较低,并能够公告预期的延迟带宽。
处理性能和延迟取决于多个因素,包括 CPU (频率、电源管理功能等)、微架构资源、缓存层次结构和大小、内存(和层次结构,如 NUMA)和速度、互连、I/O 和 I/O NUMA、设备等。
以下是 NFV 的 Real-time KVM 的初始增强:
对数据平面 VNF 的最小中断延迟变化
- 通过计时正确处理调度操作(如 Radio 调度),可实现最短的 Timing Variation。
- data-plane VNFs 的最小数据包延迟变化,它们可以通过数据包延迟变化来实现,后者适用于数据包处理。
对于虚拟机,中断延迟(硬件中断和在虚拟机中调用中断处理程序之间的时间)可以是计时变化或数据包延迟,或两者。通过虚拟计时器中断延迟可能会导致实时 VNF 出现计时问题,即使它们仅使用轮询数据包处理。VNF 需要正确实施,以最大程度降低虚拟机内中断延迟变化。
从 Red Hat OpenStack Platform 8 开始,支持实时 KVM 作为技术预览