一种数据传输方法、装置、设备及介质制造方法及图纸

技术编号:37211366 阅读:13 留言:0更新日期:2023-04-20 23:01
本申请公开了一种数据传输方法、装置、设备及介质,应用于数据传输技术领域,包括:确定IO传输阈值;所述IO传输阈值包括IO传输时进行合并发送的IO数据大小阈值以及IO操作数量阈值;基于所述IO传输阈值判断IO操作是否满足预设合并发送条件;若所述IO操作满足所述预设合并发送条件,则将所述IO操作的数据和完成信息合并以得到合并数据,并基于RDMA操作将所述合并数据发送至对端节点。这样,能够降低数据传输的延时,提升数据传输的效率。提升数据传输的效率。提升数据传输的效率。

【技术实现步骤摘要】
一种数据传输方法、装置、设备及介质


[0001]本申请涉及数据传输
,特别涉及一种数据传输方法、装置、设备及介质。

技术介绍

[0002]随着互联网、云计算、物联网、移动互联网等技术的发展,数据呈爆炸性增长,同时对传统的数据传输网络带来了新的挑战。面对高性能计算、大数据分析和浪涌型IO(即Input/Output,输入/输出)高并发、低时延应用,现有TCP/IP(即Transmission Control Protocol/Internet Protocol,传输控制协议/网际协议)软硬件架构和应用高CPU(即central processing unit,中央处理器)消耗的技术特征根本不能满足应用的需求。RDMA(即Remote Direct Memory Access,远程直接数据存取)利用Messaging passing through kernel(即内核旁路传输消息)方式,将数据直接从一台计算机的内存传输到另一台计算机,无需双方操作系统的介入,实现了低延时、低CPU开销、高带宽的特性。为了兼容现有的Ethernet(即以太网)网络,RDMA发展了ROCE(即RDMA over Converged Ethernet,聚合以太网上的RDMA),使得RDMA技术得到了长足发展。
[0003]鉴于RDMA read(读)/write(写)、send(发送)/recive(接收)操作的特点,常利用send/recive操作发送command(指令)、status(完成信息),read/write操作进行data(数据)的DMA(直接内存访问)操作。一般情况下,当有数据传输时,data和status分为两次RDMA操作,CPU需要检查两次硬件的传输情况,导致了延时较高,传输效率较低的问题。

技术实现思路

[0004]有鉴于此,本申请的目的在于提供一种数据传输方法、装置、设备及介质,能够降低数据传输的延时,提升数据传输的效率。其具体方案如下:第一方面,本申请公开了一种数据传输方法,包括:确定IO传输阈值;所述IO传输阈值包括IO传输时进行合并发送的IO数据大小阈值以及IO操作数量阈值;基于所述IO传输阈值判断IO操作是否满足预设合并发送条件;若所述IO操作满足所述预设合并发送条件,则将所述IO操作的数据和完成信息合并以得到合并数据,并基于RDMA操作将所述合并数据发送至对端节点。
[0005]可选的,所述确定IO传输阈值,包括:基于自身的设备信息确定自身的合并发送能力;所述合并发送能力包括能够支持的进行合并发送的IO数据大小以及IO操作数量;基于自身的合并发送能力和所述对端节点的合并发送能力确定IO传输阈值。
[0006]可选的,所述基于自身的设备信息确定自身的合并发送能力,包括:获取自身的CPU信息以及内存信息,基于所述CPU信息以及所述内存信息确定能够支持的进行合并发送的IO操作数量;获取自身的网卡信息,基于所述网卡信息确定能够支持的进行合并发送的IO数据
大小。
[0007]可选的,所述确定IO传输阈值,包括:在与所述对端节点建立ROCE连接时,与所述对端节点协商以确定IO传输阈值。
[0008]可选的,所述在与所述对端节点建立ROCE连接时,与所述对端节点协商以确定IO传输阈值,包括:在与所述对端节点建立ROCE连接时,与所述对端节点交互合并发送能力,并进行协商以确定IO传输阈值。
[0009]可选的,所述基于自身的所述合并发送能力和所述对端节点的合并发送能力确定IO传输阈值,包括:将自身的所述合并发送能力和所述对端节点的合并发送能力中能够支持的进行合并发送的IO数据大小中的较小IO数据大小确定为IO传输时进行合并发送的IO数据大小阈值;将自身的所述合并发送能力和所述对端节点的合并发送能力中能够支持的进行合并发送的IO操作数量中的较小IO操作数量确定为IO传输时进行合并发送的IO操作数量阈值。
[0010]可选的,所述预设合并发送条件包括第一预设条件以及第二预设条件,相应的,所述基于所述IO传输阈值判断IO操作是否满足预设合并发送条件,包括:获取所述IO操作的数据的长度信息,并基于所述长度信息以及所述IO数据大小阈值判断所述IO操作是否满足所述第一预设条件;基于所述IO操作数量阈值判断所述IO操作是否满足所述第二预设条件;若所述IO操作满足所述第一预设条件以及所述第二预设条件,则判定所述IO操作满足预设合并发送条件。
[0011]可选的,所述基于所述长度信息以及所述IO数据大小阈值判断所述IO操作是否满足所述第一预设条件,包括:基于所述长度信息计算所述IO操作的数据和完成信息的长度和;判断该长度和是否小于或等于所述IO数据大小阈值,若所述长度和小于或等于所述IO数据大小阈值,则判定所述IO操作满足所述第一预设条件,否则判定所述IO操作不满足所述第一预设条件。
[0012]可选的,所述基于所述IO操作数量阈值判断所述IO操作是否满足所述第二预设条件,包括:基于所述IO操作数量阈值判断当前是否存在可用于进行合并发送的IO资源;若当前存在可用于进行合并发送的IO资源,则判定所述IO操作满足所述第二预设条件,否则判定所述IO操作不满足所述第二预设条件。
[0013]可选的,所述基于所述IO操作数量阈值判断当前是否存在可用于进行合并发送的IO资源,包括:判断当前已分配IO资源的IO操作数量是否达到所述IO操作数量阈值;若达到所述IO操作数量阈值,则判定当前不存在可用于进行合并发送的IO资源,若未达到所述IO操作数量阈值,则判定当前存在可用于进行合并发送的IO资源。
[0014]可选的,所述基于RDMA操作将所述合并数据发送至对端节点,包括:
基于RDMA操作将所述合并数据和标识信息发送至对端节点,以便所述对端节点基于所述标识信息对所述合并数据进行解析。
[0015]可选的,还包括:获取自身的设备零部件号;基于所述设备零部件号生成认证私钥。
[0016]可选的,还包括:向所述对端设备发送所述认证私钥,以便所述对端设备基于所述认证私钥进行身份认证。
[0017]可选的,还包括:获取自身的CPU信息以及内存信息;基于CPU信息以及内存信息确定多队列传输的队列数。
[0018]可选的,所述基于自身的设备信息确定自身的合并发送能力之后,还包括:基于能够支持的进行合并发送的IO操作数量确定内存需求;基于所述内存需求从操作系统申请内存。
[0019]可选的,还包括:当节点启动时,部署RDMA相关的软件环境。
[0020]可选的,还包括:若所述IO不满足所述预设合并发送条件,则将所述IO操作的数据和完成信息依次发送。
[0021]第二方面,本申请公开了一种数据传输装置,包括:阈值确定模块,用于确定IO传输阈值;所述IO传输阈值包括IO传输时进行合并发送的IO数据大小阈值以及IO操作数量阈值;条件判断模块,用于基于所述IO传输阈值判断IO操作是否满足预设合并发送条件;数据合并模块,用于若所述本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据传输方法,其特征在于,包括:确定IO传输阈值;所述IO传输阈值包括IO传输时进行合并发送的IO数据大小阈值以及IO操作数量阈值;基于所述IO传输阈值判断IO操作是否满足预设合并发送条件;若所述IO操作满足所述预设合并发送条件,则将所述IO操作的数据和完成信息合并以得到合并数据,并基于RDMA操作将所述合并数据发送至对端节点。2.根据权利要求1所述的数据传输方法,其特征在于,所述确定IO传输阈值,包括:基于自身的设备信息确定自身的合并发送能力;所述合并发送能力包括能够支持的进行合并发送的IO数据大小以及IO操作数量;基于自身的合并发送能力和所述对端节点的合并发送能力确定IO传输阈值。3.根据权利要求2所述的数据传输方法,其特征在于,所述基于自身的设备信息确定自身的合并发送能力,包括:获取自身的CPU信息以及内存信息,基于所述CPU信息以及所述内存信息确定能够支持的进行合并发送的IO操作数量;获取自身的网卡信息,基于所述网卡信息确定能够支持的进行合并发送的IO数据大小。4.根据权利要求2所述的数据传输方法,其特征在于,所述确定IO传输阈值,包括:在与所述对端节点建立ROCE连接时,与所述对端节点协商以确定IO传输阈值。5.根据权利要求4所述的数据传输方法,其特征在于,所述在与所述对端节点建立ROCE连接时,与所述对端节点协商以确定IO传输阈值,包括:在与所述对端节点建立ROCE连接时,与所述对端节点交互合并发送能力,并进行协商以确定IO传输阈值。6.根据权利要求2所述的数据传输方法,其特征在于,所述基于自身的所述合并发送能力和所述对端节点的合并发送能力确定IO传输阈值,包括:将自身的所述合并发送能力和所述对端节点的合并发送能力中能够支持的进行合并发送的IO数据大小中的较小IO数据大小确定为IO传输时进行合并发送的IO数据大小阈值;将自身的所述合并发送能力和所述对端节点的合并发送能力中能够支持的进行合并发送的IO操作数量中的较小IO操作数量确定为IO传输时进行合并发送的IO操作数量阈值。7.根据权利要求1所述数据传输方法,其特征在于,所述预设合并发送条件包括第一预设条件以及第二预设条件,相应的,所述基于所述IO传输阈值判断IO操作是否满足预设合并发送条件,包括:获取所述IO操作的数据的长度信息,并基于所述长度信息以及所述IO数据大小阈值判断所述IO操作是否满足所述第一预设条件;基于所述IO操作数量阈值判断所述IO操作是否满足所述第二预设条件;若所述IO操作满足所述第一预设条件以及所述第二预设条件,则判定所述IO操作满足预设合并发送条件。8.根据权利要求7所述的数据传输方法,其特征在于,所述基于所述长度信息以及所述IO数据大小阈值判断所述IO操作是否满足所述第一预设条件,包括:基于所述长度信息计算所述IO操作的数据和完成信息的长度和;
判断该长度和是否小于或等于所述IO数据大小阈值,若所述长度和小于或等于所述IO数据大小阈值,则判定所述IO操作满足所述第一预设条件,否则判定所述IO...

【专利技术属性】
技术研发人员:张士辉赵帅刘清林
申请(专利权)人:苏州浪潮智能科技有限公司
类型:发明
国别省市:

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

1