论文部分内容阅读
网络功能虚拟化(Network Function Virtualization,NFV)使用标准的虚拟化技术,将软件网络功能的实现与底层的硬件解耦,并将软件实现的虚拟网络功能(Virtual Network Function,VNF)整合到通用的服务器,交换机和存储设备中[1]。NFV使网络功能的部署更加简单,管理更加方便,开发更加迅速。安全网关是网络功能的重要部分,也是最适合应用NFV的网络功能之一。安全网关被广泛用于虚拟私有网络(Virtual Private Network,VPN)和端到端站点的连接。由于安全网关应用了计算密集的加解密算法,软件实现的安全网关往往只有较低的性能,CPU的性能成为限制安全网关的主要因素。使部署在通用硬件上的安全网关实现高性能成为了NFV走向实际应用的障碍。在NFV情景下的,安全网关中所面临的重要挑战是如何高效地将灵活的安全网关部署在与硬件设备相当的服务器中,并且与传统硬件实现的安全网关相比与不带来严重的性能下降。目前使用加速器加速安全网关已经成为使安全网关获得高性能的通用做法,以QAT设备为代表的专用加速以其易用性和高性价比成为加速部署在通用服务器上的安全网关的一个良好的解决方案。但是,到目前为止,并没有一个良好的框架去充分地利用QAT设备等加速器。为此,本文提出了一个名为TurboGW的安全网关框架,该框架利用异构加速器对数据包加解密、验证操作进行加速,同时使用数据面开发工具包(Dataplane Development Kit,DPDK)用于快速数据包处理。TurboGW提供了一种使用配置语言构建复杂网关应用程序的方法,使用户可以使用配置文件定制安全网关应用的功能,拓扑,策略等,实现用户可定制。此外,TurboGW将IPsec网关和常用的防火墙,路由器,流分类器等网络功能高效地整合到商用服务器上,并达到与专用硬件相当的性能。TurboGW将计算密集型的加解密工作负载卸载到异构的加速器上,并使用加速器调度器灵活高效地调度多种加速器设备。通过使用流量整形的优化,使得TurboGW在大多数数据包大小的情况下都保持较高的性能。评估结果表明,TurboGW的IPsec网关处理性能比大部分现有软件实现的安全网关要好,实现了超过130Gbps的吞吐量。对于所有TurboGW网络功能,在大多数数据包大小的场景下,能够实现80Gbps以上的吞吐,达到ESTI网络功能虚拟化白皮书中的要求。我们相信,我们基于软件的TurboGW系统为推动NFV迈向实用化,取代传统基于专有硬件通信设备的网络功能提供了一项重要技术。