数据传输方法、相关装置及系统制造方法及图纸

技术编号:18840448 阅读:27 留言:0更新日期:2018-09-05 08:26
本申请公开了一种数据传输方法、相关装置及系统。所述方法可包括:第一设备与第二设备建立第一工作节点和第二工作节点之间的远程直接内存访问RDMA连接,其中,分布式计算系统包括第一设备和第二设备,第一设备部署第一工作节点,第二设备部署第二工作节点;第一设备通过支持RoCE协议的网卡,向第二工作节点发送第一工作节点输出的数据。实施上述方案,能够在storm系统上使用RoCE技术,降低数据传输时延,减少设备消耗在数据传输上的处理资源。此外,本申请无需修改设备应用层各个接口的实现代码,仅需增加中间件,将应用层的各个接口重定向到中间件中即可使用RoCE技术,实现过程简单方便。

Data transmission method, related device and system

The application discloses a data transmission method, a related device and a system. The method can include: the first device and the second device establish a remote direct memory access RDMA connection between the first working node and the second working node, wherein the distributed computing system includes the first device and the second device, the first device deploys the first working node, the second device deploys the second working node, and the first device deploys the second working node. Through the network card supporting RoCE protocol, the output data of the first working node is sent to the second working node. Implementing the above scheme can use RoCE technology in storm system, reduce the data transmission delay and reduce the equipment consumption of processing resources in data transmission. In addition, the application does not need to modify the implementation code of each interface of the device application layer, only need to add middleware, and redirect each interface of the application layer to the middleware, so RoCE technology can be used. The implementation process is simple and convenient.

【技术实现步骤摘要】
数据传输方法、相关装置及系统
本申请涉及大数据处理及通信
,特别涉及数据传输方法、相关装置及系统。
技术介绍
随着信息技术的发展,时刻都有大量的信息产生,各类通信系统或通信平台需要处理的数据量越来越多。由于信息的价值会随着时间的流逝而降低,在信息生成后最好及时对其进行处理,以便用户针对实时的信息做出准确的分析和决策。为了满足用户对信息的时效性要求,目前通常使用分布式处理技术与平台来处理大数据,常用的分布式计算系统可包括storm、spark、samza、flink等。目前,用户对信息处理的时效性要求越来越高,如何改进普通的分布式计算系统使其满足更高的时效性要求是亟需解决的问题。
技术实现思路
本申请提供了数据传输方法、相关装置及系统,能够在storm系统上使用RoCE技术,降低数据传输时延,减少设备消耗在数据传输上的处理资源。第一方面,本申请提供了一种数据传输方法,包括:第一设备与第二设备建立第一工作节点和第二工作节点之间的远程直接内存访问RDMA连接,其中,分布式计算系统包括所述第一设备和所述第二设备,所述第一设备部署所述第一工作节点,所述第二设备部署所述第二工作节点;所述第一设备通过支持基于以太网的远程直接内存访问RoCE协议的网卡,向所述第二工作节点发送所述第一工作节点输出的数据。实施第一方面的数据传输方法,能够在storm系统上使用RoCE技术,降低数据传输时延,减少设备消耗在数据传输上的处理资源。具体的,第一设备部署有应用层和第一中间件,应用层提供各类API,第一中间件提供支持RoCE协议的各类API,并且,应用层的API被重定向到第一中间件的API中;第二设备部署有第二中间件,第二中间件提供支持RoCE协议的各类API。在可选实施例中,第一设备通过应用层指示第一中间件与所述第二设备的第二中间件,创建所述第一工作节点和所述第二工作节点之间的RDMA连接。实施该可选实施例的方法,storm系统无需修改设备应用层各个接口的实现代码,仅需增加中间件,将应用层的各个接口重定向到中间件中,即可使用RoCE技术,实现过程简单方便。这里,第一设备和第二设备建立RDMA连接时,可以是第一设备向第二设备主动发起连接请求,也可以是第一设备接受第二设备发起的连接请求,即,第一设备可以是服务端,也可以是客户端,下面分情况描述。(1)第一种情况,所述第一设备为建立所述RDMA连接的客户端,所述第二设备为建立所述RDMA连接的服务端。在第一种情况中,第一设备通过应用层指示第一中间件时,具体通过应用层指示第一中间件:创建TCP/IP套接字并获得指向所述TCP/IP套接字的第一描述符;创建RDMA套接字,将所述第一描述符指向所述RDMA套接字;基于所述第一描述符所指向的所述RDMA套接字向所述第二设备的第二中间件发起所述第一工作节点和所述第二工作节点之间的RDMA连接请求。(2)第二种情况,所述第一设备为建立所述RDMA连接的服务端,所述第二设备为建立所述RDMA连接的客户端。在第二种情况中,第一设备通过应用层指示第一中间件时,具体通过应用层指示第一中间件:创建TCP/IP套接字并获得指向所述TCP/IP套接字的第一描述符;创建RDMA套接字,将所述第一描述符指向所述RDMA套接字;在所述第一描述符所指向的套接字上监听到所述第二设备的第二中间件传入的所述第一工作节点和所述第二工作节点之间的RDMA连接请求的条件下,创建新的RDMA套接字;基于所述新的RDMA套接字接受所述RDMA连接请求。在可选实施例中,第一设备通过应用层指示第一中间件之前,可获取所述服务端的标签,确定所述服务端的标签为所述第一工作节点的标签或者所述第二工作节点的标签,所述标签包括IP地址和/或端口号。本申请中,第一设备通过支持RoCE协议的网卡,向所述第二工作节点发送所述第一工作节点输出的数据时,首先将所述第一工作节点输出的数据从所述应用层中发送至所述第一中间件,通过所述第一中间件将所述数据发送至支持RoCE协议的网卡,然后通过所述支持RoCE协议的网卡对所述数据进行封装,得到能够在以太网中传输的数据帧,最后通过所述支持RoCE协议的网卡将所述数据帧发送至所述第二设备的支持RoCE协议的网卡中,以使所述第二设备通过支持RoCE协议的网卡对所述数据帧进行解封装,并将解封装后得到的数据发送至所述第二中间件,通过所述第二中间件将所述解封装后的数据发送至所述第二设备中部署的应用层。第二方面,本申请提供了一种第一设备,用于执行第一方面描述的数据传输方法。所述第一设备可包括:存储器以及与所述存储器耦合的通信接口,其中:所述通信接口配置有支持RoCE协议的网卡,可用于第一设备与其他设备进行通信,所述存储器包括应用层、中间件,所述应用层的用户接口重定向到中间件的用户接口,用于存储第一方面描述的数据传输方法的实现代码,所述处理器用于执行所述存储器中存储的程序代码,即执行第一方面或第一方面的可能的实施方式中的任意一种所提供的数据传输方法。第三方面,提供了一种第一设备,包括多个功能模块,用于相应的执行第一方面或第一方面可能的实施方式中的任意一种所提供的数据传输方法。第四方面,本申请提供了一种通信系统,所述通信系统为storm系统,包括:第一设备和第二设备。其中,第一设备部署第一工作节点,第二设备部署第二工作节点。第一设备用于与第二设备建立第一工作节点和第二工作节点之间的远程直接内存访问RDMA连接,并通过支持基于以太网的远程直接内存访问RoCE协议的网卡,向第二工作节点发送第一工作节点输出的数据。在一些可选的实施例中,第四方面的所述第一设备可以是第二方面或第三方面描述的第一设备。第五方面,提供了一种计算机可读存储介质,所述可读存储介质上存储有实现第一方面描述的数据传输方法的程序代码,该程序代码包含运行第一方面描述的数据传输方法的执行指令。第六方面,提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行第一方面描述的数据传输方法。实施本申请,能够在storm系统上使用RoCE技术,降低数据传输时延,减少设备消耗在数据传输上的处理资源。此外,运用应用本申请的数据传输方法,storm系统无需修改设备应用层各个接口的实现代码,仅需增加中间件,将应用层的各个接口重定向到中间件中,即可使用RoCE技术,实现过程简单方便。附图说明图1为现有技术中分布式计算系统的数据处理过程的示意图;图2为本申请提供的storm系统的结构示意图;图3为本申请提供的设备的硬件结构图;图4为本申请提供的TCP/IP协议栈和RoCEV2的协议栈的示意图;图5为本申请提供的RoCE帧的结构示意图;图6为本申请提供的通信两端调用接口函数的流程示意图;图7为本申请提供的数据传输方法的流程示意图;图8为本申请提供的客户端的接口函数调用过程示意图;图9为本申请提供的服务端的接口函数调用过程示意图;图10为本申请提供的第一设备的功能框图。具体实施方式本申请的实施方式部分使用的术语仅用于对本申请的具体实施例进行解释,而非旨在限定本申请。目前,各类通信系统或通信平台需要处理的数据量越来越大,为了提高处理速度,通常使用分布式计算的方法,将不同地点、具有不同功能或拥有不同数据的多台设备通过通信网络连本文档来自技高网...

【技术保护点】
1.一种数据传输方法,其特征在于,包括:第一设备与第二设备建立第一工作节点和第二工作节点之间的远程直接内存访问RDMA连接,其中,分布式计算系统包括所述第一设备和所述第二设备,所述第一设备部署所述第一工作节点,所述第二设备部署所述第二工作节点;所述第一设备通过支持基于以太网的远程直接内存访问RoCE协议的网卡,向所述第二工作节点发送所述第一工作节点输出的数据。

【技术特征摘要】
1.一种数据传输方法,其特征在于,包括:第一设备与第二设备建立第一工作节点和第二工作节点之间的远程直接内存访问RDMA连接,其中,分布式计算系统包括所述第一设备和所述第二设备,所述第一设备部署所述第一工作节点,所述第二设备部署所述第二工作节点;所述第一设备通过支持基于以太网的远程直接内存访问RoCE协议的网卡,向所述第二工作节点发送所述第一工作节点输出的数据。2.如权利要求1所述的方法,其特征在于,所述建立第一工作节点和第二工作节点之间的RDMA连接包括:所述第一设备通过应用层指示第一中间件与所述第二设备的第二中间件,创建所述第一工作节点和所述第二工作节点之间的RDMA连接,其中,所述第一设备部署所述应用层和所述第一中间件,所述第二设备部署所述第二中间件。3.如权利要求2所述的方法,其特征在于,所述第一设备为建立所述RDMA连接的客户端,所述第二设备为建立所述RDMA连接的服务端,所述第一设备通过应用层指示第一中间件与所述第二设备的第二中间件,创建所述第一工作节点和所述第二工作节点之间的RDMA连接,具体包括:所述第一设备通过应用层指示第一中间件:创建TCP/IP套接字并获得指向所述TCP/IP套接字的第一描述符;创建RDMA套接字,将所述第一描述符指向所述RDMA套接字;基于所述第一描述符所指向的所述RDMA套接字向所述第二设备的第二中间件发起所述第一工作节点和所述第二工作节点之间的RDMA连接请求。4.如权利要求2所述的方法,其特征在于,所述第一设备为建立所述RDMA连接的服务端,所述第二设备为建立所述RDMA连接的客户端,所述第一设备通过应用层指示第一中间件与所述第二设备的第二中间件,创建所述第一工作节点和所述第二工作节点之间的RDMA连接,具体包括:所述第一设备通过应用层指示第一中间件:创建TCP/IP套接字并获得指向所述TCP/IP套接字的第一描述符;创建RDMA套接字,将所述第一描述符指向所述RDMA套接字;在所述第一描述符所指向的套接字上监听到所述第二设备的第二中间件传入的所述第一工作节点和所述第二工作节点之间的RDMA连接请求的条件下,创建新的RDMA套接字;基于所述新的RDMA套接字接受所述RDMA连接请求。5.如权利要求3或4所述的方法,其特征在于,所述方法包括:在所述第一设备通过应用层指示第一中间件之前,获取所述服务端的标签,确定所述服务端的标签为所述第一工作节点的标签或者所述第二工作节点的标签,所述标签包括IP地址和/或端口号。6.如权利要求2-5任一项所述的方法,其特征在于,所述第一设备通过支持RoCE协议的网卡,向所述第二工作节点发送所述第一工作节点输出的数据,具体包括:所述第一设备将所述第一工作节点输出的数据从所述应用层中发送至所述第一中间件,通过所述第一中间件将所述数据发送至支持RoCE协议的网卡,通过所述支持RoCE协议的网卡对所述数据进行封装,得到能够在以太网中传输的数据帧,通过所述支持RoCE协议的网卡将所述数据帧发送至所述第二设备的支持RoCE协议的网卡中,以使所述第二设备通过支持RoCE协议的网卡对所述数据帧进行解封装,并将解封装后得到的数据发送至所述第二中间件,通过所述第二中间件将所述解封装后的数据发送至所述第二设备中部署的应用层。7.一种第一设备,其特征在于,包括:连接单元,数据传输单元,其中,所述连接单元,用于与第二设备建立第一工作节点和第二工作节点...

【专利技术属性】
技术研发人员:袁学文王曙光周斌
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:广东,44

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

1