System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本公开涉及通信,具体涉及一种数据传输方法、装置、计算机设备及可读介质。
技术介绍
1、rdma(remote direct memory access,远程直接数据存取),主要是rocev2(融合以太网rdma协议v2版本),是目前在高性能计算(high performance computing,hpc)领域和大型数据中心当中,广泛使用的传输协议。由于具有零拷贝、内核bypass(旁路)、cpu卸载等优点,相比于传统以太网,rdma技术做到了更高带宽和更低时延。
2、数据中心流量工程提出了多路径数据传输的需求。宏观的数据中心的流量具有明显的“大小流”特征,流量高并发,流量突发。多路径数据传输具有以下优点:带宽聚合,提高吞吐量;降低突发;减少抖动,网络链路故障时快速恢复,期间一个路径的阻塞丢包影响变小、在原传输路径不可用时对重传报文进行重新路由而无需等待全网路由更新收敛。同时,数据中心也提供了多路径数据传输的实施条件:相对于因特网这类复杂多变且不完全可控的异构网络,数据中心网络是一个单一自治域下的同构网络环境。端主机及其使用的协议、网络设备及配置等都相对可控可预测;同构性体现在固定有规律的拓扑如fat-tree(胖树)、vl2,相对一致的缓存大小和链路带宽等。
3、但是,现有rdma rocev2不支持多路径数据传输,其根本原因在于使用多路径传输数据会导致接收端接收的数据包是乱序,且乱序成为常态。传统的保序方案,需要接收端缓存排序再写入数据,耗费计算资源和存储资源,并且时延较大。随着网络io速度呈10g、
技术实现思路
1、本公开提供一种数据传输方法、装置、计算机设备及可读介质。
2、第一方面,本公开实施例提供一种数据传输方法,应用于第一网络设备,所述方法包括:
3、根据数据的存储顺序从内存中读取数据,并在本地存储所述数据;
4、为所述数据分配地址,所述地址表示所述数据的读取顺序;
5、将所述数据中的每个分配到至少两个传输路径中的一个;
6、针对每个所述传输路径,通过第一数据报文向第二网络设备发送分配到所述传输路径中的数据和所述数据的地址,所述地址用于使所述第二网络设备根据所述地址将对应的数据写入内存。
7、又一方面,本公开实施例还提供一种数据传输方法,应用于第二网络设备,所述方法包括:
8、通过至少两个传输路径接收第一网络设备发送的第一数据报文;
9、获取所述第一数据报文中携带的数据和所述数据的地址;所述数据由所述第一网络设备根据数据的存储顺序从内存中读取,所述地址表示所述数据的读取顺序;
10、根据所述地址将对应的数据写入内存。
11、又一方面,本公开实施例还提供一种网络设备,所述网络设备为第一网络设备,包括数据读取模块、地址分配模块、路径分配模块和数据传输模块,所述数据读取模块用于,根据数据的存储顺序从内存中读取数据,并在本地存储所述数据;
12、所述地址分配模块用于,为所述数据分配地址,所述地址表示所述数据的读取顺序;
13、所述路径分配模块用于,将所述数据中的每个分配到至少两个传输路径中的一个;
14、所述数据传输模块用于,针对每个所述传输路径,通过第一数据报文向第二网络设备发送分配到所述传输路径中的数据和所述数据的地址,所述地址用于使所述第二网络设备根据所述地址将对应的数据写入内存。
15、又一方面,本公开实施例还提供一种网络设备,所述网络设备为第二网络设备,包括数据传输模块、数据获取模块和数据写入模块,所述数据传输模块用于,通过至少两个传输路径接收第一网络设备发送的第一数据报文;
16、所述数据获取模块用于,获取所述第一数据报文中携带的数据和所述数据的地址;所述数据由所述第一网络设备根据数据的存储顺序从内存中读取,所述地址表示所述数据的读取顺序;
17、所述数据写入模块用于,根据所述地址将对应的数据写入内存。
18、又一方面,本公开实施例还提供一种计算机设备,包括:一个或多个处理器;存储装置,其上存储有一个或多个程序;当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如前所述的数据传输方法。
19、又一方面,本公开实施例还提供一种计算机可读介质,其上存储有计算机程序,其中,所述程序被执行时实现如前所述的数据传输方法。
20、本公开实施例提供的数据传输方法,应用于第一网络设备,包括:根据数据的存储顺序从内存中读取数据,并在本地存储数据;为数据分配地址,地址表示数据的读取顺序;将数据中的每个分配到至少两个传输路径中的一个;针对每个传输路径,通过第一数据报文向第二网络设备发送分配到传输路径中的数据和数据的地址,地址用于使第二网络设备根据地址将对应的数据写入内存。本公开实施例无需进行数据保序重组,避免数据保序重组对计算资源和存储资源的巨大消耗,能够无代价的实现多路径数据传输,支持数据中心流量工程,减少网络拥塞,降低网络时延,从而提升网络带宽。
本文档来自技高网...【技术保护点】
1.一种数据传输方法,应用于第一网络设备,所述方法包括:
2.如权利要求1所述的方法,其特征在于,所述为所述数据分配地址,包括:为所述数据分配连续的地址。
3.如权利要求2所述的方法,其特征在于,所述地址为从0开始的虚拟地址,按照所述数据由先至后的读取顺序,各所述数据的地址递增。
4.如权利要求2所述的方法,其特征在于,所述地址为环形队列地址。
5.如权利要求1所述的方法,其特征在于,在针对每个所述传输路径,通过第一数据报文向第二网络设备发送分配到所述传输路径中的数据和所述数据的地址之后,所述方法还包括:
6.如权利要求1-5任一项所述的方法,其特征在于,在将所述数据中的每个分配到至少两个传输路径中的一个之后、针对每个所述传输路径,通过第一数据报文向第二网络设备发送分配到所述传输路径中的数据和所述数据的地址之前,所述方法还包括:
7.一种数据传输方法,应用于第二网络设备,所述方法包括:
8.如权利要求7所述的方法,其特征在于,所述地址为连续地址。
9.如权利要求8所述的方法,其特征在于
10.如权利要求8所述的方法,其特征在于,所述根据所述地址将对应的数据写入内存,包括:
11.如权利要求7-10任一项所述的方法,其特征在于,在通过至少两个传输路径接收第一网络设备发送的第一数据报文之后,所述方法还包括:
12.一种网络设备,所述网络设备为第一网络设备,包括数据读取模块、地址分配模块、路径分配模块和数据传输模块,所述数据读取模块用于,根据数据的存储顺序从内存中读取数据,并在本地存储所述数据;
13.一种网络设备,所述网络设备为第二网络设备,包括数据传输模块、数据获取模块和数据写入模块,所述数据传输模块用于,通过至少两个传输路径接收第一网络设备发送的第一数据报文;
14.一种计算机设备,包括:
15.一种计算机可读介质,其上存储有计算机程序,其中,所述程序被执行时实现如权利要求1-11任一项所述的数据传输方法。
...【技术特征摘要】
1.一种数据传输方法,应用于第一网络设备,所述方法包括:
2.如权利要求1所述的方法,其特征在于,所述为所述数据分配地址,包括:为所述数据分配连续的地址。
3.如权利要求2所述的方法,其特征在于,所述地址为从0开始的虚拟地址,按照所述数据由先至后的读取顺序,各所述数据的地址递增。
4.如权利要求2所述的方法,其特征在于,所述地址为环形队列地址。
5.如权利要求1所述的方法,其特征在于,在针对每个所述传输路径,通过第一数据报文向第二网络设备发送分配到所述传输路径中的数据和所述数据的地址之后,所述方法还包括:
6.如权利要求1-5任一项所述的方法,其特征在于,在将所述数据中的每个分配到至少两个传输路径中的一个之后、针对每个所述传输路径,通过第一数据报文向第二网络设备发送分配到所述传输路径中的数据和所述数据的地址之前,所述方法还包括:
7.一种数据传输方法,应用于第二网络设备,所述方法包括:
8.如权利要求7所述的方法,其特征在于,所述地址为连续地址。
9...
【专利技术属性】
技术研发人员:秦振,
申请(专利权)人:中兴智能科技南京有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。