DPDK — 在 NFV 中的应用

目录

DPDK 在 NFV 中的应用

NFV 通过在通用 x86 架构硬件上运行的虚拟化网络功能(VNF),为电信运营商和互联网服务商提供了一种灵活的业务部署手段和高效的组网方案,可以支持固/移网络和 IDC 中 NAT、DPI、EPC、FW 等各类业务功能的灵活部署与弹性扩展。

不同于典型数据中心业务和企业网业务,电信广域网业务要求网元(如 BNG、DPI 等)具有高吞吐、低时延、海量流表支持、用户级 QoS 控制的特点。大量实践表明,通用 x86 服务器作为 NFV 基础设施用于高转发业务时,面临着严重的数据包转发性能瓶颈,需要有针对性地从硬件架构、系统 I/O、操作系统、虚拟化层、组网与流量调度、VNF 功能等层面进行性能优化,才能达到各类 NFV 网络业务的高性能转发要求。

根据 ETSI 的 NFV 参考架构,现实中的 NFV 应用系统一般由 NFV 基础设施(VIM)和 VNF 两类系统服务商提供。因此,相应的 NFV 端到端性能测试,也应划分为底层的 VIM 性能与上层的 VNF 性能两类,以明确各自的性能瓶颈,并避免性能调优工作相互干扰。

在 VIM 层面,由于采用了软件转发和软件交换技术,单个物理服务器内部的数据转发能力是 NFV 的主要性能瓶颈。在各类高速转发的 NFV 应用中,数据报文从网卡中接收,再传送到虚拟化的用户态应用程序处理。整个过程要经历 CPU 中断处理、虚拟化 I/O 与地址映射转换、虚拟交换层、内核协议栈、内核上下文切换、内存拷贝等多个费时的 CPU 操作和 I/O 处理环节。面对这样的性能损耗问题,业内通常采用消除海量中断、内核旁路协议栈、减少内存拷贝、CPU 多核任务分担、Intel VT 等技术来综合提升服务器数据平面的报文处理性能。但由于技术栈复杂,普通用户较难掌握,业界迫切需要一种综合的性能优化方案,同时提供良好的用户开发和商业集成环境。

在 VIM 层的各类性能优化技术方案中,DPDK 加速技术方案成为其中的典型代表。DPDK 以用户数据 I/O 通道优化为基础,结合了 Intel VT 技术、操作系统、虚拟化层与 vSwitch 等多种优化方案,已经形成了完善的性能加速整体架构,并提供了用户态 API 供高速转发类应用访问。
在这里插入图片描述

原创文章 592 获赞 1483 访问量 197万+

猜你喜欢

转载自blog.csdn.net/Jmilk/article/details/105951489