一种数据处理方法和装置制造方法及图纸

技术编号:12025503 阅读:56 留言:0更新日期:2015-09-10 10:23
本发明专利技术实施例提供了一种数据处理方法和装置。该数据处理方法,应用于硬件处理单元对主机发送的业务数据进行加速的场景,所述方法由所述硬件处理单元执行,包括:接收来自所述主机业务层发送且透传过所述主机驱动层的请求消息,所述请求消息包括至少一个加速类型标识及待加速处理的业务数据,其中,每个加速类型标识对应于一种加速处理;对所述业务数据进行与所述至少一个加速类型标识一一对应的至少一种加速处理。该方法中主机的业务层与硬件处理单元之间的交互不需要专用的驱动配合,从而可以屏蔽业务层对具体底层驱动的依赖。本方法中硬件处理单元可以运行于不同的业务平台,逻辑的异构能力增强,从而可以提升业务处理过程中的动态性和灵活性。

【技术实现步骤摘要】

本专利技术涉及数据处理
,特别是涉及一种数据处理方法和一种数据处理装置。
技术介绍
随着互联网技术的发展,各种新型业务不断发展,网络数据类型不断丰富,网络流量剧增,从而对处理设备的处理能力提出了更高的要求。为了提高处理能力,目前的处理设备开始越来越多地使用硬件处理单元(如FPGA、ASIC等)来对一些业务进行加速。现有的基于CPU+FPGA进行硬件加速的方案的中,CPU (可认为是“主机”)用于执行业务层(一般也可称为“应用层”、“上层”)以及底层驱动的代码,其中,业务层用于产生需要进行加速的原始加速源数据或者用于接收调度过来的其他业务层的原始加速源数据。底层驱动用于配合业务层完成调度指令的解析、数据转换、数据封装、数据传输等工作。FPGA用于接收底层驱动下发的数据,完成对数据的加速处理,并将处理后的数据通过底层驱动返回给业务层。然而,该方案针对不同的业务类型进行加速时需要依赖于底层驱动,也即业务层必须要通过与不同业务类型配套的专用底层驱动才能完成相应功能的FPGA加速。因此,现有技术方案中每一种需要加速的业务类型都需要定制化的底层驱动,动态性与灵活性差。
技术实现思路
本专利技术实施例提供了一种数据处理方法和装置,用于解决现有技术存在着的针对每一种业务加速场景都需要定制化底层驱动,导致动态性与灵活性差的问题。第一方面,本专利技术实施例提供一种数据处理方法,应用于硬件处理单元对主机发送的业务数据进行加速的场景,所述方法由所述硬件处理单元执行,包括:接收来自所述主机业务层发送且透传过所述主机驱动层的请求消息,所述请求消息包括至少一个加速类型标识及待加速处理的业务数据,其中,每个加速类型标识对应于一种加速处理;对所述业务数据进行与所述至少一个加速类型标识一一对应的至少一种加速处理。结合上述第一方面,在第一种可能的实现方式中,所述请求消息包括多个加速类型标识,所述请求消息还包括:与每个加速类型标识一一对应的加速次序标识,所述加速次序标识用于指示加速处理的顺序;所述对所述业务数据进行与所述至少一个加速类型标识分别对应的至少一种加速处理包括:按所述多个加速次序标识指示的顺序对所述业务数据进行与所述多个加速类型标识—对应的多个加速处理。结合上述第一方面,和/或第一种可能的实现方式,在第二种可能的实现方式中,所述硬件处理单元包括接收模块,组间路由模块,至少一个加速处理组;所述组间路由模块包括组间路由表,所述组间路由表包括加速类型标识与加速处理组之间的对应关系;所述接收来自所述主机业务层发送且透传过所述主机驱动层的请求消息包括:所述接收模块接收来自所述主机业务层发送且透传过所述主机驱动层的请求消息;所述对所述业务数据进行与所述至少一个加速类型标识一一对应的至少一种加速处理包括:所述组间路由模块接收来自所述接收模块发送的所述请求消息;所述组间路由模块解析出所述请求消息中的加速类型标识;所述组间路由模块根据解析出的加速类型标识以及所述组间路由表将所述请求消息转发至目的加速处理组;所述目的加速处理组对所述业务数据进行加速处理。结合上述第一方面,和/或第一种可能的实现方式,和/或第二种可能的实现方式,在第三种可能的实现方式中,所述加速处理组包括解析模块,组内路由模块,至少一个加速处理模块,其中,各个加速处理模块用于对同一业务进行不同类型的加速处理; 所述组内路由模块包括组内路由表,所述组内路由表包括加速类型标识与加速处理模块之间的对应关系;所述目的加速处理组对所述业务数据进行加速处理,包括:所述目的加速处理组的解析模块对所述请求消息进行解析,将业务数据进行缓存,并根据解析结果生成内部转发消息,所述内部转发消息中包括所述加速类型标识及所述业务数据的缓存地址;所述解析模块将所述内部转发消息发送至所述目的加速处理组的组内路由模块;所述组内路由模块根据所述加速类型标识及所述组内路由表将所述内部转发消息发送至目的加速处理模块;所述目的加速处理模块根据所述内部转发消息中包含的所述缓存地址获取所述业务数据并对所述业务数据进行加速处理。结合上述第一方面,和/或第一种可能的实现方式,和/或第二种可能的实现方式,和/或第三种可能的实现方式,在第四种可能的实现方式中,当所述内部转发消息中包含加速次序标识时,所述目的加速处理组对所述业务数据进行加速处理,还包括:所述目的加速处理模块将加速处理后的业务数据进行缓存,并通知所述组内路由丰吴块;所述组内路由模块根据所述加速次序标识将所述内部转发消息发送至下一目的加速处理模块,以使所述下一目的加速处理模块对所述目的加速处理模块缓存的数据进行加速处理,直至所述加速次序标识指示的加速顺序结束。结合上述第一方面,和/或第一种可能的实现方式,和/或第二种可能的实现方式,和/或第三种可能的实现方式,和/或第四种可能的实现方式,在第五种可能的实现方式中,所述方法还包括:所述目的加速处理模块将处理后的业务数据进行缓存;当所述业务数据全部加速处理完毕时,所述目的组内路由模块读取缓存的所述处理后的业务数据;所述目的组内路由模块根据所述处理后的业务数据生成所述请求消息对应的反馈消息;所述目的组内路由模块将所述反馈消息发送至所述组间路由模块,以使所述组间路由模块将所述反馈消息发送至所述主机。结合上述第一方面,和/或第一种可能的实现方式,和/或第二种可能的实现方式,和/或第三种可能的实现方式,和/或第四种可能的实现方式,和/或第五种可能的实现方式,在第六种可能的实现方式中,所述反馈消息与所述请求消息具有相同的消息结构,其中,所述消息结构中包括用于区分所述反馈消息与所述请求消息的消息类型字段。结合上述第一方面,和/或第一种可能的实现方式,和/或第二种可能的实现方式,和/或第三种可能的实现方式,和/或第四种可能的实现方式,和/或第五种可能的实现方式,和/或第六种可能的实现方式,在第七种可能的实现方式中,所述请求消息中设置有字段域和数据域,所述字段域中包含业务头的字段和控制头的字段,所述业务头的字段中包含所述加速类型标识,所述数据域用于携带所述业务数据。结合上述第一方面,和/或第一种可能的实现方式,和/或第二种可能的实现方式,和/或第三种可能的实现方式,和/或第四种可能的实现方式,和/或第五种可能的实现方式,和/或第六种可能的实现方式,和/或第七种可能的实现方式,在第八种可能的实现方式中,所述组间路由表还配置有老化开关和老化时间;所述方法还包括:当所述组间路由表的老化开关开启且到达所述老化时间时,所述组间路由模块上报所述主机,以请求所述主机配置新的组间路由表。结合上述第一方面,和/或第一种可能的实现方式,和/或第二种可能的实现方式,和/或第三种可能的实现方式,和/或第四种可能的实现方式,和/或第五种可能的实现方式,和/或第六种可能的实现方式,和/或第七种可能的实现方式,和/或第八种可能的实现方式,在第九种可能的实现方式中,所述组内路由表还配置有老化开关和老化时间;所述方法还包括:当所述组内路由表的老化开关开启且到达所述老化时间时,所述组内路由模块上报所述主机,以请求所述主机配置新的组内路由表。第二方面,本专利技术实施例还提供了一种数据处理装置,应用于对主机发送的业务数据进行加速的场景,所述装置包括:接收模块,用于接收来自所本文档来自技高网...
一种数据处理方法和装置

【技术保护点】
一种数据处理方法,应用于硬件处理单元对主机发送的业务数据进行加速的场景,其特征在于,所述方法由所述硬件处理单元执行,包括:接收来自所述主机业务层发送且透传过所述主机驱动层的请求消息,所述请求消息包括至少一个加速类型标识及待加速处理的业务数据,其中,每个加速类型标识对应于一种加速处理;对所述业务数据进行与所述至少一个加速类型标识一一对应的至少一种加速处理。

【技术特征摘要】

【专利技术属性】
技术研发人员:陈显波袁宏辉姚滨滨
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:广东;44

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

1