一种雾计算环境业务流量加速系统及其业务流量加速方法与流程

文档序号:15684176发布日期:2018-10-16 20:53阅读:191来源:国知局

本发明涉及计算机技术领域,特别涉及一种雾计算环境业务流量加速系统及其业务流量加速方法。



背景技术:

近年来,互联网发展迅速,从pc互联网、移动互联网来到物联网时代,万物互联的时代已经到来,移动通信设备、物联网终端设备等各类异构设备连接到互联网,云端中心聚合了大量的物理硬件资源,并采用虚拟化技术实现了异构网络计算资源的统一的分配、调度和管理,集中建设数据中心大大降低了计算和存储的成本。然而伴随着数据量越来越庞大,传输的速率却在下降,甚至有时会有很大的网络延迟,计算和存储无法全部放在远程云端。此时雾计算的出现,大大的改善了这种状况,特别是对于边缘侧诸如实时业务、数据优化、带宽限制、应用智能、安全与隐私等多方面需求,加速了“雾计算”的发展,“云计算+雾计算”带来了新的可能性。

雾计算节点更加靠近业务需求侧,其分布式的部署的特点也使其无法具有云端中心如此强大的存储计算能力,因此,对雾计算节点的功耗有了更大的要求。

综上可见,在这种情况下,如何满足边缘侧低功耗的要求已经成为一个亟需解决的问题。



技术实现要素:

本发明实施例提供了一种雾计算环境业务流量加速系统及其业务流量加速方法,能够满足边缘侧低功耗的要求。

第一方面,本发明实施例提供了一种雾计算环境业务流量加速系统,包括:云端服务器、至少一个雾计算节点、至少一个现场可编程门阵列fpga加速卡和至少一个业务终端;

所述云端服务器,用于预先存储至少一个加速程序;

每一个所述业务终端,用于当接收到用户发送的加速需求时,将所述加速需求发送给与所述业务终端连接的雾计算节点;

每一个所述雾计算节点,用于当接收到所述业务终端发送的所述加速需求时,从所述云端服务器存储的所述至少一个加速程序中,下载与所述加速需求相对应的需求加速程序,并将所述需求加速程序加载到与所述雾计算节点相连的至少一个所述fpga加速卡中;

每一个所述fpga加速卡,用于当被加载所述需求加速程序时,利用加载的所述需求加速程序为所述加速需求对应的业务流量加速。

优选地,所述云端服务器,进一步用于分别确定每一个所述加速程序对应的标识信息,将每一个所述标识信息发送给每一个所述雾计算节点;当接收到所述雾计算节点发送的带有加速标识信息的下载请求时,将与所述加速标识信息对应的所述需求加速程序,发送给发送所述下载请求的所述雾计算节点;

所述雾计算节点,进一步用于接收并存储所述云端服务器发送的每一个所述标识信息,当接收到所述业务终端发送的加速需求时,确定所述雾计算节点的本地是否存在与所述加速需求对应的需求加速程序,如果是,执行所述将所述需求加速程序加载到与所述雾计算节点相连的至少一个所述fpga加速卡中,否则,确定存储的每一个所述标识信息中是否存在与所述加速需求对应的加速标识信息,如果是,向所述云端服务器发送带有所述加速标识信息的下载请求,并接收所述云端服务器根据所述下载请求发送的所述需求加速程序。

优选地,所述雾计算节点,进一步用于当存储的每一个所述标识信息中不存在与所述加速需求的加速标识信息时,向所述业务终端发送上传请求;当接收到所述业务终端根据所述上传请求发送的第一个性化加速程序时,将所述第一个性化加速程序加载到与所述雾计算节点对应的所述fpga加速卡中;

所述业务终端,进一步用于接收并转发所述雾计算节点发送的所述上传请求给所述用户;当接收到所述用户根据所述上传请求发送的所述第一个性化加速程序时,将所述第一个性化加速程序发送给所述雾计算节点;

所述fpga加速卡,用于当被加载所述第一个性化加速程序时,利用所述第一个性化加速程序为业务流量加速。

优选地,所述雾计算节点,进一步用于当存储的每一个所述标识信息中不存在与所述加速需求的加速标识信息时,向所述业务终端发送下载位置请求;当接收到所述业务终端根据所述下载位置请求发送的下载位置时,利用所述下载位置获取与所述加速需求相对应的第二个性化加速程序,将所述第二个性化加速程序加载到与所述雾计算节点对应的所述fpga加速卡中;

所述业务终端,进一步用于接收并转发所述雾计算节点发送的所述下载位置请求给所述用户;当接收到所述用户根据所述下载位置请求发送的所述下载位置时,将所述下载位置发送给所述雾计算节点;

所述fpga加速卡,用于当被加载所述第二个性化加速程序时,利用被加载的所述第二个性化加速程序为业务流量加速。

优选地,所述雾计算节点,进一步用于当下载到所述需求加速程序时,确定所述雾计算节点的本地是否存在空闲资源,如果是,将所述需求加速程序加载到与所述雾计算节点相连的至少一个空闲的fpga加速卡中,否则,根据预设的本地资源列表,确定是否存在最佳雾计算节点,如果是,将所述需求加速程序发送给最佳雾计算节点,以使所述最佳雾计算节点将所述需求加速程序加载到与所述最佳雾计算节点相连的fpga加速卡中,并利用被加载所述需求加速程序的所述fpga加速卡为所述业务流量加速,其中,所述最佳雾计算节点的本地存在空闲资源,且与所述雾计算节点相对最近。

优选地,所述雾计算节点,进一步用于当不存在最佳雾计算节点时,确定与所述加速需求对应的业务流量的业务优先级,当所述业务流量的业务优先级高于至少一个正在被加速的业务流量时,释放业务优先级最低的业务流量的fpga加速卡加速资源,向被释放加速资源的所述fpga加速卡中加载所述需求加速程序,其中,所述业务优先级,包括所述用户的访问次数和业务流量大小。

优选地,所述雾计算节点,进一步用于根据预设的时间间隔,向上级雾计算节点发送每一个相连的所述fpga加速卡的状态信息,以使所述上级雾计算节点同步所述状态信息形成本地资源列表,其中,所述状态信息,包括空闲或加速。

优选地,所述雾计算节点,进一步用于在为所述业务流量加速完毕时,等待预设的冷却时间段后释放被加载所述需求加速程序的所述fpga加速卡资源。

优选地,所述雾计算节点,进一步用于记录每一个相连的所述fpga加速卡在加速时产生的数据,将所述数据根据预设的时间周期,向所述云端服务器发送所述数据;

所述云端服务器,进一步用于接收所述雾计算节点发送的所述数据,根据所述数据优化每一个所述加速程序。

第二方面,本发明实施例提供了一种基于第一方面实施例中任一所述的雾计算环境业务流量加速系统的业务流量加速方法,包括:

利用云端服务器预先存储至少一个加速程序;

利用至少一个业务终端中的每一个业务终端,当接收到用户发送的加速需求时,将所述加速需求发送给与所述业务终端连接的雾计算节点;

利用至少一个雾计算节点中的每一个雾计算节点,当接收到所述业务终端发送的所述加速需求时,从所述云端服务器存储的所述至少一个加速程序中,下载与所述加速需求相对应的需求加速程序,并将所述需求加速程序加载到与所述雾计算节点相连的至少一个所述fpga加速卡中;

利用至少一个fpga加速卡中的每一个fpga加速卡,当被加载所述需求加速程序时,利用加载的所述需求加速程序为所述加速需求对应的业务流量加速。

在本发明实施例中,在云端服务端和边缘侧之间的雾计算节点增加fpga加速卡,可以使得雾计算节点在接收到业务终端发送的加速需求时,无需云端服务器为用户的业务加速,而是通过雾计算节点将与加速需求对应的需求加速程序加载到,具有功耗低、实时并行处理能力强、动态可擦洗特点的fpga加速卡中,再通过fpga加速卡利用加载的需求加速程序实现业务逻辑的加速。综上可见,通过fpga加速卡的数字逻辑实现业务逻辑的加速不仅可以满足边缘侧实时性的个性化场景的加速需求,还能满足计算加速和低功耗的性能需求。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本发明一实施例提供的一种雾计算环境业务流量加速系统的结构示意图;

图2是本发明一实施例提供的一种雾计算环境业务流量加速系统的业务流量加速方法的流程图;

图3是本发明一实施例提供的另一种雾计算环境业务流量加速系统的结构示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例,基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。

如图1所示,本发明实施例提供了一种雾计算环境业务流量加速系统,包括:云端服务器101、至少一个雾计算节点102、至少一个现场可编程门阵列fpga加速卡103和至少一个业务终端104;

所述云端服务器101,用于预先存储至少一个加速程序;

每一个所述业务终端104,用于当接收到用户发送的加速需求时,将所述加速需求发送给与所述业务终端连接的雾计算节点102;

每一个所述雾计算节点102,用于当接收到所述业务终端104发送的所述加速需求时,从所述云端服务器101存储的所述至少一个加速程序中,下载与所述加速需求相对应的需求加速程序,并将所述需求加速程序加载到与所述雾计算节点相连的至少一个所述fpga加速卡103中;

每一个所述fpga加速卡103,用于当被加载所述需求加速程序时,利用加载的所述需求加速程序为所述加速需求对应的业务流量加速。

在本发明实施例中,在云端服务端和边缘侧之间的雾计算节点增加fpga加速卡,可以使得雾计算节点在接收到业务终端发送的加速需求时,无需云端服务器为用户的业务加速,而是通过雾计算节点将与加速需求对应的需求加速程序加载到,具有功耗低、实时并行处理能力强、动态可擦洗特点的fpga加速卡中,再通过fpga加速卡利用加载的需求加速程序实现业务逻辑的加速。综上可见,通过fpga加速卡的数字逻辑实现业务逻辑的加速不仅可以满足边缘侧实时性的个性化场景的加速需求,还能满足计算加速和低功耗的性能需求。

需要说明的是,所述云端服务器与每一个所述雾计算节点相连,每一个所述fpga加速卡与所述至少一个雾计算节点相连,每一个雾计算节点与至少一个业务终端相连;

在本发明一实施例中,所述云端服务器,进一步用于分别确定每一个所述加速程序对应的标识信息,将每一个所述标识信息发送给每一个所述雾计算节点;当接收到所述雾计算节点发送的带有加速标识信息的下载请求时,将与所述加速标识信息对应的所述需求加速程序,发送给发送所述下载请求的所述雾计算节点;

所述雾计算节点,进一步用于接收并存储所述云端服务器发送的每一个所述标识信息,当接收到所述业务终端发送的加速需求时,确定所述雾计算节点的本地是否存在与所述加速需求对应的需求加速程序,如果是,执行所述将所述需求加速程序加载到与所述雾计算节点相连的至少一个所述fpga加速卡中,否则,确定存储的每一个所述标识信息中是否存在与所述加速需求对应的加速标识信息,如果是,向所述云端服务器发送带有所述加速标识信息的下载请求,并接收所述云端服务器根据所述下载请求发送的所述需求加速程序。

在本发明实施例中,云端服务器在存储至少一个加速程序后,不是直接将每一个加速程序发送给每一个雾计算节点,而是将每一个加速程序对应的标识信息发送给每一个雾计算节点,避免每一个加速程序占用每一个雾计算节点过多的资源,而导致雾计算节点运行速度降低。而当雾计算节点接收到加速需求时,需要先确定本地是否存在对应的需求加速程序,以使当确定存在需求加速程序后,直接利用本地的需求加速程序而减少与云端服务器的交互,从而减少云端服务器的压力,当本地不存在需求加速程序时,则向云端服务器申请下载需求加速程序。

需要说明的是,由于雾计算节点可能存在多个层级,因此当雾计算节点的本地不存在需求加速程序时,可与雾计算节点相连的上级雾计算节点申请下载需求加速程序,当上级雾计算节点不存在需求加速程序时再向云端服务器申请下载。

在本发明一实施例中,所述雾计算节点,进一步用于当存储的每一个所述标识信息中不存在与所述加速需求的加速标识信息时,向所述业务终端发送上传请求;当接收到所述业务终端根据所述上传请求发送的第一个性化加速程序时,将所述第一个性化加速程序加载到与所述雾计算节点对应的所述fpga加速卡中;

所述业务终端,进一步用于接收并转发所述雾计算节点发送的所述上传请求给所述用户;当接收到所述用户根据所述上传请求发送的所述第一个性化加速程序时,将所述第一个性化加速程序发送给所述雾计算节点;

所述fpga加速卡,用于当被加载所述第一个性化加速程序时,利用所述第一个性化加速程序为业务流量加速。

在本发明实施例中,当确定本地存储的标识信息中不存在与加速需求相对应的加速标识信息时,即确定雾计算节点的本地、上级雾计算节点或云端服务器均不存在与加速需求相对应的需求加速程序是,则确定加速需求对应的加速程序为第一个性化加速程序,因此需要用户将其共享出来,以使完成加速工作。

在本发明一实施例中,所述雾计算节点,进一步用于当存储的每一个所述标识信息中不存在与所述加速需求的加速标识信息时,向所述业务终端发送下载位置请求;当接收到所述业务终端根据所述下载位置请求发送的下载位置时,利用所述下载位置获取与所述加速需求相对应的第二个性化加速程序,将所述第二个性化加速程序加载到与所述雾计算节点对应的所述fpga加速卡中;

所述业务终端,进一步用于接收并转发所述雾计算节点发送的所述下载位置请求给所述用户;当接收到所述用户根据所述下载位置请求发送的所述下载位置时,将所述下载位置发送给所述雾计算节点;

所述fpga加速卡,用于当被加载所述第二个性化加速程序时,利用被加载的所述第二个性化加速程序为业务流量加速。

在本发明实施例中,当确定本地存储的标识信息中不存在与加速需求相对应的加速标识信息时,即可确定加速需求对应的加速程序为第二个性化加速程序,因此需要用户提供获取第二个性化加速程序的下载位置,以使根据下载位置获取第二个性化加速程序,完成加速工作。

在本发明一实施例中,所述雾计算节点,进一步用于当下载到所述需求加速程序时,确定所述雾计算节点的本地是否存在空闲资源,如果是,将所述需求加速程序加载到与所述雾计算节点相连的至少一个空闲的fpga加速卡中,否则,根据预设的本地资源列表,确定是否存在最佳雾计算节点,如果是,将所述需求加速程序发送给最佳雾计算节点,以使所述最佳雾计算节点将所述需求加速程序加载到与所述最佳雾计算节点相连的fpga加速卡中,并利用被加载所述需求加速程序的所述fpga加速卡为所述业务流量加速,其中,所述最佳雾计算节点的本地存在空闲资源,且与所述雾计算节点相对最近。

在本发明实施例中,雾计算节点在下载需求加载程序后,需要先确定本地是否有空闲资源,以使确定是否能运行需求加载程序,当本地不存在空闲资源时,则需要根据本地资源列表,确定与雾计算节点相对最近且本地存在空闲资源的最近雾计算节点,以使利用最近雾计算节点为加速需求对应业务流量加速,以确保完成加速工作。

在本发明一实施例中,所述雾计算节点,进一步用于当不存在最佳雾计算节点时,确定与所述加速需求对应的业务流量的业务优先级,当所述业务流量的业务优先级高于至少一个正在被加速的业务流量时,释放业务优先级最低的业务流量的fpga加速卡加速资源,向被释放加速资源的所述fpga加速卡中加载所述需求加速程序,其中,所述业务优先级,包括所述用户的访问次数和业务流量大小。

在本发明实施例中,当雾计算节点的本地不存在空闲资源,且处雾计算节点外,也不存在本地空闲且与雾计算节点相对最近的最佳雾计算节点时,需要根据用户的访问次数、业务流量大小以及硬件加速效率确定本次业务的优先级,根据业务权重排序,释放业务权重流量最小的业务流量的fpga加速卡加速资源,同时向被释放加速资源的fpga加速卡中加载需求加速程序,以使利用被加载需求加速程序的fpga加速卡加速资源为业务流量加速,以保证完成加速工作。

需要说明的是,根据预设的业务权重排序,当确定业务流量的业务优先级较低时,则不进行硬件加速。等待本地有空闲资源时在为其加速。

在本发明一实施例中,所述雾计算节点,进一步用于根据预设的时间间隔,向上级雾计算节点发送每一个相连的所述fpga加速卡的状态信息,以使所述上级雾计算节点同步所述状态信息形成本地资源列表,其中,所述状态信息,包括空闲或加速。

在本发明实施例中,雾计算节点会记录每一个相连的fpga加速卡的状态信息,以使确定fpga加速卡的状态,进而了解本地的fpga加速卡的硬件加速资源情况,而定时向上级雾计算节点发送状态信息,不仅可以使得上级雾计算节点确定雾计算节点处在连接状态,即确定雾计算节点保持心跳。还可以使得上级雾计算节点同步fpga加速卡资源状况,以使在雾计算节点的本地不存在空闲资源时,根据上级雾计算节点形成的本地资源列表,查找保持心跳、本地有空闲资源且距离相对最近的最佳雾计算节点。

在本发明一实施例中,所述雾计算节点,进一步用于在为所述业务流量加速完毕时,等待预设的冷却时间段后释放被加载所述需求加速程序的所述fpga加速卡资源。

在本发明实施例中,在结束本次业务fpga加速卡加速后,不是直接释放fpga加速卡的加速资源,而是先等待预设的冷却时间再释放,以使当用户再次请求相同的加速时,可以直接进行业务加速,还可以避免周期性瞬间业务量激增或下降带来的波动导致的资源消耗。

在本发明一实施例中,所述雾计算节点,进一步用于记录每一个相连的所述fpga加速卡在加速时产生的数据,将所述数据根据预设的时间周期,向所述云端服务器发送所述数据;

所述云端服务器,进一步用于接收所述雾计算节点发送的所述数据,根据所述数据优化每一个所述加速程序。

在本发明实施例中,雾计算节点将fpga加速卡为业务加速时产生的数据保存在本地,并定期汇聚到云端服务器,以使云端服务器根据fpga加速卡产生的数据,优化fpga加速卡的加速程序,以及优化雾计算节点模型,进而实现提高计算效率的目的。

综上可见,在云端和边缘侧之间的雾计算节点增加fpga加速卡,利用fpga加速卡功耗低、实时并行处理能力强、动态可擦洗的特点,在雾计算节点形成由至少一个fpga加速卡组成的fpga硬件加速资源池,根据边缘侧业务流量进行动态重构和优化,通过fpga加速卡的硬件数字逻辑实现业务逻辑的加速,满足边缘侧实时性等个性化场景需求,同时能满足计算加速和低功耗的性能需求。

分布在云端服务器和边缘侧业务终端间的雾计算节点形成了统一的硬件加速资源池,通过少量网络交换,实现加速资源的统一合理分配优化,一方面业务共享fpga加速卡的硬件加速资源,提高了实时业务执行效率,另一方面,雾计算节点会将其fpga加速卡加速形成的数据汇聚到云端服务器,即云中心,可以实现对fpga加速卡的加速程序进行合理裁剪和优化。另外,fpga加速卡的硬件资源使用完后,需要增加冷却时间,有效的解决短周期峰值带来的资源切换损失问题,同时将其fpga加速卡的加速程序状态记录保存,加速其fpga加速卡加载速度,提高硬件加速资源池的运行效率。

如图2所述,本发明实施例提供了一种业务流量加速方法,其特征在于,包括:

步骤201:利用云端服务器预先存储至少一个加速程序;

步骤202:利用至少一个业务终端中的每一个业务终端,当接收到用户发送的加速需求时,将所述加速需求发送给与所述业务终端连接的雾计算节点;

步骤203:利用至少一个雾计算节点中的每一个雾计算节点,当接收到所述业务终端发送的所述加速需求时,从所述云端服务器存储的所述至少一个加速程序中,下载与所述加速需求相对应的需求加速程序,并将所述需求加速程序加载到与所述雾计算节点相连的至少一个所述fpga加速卡中;

步骤204:利用至少一个fpga加速卡中的每一个fpga加速卡,当被加载所述需求加速程序时,利用加载的所述需求加速程序为所述加速需求对应的业务流量加速。

在本发明实施例中,通过在云端服务端和边缘侧之间的雾计算节点增加fpga加速卡,可以使得雾计算节点在接收到业务终端发送的加速需求时,无需云端服务器为用户的业务加速,而是通过雾计算节点将与加速需求对应的需求加速程序加载到,具有功耗低、实时并行处理能力强、动态可擦洗特点的fpga加速卡中,再通过fpga加速卡利用加载的需求加速程序实现业务逻辑的加速。综上可见,通过fpga加速卡的数字逻辑实现业务逻辑的加速不仅可以满足边缘侧实时性的个性化场景的加速需求,还能满足计算加速和低功耗的性能需求。

综上可见,利用fpga加速卡的功耗低、实时并行处理能力强、动态可擦洗的特点,同时结合雾计算的特点,利用至少一个fpga加速卡形成硬件加速资源池,根据实际业务流量动态重构和优化fpga硬件加速能力,实现物联网边缘侧个性化场景的需求,并能满足计算加速和低功耗的性能需求。

为了更加清晰的说明本发明的技术方案及优点,下面以业务终端d、雾计算节点a、雾计算节点q、与业务终端d相连的雾计算节点j、与雾计算节点j相连的fpga加速卡k和fpga加速卡m为例,如图3所述,对本发明实施例提供的一种雾计算环境业务流量加速系统进行详细描述,包括:

云端服务器301分别与雾计算节点q302、雾计算节点a303和雾计算节点j304相连。

云端服务器301,用于预先存储至少一个加速程序,分别确定每一个加速程序对应的标识信息,将每一个标识信息发送给雾计算节点q302、雾计算节点a303和雾计算节点j304。

具体地,通过云端服务器预先存储至少一个加速程序,可以使得当用户有加速需求时,雾计算节点可以直接下载与加速需求对应的需求加速程序,以使直接利用需求加速程序为业务加速,而无需再从他处获取加速程序。

雾计算节点j304、雾计算节点a303和雾计算节点q302,用于接收并存储云端服务器301发送的每一个标识信息。

雾计算节点j304,用于根据预设的时间间隔,向上级雾计算节点发送fpga加速卡k和fpga加速卡s的状态信息,以使上级雾计算节点同步状态信息形成本地资源列表,其中,状态信息,包括空闲或加速。

具体地,雾计算节点j在fpga加速卡k和fpga加速卡s首次启动上电时,初始化其为白片,并将其加入到雾计算节点j的fpga硬件加速资源池中,标记其工作状态为空闲,以及定时向上级雾计算节点发送每一个fpga加速卡的状态信息。以使上级雾计算节点确定雾计算节点j保持心跳,以及根据状态信息形成本地资源列表,了解本地资源情况。

业务终端d307,用于当接收到用户发送的加速需求时,将加速需求发送给雾计算节点j304。

具体地,业务终端将加速需求发送给雾计算节点d,以使通过雾计算节点j,利用fpga加速卡为本次业务加速。

需要说明的是,业务终端可以是移动终端、智能终端或其他业务侧的终端。

雾计算节点j304,用于当接收到业务终端d307发送的加速请求时,执行:

s0:确定本地是否存在与加速需求对应的需求加速程序,如果是,执行s4,否则,执行s1。

具体地,在雾计算节点j接收到业务终端发送的加速需求后,不是直接确定云端服务端发送的每一个标识信息中是否存在与加速需求相对应的加速标识信息,而是先确定本地是否存在与加速需求相对应的需求加速程序,如果是,则再确定本地是否存在空闲资源,否则,才需要确定是否存在加速标识信息。

s1:确定存储的每一个标识信息中,是否存在与加速需求相对应的加速标识信息,如果是,执行s2,否则,执行s3。

具体地,当雾计算节点j的本次不存在需求加速程序时,需要先确定需求加速程序是否为通用加速程序,即确定存储的标识信息中是否存在与加速需求相对应的加速标识信息,如果是,则可以从云端服务器下载与加速标识信息相对应的需求加速程序,否则,需要用户提供下载位置信息或从边缘侧上传加速程序。

s2:向云端服务器301发送带有加速标识信息的下载请求,接收云端服务器301根据下载请求发送的需求加速程序,执行s4。

具体地,当确定与加速需求相对应的需求加速程序为通用加速程序后,即确定存在与加速需求相对应的加速标识信息时,即可向云端服务器发送下载请求,以使获取需求加速程序完成加速工作。

s3:向业务终端d307发送上传请求,接收业务终端d307根据上传请求发送的第一个性化加速程序,或向业务终端d307发送下载位置请求,接收业务终端d307根据下载位置请求发送的下载位置,根据下载位置获取第二个性化加速程序,执行s4。

具体地,当雾计算节点的本地不存需求加速程序时,可以向业务终端d发送上传请求,以使用户上传第一个性化加速程序。当雾计算节点的本地不存需求加速程序时,还可以向业务终端d发送下载位置请求,以使用户根据下载位置请求发送下载位置,进而获取到第二个性化加速程序。

s4:确定雾计算节点j304的本地是否存在空闲资源,如果是,执行s5,否则,执行s7。

具体地,当本地存在需求加速程序,或从云端服务器下载到需求加速程序,或用户通过业务终端d根据雾计算节点j发送的上传请求所上传的第一个性化加速程序,或根据业务终端d根据雾计算节点j发送的下载位置请求发送的下载位置而获取的第二个性化加速程序后,需要先确定与雾计算节点j相连的fpga加速卡k和fpga加速卡m是否加载过需求加速程序,或第一个性化加速程序,或第二个性化加速程序,如果是,则共用该fpga加速卡为加速需求对应的业务流量加速。否则,需要确定本地是否存在空闲资源,即确定fpga加速卡k和fpga加速卡m是否存在至少一个空闲的fpga加速卡,以使确定是否能够为加速需求对应的业务流量加速。

s5:将需求加速程序,或第一个性化加速程序,或第二个性化加速程序加载到空闲的至少一个fpga加速卡中,利用被加载需求加速程序,或第一个性化加速程序,或第二个个性化加速程序的fpga加速卡为加速程序对应的业务流量加速。

具体地,当确定雾计算节点j的存在空闲资源时,即可将需求加速程序,或第一个性化加速程序,或第二个性化加速程序,加载到空闲的fpga加速卡中,以使利用fpga硬件完成加速工作。

s6:在fpga加速卡加速完毕后,等待预设的冷却时间后释放被加载的需求加速程序的fpga加速卡k的加速资源和/或fpga加速卡m的加速资源。

具体地,在fpga加速卡加速完毕后,需要等待冷却时间后在释放部分fpga加速卡加速资源,这样为了防止周期性瞬间业务量激增或下降的波动带来的资源消耗。

s7:根据带有雾计算节点a303和雾计算节点q302的本地资源列表,确定是否存在本地存在空闲资源且与雾计算节点j304相对最近的最佳雾计算节点,如果是,执行s8,否则,执行s9。

具体地,在雾计算节点j的本地不存在空闲资源时,则需要根据本地资源列表查找保持心跳、本地存在空闲资源且与雾计算节点相对最近的最佳雾计算节点,以使通过最佳雾计算节点完成加速。

s8:将需求加速程序,或第一个性化加速程序,或第二个性化加速程序发送给最佳雾计算节点,以使通过最佳雾计算节点为加速需求对应的业务流量加速。

具体地,当雾计算节点j的本地不存在空闲资源时,则需要确定临近的雾计算节点是否有空闲资源,当存在空闲资源的最佳雾计算节点时,则通过最佳雾计算节点完成加速工作。

s9:确定加速需求对应的业务流量的业务优先级,当业务流量的优先级高于至少一个正在被加速的业务流量时,释放业务优先级最低的业务流量的fpga加速卡加速资源,向被释放加速资源的fpga加速卡中加载需求加速程序,或第一个性化加速程序,或第二个性化加速程序,执行s6。

具体地,当本地不存在空闲资源,且不存在最佳雾计算节点时,需要确定本次业务的业务优先等级,根据业务权重排序,释放业务权重流量最小的fpga加速卡加速资源,同时加载该权重较大的需求加速程序,或第一个性化加速程序,或第二个性化加速程序,否则,本地不存在空闲资源、不存在最佳雾计算节点、且业务流量的业务优先级较低,则本次业务流量不进行硬件加速。

云端服务器301,用于当接收到雾计算节点j304发送的带有加速标识信息的下载请求时,将与加速标识信息对应的需求加速程序发送给雾计算节点j304。

fpga加速卡k305和/或fpga306加速卡m,用于当被加载需求加速程序,或第一个性化加速程序,或第二个性化加速程序时,利用加载的需求加速程序,或第一个性化加速程序,或第二个性化加速程序为业务加速。

综上可见,本发明实施例提供的一种雾计算环境业务流量加速系统及其业务流量加速方法,是在雾计算环境下基于fpga加速卡的业务流量自适应优化,进而实现业务流量加速。通过在云端和边缘侧之间的雾计算节点增加fpga加速卡,形成由至少一个fpga加速卡组成的fpga硬件加速资源池,根据边缘侧业务量,通过fpga加速卡的硬件数字逻辑实现业务逻辑的加速,满足边缘侧实时性等个性化场景需求。另外,云端服务器将会收集雾计算节点的fpga加速卡的加速程序,并根据客户要求将其共享出来。其中,

所述的云端服务器根据实际需求负责将fpga硬件加速程序分发到各级雾计算节点,同时负责收集来自雾计算节点的fpga硬件加速程序反馈,并对程序进行裁剪和优化;所述的雾计算节点部署在云端和边缘侧之间,分为多个层级,可以为边缘侧提供计算、存储、网络能力,同时利用fpga加速卡形成fpga硬件加速资源池,并通过监控业务流量情况实时调整fpga硬件加速资源,实现雾计算节点计算最优化,另外,雾计算节点会节点计算情况定期上传到云中心,用于fpga加速程序的优化。

本发明各个实施例至少具有如下有益效果:

1、在本发明一实施例中,在云端服务端和边缘侧之间的雾计算节点增加fpga加速卡,可以使得雾计算节点在接收到业务终端发送的加速需求时,无需云端服务器为用户的业务加速,而是通过雾计算节点将与加速需求对应的需求加速程序加载到,具有功耗低、实时并行处理能力强、动态可擦洗特点的fpga加速卡中,再通过fpga加速卡利用加载的需求加速程序实现业务逻辑的加速。综上可见,通过fpga加速卡的数字逻辑实现业务逻辑的加速不仅可以满足边缘侧实时性的个性化场景的加速需求,还能满足计算加速和低功耗的性能需求。

2、在本发明一实施例中,云端服务器在存储至少一个加速程序后,不是直接将每一个加速程序发送给每一个雾计算节点,而是将每一个加速程序对应的标识信息发送给每一个雾计算节点,避免每一个加速程序占用每一个雾计算节点过多的资源,而导致雾计算节点运行速度降低。而当雾计算节点接收到加速需求时,需要先确定本地是否存在对应的需求加速程序,以使当确定存在需求加速程序后,直接利用本地的需求加速程序而减少与云端服务器的交互,从而减少云端服务器的压力,当本地不存在需求加速程序时,则向云端服务器申请下载需求加速程序。

3、在本发明一实施例中,当确定本地存储的标识信息中不存在与加速需求相对应的加速标识信息时,即确定雾计算节点的本地、上级雾计算节点或云端服务器均不存在与加速需求相对应的需求加速程序是,则确定加速需求对应的加速程序为第一个性化加速程序,因此需要用户将其共享出来,以使完成加速工作。

4、在本发明一实施例中,当确定本地存储的标识信息中不存在与加速需求相对应的加速标识信息时,即可确定加速需求对应的加速程序为第二个性化加速程序,因此需要用户提供获取第二个性化加速程序的下载位置,以使根据下载位置获取第二个性化加速程序,完成加速工作。

5、在本发明一实施例中,雾计算节点在下载需求加载程序后,需要先确定本地是否有空闲资源,以使确定是否能运行需求加载程序,当本地不存在空闲资源时,则需要根据本地资源列表,确定与雾计算节点相对最近且本地存在空闲资源的最近雾计算节点,以使利用最近雾计算节点为加速需求对应业务流量加速,以确保完成加速工作。

6、在本发明一实施例中,当雾计算节点的本地不存在空闲资源,且处雾计算节点外,也不存在本地空闲且与雾计算节点相对最近的最佳雾计算节点时,需要根据用户的访问次数、业务流量大小以及硬件加速效率确定本次业务的优先级,根据业务权重排序,释放业务权重流量最小的业务流量的fpga加速卡加速资源,同时向被释放加速资源的fpga加速卡中加载需求加速程序,以使利用被加载需求加速程序的fpga加速卡加速资源为业务流量加速,以保证完成加速工作。

7、在本发明一实施例中,雾计算节点会记录每一个相连的fpga加速卡的状态信息,以使确定fpga加速卡的状态,进而了解本地的fpga加速卡的硬件加速资源情况,而定时向上级雾计算节点发送状态信息,不仅可以使得上级雾计算节点确定雾计算节点处在连接状态,即确定雾计算节点保持心跳。还可以使得上级雾计算节点同步fpga加速卡资源状况,以使在雾计算节点的本地不存在空闲资源时,根据上级雾计算节点形成的本地资源列表,查找保持心跳、本地有空闲资源且距离相对最近的最佳雾计算节点。

8、在本发明一实施例中,在结束本次业务fpga加速卡加速后,不是直接释放fpga加速卡的加速资源,而是先等待预设的冷却时间再释放,以使当用户再次请求相同的加速时,可以直接进行业务加速,还可以避免周期性瞬间业务量激增或下降带来的波动导致的资源消耗。

9、在本发明一实施例中,雾计算节点将fpga加速卡为业务加速时产生的数据保存在本地,并定期汇聚到云端服务器,以使云端服务器根据fpga加速卡产生的数据,优化fpga加速卡的加速程序,以及优化雾计算节点模型,进而实现提高计算效率的目的。

需要说明的是,在本文中,诸如第一和第二之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个······”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同因素。

最后需要说明的是:以上所述仅为本发明的较佳实施例,仅用于说明本发明的技术方案,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所做的任何修改、等同替换、改进等,均包含在本发明的保护范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1