一种消息传输方法及设备技术

技术编号:19745075 阅读:47 留言:0更新日期:2018-12-12 04:42
一种消息传输方法及设备。在该方案中,通信设备中的访问组件在确定需要向其他通信设备中的目标硬件设备传输消息时,将消息中的虚拟硬件设备的存储地址转换为目标硬件设备的存储地址,并将消息中的处理器的内存的存储地址转换为指示目标硬件设备的存储地址。这样,当在其他通信设备中的访问组件收到该消息后,就可以不通过该通信设备的处理器进行操作,而是直接根据指示目标硬件设备的存储地址向该目标硬件设备传输消息,从而使该目标硬件设备可以根据消息中包含的存储地址完成读取或写入目标数据的操作。该方案可以节省目标硬件设备所在的通信设备中的处理器的计算资源,也可以降低通信设备对位于其他通信设备的目标硬件设备的访问延迟。

【技术实现步骤摘要】
一种消息传输方法及设备
本申请涉及通信
,尤其涉及一种消息传输方法及设备。
技术介绍
目前,为了实现资源的合理利用,资源整合技术是通信技术发展的一个研究方向。例如,在云计算、分布式计算、虚拟机等方面,均会采用资源整合技术。采用资源整合技术的通信系统可以将至少一个资源设备中的硬件资源作为一个逻辑上的硬件资源池,然后并将该硬件资源池中的硬件资源按照不同应用设备的需求,分配给不同的应用设备。其中,硬件资源可以但不限于包括以下至少一项:存储资源、网络资源、视频处理资源等。另外,该应用设备和资源设备可以部署在同一台物理主机上,也可以部署在不同的物理主机上。由于在该通信系统中,硬件资源池中的硬件资源可以动态的灵活地分配给应用设备使用,因此,采用资源整合技术可以提高该通信系统中硬件资源的利用率。在应用设备和资源设备部署在不同物理主机的场景中,该应用设备需要跨物理主机实现对硬件资源的访问。这种访问方式可以称为应用设备对硬件资源的远端访问。目前,应用设备通过远端访问的方式访问资源设备中的硬件资源的流程如下:1、应用设备中的中央处理器(centralprocessingunit,CPU)a生成访问请求,并发送给所述应用设备的网卡a;2、网卡a通过交换机将访问请求发送给资源设备中的网卡b;3、网卡b将访问请求发送给资源设备中的CPUb;4、CPUb根据访问请求,访问本地的硬件资源;5、硬件资源将访问结果返回给CPUb;6、CPUb将访问结果发送给网卡b;7、网卡b通过交换机将访问结果发送应用设备中的网卡a;8、网卡a将访问结果发送给CPUa。通过以上流程可以看出,应用设备对远端的硬件资源的访问需要远端的资源设备中的CPUb参与,这不仅消耗了CPUb的处理能力,也增加了应用设备对硬件资源的访问延迟。
技术实现思路
本申请提供一种消息传输方法及设备,用于在一个通信设备访问位于另一个通信设备内的硬件设备时,节省该硬件设备所在通信设备中处理器的计算资源,降低通信设备对位于其他通信设备中的硬件设备的访问延迟。第一方面,本申请提供了一种消息传输方法,该方法适用于图1a所示的包含多个通信设备的通信系统,其中每个通信设备中包含处理器、访问组件和至少一个硬件设备。本方法中涉及的第一通信设备为通信系统的任一通信设备。第一通信设备的虚拟硬件设备由至少一个硬件设备组成。所述方法包括以下步骤:第一通信设备的第一访问组件获取所述第一通信设备的处理器传输的消息后,判断该消息的传输对象;在第一访问组件确定传输对象为第二通信设备中的目标硬件设备时,将消息中包含的处理器的内存的存储地址转换为指示该目标硬件设备的存储地址,以及将消息中包含的虚拟硬件设备的存储地址转换为该目标硬件设备的存储地址;然后,第一访问组件向第二通信设备中的第二访问组件发送该消息。通过该方法,当第二访问组件收到该消息后,就可以不通过第二通信设备内的处理器进行操作,即可直接根据指示该目标硬件设备的存储地址,向该目标硬件设备传输该消息,从而使该目标硬件设备可以根据该目标硬件设备的存储地址、指示的该硬件设备的存储地址,完成读取或写入目标数据的操作。显然,该方法可以节省第二通信设备中的处理器的计算资源,也可以降低第一通信设备对位于其他通信设备的硬件设备的访问延迟。在一种可能的实现方式中,第一访问组件和第二访问组件通过网络通信;在该情况下,第一访问组件可以通过网络报文的形式向第二访问组件发送该消息,即第一访问组件将该消息封装在第一报文中发送给第二访问组件。通过该方式,第一访问组件可以成功地通过网络将消息发送给第二访问组件。在另一种可能的实现方式中,第一访问组件和第二访问组件的表现形式相同,均可以为FPGA、CPLD、ASIC、SOC中任一种表现形式或多种表现形式的结合。这样,通过该方式可以提高通信设备中访问组件的表现形式的灵活性。在又一种可能的实现方式中,第一访问组件可以通过以下方式,确定消息的传输对象为该目标硬件设备:第一访问组件获取存储的资源配置信息,该资源配置信息中包含组成虚拟硬件设备的每个硬件设备对应的存储地址范围;所述第一访问组件判断该消息中包含的虚拟硬件设备的存储地址所在的存储地址范围,然后在资源配置信息中确定该存储地址范围对应的硬件设备即为目标硬件设备。通过该方式,第一访问组件可以准确地确定消息的传输对象。在又一种可能的实现方式中,第一访问组件可以生成记录处理器的内存的存储地址与指示该目标硬件设备的存储地址的第一映射表,然后通过该第一映射表将消息中包含的处理器的内存的存储地址转换为指示该目标硬件设备的存储地址。该方式可以提高第一访问组件处理器的内存的存储地址的转换效率。另外,后续第一访问组件在收到包含的该目标硬件设备的存储地址的消息后,也可以继续利用该第一映射表,将指示该目标硬件设备的存储地址转换为处理器的内存的存储地址,从而也可以提高第一访问组件对指示该目标硬件设备的存储地址的转换效率。在又一个可能的实现方式中,第一访问组件可以通过以下步骤,生成第一映射表:第一访问组件确定该目标硬件设备的指示信息。例如,在该资源配置信息中包含每个硬件设备的描述信息与对应的存储地址范围的情况下,第一访问组件在确定消息的传输对象时即可确定该目标硬件设备的描述信息,然后第一访问组件根据该目标硬件设备的描述信息,确定该目标硬件设备的指示信息。然后,第一访问组件将目标硬件设备的指示信息添加至处理器的内存的存储地址中,得到指示该目标硬件设备的存储地址;最终,生成该第一映射表。通过该方式,第一访问组件可以准确地得到指示该目标硬件设备的存储地址,以及并生成第一映射表。在又一个可能的实现方式中,目标硬件设备的指示信息包括:目标硬件设备的标识,和/或,第二通信设备中该目标硬件设备所连接的单板的标识。通过该设计,可以使第二访问组件在收到该消息时,可以根据目标硬件设备的指示信息,准确地确定该消息的传输对象。在又一个可能的实现方式中,消息中处理器的内存的存储地址所在地址字段中存在空闲位域时,目标硬件设备的指示信息可以占用全部或部分空闲位域。该方式可以避免增加消息的传输开销,提高地址字段的比特资源利用率。在又一个可能的实现方式中,第一通信设备中的处理器的功能虚拟化为多个功能时,第一访问组件可以在生成指示该目标硬件设备的存储地址时,将处理器传输该消息时使用的功能的标识添加到处理器的内存的存储地址中。通过该方式,第一访问组件还可以将处理器使用的功能的标识添加到消息中。在又一个可能的实现方式中,当虚拟硬件设备只由目标硬件设备一个组成的情况下,若该目标硬件设备为第一通信设备提供全部硬件资源时,目标硬件设备的存储地址与虚拟硬件设备的存储地址相同;若该该目标硬件设备为第一通信设备提供部分硬件资源时,目标硬件设备的存储地址=虚拟硬件设备的存储地址+目标硬件设备对应的偏移位置。其中,目标硬件设备对应的偏移位置为:目标硬件设备为第一通信设备提供的硬件资源起始存储位置,该目标硬件设备对应的偏移位置可以从资源配置信息中获取。通过该方式,第一访问组件可以根据虚拟硬件设备中硬件资源的实际配置情况,准确地确定目标硬件设备的存储地址。在又一个可能的实现方式中,当虚拟硬件设备由多个硬件设备组成时,所述第一访问组件可以根据第二映射表,将虚拟硬件本文档来自技高网
...

【技术保护点】
1.一种消息传输方法,其特征在于,所述方法包括:第一通信设备的第一访问组件获取所述第一通信设备的处理器传输的消息;其中,所述第一通信设备为通信系统中任意一个通信设备,所述通信系统中包括多个通信设备,每个通信设备包含处理器、访问组件和硬件设备,所述消息中包含第一地址和第二地址,所述第一地址用于指示目标数据在虚拟硬件设备中的存储位置,所述第二地址用于指示所述目标数据在所述第一通信设备的处理器的内存中的存储位置,所述虚拟硬件设备由至少一个硬件设备组成;当所述第一访问组件确定所述第一地址指示的存储位置属于第二通信设备的目标硬件设备时,所述第一访问组件根据第一映射表,将所述消息中的所述第二地址转换为第三地址,所述第三地址用于指示所述目标硬件设备,所述第一映射表用于记录所述第二地址与所述第三地址之间的映射关系;所述第一访问组件根据所述第一地址,确定第四地址,所述第四地址用于指示所述目标数据在所述目标硬件设备中的存储位置;所述第一访问组件向所述第二通信设备的第二访问组件发送第一报文,所述第一报文中包含所述第三地址和所述第四地址,以使所述第二访问组件根据所述第三地址和所述第四地址读取或写入所述目标数据...

【技术特征摘要】
1.一种消息传输方法,其特征在于,所述方法包括:第一通信设备的第一访问组件获取所述第一通信设备的处理器传输的消息;其中,所述第一通信设备为通信系统中任意一个通信设备,所述通信系统中包括多个通信设备,每个通信设备包含处理器、访问组件和硬件设备,所述消息中包含第一地址和第二地址,所述第一地址用于指示目标数据在虚拟硬件设备中的存储位置,所述第二地址用于指示所述目标数据在所述第一通信设备的处理器的内存中的存储位置,所述虚拟硬件设备由至少一个硬件设备组成;当所述第一访问组件确定所述第一地址指示的存储位置属于第二通信设备的目标硬件设备时,所述第一访问组件根据第一映射表,将所述消息中的所述第二地址转换为第三地址,所述第三地址用于指示所述目标硬件设备,所述第一映射表用于记录所述第二地址与所述第三地址之间的映射关系;所述第一访问组件根据所述第一地址,确定第四地址,所述第四地址用于指示所述目标数据在所述目标硬件设备中的存储位置;所述第一访问组件向所述第二通信设备的第二访问组件发送第一报文,所述第一报文中包含所述第三地址和所述第四地址,以使所述第二访问组件根据所述第三地址和所述第四地址读取或写入所述目标数据。2.根据权利要求1所述的方法,其特征在于,所述第一访问组件确定所述第一地址指示的存储位置属于所述第二通信设备的所述目标硬件设备,包括:所述第一访问组件根据存储的资源配置信息和所述第一地址,确定所述消息的传输对象为所述第二通信设备的所述目标硬件设备,所述资源配置信息包含所述至少一个硬件设备中每个硬件设备对应的存储地址范围。3.根据权利要求1或2所述方法,其特征在于,所述第一通信设备的所述第一访问组件和所述第二通信设备的所述第二访问组件通过网络通信,所述第一报文为网络报文。4.根据权利要求1至3中任一所述方法,其特征在于,所述第一访问组件在根据所述第一映射表,将所述第二地址转换为第三地址之前,还包括:所述第一访问组件确定所述目标硬件设备的指示信息;所述第一访问组件将所述目标硬件设备的指示信息添加至所述第二地址中,得到所述第三地址;所述第一访问组件根据所述第二地址和所述第三地址生成所述第一映射表。5.根据权利要求1至4中任一所述方法,其特征在于,所述目标硬件设备的指示信息包括:所述目标硬件设备的标识,和/或,所述第二通信设备中所述目标硬件设备所连接的单板的标识。6.根据权利要求1至5中任一所述方法,其特征在于,所述第一访问组件为现场可编程门阵列FPGA,所述第二访问组件为FPGA。7.根据权利要求1至6中任一所述方法,其特征在于,当所述至少一个硬件设备的数量为一个时,所述第四地址与所述第一地址相同;当所述至少一个硬件设备的数量为多个时,所述第一访问组件根据所述第一地址,确定所述第四地址,包括:所述第一访问组件根据第二映射表,将所述第一地址转换为所述第四地址,所述第二映射表用于描述:指示所述虚拟硬件设备的存储位置的存储地址与指示所述目标硬件设备的存储位置的存储地址之间的映射关系。8.一种消息传输方法,其特征在于,所述方法包括:第二通信设备的第二访问组件接收第一通信设备中的第一访问组件发送的第一报文;其中,所述第二通信设备为通信系统中任意一个通信设备,所述通信系统中包括多个通信设备,每个通信设备包括处理器、访问组件和硬件设备,所述第一报文中包含第三地址和第四地址,所述第三地址用于指示属于所述第二通信设备的目标硬件设备,所述第四地址用于指示目标数据在目标硬件设备的中的存储位置;所述第二访问组件确定所述第三地址指示的所述目标硬件设备;所述第二访问组件向所述目标硬件设备传输包含第三地址和所述第四地址的第一消息,以使所述目标硬件设备根据所述第三地址和所述第四地址读取或写入所述目标数据。9.根据权利要求8所述方法,其特征在于,所述第二通信设备的所述第二访问组件和所述第一通信设备的所述第一访问组件通过网络通信,所述第一报文为网络报文。10.根据权利要求8或9所述方法,其特征在于,所述第一访问组件为现场可编程门阵列FPGA,所述第二访问组件为FPGA。11.一种第一访问组件,其特征在于,所述第一访问组件应用于第一通信设备,所述第一通信设备为通信系统中任意一个通信设备,所述通信系统中包括多个通信设备,每个通信设备包含处...

【专利技术属性】
技术研发人员:周畅殷换锋罗新法
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:广东,44

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

1