CN105306241B - 一种业务部署方法及网络功能加速平台 - Google Patents
一种业务部署方法及网络功能加速平台 Download PDFInfo
- Publication number
- CN105306241B CN105306241B CN201410331856.7A CN201410331856A CN105306241B CN 105306241 B CN105306241 B CN 105306241B CN 201410331856 A CN201410331856 A CN 201410331856A CN 105306241 B CN105306241 B CN 105306241B
- Authority
- CN
- China
- Prior art keywords
- forwarding
- regions
- configuration
- module
- network message
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0813—Configuration setting characterised by the conditions triggering a change of settings
- H04L41/082—Configuration setting characterised by the conditions triggering a change of settings the condition being updates or upgrades of network functionality
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0823—Configuration setting characterised by the purposes of a change of settings, e.g. optimising configuration for enhancing reliability
- H04L41/083—Configuration setting characterised by the purposes of a change of settings, e.g. optimising configuration for enhancing reliability for increasing network speed
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/54—Organization of routing tables
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/50—Address allocation
- H04L61/5007—Internet protocol [IP] addresses
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45562—Creating, deleting, cloning virtual machine instances
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/084—Configuration by using pre-existing information, e.g. using templates or copying from other elements
- H04L41/0843—Configuration by using pre-existing information, e.g. using templates or copying from other elements based on generic templates
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0896—Bandwidth or capacity management, i.e. automatically increasing or decreasing capacities
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明实施例公开了一种业务部署方法及网络功能加速平台,用于提高***的业务处理速度和性能。本发明实施例方法包括:在所述FPGA上电时,所述FPGA加载FPGA框架文件,使得所述FPGA中包括M个部分重配置PR区域、配置模块和数据流转发模块;在接收到业务配置指令时,所述物理机生成虚拟机VM,并从M个所述PR区域中选择至少一个PR区域与所述VM建立对应关系;所述配置模块根据PR配置资源对所选择的PR区域进行业务资源配置,以使所选择的PR区域具有业务处理能力;所述配置模块在所述转发流表中添加对应所述PR区域的转发条目,使所述数据流转发模块通过查找所述转发流表将接收到的网络报文转发到相应的PR区域。
Description
技术领域
本发明涉及通信技术领域,具体涉及一种业务部署方法及网络功能加速平台。
背景技术
网络功能虚拟化(NFV,Network Functions Virtualization)由运营商联盟提出,通过标准的信息技术(IT,Information Technology)虚拟化技术,可以在网络硬件平台迅速地根据需求来添加、控制虚拟设备,然后通过虚拟设备来部署网络虚拟功能(VNF,Virtual Network Function)业务。
目前,多核X86***中,通过支持单根节点的输入/输出虚拟化规范(SR-IOV,Single-Root I/O Virtualization)的总线和接口标准(PCIE,Peripheral ComponentInterface Express)总线将通用多核X86***和***芯片中的现场可编程门阵列(FPGA,Field-Programmable Gate Array)模块耦合在一起,在X86***的CPU中通过监控器(Hypervisor)生成虚拟机(virtual machine,简称VM),通过VM实现VNF功能。
通常而言,业务处理都是由VM进行,由VM进行业务处理时,需要频繁地访问物理机CPU,对于CPU软件的开销较大,整个通信的性能不高。
发明内容
基于上述介绍,本发明实施例提供了一种业务部署方法及网络功能加速平台,提高***的处理速度和性能。
本发明第一方面提供了一种业务部署方法,应用于网络功能加速平台NFAP,所述NFAP中包括物理机和加速卡,所述物理机与加速卡通过PCIe数据通道连接,所述加速卡中包括现场可编程门阵列FPGA,所述方法包括:
在所述FPGA上电时,所述FPGA加载FPGA框架文件,使得所述FPGA中包括M个部分重配置PR区域、配置模块和数据流转发模块;其中,所述FPGA中的硬件资源划分给所述PR区域,所述配置模块连接到所述PCIe数据通道上,并与所述PR区域连接,所述数据流转发模块与所述PR区域连接,所述数据流转发模块中包括空白的转发流表;所述M为大于或等于1的正整数;
在接收到业务配置指令时,所述物理机生成虚拟机VM,并从M个所述PR区域中选择至少一个PR区域与所述VM建立对应关系;
所述配置模块根据PR配置资源对所选择的PR区域进行业务资源配置,以使所选择的PR区域具有业务处理能力;所述PR配置资源为所述VM根据所述业务配置指令和配置模板生成;
所述配置模块在所述转发流表中添加对应所述PR区域的转发条目,以使所述数据流转发模块通过查找所述转发流表将接收到的网络报文转发到相应的PR区域上;所述转发条目是所述物理机根据待处理的网络报文和转发模板生成。
结合第一方面,在第一种可能的实现方式中,所述VM根据所述业务配置指令和配置模板生成所述PR配置资源包括:所述VM向所述物理机申请内存资源,并根据所述内存资源生成PR配置文件;所述配置文件包括缓冲区地址、缓冲区大小;所述VM根据配置模板和所述业务配置指令所指示的业务能力,从数据库中获取与所述业务能力对应的PR执行文件,所述PR执行文件与所述PR配置文件组成所述PR配置资源。
结合第一方面,或第一方面的第一种可能的实现方式,在第二种可能的实现方式中,所述数据流转发模块通过查找所述转发流表将接收到的网络报文转发到相应的PR区域上包括:所述数据流转发模块接收待处理的网络报文,从所述待处理的网络报文中获取转发参数,所述转发参数包括五元组,所述五元组包括目的网际协议IP地址、源IP地址、目的端口、源端口和传输层协议号;所述数据流转发模块在所述转发流表中查找所述转发参数对应的转发条目;当在所述转发流表中查找到所述转发参数对应的转发条目时,所述数据流转发模块在查找到的转发条目中查找PR区域;所述数据流转发模块将所述待处理的网络报文发送给查找到的PR区域。
结合第一方面的第二种可能的实现方式,在第三种可能的实现方式中,所述方法还包括:当在所述转发流表中查找不到所述转发参数对应的转发条目时,所述数据流转发模块将所述待处理的网络报文发送给所述物理机。
结合第一方面的第三种可能的实现方式,在第四种可能的实现方式中,所述数据流转发模块将所述待处理的网络报文发送给所述物理机之后包括:
所述物理机接收待处理的网络报文,并查找业务规则表,所述业务规则表用于指示PR区域的处理能力;
若在所述业务规则表中查找到处理所述待处理的网络报文的PR区域,所述物理机从所述待处理的网络报文中获取转发模板要求的转发参数;
所述物理机根据所述转发模板生成转发条目,所述转发条目包括五元组和具有处理所述待处理的网络报文的PR区域;
所述物理机将所述转发条目下发给所述配置模块,以便所述配置模块在所述数据流转发模块的转发流表中添加所述转发条目。
本发明第二方面提供了一种网络功能加速平台,所述网络功能加速平台包括物理机和加速卡,所述物理机与加速卡通过PCIe数据通道连接,所述加速卡中包括现场可编程门阵列FPGA;
所述FPGA用于:在上电时加载FPGA框架文件,使得所述FPGA中包括M个部分重配置PR区域、配置模块和数据流转发模块;其中,所述FPGA中的硬件资源划分给所述PR区域,所述配置模块连接到所述PCIe数据通道上,并与所述PR区域连接,所述数据流转发模块与所述PR区域连接,所述数据流转发模块中包括空白的转发流表;所述M为大于或等于1的正整数;
所述物理机用于:在接收到业务配置指令时生成虚拟机VM,并从M个所述PR区域中选择至少一个PR区域与所述VM建立对应关系;
所述配置模块用于:根据PR配置资源对所选择的PR区域进行业务资源配置,以使所选择的PR区域具有业务处理能力;所述PR配置资源为所述VM根据所述业务配置指令和配置模板生成;
所述配置模块还用于:在所述转发流表中添加对应所述PR区域的转发条目;
所述数据流转发模块用于:通过查找所述转发流表将接收到的网络报文转发到相应的PR区域上;所述转发条目是所述物理机根据待处理的网络报文和转发模板生成。
结合第二方面,在第一种可能的实现方式中,所述VM用于:VM向所述物理机申请内存资源,并根据所述内存资源生成PR配置文件;所述配置文件包括缓冲区地址、缓冲区大小;根据配置模板和所述业务配置指令所指示的业务能力,从数据库中获取与所述业务能力对应的PR执行文件,所述PR执行文件与所述PR配置文件组成所述PR配置资源。
结合第二方面,或第二方面的第一种可能的实现方式,在第二种可能的实现方式中,所述数据流转发模块具体用于:接收待处理的网络报文,从所述待处理的网络报文中获取转发参数,所述转发参数包括五元组,所述五元组包括目的网际协议IP地址、源IP地址、目的端口、源端口和传输层协议号;在所述转发流表中查找所述转发参数对应的转发条目;当在所述转发流表中查找到所述转发参数对应的转发条目时,在查找到的转发条目中查找PR区域;将所述待处理的网络报文发送给查找到的PR区域。
结合第二方面的第二种可能的实现方式,在第三种可能的实现方式中,所述数据流转发模块还用于:当在所述转发流表中查找不到所述转发参数对应的转发条目时,将所述待处理的网络报文发送给所述物理机。
结合第二方面的第三种可能的实现方式,在第四种可能的实现方式中,所述物理机还用于:接收待处理的网络报文,并查找业务规则表,所述业务规则表用于指示PR区域的处理能力;若在所述业务规则表中查找到处理所述待处理的网络报文的PR区域,从所述待处理的网络报文中获取转发模板要求的转发参数;根据所述转发模板生成转发条目,所述转发条目包括五元组和具有处理所述待处理的网络报文的PR区域;将所述转发条目下发给所述配置模块,以便所述配置模块在所述数据流转发模块的转发流表中添加所述转发条目。
从以上技术方案可以看出,本发明实施例提供的一种业务部署方法及网络功能加速平台具有以下优点:
在FPGA上电时,加载FPGA框架文件,使得FPGA中包括M个部分重配置PR区域、配置模块和数据流转发模块,且FPGA中的硬件资源划分给PR区域,配置模块连接到PCIe通道上,并与所述PR区域分别连接,所述数据流转发模块与所述PR区域连接。那么在接收到业务配置指令时,物理机根据该业务配置指令生成VM,该VM与至少一个PR区域建立对应关系,配置模块根据PR配置资源对所选择的PR区域进行业务资源配置,配置模块还在所述转发流表中添加对应所述PR区域的转发条目,以使所述数据流转发模块通过查找所述转发流表将接收到的网络报文转发到相应的PR区域上。与现有技术相比,本发明实施例中FPGA通过加载FPGA框架文件,使得在FPGA中获得M个部分重配置PR区域、配置模块和数据流转发模块,然后,再通过配置模块对PR区域和数据流转发模块进行配置,使得PR区域具有处理业务的能力,减少VM处理,提高整个***的处理效率和处理速度。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1a为本发明实施例提供的业务部署方法的流程示意图;
图1b为本发明实施例提供的业务部署方法的应用示意图;
图2a为本发明实施例提供的信息模板形式表示图;
图2b为本发明实施例提供的配置模板的形式表示图;
图3为本发明另一实施例提供的业务部署方法的流程示意图;
图4a为本发明另一实施例提供的业务部署方法的流程示意图;
图4b为本发明另一实施例提供的业务部署方法的流程示意图;
图5为本发明实施例提供的网络功能加速平台的结构示意图。
具体实施方式
本发明实施例提供了一种业务部署方法及网络功能加速平台,可以提高业务处理速度,提高整个***的处理效率。
下面将结合本发明实施例的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例例如能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、***、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
本发明实施例提供的网络功能加速平台(NFAP,Network FunctionsAcceleration Platform)中主要包括物理机和加速卡。其中,物理机可以是多核X86CPU,加速卡上包括FPGA,且加速卡与物理机之间通过PCIe数据通道连接。
请参阅图1a,图1a为本发明实施例提供的业务部署方法的流程示意图;如图1a所示,一种业务部署方法可包括:
S101、在所述FPGA上电时,所述FPGA加载FPGA框架文件,使得所述FPGA中包括M个部分重配置PR区域、配置模块和数据流转发模块;其中,所述FPGA中的硬件资源划分给所述PR区域,所述配置模块连接到PCIe数据通道上,并与所述PR区域连接,所述数据流转发模块与所述PR区域连接,所述数据流转发模块中包括空白的转发流表;所述M为大于或等于1的正整数;
可以理解的是,在FPGA上电使用时,先从其所在的加速卡闪存flash上下载FPGA框架文件,然后FPGA通过加载该FPGA框架文件后,使得FPGA中包括了M个部分重配置(PR,Partial Reconfigurable)区域、配置模块和数据流转发模块。其中,配置模块连接到PCIe数据通道上,数据流转发模块与所述PR区域连接得到NFAP,所述NFAP如附图1b所示。
FPGA中的硬件资源,例如FPGA中的寄存器、内部存储器和(LUT,Look Up Table)查找表等,将划分给PR区域,当然,还可以将FPGA使用的外部存储器等也划分给PR区域。
值得注意的是,相同的硬件资源不会划分给两个不同的PR区域使用,也就是说,不同PR区域使用各自的硬件资源。
S102、在接收到业务配置指令时,所述物理机生成虚拟机VM,并从M个所述PR区域中选择至少一个PR区域与所述VM建立对应关系;
在需要添加VM时,外部VNF管理器将业务配置指令发送给物理机,物理机接收到业务配置指令后,将在物理机中生成一个VM,且所生成的VM与M个PR区域中的至少一个建立对应关系,以使得由VM处理的业务可以转由具有对应关系的PR区域来处理。当然,VM对建立对应关系的PR区域具备控制能力,可以提供一些控制策略。
优选地,在业务配置指令中,包括所要生成的VM的内存大小、硬盘大小、业务能力等。业务能力指与所生成的VM对应的PR区域的业务处理能力。
所生成的VM的内存大小和硬盘大小满足业务配置指令中所指示的内存大小和硬盘大小。PR业务配置资源中包括配置PR区域所需要的PR配置文件和PR区域进行业务处理时所需要的PR执行文件,配置文件主要包括PR区域可使用的缓冲区地址和缓冲区大小等,PR执行文件可以是能够实现包分类、基于状态流分析、深度包检测(Deep PacketInspection,简称DPI)、基于流的负载均衡和安全处理等处理的程序,配置文件中的内容是执行文件在执行时可使用的一些内存资源。
可以理解的是,在物理机中还包括一个VM的监控器(Hypervisor),VM由监控器Hypervisor生成。该VM与M个PR区域中的至少一个建立对应关系,以使得由VM处理的业务可以转由具有对应关系的PR区域来处理,在需要时,VM可以给对应关系的PR区域提供一些控制策略。
S103、所述配置模块根据PR配置资源对所选择的PR区域进行业务资源配置,以使所选择的PR区域具有业务处理能力;所述PR配置资源为所述VM根据所述业务配置指令和配置模板生成;
其中,VM将PR配置资源先发送给配置模块,配置模块根据PR配置资源对PR区域进行业务资源配置。
S104、所述配置模块在所述转发流表中添加对应所述PR区域的转发条目,以使所述数据流转发模块通过查找所述转发流表将接收到的网络报文转发到相应的PR区域上;所述转发条目是所述物理机根据待处理的网络报文和转发模板生成。
需要说明的是,数据流转发模块中包括有空白的转发流表,后续配置转发流表是通过在转发流表中添加PR区域对应的转发条目。
本发明实施例中,在上电时,FPGA通过加载FPGA框架文件,使得FPGA中包括M个部分重配置PR区域、配置模块和数据流转发模块,而数据流转发模块具有空白的转发流表;在物理机收到业务配置指令时,由配置模块对PR区域进行业务资源配置,使得PR区域具备业务处理能力;和通过在转发流表中添加PR区域对应的转发条目,能够通过查找转发流表转发待处理的网络报文到相应的PR区域,进而可以将VM处理的一些业务转由PR区域处理,减少了物理机中CPU的消耗,提高了***性能和业务处理速度。
本发明实施例在已有的公共信息模板(Common Information Model,简称CIM)上进行兼容和拓展,以得到本发明实施例提供的一些固定接口的信息模板,以便为NFAP给出一个统一标准化的模板形式表示。其中,本发明实施例提供的在CIM上拓展后的信息模板如图2a所示,右边的为现有的CIM类模板,而左边是本发明实施例在右边CIM类模板上的拓展。本发明实施例中的配置模块则是附图2a中左边中的网络功能加速设备配置模板的具体体现,数据流转发模块是网络功能加速设备流表模板的具体体现,除此之外,本发明实施例还可以根据该固定接口的信息模板,根据网络功能加速设备上报模板,在上电时,在FPGA中得到信息上报模块。具体来说,在FPGA上电加载的框架文件中,具体包括了根据网络功能加速设备配置模板生成的配置模块,和根据网络功能加速设备流表模板生成的数据流转发模块。若需要信息上报模块,则框架文件还包括根据网络功能加速设备上报模板生成的信息上报模块,那么,在上电加载FPGA框架文件后,FPGA中包括了配置模块、数据流转发模块和信息上报模块。
可以理解的是,附图2a所提供的固定接口的信息模板仅是本发明实施例提供的一具体实现方式,还可以根据具体需要,在现有CIM类模板的基础上进行其它兼容和拓展,在此不作限定。
同时,本发明实施例还在CIM类模板基础上提供了PR区域的配置模板,具体如附图2b所示。其中,可以包括网络功能模板、NFV功能模板、服务质量(Quality of Service,简称QoS)功能模板和条件功能模板。而本发明实施例主要通过VM部署NFV业务,因此,在NFV功能模板继承下具体还包括NFV链路模板、NFV路径模板、NFV虚拟功能模板和NFV功能配置数据模板。NFV链路模板包括NFV逻辑链路模板,NFV路径模板具体包括NFV转发路径模板,NFV虚拟功能模板中包括NFV虚拟功能位置模板、NFV逻辑链路接口、虚拟网络功能静态数据、虚拟网络功能模板和虚拟加速功能模板,其中,NFV虚拟功能位置模板还包括虚拟计算***模板。值得注意的是,附图2b中的实心箭头表示上下两级是继承关系,直线表示上下两级是关联关系,空心菱形表示上下两级是聚合关系。其中,继承关系、关联关系和聚合关系的表示方式均为本领域中常用的表示方式。
根据上述介绍,上述步骤S103中的VM根据所述业务配置指令和配置模板生成所述PR配置资源,主要包括如附图3所示的步骤:
A31、所述VM向所述物理机申请内存资源,并根据所述内存资源生成配置文件;所述配置文件包括缓冲区地址、缓冲区大小;
当物理机生成VM后,VM与M个PR区域中的至少一个具有对应关系。VM向物理机申请内存资源,以便VM与PR区域交互时使用。其中,内存资源可以是缓冲区地址和缓冲区大小,本领域的技术人员可以理解,VM还可以向物理机申请其他内存资源,在此只例举缓冲区地址和缓冲区大小,但是不作为本发明中内存资源的限定。
VM和具有对应关系的PR区域可以对申请的缓存区进行读取操作。
A32、所述VM根据配置模板和所述业务配置指令所指示的业务能力,从数据库中获取与所述业务能力对应的PR执行文件,所述PR执行文件与所述PR配置文件组成所述PR配置资源。
附图2b所示的配置模板可以存储在物理机中,VM从业务配置指令中可以获取到PR区域的业务处理能力,然后通过在配置模块中匹配到具体的功能模板,进而根据功能模板名从数据库中获取相应的执行文件。
可以理解的是,为了减少物理机中CPU的消耗,执行文件可以存储在服务器的数据库中,或者是外部其它设备的数据库中,在此不作限定。
举例来说,若需要将PR区域配置成具备DPI处理能力,也就是附图2b中所示的虚拟加速功能模板的具体体现。首先,VM从业务配置指令中获取到业务能力为DPI处理能力,也就是将PR区域配置成具备DPI处理能力的区域。再根据DPI处理能力在配置模板中匹配到具体的功能模板名:虚拟加速功能模板,最后通过虚拟加速功能模板从数据库中获取到相应的PR执行文件。PR执行文件和PR配置文件则组成配置PR区域需要的PR配置资源。
通过在PR区域中进行业务资源配置使得PR区域具备业务处理能力,而通过在数据流转发模块的转发流表中添加转发条目,从而使得数据流转发模块可以通过查找转发流表中的转发条目,将待处理的网络报文转发到PR区域上。
具体地,上述数据流转发模块通过查找所述转发流表将接收到的网络报文转发到相应的PR区域上包括如图4a所示的步骤:
A41、所述数据流转发模块接收待处理的网络报文,从所述待处理的网络报文中获取转发参数;
优选地,本发明实施例提供的转发参数至少包括待处理的网络报文中的五元组,包括目的网际协议互联网协议(Internet Protocol,简称IP)地址、源IP地址、目的端口、源端口和传输层协议号。
A42、所述数据流转发模块在所述转发流表中查找所述转发参数对应的转发条目;
转发条目是物理机从待处理的网络报文中获取转发参数,然后根据转发模板生成转发条目,具体生成过程将在后续实施例中进行详细介绍。
数据流转发模块的转发流表中包括多个转发条目,一个PR区域可以对应多条转发条目。转发条目以哈希地址为索引存储在该转发流表中,能够提高转发流表的查找速度。其中,每个转发条目至少包括哈希地址、上述五元组和PR区域。
可选地,转发条目中还可以包括下一跳地址等。
可以理解的是,哈希地址可以由从待处理的网络报文中获取的五元组计算得到。
A43、当在所述转发流表中查找到所述转发参数对应的转发条目时,所述数据流转发模块在查找到的转发条目中查找PR区域;
A44、所述数据流转发模块将所述待处理的网络报文发送给查找到的PR区域。
若在转发流表中查找到该转发条目,那么从转发条目中获取到PR区域,然后将待处理的网络报文转发到该PR区域上。
若在转发流表中查找不到匹配的转发条目时(包括数据流转发模块首次接收待处理的网络报文时,此时数据流转发模块中的转发流表是空白的),那么数据流转发模块将待处理的网络报文发送给物理机,由物理机对该待处理的网络报文进行处理,具体包括:
B41、所述物理机接收到待处理的网络报文,查找业务规则表,所述业务规则表用于指示PR区域的处理能力;
查找业务规则表,判断是否有PR区域的业务处理能力能够处理待处理的网络报文。
其中,业务规则表中主要包括所配置的PR区域和PR区域所具备的业务处理能力。只有在PR区域具备相应的业务处理能力时,才将待处理的网络报文转发到PR区域进行处理。
业务规则表可以存储在物理机中,可以在配置模块对PR区域进行配置后,VM将PR区域及其具备的业务处理能力通知到物理机,然后由物理机更新业务规则表;当然,也可以在VM生成,并在VM从业务配置指令中获知PR区域的业务处理能力之后,就将PR区域及其业务处理能力通知到物理机,由物理机更新业务规则表。
B42、若在所述业务规则表中查找到处理所述待处理的网络报文的PR区域,所述物理机从所述待处理的网络报文中获取转发模板要求的转发参数;
如果能找到具备业务能力能够处理待处理的网络报文的PR区域,那么将从待处理的网络报文中获取转发参数,该转发参数包括上述五元组。
B43、所述物理机根据所述转发模板生成转发条目,所述转发条目包括五元组和具有处理所述待处理的网络报文的PR区域;
B44、所述物理机将所述转发条目下发给所述配置模块,以便所述配置模块在所述数据流转发模块的转发流表中添加所述转发条目。
本发明实施例还提供了转发模板,该转发模板可以存储在物理机中,物理机从待处理的网络报文中获取转发参数。可以理解的是,转发参数也就是是转发模板中指示需要的一些参数,进而根据转发模板将转发参数生成转发条目。
举例来说,在转发模板中以哈希地址作为索引存储转发条目,每个转发条目包括源IP地址、源端口、目的IP地址、目的端口和传输层协议号等五元组,哈希地址由五元组通过哈希计算得到。那么,根据转发模板,物理机首先从待处理的网络报文中获取五元组,然后根据五元组计算得到哈希地址,并根据业务规则表查找到具备相应处理能力的PR区域,从而生成转发条目。
将生成的转发条目发送给配置模块,通过配置模块将转发条目添加到转发流表中。
例如,数据流转发模块中的转发流表可以如下表1所示:
表1
按照上述表1所示的转发流表,若数据流转发模块接收到待处理的网络报文,并从网络报文上获取源IP地址192.168.1.8、目的IP地址202.192.168.15、源端口54078、目的端口53896和传输层协议号6等五元组,然后根据该五元组计算得到哈希地址1,在转发流表中通过哈希地址查找到所要转发到的区域为PR2区域,那么将待处理的网络报文转发到PR2区域上。
需要说明的是,转发流表与业务支持的转发条目数量相关,为了减少哈希冲突,降低查找转发流表时间,哈希地址的存储空间可以为转发条目数量与单个转发条目存储空间的乘积的5陪以上,然后再增加转发条目数量与单个转发条目存储空间的乘积作为存储冲突的转发条目,且转发流表可以进行更新,也有可能老化。
进一步地,若在业务规则表中查找不到具备能力处理待处理的网络报文的PR区域时,该待处理的网络报文将由相应的VM进行处理,生成的转发条目中包括相应的VM。当然,也可以不用生成转发条目,而是物理机在业务规则表中查找失败后,直接将待处理的网络报文转发给相应的VM进行处理。
根据上述附图2a所提供的信息模板,FPGA中还可以包括信息上报模块,PR区域对待处理的网络报文进行业务处理后,可以通过信息上报模块将处理结果发送给相应的VM,或者在处理待处理的网络报文中,可以通过信息上报模块上报相应的VM,以获得相应的控制策略。
在FPGA中,还包括有接收器,该接收器用于直接接收待处理的网络报文,然后将待处理的网络报文发送到数据流转发模块上,由数据流转发模块查找转发流表,进行后续处理。同样,FPGA中还包括有发送器,发送器分别连接到PR区域上,在PR区域对待处理的网络报文进行业务处理后,将处理的网络报文转发出去。当然,还可以在FPGA中增设其它模块,PR区域先将处理后的网络报文转发到其它模块上,通过其它模块转发给发送器,然后通过发送器将处理后的网络报文发送出去。
如图5所示,本发明实施例还提供了一种网络功能加速平台NFAP,包括物理机51和加速卡52,所述物理机51通过PCIe数据通道与所述加速卡52连接;其中,所述加速卡52中包括现场可编程门阵列FPGA-521;
所述FPGA-521用于:在上电时加载FPGA框架文件,使得所述FPGA中包括M个部分重配置PR区域、配置模块和数据流转发模块;其中,所述FPGA中的硬件资源划分给所述PR区域,所述配置模块连接到所述PCIe数据通道上,并与所述PR区域连接,所述数据流转发模块与所述PR区域连接,所述数据流转发模块中包括空白的转发流表;所述M为大于或等于1的正整数;
所述物理机51用于:在接收到业务配置指令时生成虚拟机VM,并从M个所述PR区域中选择至少一个PR区域与所述VM建立对应关系;
所述配置模块用于:根据PR配置资源对所选择的PR区域进行业务资源配置,以使所选择的PR区域具有业务处理能力;所述PR配置资源为所述VM根据所述业务配置指令和配置模板生成;
所述配置模块还用于:在所述转发流表中添加对应所述PR区域的转发条目;
所述数据流转发模块用于:通过查找所述转发流表将接收到的网络报文转发到相应的PR区域上;所述转发条目是所述物理机根据待处理的网络报文和转发模板生成。
在FPGA上电使用时,先从其所在的加速卡闪存flash上下载FPGA框架文件,然后FPGA通过加载该FPGA框架文件后,使得FPGA中包括了M个部分重配置(PR,PartialReconfigurable)区域、配置模块和数据流转发模块。其中,配置模块连接到PCIe数据通道上,数据流转发模块与所述PR区域连接得到NFAP。
FPGA中的硬件资源,例如FPGA中的寄存器、内部存储器和(LUT,Look Up Table)查找表等,将划分给PR区域,当然,还可以将FPGA使用的外部存储器等也划分给PR区域。
值得注意的是,相同的硬件资源不会划分给两个不同的PR区域使用,也就是说,不同PR区域使用各自的硬件资源。
优选地,在业务配置指令中,包括配置PR区域需要的业务配置资源,和所要生成的VM的内存大小、硬盘大小、业务能力等。业务能力指与所生成的VM对应的PR区域的业务处理能力。
所生成的VM的内存大小和硬盘大小满足业务配置指令中所指示的内存大小和硬盘大小,PR业务配置资源中包括配置PR区域所需要的PR配置文件和PR区域进行业务处理时所需要的PR执行文件,配置文件主要包括PR区域可使用的缓冲区地址和缓冲区大小等,PR执行文件可以是能够实现包分类、基于状态流分析、深度包检测(Deep PacketInspection,简称DPI)、基于流的负载均衡和安全处理等处理的程序,配置文件中的内容是执行文件在执行时可使用的一些内存资源。
在一个可实施的方式中,所述VM用于:VM向所述物理机申请内存资源,并根据所述内存资源生成PR配置文件;所述配置文件包括缓冲区地址、缓冲区大小;根据配置模板和所述业务配置指令所指示的业务能力,从数据库中获取与所述业务能力对应的PR执行文件,所述PR执行文件与所述PR配置文件组成所述PR配置资源。
在另一个可实施的方式中,所述数据流转发模块具体用于:接收待处理的网络报文,从所述待处理的网络报文中获取转发参数,所述转发参数包括五元组,所述五元组包括目的网际协议IP地址、源IP地址、目的端口、源端口和传输层协议号;在所述转发流表中查找所述转发参数对应的转发条目;当在所述转发流表中查找到所述转发参数对应的转发条目时,在查找到的转发条目中查找PR区域;将所述待处理的网络报文发送给查找到的PR区域。
本发明实施例在已有的公共信息模板(Common Information Model,简称CIM)上进行兼容和拓展,以得到本发明实施例提供的一些信息模板,以便为NFAP给出一个统一标准化的模板形式表示。其中,本发明实施例提供的在CIM上拓展后的信息模板如上述图2a所示,右边的为现有的CIM类模板,而左边是本发明实施例在右边CIM类模板上的拓展。本发明实施例中的配置模块则是附图2a中左边中的网络功能加速设备配置模板的具体体现,数据流转发模块是网络功能加速设备流表模板的具体体现,除此之外,本发明实施例还可以根据该固定接口的信息模板,根据网络功能加速设备上报模板,在上电时,在FPGA中得到信息上报模块。具体来说,在FPGA上电加载的框架文件中,具体包括了根据网络功能加速设备配置模板生成的配置模块,和根据网络功能加速设备流表模板生成的数据流转发模块。若需要信息上报模块,则框架文件还包括根据网络功能加速设备上报模板生成的信息上报模块,那么,在上电加载FPGA框架文件后,FPGA中包括了配置模块、数据流转发模块和信息上报模块。
可以理解的是,附图2a所提供的固定接口的信息模板仅是本发明实施例提供的一具体实现方式,还可以根据具体需要,在现有CIM类模板的基础上进行其它兼容和拓展,在此不作限定。
同时,本发明实施例还在CIM类模板基础上提供了PR区域的配置模板,具体如附图2b所示。其中,可以包括网络功能模板、NFV功能模板、服务质量(Quality of Service,简称QoS)功能模板和条件功能模板。而本发明实施例主要通过VM部署NFV业务,因此,在NFV功能模板继承下具体还包括NFV链路模板、NFV路径模板、NFV虚拟功能模板和NFV功能配置数据模板。NFV链路模板包括NFV逻辑链路模板,NFV路径模板包括NFV转发路径模板,NFV虚拟功能模板中包括NFV虚拟功能位置模板、NFV逻辑链路接口、虚拟网络功能静态数据、虚拟网络功能模板和虚拟加速功能模板。其中,NFV虚拟功能位置模板还包括虚拟计算***模板。值得注意的是,附图2b中的实心箭头表示上下两级是继承关系,直线表示上下两级是关联关系,空心菱形表示上下两级是聚合关系。其中,继承关系、关联关系和聚合关系的表示方式均为本领域中常用的表示方式。
在另一个可实施的方式中,所述数据流转发模块还用于:当在所述转发流表中查找不到所述转发参数对应的转发条目时,将所述待处理的网络报文发送给所述物理机。
在另一个可实施的方式中,所述物理机还用于:接收待处理的网络报文,查找业务规则表,所述业务规则表用于指示PR区域的处理能力;若在所述业务规则表中查找到处理所述待处理的网络报文的PR区域,从所述待处理的网络报文中获取转发模板要求的转发参数;根据所述转发模板生成转发条目,所述转发条目包括五元组和具有处理所述待处理的网络报文的PR区域;将所述转发条目下发给所述配置模块,以便所述配置模块在所述数据流转发模块的转发流表中添加所述转发条目。
在FPGA上电时,加载FPGA框架文件,使得FPGA中包括M个部分重配置PR区域、配置模块和数据流转发模块,且FPGA中的硬件资源划分给PR区域,配置模块连接到PCIe通道上,并与所述PR区域分别连接,所述数据流转发模块与所述PR区域连接。那么在接收到业务配置指令时,物理机根据该业务配置指令生成VM,该VM与至少一个PR区域建立对应关系,配置模块根据PR配置资源对所选择的PR区域进行业务资源配置,配置模块还在所述转发流表中添加对应所述PR区域的转发条目,以使所述数据流转发模块通过查找所述转发流表将接收到的网络报文转发到相应的PR区域上。与现有技术相比,本发明实施例中FPGA通过加载FPGA框架文件,使得在FPGA中获得M个部分重配置PR区域、配置模块和数据流转发模块,然后,再通过配置模块对PR区域和数据流转发模块进行配置,使得PR区域具有处理业务的能力,减少VM处理,提高整个***的处理效率和处理速度。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的***,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的***,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上对本发明所提供的一种业务部署方法及网络功能加速平台进行了详细介绍,对于本领域的一般技术人员,依据本发明实施例的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (10)
1.一种业务部署方法,其特征在于,应用于网络功能加速平台NFAP,所述NFAP中包括物理机和加速卡,所述物理机与加速卡通过PCIe数据通道连接,所述加速卡中包括现场可编程门阵列FPGA,所述方法包括:
在所述FPGA上电时,所述FPGA加载FPGA框架文件,使得所述FPGA中包括M个部分重配置PR区域、配置模块和数据流转发模块;其中,所述FPGA中的硬件资源划分给所述PR区域,所述配置模块连接到所述PCIe数据通道上,并与所述PR区域连接,所述数据流转发模块与所述PR区域连接,所述数据流转发模块中包括空白的转发流表;所述M为大于或等于1的正整数;
在接收到业务配置指令时,所述物理机生成虚拟机VM,并从M个所述PR区域中选择至少一个PR区域与所述VM建立对应关系;
所述配置模块根据PR配置资源对所选择的PR区域进行业务资源配置,以使所选择的PR区域具有业务处理能力;所述PR配置资源为所述VM根据所述业务配置指令和配置模板生成;
所述配置模块在所述转发流表中添加对应所述PR区域的转发条目,以使所述数据流转发模块通过查找所述转发流表将接收到的网络报文转发到相应的PR区域上;所述转发条目是所述物理机根据待处理的网络报文和转发模板生成。
2.根据权利要求1所述的方法,其特征在于,所述VM根据所述业务配置指令和配置模板生成所述PR配置资源包括:
所述VM向所述物理机申请内存资源,并根据所述内存资源生成PR配置文件;所述配置文件包括缓冲区地址、缓冲区大小;
所述VM根据配置模板和所述业务配置指令所指示的业务能力,从数据库中获取与所述业务能力对应的PR执行文件,所述PR执行文件与所述PR配置文件组成所述PR配置资源。
3.根据权利要求1或2所述的方法,其特征在于,所述数据流转发模块通过查找所述转发流表将接收到的网络报文转发到相应的PR区域上包括:
所述数据流转发模块接收待处理的网络报文,从所述待处理的网络报文中获取转发参数,所述转发参数包括五元组,所述五元组包括目的网际协议IP地址、源IP地址、目的端口、源端口和传输层协议号;
所述数据流转发模块在所述转发流表中查找所述转发参数对应的转发条目;
当在所述转发流表中查找到所述转发参数对应的转发条目时,所述数据流转发模块在查找到的转发条目中查找PR区域;
所述数据流转发模块将所述待处理的网络报文发送给查找到的PR区域。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
当在所述转发流表中查找不到所述转发参数对应的转发条目时,所述数据流转发模块将所述待处理的网络报文发送给所述物理机。
5.根据权利要求4所述的方法,其特征在于,所述数据流转发模块将所述待处理的网络报文发送给所述物理机之后包括:
所述物理机接收待处理的网络报文,并查找业务规则表,所述业务规则表用于指示PR区域的处理能力;
若在所述业务规则表中查找到处理所述待处理的网络报文的PR区域,所述物理机从所述待处理的网络报文中获取转发模板要求的转发参数;
所述物理机根据所述转发模板生成转发条目,所述转发条目包括五元组和具有处理所述待处理的网络报文的业务能力的PR区域;
所述物理机将所述转发条目下发给所述配置模块,以便所述配置模块在所述数据流转发模块的转发流表中添加所述转发条目。
6.一种网络功能加速平台,其特征在于,所述网络功能加速平台包括物理机和加速卡,所述物理机与加速卡通过PCIe数据通道连接,所述加速卡中包括现场可编程门阵列FPGA;
所述FPGA用于:在上电时加载FPGA框架文件,使得所述FPGA中包括M个部分重配置PR区域、配置模块和数据流转发模块;其中,所述FPGA中的硬件资源划分给所述PR区域,所述配置模块连接到所述PCIe数据通道上,并与所述PR区域连接,所述数据流转发模块与所述PR区域连接,所述数据流转发模块中包括空白的转发流表;所述M为大于或等于1的正整数;
所述物理机用于:在接收到业务配置指令时生成虚拟机VM,并从M个所述PR区域中选择至少一个PR区域与所述VM建立对应关系;
所述配置模块用于:根据PR配置资源对所选择的PR区域进行业务资源配置,以使所选择的PR区域具有业务处理能力;所述PR配置资源为所述VM根据所述业务配置指令和配置模板生成;
所述配置模块还用于:在所述转发流表中添加对应所述PR区域的转发条目;
所述数据流转发模块用于:通过查找所述转发流表将接收到的网络报文转发到相应的PR区域上;所述转发条目是所述物理机根据待处理的网络报文和转发模板生成。
7.根据权利要求6所述的网络功能加速平台,其特征在于,
所述VM用于:VM向所述物理机申请内存资源,并根据所述内存资源生成PR配置文件;所述配置文件包括缓冲区地址、缓冲区大小;根据配置模板和所述业务配置指令所指示的业务能力,从数据库中获取与所述业务能力对应的PR执行文件,所述PR执行文件与所述PR配置文件组成所述PR配置资源。
8.根据权利要求6或7所述的网络功能加速平台,其特征在于,
所述数据流转发模块具体用于:接收待处理的网络报文,从所述待处理的网络报文中获取转发参数,所述转发参数包括五元组,所述五元组包括目的网际协议IP地址、源IP地址、目的端口、源端口和传输层协议号;在所述转发流表中查找所述转发参数对应的转发条目;当在所述转发流表中查找到所述转发参数对应的转发条目时,在查找到的转发条目中查找PR区域;将所述待处理的网络报文发送给查找到的PR区域。
9.根据权利要求8所述的网络功能加速平台,其特征在于,
所述数据流转发模块还用于:当在所述转发流表中查找不到所述转发参数对应的转发条目时,将所述待处理的网络报文发送给所述物理机。
10.根据权利要求8所述的网络功能加速平台,其特征在于,
所述物理机还用于:接收待处理的网络报文,并查找业务规则表,所述业务规则表用于指示PR区域的处理能力;若在所述业务规则表中查找到处理所述待处理的网络报文的PR区域,从所述待处理的网络报文中获取转发模板要求的转发参数;根据所述转发模板生成转发条目,所述转发条目包括五元组和具有处理所述待处理的网络报文的业务能力的PR区域;将所述转发条目下发给所述配置模块,以便所述配置模块在所述数据流转发模块的转发流表中添加所述转发条目。
Priority Applications (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410331856.7A CN105306241B (zh) | 2014-07-11 | 2014-07-11 | 一种业务部署方法及网络功能加速平台 |
PCT/CN2015/077383 WO2016004781A1 (zh) | 2014-07-11 | 2015-04-24 | 一种业务部署方法及网络功能加速平台 |
EP19213541.6A EP3684012B1 (en) | 2014-07-11 | 2015-04-24 | Service deployment method and network function accelerating platform |
EP15819218.7A EP3154223B1 (en) | 2014-07-11 | 2015-04-24 | Service deployment method and network function accelerating platform |
US15/403,798 US10511479B2 (en) | 2014-07-11 | 2017-01-11 | Service deployment method and network functions acceleration platform |
US16/697,135 US10979293B2 (en) | 2014-07-11 | 2019-11-26 | Service deployment method and network functions acceleration platform |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410331856.7A CN105306241B (zh) | 2014-07-11 | 2014-07-11 | 一种业务部署方法及网络功能加速平台 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105306241A CN105306241A (zh) | 2016-02-03 |
CN105306241B true CN105306241B (zh) | 2018-11-06 |
Family
ID=55063559
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410331856.7A Active CN105306241B (zh) | 2014-07-11 | 2014-07-11 | 一种业务部署方法及网络功能加速平台 |
Country Status (4)
Country | Link |
---|---|
US (2) | US10511479B2 (zh) |
EP (2) | EP3154223B1 (zh) |
CN (1) | CN105306241B (zh) |
WO (1) | WO2016004781A1 (zh) |
Families Citing this family (32)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10270709B2 (en) | 2015-06-26 | 2019-04-23 | Microsoft Technology Licensing, Llc | Allocating acceleration component functionality for supporting services |
US10229085B2 (en) | 2015-01-23 | 2019-03-12 | Hewlett Packard Enterprise Development Lp | Fibre channel hardware card port assignment and management method for port names |
US10198294B2 (en) | 2015-04-17 | 2019-02-05 | Microsoft Licensing Technology, LLC | Handling tenant requests in a system that uses hardware acceleration components |
US9792154B2 (en) | 2015-04-17 | 2017-10-17 | Microsoft Technology Licensing, Llc | Data processing system having a hardware acceleration plane and a software plane |
US10296392B2 (en) | 2015-04-17 | 2019-05-21 | Microsoft Technology Licensing, Llc | Implementing a multi-component service using plural hardware acceleration components |
US10511478B2 (en) * | 2015-04-17 | 2019-12-17 | Microsoft Technology Licensing, Llc | Changing between different roles at acceleration components |
US9588791B2 (en) * | 2015-04-27 | 2017-03-07 | Altera Corporation | Flexible physical function and virtual function mapping |
US10216555B2 (en) | 2015-06-26 | 2019-02-26 | Microsoft Technology Licensing, Llc | Partially reconfiguring acceleration components |
CN109314103B (zh) * | 2016-06-30 | 2023-08-15 | 英特尔公司 | 用于远程现场可编程门阵列处理的方法和装置 |
CN113328874B (zh) * | 2016-11-30 | 2022-11-08 | 华为技术有限公司 | 一种应用于nfv***的数据加速方法、装置和*** |
US10764129B2 (en) * | 2017-04-18 | 2020-09-01 | Amazon Technologies, Inc. | Logic repository service supporting adaptable host logic |
US10223318B2 (en) * | 2017-05-31 | 2019-03-05 | Hewlett Packard Enterprise Development Lp | Hot plugging peripheral connected interface express (PCIe) cards |
US10503551B2 (en) * | 2017-06-07 | 2019-12-10 | Dell Products L.P. | Coordinating FPGA services using cascaded FPGA service managers |
EP3663912A4 (en) | 2017-08-22 | 2020-08-12 | Huawei Technologies Co., Ltd. | ACCELERATION TREATMENT PROCESS AND DEVICE |
CN109656672B (zh) * | 2017-10-11 | 2023-03-21 | 阿里巴巴集团控股有限公司 | 一种文件加载方法及*** |
CN109656676B (zh) * | 2017-10-11 | 2023-01-06 | 阿里巴巴集团控股有限公司 | 多虚拟机共享fpga的控制方法、装置及电子设备 |
CN108319563B (zh) | 2018-01-08 | 2020-01-03 | 华中科技大学 | 一种基于fpga的网络功能加速方法和*** |
CN110162378B (zh) | 2018-02-13 | 2023-12-29 | 华为技术有限公司 | 一种资源调度的方法、装置、设备及*** |
WO2019235467A1 (ja) * | 2018-06-05 | 2019-12-12 | 日本電気株式会社 | システム、サーバ、検証方法及びプログラム |
CN109634720B (zh) * | 2018-12-13 | 2021-11-19 | 郑州云海信息技术有限公司 | 一种多虚拟机共享fpga板卡的方法、***及装置 |
CN110287142B (zh) * | 2018-12-29 | 2023-05-26 | 中国科学院软件研究所 | 多功能星载超算装置及卫星 |
US11055109B2 (en) * | 2019-05-01 | 2021-07-06 | Mellanox Technologies, Ltd. | Acceleration module supporting controlled configuration of a programmable logic device |
CN112860618A (zh) * | 2019-11-26 | 2021-05-28 | 中移(苏州)软件技术有限公司 | 一种资源管理方法、装置及存储介质 |
CN111597142B (zh) * | 2020-05-15 | 2024-04-12 | 北京光润通科技发展有限公司 | 一种基于fpga的网络安全加速卡及加速方法 |
US11182221B1 (en) * | 2020-12-18 | 2021-11-23 | SambaNova Systems, Inc. | Inter-node buffer-based streaming for reconfigurable processor-as-a-service (RPaaS) |
US11782760B2 (en) | 2021-02-25 | 2023-10-10 | SambaNova Systems, Inc. | Time-multiplexed use of reconfigurable hardware |
US11200096B1 (en) | 2021-03-26 | 2021-12-14 | SambaNova Systems, Inc. | Resource allocation for reconfigurable processors |
US20220321403A1 (en) * | 2021-04-02 | 2022-10-06 | Nokia Solutions And Networks Oy | Programmable network segmentation for multi-tenant fpgas in cloud infrastructures |
CN114422367B (zh) * | 2022-03-28 | 2022-09-06 | 阿里云计算有限公司 | 报文处理方法及装置 |
CN115334064B (zh) * | 2022-07-26 | 2023-06-13 | 广州通则康威智能科技有限公司 | 一种配置***的生成方法及装置 |
CN115834498B (zh) * | 2023-01-06 | 2023-05-02 | 北京中科网威信息技术有限公司 | 业务加速方法、装置、设备及介质 |
CN116599892B (zh) * | 2023-07-17 | 2023-10-03 | 浪潮电子信息产业股份有限公司 | 一种服务器***、路由方法、装置及电子设备和存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101645832A (zh) * | 2009-05-07 | 2010-02-10 | 曙光信息产业(北京)有限公司 | 一种基于fpga的虚拟机网络数据包处理方法 |
CN103141058A (zh) * | 2010-09-23 | 2013-06-05 | 思科技术公司 | 用于虚拟分布式业务的网络接口控制器 |
CN103595648A (zh) * | 2012-08-17 | 2014-02-19 | 国际商业机器公司 | 用于在服务器的接收侧进行负载均衡的方法和*** |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8010990B2 (en) * | 2006-10-26 | 2011-08-30 | Intel Corporation | Acceleration of packet flow classification in a virtualized system |
WO2009033630A1 (en) * | 2007-09-13 | 2009-03-19 | Friedrich-Alexander-Universität Erlangen-Nürnberg | Logic chip, logic system and method for designing a logic chip |
US20130034094A1 (en) * | 2011-08-05 | 2013-02-07 | International Business Machines Corporation | Virtual Switch Data Control In A Distributed Overlay Network |
WO2014062405A1 (en) * | 2012-10-16 | 2014-04-24 | Citrix Systems, Inc. | Systems and methods for bridging between public and private clouds through multi-level api integration |
US9298484B2 (en) * | 2013-03-14 | 2016-03-29 | International Business Machines Corporation | Encapsulation of an application for virtualization |
CN104079478B (zh) * | 2013-03-25 | 2017-06-16 | 新华三技术有限公司 | 报文转发方法和装置 |
US9847935B2 (en) * | 2014-04-29 | 2017-12-19 | Intel Corporation | Technologies for distributed routing table lookup |
DE102014208771A1 (de) * | 2014-05-09 | 2015-11-12 | Mobotix Ag | Dynamisch konfigurierte Videokamera |
US20150350077A1 (en) * | 2014-05-30 | 2015-12-03 | Brocade Communications Systems, Inc. | Techniques For Transforming Legacy Networks Into SDN-Enabled Networks |
JP2016035692A (ja) * | 2014-08-04 | 2016-03-17 | キヤノン株式会社 | 画像処理装置、システム、情報処理方法及びプログラム |
-
2014
- 2014-07-11 CN CN201410331856.7A patent/CN105306241B/zh active Active
-
2015
- 2015-04-24 WO PCT/CN2015/077383 patent/WO2016004781A1/zh active Application Filing
- 2015-04-24 EP EP15819218.7A patent/EP3154223B1/en active Active
- 2015-04-24 EP EP19213541.6A patent/EP3684012B1/en active Active
-
2017
- 2017-01-11 US US15/403,798 patent/US10511479B2/en active Active
-
2019
- 2019-11-26 US US16/697,135 patent/US10979293B2/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101645832A (zh) * | 2009-05-07 | 2010-02-10 | 曙光信息产业(北京)有限公司 | 一种基于fpga的虚拟机网络数据包处理方法 |
CN103141058A (zh) * | 2010-09-23 | 2013-06-05 | 思科技术公司 | 用于虚拟分布式业务的网络接口控制器 |
CN103595648A (zh) * | 2012-08-17 | 2014-02-19 | 国际商业机器公司 | 用于在服务器的接收侧进行负载均衡的方法和*** |
Also Published As
Publication number | Publication date |
---|---|
US10979293B2 (en) | 2021-04-13 |
US20200099579A1 (en) | 2020-03-26 |
US10511479B2 (en) | 2019-12-17 |
CN105306241A (zh) | 2016-02-03 |
US20170126487A1 (en) | 2017-05-04 |
EP3154223B1 (en) | 2019-12-25 |
EP3684012B1 (en) | 2023-06-21 |
EP3154223A4 (en) | 2017-06-14 |
WO2016004781A1 (zh) | 2016-01-14 |
EP3154223A1 (en) | 2017-04-12 |
EP3684012A1 (en) | 2020-07-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105306241B (zh) | 一种业务部署方法及网络功能加速平台 | |
US11411828B2 (en) | Host network analyzer | |
CN114189571B (zh) | 用于实施加速网络分组处理的装置和方法 | |
EP4057595A1 (en) | Facilitating flow symmetry for service chains in a computer network | |
JP6022650B2 (ja) | バーチャルマシンの間でサービスチェーンフローパケットを経路指定するための技術 | |
US10721273B2 (en) | Automated security policy | |
KR102008551B1 (ko) | 물리적 큐들로의 가상 머신 플로우들의 오프로딩 기법 | |
US10135726B2 (en) | Virtualization port layer including physical switch port and logical switch port | |
CN107196807A (zh) | 网络中间设备及其部署方法 | |
US20160182684A1 (en) | Parallel processing of service functions in service function chains | |
US9083611B2 (en) | Method and system for virtual network interface cards (VNICs) over aggregation spanning multiple switches | |
US10341264B2 (en) | Technologies for scalable packet reception and transmission | |
US9886310B2 (en) | Dynamic resource allocation in MapReduce | |
CN104521198A (zh) | 用于虚拟以太网接口绑定的***和方法 | |
US11119675B2 (en) | Polymorphism and type casting in storage volume connections | |
US11263162B2 (en) | System decoder for training accelerators | |
CN109479059B (zh) | 用于容器流量的传输层等级标识和隔离的***和方法 | |
EP3629526B1 (en) | Generating flexible, programmable, and scalable network tunnels on demand | |
JP6939775B2 (ja) | ネットワークシステム、その管理方法および装置 | |
CN106557444A (zh) | 实现sr-iov网卡的方法和装置、实现动态迁移的方法和装置 | |
Katsikas et al. | Metron: High-performance NFV service chaining even in the presence of blackboxes | |
US10616116B1 (en) | Network traffic load balancing using rotating hash | |
US9996335B2 (en) | Concurrent deployment in a network environment | |
US20230164086A1 (en) | Systems and methods for network traffic trunking |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |