数据传输处理方法、设备和存储介质技术

技术编号:24863021 阅读:26 留言:0更新日期:2020-07-10 19:13
本发明专利技术提供一种数据传输处理方法、设备和存储介质,该方法包括:接收端设备在与发送端设备建立连接后,从已创建的内存池中分配第一内存块;所述接收端设备在接收队列中创建接收请求,所述接收请求中包括所述第一内存块的地址;所述接收端设备根据所述接收请求将所述发送端设备发送的数据存储至所述第一内存块中。本发明专利技术实施例的方法提高了数据传输效率。

【技术实现步骤摘要】
数据传输处理方法、设备和存储介质
本专利技术涉及网络数据传输
,尤其涉及一种数据传输处理方法、设备和存储介质。
技术介绍
随着通信技术的发展,通过网络传输数据信息已成为人们进行信息交流的重要方式。目前主流的数据传输方式一般为基于以太网的传输控制协议(TransmissionControlProtocol,简称TCP)或用户数据报协议(UserDatagramProtocol,简称UDP)方式。TCP/UDP数据传输过程中需要操作系统多次在缓冲区之间拷贝数据,传输效率较低。
技术实现思路
本专利技术提供一种数据传输处理方法、设备和存储介质,以提高传输效率。第一方面,本专利技术提供一种数据传输处理方法,包括:接收端设备在与发送端设备建立连接后,从已创建的内存池中分配第一内存块;所述接收端设备在接收队列中创建接收请求,所述接收请求中包括所述第一内存块的地址;所述接收端设备根据所述接收请求将所述发送端设备发送的数据存储至所述第一内存块中。第二方面,本专利技术提供一种数据传输处理方法,包括:发送端设备与接收端设备建立连接后,所述发送端设备从已创建的内存池中分配第一内存块,并向所述第一内存块中写入待发送的数据;所述发送端设备在发送队列中创建发送请求,以向所述接收端设备发送所述待发送的数据;所述发送请求中包括所述第一内存块的地址。第三方面,本专利技术实施例提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现第一方面中任一项所述的方法。第四方面,本专利技术实施例提供一种接收端设备,包括:处理器;以及存储器,用于存储所述处理器的可执行指令;其中,所述处理器配置为经由执行所述可执行指令来执行第一方面中任一项所述的方法。第五方面,本专利技术实施例提供一种发送端设备,包括:处理器;以及存储器,用于存储所述处理器的可执行指令;其中,所述处理器配置为经由执行所述可执行指令来执行第二方面中任一项所述的方法。本专利技术实施例提供的数据传输处理方法、设备和存储介质,接收端设备在与发送端设备建立连接后,从已创建的内存池中分配第一内存块;所述接收端设备在接收队列中创建接收请求,所述接收请求中包括所述第一内存块的地址;所述接收端设备根据所述接收请求将所述发送端设备发送的数据存储至所述第一内存块中,用户业务和网络传输共用第一内存块,即共用内存,避免了内存数据拷贝,提高了传输效率,而且使用内存池减少了内存注册的耗时。附图说明此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。图1为本专利技术一实施例提供的应用场景图;图2是本专利技术提供的数据传输处理方法一实施例的流程示意图;图3是本专利技术提供的方法一实施例的原理示意图;图4是本专利技术提供的数据传输处理方法另一实施例的流程示意图;图5是本专利技术提供的数据传输处理装置一实施例的结构示意图;图6是本专利技术提供的数据传输处理装置另一实施例的结构示意图;图7是本专利技术提供的接收端设备一实施例的结构示意图;图8是本专利技术提供的发送端设备一实施例的结构示意图。通过上述附图,已示出本公开明确的实施例,后文中将有更详细的描述。这些附图和文字描述并不是为了通过任何方式限制本公开构思的范围,而是通过参考特定实施例为本领域技术人员说明本公开的概念。具体实施方式这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。本专利技术的说明书和权利要求书及所述附图中的术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。首先对本专利技术所涉及的应用场景进行介绍:本专利技术实施例提供的方法,应用于网络数据传输场景中,以提高传输效率。TCP传输方式在所有操作中都需要操作系统的干预,包括网络两终端结点的缓冲区拷贝。在面向字节流的网络中,没有消息的边界概念。当一个应用想要发送一个数据包,操作系统把这些字节数据放入内存中属于操作系统的一个匿名缓冲区,当数据传输完毕时,操作系统把它缓冲区中的数据拷贝到应用程序的接收缓冲区。这个过程在每个包到达时都会重复执行,直到整个字节流被接收到。本专利技术实施例提供的网络管理方法,应用于如图1所示的场景中,该场景中包括发送端设备和接收端设备,以实现两个设备之间进行数据传输。其中,发送端设备可以为客户端设备或服务器端,接收端设备也可以为客户端设备或服务器端,本专利技术实施例对此并不限定。发送端设备和接收端设备之间通过网络连接,例如有线网络。有线网络可以包括无限带宽(InfiniBand,简称IB)网络,还可以支持(RDMAoverConvergedEthernet,简称RoCE)、(theInternetWideAreaRDMAProtocol,简称iWARP)以太网,iWARP也称RDMAoverTCP。以下实施例中,发送端设备以客户端设备,接收端设备以服务器端设备为例进行说明。下面以具体的实施例对本专利技术的技术方案进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例不再赘述。图2是本专利技术提供的数据传输处理方法一实施例的流程示意图。如图2所示,本实施例提供的方法,包括:步骤201、接收端设备在与发送端设备建立连接后,从已创建的内存池中分配第一内存块。具体的,接收端设备在与发送端设备建立连接后,接收端设备从预先创建的内存池中分配第一内存块,第一内存块的数量可以为一个或多个。在一种实现方式中,接收端设备在接收到用户的申请内存指示后,从内存池分配内存块,分配的内存块的多少可以通过该用户的申请指示确定,即该申请指示中可以包括申请的内存块的多少。步骤202、接收端设备在接收队列中创建接收请求,接收请求中包括第一内存块的地址。具体的,如图3所示,接收端设备在接收队列(ReceiveQueue,简称RQ)中创建接收请求(ReceiveRequest,简称RR),接收请求RR中包括所述第一内存块的地址。创建的接收请求RR的数量可以为一个或多个,每个接收请求RR对应的第一内存块可以为一个或多个。为了保证在发送端提交发送请求SR到发送队列SQ之前,接收端的接收队列RQ内存已就绪,以避免进入接收队列RQ内存未就绪(ReceiverNotReady,简称RNR)流程而影响性能。当连接建立时,在RQ本文档来自技高网...

【技术保护点】
1.一种数据传输处理方法,其特征在于,包括:/n接收端设备在与发送端设备建立连接后,从已创建的内存池中分配第一内存块;/n所述接收端设备在接收队列中创建接收请求,所述接收请求中包括所述第一内存块的地址;/n所述接收端设备根据所述接收请求将所述发送端设备发送的数据存储至所述第一内存块中。/n

【技术特征摘要】
1.一种数据传输处理方法,其特征在于,包括:
接收端设备在与发送端设备建立连接后,从已创建的内存池中分配第一内存块;
所述接收端设备在接收队列中创建接收请求,所述接收请求中包括所述第一内存块的地址;
所述接收端设备根据所述接收请求将所述发送端设备发送的数据存储至所述第一内存块中。


2.根据权利要求1所述的方法,其特征在于,在所述接收端设备根据所述接收请求将所述发送端设备发送的数据存储至所述第一内存块中之后,还包括:
所述接收端设备监听完成队列中是否存在完成事件通知;
若存在所述完成事件通知,且所述完成事件通知中包括接收完成状态指示,则所述接收端设备将所述完成事件通知中包括的所述第一内存块的地址通知给用户,以使所述用户处理所述第一内存块存储的数据。


3.根据权利要求1或2所述的方法,其特征在于,所述从已创建的内存池中分配第一内存块之前,还包括:
所述接收端设备接收所述发送端设备的连接建立请求,所述连接建立请求中携带所述第一内存块的大小。


4.根据权利要求1或2所述的方法,其特征在于,所述接收端设备根据所述接收请求将所述发送端设备发送的数据存储至所述第一内存块中之后,还包括:
所述接收端设备从所述内存池中分配新的第一内存块,并在所述接收队列中创建新的接收请求;所述新的接收请求中包括所述新的第一内存块的地址。


5.根据权利要求1或2所述的方法,其特征在于,所述从已创建的内存池中分配第一内存块之前,还包括:
所述接收端设备向所述接收端设备的操作系统申请并在所述接收端设备的网卡中注册第一预设数量个第二内存块,以形成所述内存池;所述第一预设数量根据所述内存池的预设最小可用内存数量和最大申请内存数确定;所述第二内存块包括所述第一内存块。


6.根据权利要求5所述的方法,其特征在于,还包括:
若所述内存池的可用内存块的数量小于所述最小可用内存数量,且所述内存池申请总内存数量小于所述最大申请内存数,向所述接收端设备的操作系统申请并在所述接收端设备的网卡中注册第二预设数量个第三内存块到所述内存池中。


7.一种数据传输处理方法,其特征在于,包括:
发送端设备与接收端设备建立连接后,所述发送端设备从已创建的内存池中分配第一内存块,并...

【专利技术属性】
技术研发人员:唐盛武
申请(专利权)人:杭州海康威视系统技术有限公司
类型:发明
国别省市:浙江;33

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

1