一种基于RDMA的通信方法、装置及存储介质制造方法及图纸

技术编号:20517811 阅读:16 留言:0更新日期:2019-03-06 02:38
本发明专利技术实施例公开了一种基于远程直接内存访问(RDMA)的通信方法、装置及存储介质,所述方法包括:接收发送端发出的基于RDMA的数据信息;从所述数据信息中提取特征信息,根据所提取到的特征信息从预存的映射列表中查找对应的地址信息;将所述数据信息存储于所述地址信息对应的内存空间。通过本发明专利技术实施例,能有效地解决内存管理复杂的问题,提高了带宽的利用率。

A Communication Method, Device and Storage Medium Based on RDMA

The embodiment of the present invention discloses a communication method, device and storage medium based on remote direct memory access (RDMA). The method includes: receiving data information based on RDMA from the sender; extracting feature information from the data information, searching corresponding address information from the pre-stored mapping list according to the extracted feature information; and storing the data information in the pre-stored mapping list. The address information corresponds to the memory space. The embodiment of the invention can effectively solve the complex problem of memory management and improve the utilization rate of bandwidth.

【技术实现步骤摘要】
一种基于RDMA的通信方法、装置及存储介质
本专利技术涉及通信技术,尤其涉及一种基于RDMA的通信方法、装置及存储介质。
技术介绍
在计算机运算中,远程直接内存访问(RDMA,RemoteDirectMemoryAccess)是指从发送端的存储器到接收端的存储器的直接存储器访问,而不涉及到任一端的操作系统,解决了网络传输中数据处理的延迟问题,具有高通量、低延时的特定,因此受到了广泛的应用。发送端通过RDMA技术访问接收端的过程中,接收端须分配固定大小的内存,且每次内存分配之前均需与客户端进行协商,在复杂的网络中,接收端如果作为大量点对点连接的目的端,由于每个连接所分配的内存位置和大小固定,若一旦发生变更,需要向所有发送端进行重新协商,使得内存管理变得十分复杂,而且将会造成占用大量带宽的问题,而相关技术尚无有效解决方案。
技术实现思路
有鉴于此,本专利技术实施例期望提供一种基于RDMA的通信方法、装置及存储介质,有效地解决内存管理复杂的问题,提高了带宽的利用率。为达到上述目的,本专利技术实施例的技术方案是这样实现的:第一方面,本专利技术实施例提供了一种基于RDMA的通信方法,包括:接收发送端发出的基于RDMA的数据信息;从所述数据信息中提取特征信息,根据所提取到的特征信息从预存的映射列表中查找对应的地址信息;将所述数据信息存储于所述地址信息对应的内存空间。上述方案中,所述特征信息为与所述发送端协商的信息,用于表征不同类型的所述数据信息;所述接收发送端发出的基于RDMA的数据信息之前,还包括:基于所述特征信息为不同类型的所述数据信息分配内存空间;将所述内存空间对应的所述地址信息和所述特征信息存储于所述映射列表。上述方案中,所述数据信息包括具有报文格式的传输信息;所述将所述数据信息存储于所述地址信息对应的内存空间,包括:从所述具有报文格式的传输信息中提取目标数据,所述目标数据为所述传输信息的数据段中的数据;将所述目标数据存储于所述地址信息对应的内存空间。上述方案中,还包括:当所连接的对象发生变化时,根据所协商的特征信息对所述映射列表中对应的特征信息和/或地址信息进行修改。上述方案中,所述根据所协商的特征信息对所述映射列表中对应的特征信息和/或地址信息进行修改,包括:根据所协商的特征信息查找所述映射列表中对应的特征信息和/或地址信息;将所查找到的特征信息和/或地址信息进行删除;或者,将所查找到的地址信息替换为更新后的地址信息更新。第二方面,本专利技术实施例还提供了一种基于RDMA的通信装置,包括:接收模块,用于接收发送端发出的基于RDMA的数据信息;处理模块,用于从所述数据信息中提取特征信息,根据所提取到的特征信息从预存的映射列表中查找对应的地址信息;存储模块,用于将所述数据信息存储于所述地址信息对应的内存空间。上述方案中,所述特征信息为与所述发送端协商的信息,用于表征不同类型的所述数据信息;所述处理模块,还用于在接收发送端发出的基于RDMA的数据信息之前,基于所述特征信息为不同类型的所述数据信息分配内存空间;所述存储模块,还用于将所述内存空间对应的所述地址信息和所述特征信息存储于所述映射列表。上述方案中,所述数据信息包括具有报文格式的传输信息;所述存储模块,具体用于:从所述具有报文格式的传输信息中提取目标数据,所述目标数据为所述传输信息的数据段中的数据;将所述目标数据存储于所述地址信息对应的内存空间。上述方案中,所述处理模块,还用于当所连接的对象发生变化时,根据所协商的特征信息对所述映射列表中对应的特征信息和/或地址信息进行修改。上述方案中,所述处理模块,具体用于:根据所协商的特征信息查找所述映射列表中对应的特征信息和/或地址信息;将所查找到的特征信息和/或地址信息进行删除;或者,将所查找到的地址信息替换为更新后的地址信息更新。第三方面,本专利技术实施例还提供一种存储介质,存储有计算机程序,所述计算机程序被处理器执行时,实现本专利技术实施例提供的基于RDMA的通信方法的步骤。第四方面,本专利技术实施例还提供一种基于RDMA的通信装置,包括:存储器,用于存储计算机程序;处理器,用于执行所述存储器中存储的计算机程序,实现本专利技术实施例提供的基于RDMA的通信方法的步骤。通过实施本专利技术实施例,可以具有以下有益效果:基于特征信息查询预先分配的内存空间的地址信息,根据查询到的地址信息存储数据信息,一方面,有效地提高了存储的效率;另一方面,避免了与发送端重建连接时重新协商内存的分配问题,有效地解决了因重新协商内存的分配而占用大量带宽的问题,也提高了内存管理的效率。附图说明图1为本专利技术实施例提供的一种基于RDMA的通信系统的组成结构示意图;图2为本专利技术实施例提供的一种基于RDMA的通信装置的组成结构示意图;图3为本专利技术实施例提供的一种基于RDMA的通信方法的实现流程示意图;图4为本专利技术实施例提供的一种以太网数据的结构示意图;图5为本专利技术实施例提供的一种基于RDMA的通信装置的组成结构示意图;图6为本专利技术实施例提供的一种连接建立时发送端的行为流程示意图;图7为本专利技术实施例提供的一种建立连接时接收端接收到发送端协商报文的行为流程;图8为本专利技术实施例提供的一种传输报文时发送端的行为流程示意图;图9为本专利技术实施例提供的一种传输报文时接收端的行为流程示意图。具体实施方式为了使本专利技术的目的、技术方案和优点更加清楚,下面将结合附图对本专利技术作进一步地详细描述,所描述的实施例是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本专利技术保护的范围。对本专利技术进行进一步详细说明之前,对本专利技术实施例中涉及的名词和术语进行说明,本专利技术实施例中涉及的名词和术语适用于如下的解释。1)RDMA,也称远程直接数据存取,是为了解决网络传输中数据处理的延迟而产生的一种技术,即发送端通过网络把数据资料(如视频、音频或文本等数据)直接传入远程的接收端的存储区,能够实现将数据从一个系统快速移动到远程系统的存储器中,而不对操作系统造成任何影响。其中,上述的远程为远距离,RDMA可以实施为发送端通过网络把数据资料远距离直接移动至接收端的存储区。这里,接收端为本专利技术实施例中所述的基于RDMA的通信装置,发送端可以是另一个具有RDMA功能的通信装置,其中,发送端和接收端都可以是计算机或服务器等。2)数据信息,为符合RDMA技术要求的信息,具有特定的数据格式,如传输控制协议(TCP,TransmissionControlProtocol)报文格式、或互联网协议(IP,InternetProtocol)数据报格式、或以太网帧结构等。3)特征信息,是发送端和接收端协商的能表征数据信息类型的信息,接收端根据该特征信息为该数据信息分配内存空间;发送端在发送数据时,将该特征信息作为报头发送至接收端,接收端根据该特征信息查找所分配的内存空间的地址信息。4)映射列表,可以是哈希表(HashTable),哈希表也可称为散列表,预先存储在基于RDMA的通信装置中,该列表存储有发送端和接收端协商的特征信息和与特征信息对应的地址信息。参见图1,本专利技术实施例提供了一种基于RDMA的通信系统,该系统包括:接收端101和发送端102;其中,接收本文档来自技高网...

【技术保护点】
1.一种基于远程直接内存访问RDMA的通信方法,其特征在于,包括:接收发送端发出的基于RDMA的数据信息;从所述数据信息中提取特征信息,根据所提取到的特征信息从预存的映射列表中查找对应的地址信息;将所述数据信息存储于所述地址信息对应的内存空间。

【技术特征摘要】
1.一种基于远程直接内存访问RDMA的通信方法,其特征在于,包括:接收发送端发出的基于RDMA的数据信息;从所述数据信息中提取特征信息,根据所提取到的特征信息从预存的映射列表中查找对应的地址信息;将所述数据信息存储于所述地址信息对应的内存空间。2.根据权利要求1所述的方法,其特征在于,所述特征信息为与所述发送端协商的信息,用于表征不同类型的所述数据信息;所述接收发送端发出的基于RDMA的数据信息之前,还包括:基于所述特征信息为不同类型的所述数据信息分配内存空间;将所述内存空间对应的所述地址信息和所述特征信息存储于所述映射列表。3.根据权利要求1所述的方法,其特征在于,所述数据信息包括具有报文格式的传输信息;所述将所述数据信息存储于所述地址信息对应的内存空间,包括:从所述具有报文格式的传输信息中提取目标数据,所述目标数据为所述传输信息的数据段中的数据;将所述目标数据存储于所述地址信息对应的内存空间。4.根据权利要求2所述的方法,其特征在于,还包括:当所连接的对象发生变化时,根据所协商的特征信息对所述映射列表中对应的特征信息和/或地址信息进行修改。5.一种基于远程直接内存访问RDMA的通信装置,其特征在于,包括:接收模块,用于接收发送端发出的基于RDMA的数据信息;处理模块,用于从所述数据信息中提取特征信息,根据所提取到的特...

【专利技术属性】
技术研发人员:徐毓斌
申请(专利权)人:深圳市中兴微电子技术有限公司
类型:发明
国别省市:广东,44

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

1