基于FPGA改善NFV业务链转发效率的装置及方法制造方法及图纸

技术编号:25405901 阅读:29 留言:0更新日期:2020-08-25 23:09
本发明专利技术公开了一种基于FPGA改善NFV业务链转发效率的装置及方法,该装置包括FPGA管理器、RDMA转接口、RDMA控制器、调度器、n个加速单元,其中FPGA管理器用于管理FPGA资源,RDMA转接口用于连接RDMA控制器,RDMA控制器用于接收数据包,调度器用于分配数据包,加速单元用于提高数据包处理速度。用户空间的FPGA管理器将FPGA中的寄存器和内存空间映射到用户空间的内存地址,采取轮询的方式将数据包传到RDMA控制器中,RDMA控制器通过一个调度器交由不同的加速单元进行处理,处理完成后再由RDMA控制器远程传输。该装置提高数据包处理速度,无需CPU参与,改善NFV业务链的转发效率。

【技术实现步骤摘要】
基于FPGA改善NFV业务链转发效率的装置及方法
本专利技术涉及SDN/NFV新型网络架构
,具体涉及一种基于FPGA(FiledProgrammableGateArray,现场可编程器件)改善NFV(NetworkFunctionVirtualization,虚拟化网络功能)业务链的转发效率的装置及方法。
技术介绍
随着数据业务流量的爆炸式增长,现有网络架构暴露出难以克服的结构性问题。设备和业务的紧耦合,造成现有相对封闭的网络架构,粗放的网络建设与运维模式也难以支撑网络可持续发展。NFV技术的诞生从根本上来说就是为了解决运营商网络演进的痛点,将IT技术运用到ICT融合的必然趋势。NFV技术除了实现网络功能软件的灵活加载与实例化,在数据中心、网络节点及用户驻地网等各个位置灵活地部署配置,降低业务部署的复杂度,还向运营商提供管理和编排功能以实现网络部署的自动化、灵活性和敏捷性,提高网络设备的统一化、通用性、适配性等特性。NFV设计的初衷是针对部分低转发流量类业务功能,基本可以满足大多数低速率转发业务的处理要求。但是,随着SDN技术的推动,各类高速率转发和会话控制类网络业务功能,如vBNG、vPGW等,速率在40Gbit/s以上,也逐步加入到NFV的应用行列中来。X86服务器采用软件转发和交换技术,报文在服务器各层面间传递,会受到多方面因素的影响,因此服务器的内部转发性能是NFV系统的主要瓶颈。影响NFV转发性能的主要因素有:网卡硬件中断、内核网络协议栈、虚拟化层的封装效率、业务链网络的转发效率。针对上述转发性能影响因素,目前业界已提出了多类解决方法。简单介绍如下:现有技术一:轮询取代中断。原理:以网卡接收分组为例,在轮询模式下,系统会在初始化时屏蔽收发分组中断,并使用一个线程或进程来不断检测收取分组描述符中的收取分组成功标志是否被网卡置位,以此来判断是否有数据分组。优点:当I/O速率接近CPU速率时,中断的开销变得不可忽略,轮询模式的优势明显。缺点:如果数据吞吐率很低,中断能有更好的CPU利用率,此时不宜采用轮询模式。现有技术二:零复制技术。原理:在NFV数据平面操作的场景下,零复制技术指的是除网卡将DMA复制进内存外,从数据分组接收到应用程序处理数据分组,整个过程中不存在数据复制。优点:避免CPU将数据从一个内存区域复制到另一个内存区域带来的开销。缺点:存在着大量改写原有业务应用套接字的问题,应用中需要在性能与代码改动之间进行取舍。现有技术三:DPDK技术。原理:DPDK是Intel提供的数据平面开发工具集,为Intel处理架构下用户空间高效的数据包处理提供库函数和驱动的支持。它不同于Linux系统以通用性设计为目的,而是专注于网络应用中数据包的高性能处理。优点:以用户数据I/O通道优化为基础,结合Intel虚拟化技术、操作系统、虚拟化层与虚拟交换机等多种优化方案,形成了完善的转发性能加速架构,并开放了用户态API供用户应用程序访问。缺点:还无法达到小包线速转发,仍需进行性能提升研究和测试研究验证工作。而对于NFV业务链网络,CPU难以避免地会参与数据包的传递过程。
技术实现思路
本专利技术的目的是为了解决现有技术中的NFV转发速度瓶颈、避免CPU的参与与开销,提出一种基于FPGA改善NFV业务链转发效率的装置及方法。本专利技术的第一个目的可以通过采取如下技术方案达到:一种基于FPGA改善NFV业务链转发效率的装置,所述装置包括:位于x86服务器上的用于管理FPGA资源的FPGA管理器以及RDMA转接口,位于FPGA上的用于传输数据包的RDMA控制器、用于分配数据包的调度器和用于提高数据处理的n个加速单元,其中,20<=n<=40,所述RDMA转接口用于连接FPGA管理器和RDMA控制器;所述FPGA管理通过RDMA转接口将数据包传到RDMA控制器中,所述RDMA控制器将收到的数据包通过调度器交由n个加速单元并行处理。进一步地通过RDMA转接口,在用户空间的FPGA管理器可以直接操控FPGA资源,而把内核旁路。进一步地所述FPGA管理器将FPGA中的寄存器和内存空间映射到用户空间的内存地址,采取轮询的方式将数据包传到RDMA控制器中。进一步地,当两台或多台x86服务器中的NFV业务应用要进行数据传输时,启动FPGA管理器,将数据包请求以轮询的方式传入位于FPGA中的RDMA控制器,RDMA控制器通过一个调度器交由n个加速单元处理,处理完成后RDMA控制器读取处理结果并通过网络传输到远程RDMA控制器中。本专利技术的另一个目的可以通过采取如下技术方案达到:一种基于FPGA改善NFV业务链转发效率的方法,所述方法包括以下步骤:当两台或多台服务器中的NFV业务应用进行数据传输时,启动FPGA管理器,FPGA管理器通过RDMA转接口直接操控FPGA,并以轮询的方式将数据包传入RDMA控制器;RDMA控制器通过调度器以分配的方式将数据包传输给FPGA中n个加速单元进行并行处理,20<=n<=40;并行处理完成后,RDMA控制器读取处理结果并通过网络传输到远程RDMA控制器中;目标服务器确认内存钥匙,直接将数据写入缓存中。进一步地,所述RDMA控制器读取处理结果并通过基于ROCE协议的RDMA远程传输方法传输到远程RDMA控制器中。进一步地,所述加速单元处理结果包含目标虚拟地址、内存钥匙和数据本身。本专利技术相对于现有技术具有如下的优点及效果:本专利技术基于FPGA高速并行处理能力,提高了数据处理能力和数据吞吐率;相对于传统数据传输,采用RDMA远程传输,通过基于ROCE协议的RDMA远程传输方法传输到远程RDMA控制器中,避免了CPU的参与,减少了开销。附图说明图1是专利技术实施例提供的一种基于FPGA改善NFV业务链转发效率的技术原理图;图2为本专利技术实施例提供的一种基于FPGA改善NFV业务链转发效率的装置结构图;图3是本专利技术实施例提供的一种基于FPGA改善NFV业务链转发效率的方法流程图。具体实施方式为使本专利技术实施例的目的、技术方案和优点更加清楚,下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。实施例一如图2所示,本实施例公开了一种基于FPGA改善NFV业务链转发效率的装置,该装置包括:位于x86服务器上的用于管理FPGA资源的FPGA管理器以及用于连接RDMA控制器和FPGA管理器的RDMA转接口,位于FPGA上的用于传输数据包的RDMA控制器、用于分配数据包的调度本文档来自技高网
...

【技术保护点】
1.一种基于FPGA改善NFV业务链转发效率的装置,其特征在于,所述装置包括:位于x86服务器上的用于管理FPGA资源的FPGA管理器以及RDMA转接口,位于FPGA上的用于传输数据包的RDMA控制器、用于分配数据包的调度器和用于提高数据处理的n个加速单元,其中,20<=n<=40,/n所述RDMA转接口用于连接FPGA管理器和RDMA控制器;/n所述FPGA管理通过RDMA转接口将数据包传到RDMA控制器中,所述RDMA控制器将收到的数据包通过调度器交由n个加速单元并行处理。/n

【技术特征摘要】
1.一种基于FPGA改善NFV业务链转发效率的装置,其特征在于,所述装置包括:位于x86服务器上的用于管理FPGA资源的FPGA管理器以及RDMA转接口,位于FPGA上的用于传输数据包的RDMA控制器、用于分配数据包的调度器和用于提高数据处理的n个加速单元,其中,20<=n<=40,
所述RDMA转接口用于连接FPGA管理器和RDMA控制器;
所述FPGA管理通过RDMA转接口将数据包传到RDMA控制器中,所述RDMA控制器将收到的数据包通过调度器交由n个加速单元并行处理。


2.根据权利要求1所述的基于FPGA改善NFV业务链转发效率的装置,其特征在于,通过RDMA转接口,在用户空间的FPGA管理器直接操控FPGA资源。


3.根据权利要求1所述的基于FPGA改善NFV业务链转发效率的装置,其特征在于,所述FPGA管理器将FPGA中的寄存器和内存空间映射到用户空间的内存地址,采取轮询的方式将数据包传到RDMA控制器中。


4.根据权利要求1所述的基于FPGA改善NFV业务链转发效率的装置,其特征在于,当两台或多台x86服务器中的NFV业务应用要进行数据传输时,启动FPGA管理器,将数据包请...

【专利技术属性】
技术研发人员:陆以勤汤飞详覃健诚程喆李智鹏
申请(专利权)人:华南理工大学
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1