CN113886295A - 一种标签数据高效且低延时的传输方法及相关装置、系统 - Google Patents

一种标签数据高效且低延时的传输方法及相关装置、系统 Download PDF

Info

Publication number
CN113886295A
CN113886295A CN202010628506.2A CN202010628506A CN113886295A CN 113886295 A CN113886295 A CN 113886295A CN 202010628506 A CN202010628506 A CN 202010628506A CN 113886295 A CN113886295 A CN 113886295A
Authority
CN
China
Prior art keywords
data
rdma
tag
label
memory
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202010628506.2A
Other languages
English (en)
Inventor
李杨
张曼妮
张翔宇
孙军欢
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Hanhai Yunxing Technology Co ltd
Shenzhen Zhixing Technology Co Ltd
Original Assignee
Beijing Hanhai Yunxing Technology Co ltd
Shenzhen Zhixing Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Hanhai Yunxing Technology Co ltd, Shenzhen Zhixing Technology Co Ltd filed Critical Beijing Hanhai Yunxing Technology Co ltd
Priority to CN202010628506.2A priority Critical patent/CN113886295A/zh
Publication of CN113886295A publication Critical patent/CN113886295A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/28Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/163Interprocessor communication
    • G06F15/173Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake
    • G06F15/17306Intercommunication techniques
    • G06F15/17331Distributed shared memory [DSM], e.g. remote direct memory access [RDMA]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Computer And Data Communications (AREA)

Abstract

本发明提供一种标签数据高效且低延时的传输方法及相关装置、系统。其中涉及的发送数据的方法、接收数据的方法,并在此基础上的标签数据高效且低延时的传输方法以及相关装置、计算机网络系统和计算机可读存储介质,主要是通过在源主机端对相互对应的标签、数据进行内存拼接和RDMA发送控制,以及在目的主机端对拼接的标签数据的解析以及分片接收识别,进而在实现标签数据中标签、数据简单且高效地一并跨端传输的基础上,还能够实现及时有效的传输完成消息通知。

Description

一种标签数据高效且低延时的传输方法及相关装置、系统
技术领域
本发明涉及计算机通信技术领域,具体地,涉及一种标签数据高效且低延时的传输方 法及相关装置、系统。
背景技术
随着电子信息技术的发展,越来越多的电子计算机服务被广泛提供给人们的生产生活 活动。然而,单台计算机设备能够提供服务的能力毕竟有限;故现在越来越多的计算机服务, 特别是功能强大的计算机服务,是通过若干台计算机设备构成的计算机集群实现的。不同的 计算机设备通过网络连接构成服务器集群,进而为人们提供各种形式的计算机服务。在对外 提供服务时,不免涉及跨计算机设备终端间的调用和数据交互,即计算机间的跨端数据通信。 而计算机设备间的跨端通信,通常都是在TCP/IP协议支持下实现的。
然而,传统的TCP/IP技术在数据包处理过程中,要经过操作系统及其他软件层,需要占用大量的服务器资源和内存总线带宽,数据在系统内存、处理器缓存和网络控制器缓存 之间来回进行复制移动,给服务器的CPU和内存造成了沉重负担。尤其是网络带宽、处理器 速度与内存带宽三者的严重"不匹配性",更加剧了网络延迟效应。
RDMA是一种远程直接数据存取技术。作为一种远程内存访问技术,RDMA能够使 计算机直接存取其他计算机的内存,而不需要经过处理器的处理。RDMA将数据从一个系统 快速移动到远程系统的内存中,而不对操作系统造成任何影响。正是由于RDMA通信具备上 述优点,故在越来越多的应用场景中,特别是在大数据、AI领域,当有着大量的数据远程通 信请求产生时,越来越倾向于选择基于RDMA协议执行跨端数据传输。
然而,在这些应用场景中,不免涉标签数据(即带有标签的数据对象)的跨端通信;这其中不仅限于原本就有着对应标签的数据对象,也包括数据对象原本无标签,而在应用执 行过程中出于某种需要被(临时或永久地)打上标签的数据对象。在现有的通信技术方案中, 基于TCP/IP通信框架一般是不关注、且在技术上也不感知涉及跨端通信的标签、数据对应的 内存地址,它们一般是通过CPU拷贝以及在操作系统内核协议栈的支持下,遵循着一定的数 据格式,逐包发送到目的主机端的,并在目的主机端解析进而实现有效通信的。但是,RDMA 是“零拷贝”的技术,是绕过操作内核的;另,也缺少在此之上的数据格式支持;即便是目 的主机端接收到的数据,也仅会被视为无法识别的字节流,而无法解析识别的。
这里的标签,特别是那些出于某个或某些特定的功能需要被通信模块以外的功能模块 生成的标签,底层通信模块更是很难感知其与数据的对应关系;同时标签往往是小的数据, 当被作为一个小的、独立的数据对象进行RDMA通信时,由于RDMA通信请求调用本身是 存在一定开销的,标签这种小的数据传输对象基于RDMA进行传输往往是负收益的。
此外,为了减少重传和提高通信效率,同基于TCP/IP的通信框架一样,基于RDMA的跨端通信方案,也会设定网络链路MTU(Maximum Transmission Unit,即最大传输单元),对于数据的长度超过链路层MTU的数据,引入(MTU)分片机制,以提高传输效率,增强 通信系统健壮性。但是,不同于TCP/IP通信的是,RDMA通信绕过操作系统内核,缺少TCP/IP 通信那样完善的数据报文发送接收以及接收后的及时通知机制;也就是说,虽然在每个基本 语义操作层面,RDMA通信在发送接收两端有着一套控制消息交互机制保障着作为操作对象的数据段的通信进度监控;但在此粒度之下,即使目的主机端接收到全部数据分片,也未必能及时有效地通知目的主机端其他相关应用。
发明内容
有鉴于此,本发明提供一种标签数据高效且低延时的传输方法及相关装置、系统。
一方面,本发明实施例提供一种发送数据的方法,该方法应用于计算机跨端通信系统 中的源主机端,具体应用于标签数据的RDMA传输,其能够生成包括着标签数据(即相互对 应的标签、数据)的RDMA数据报文,以及发送RDMA数据报文。
上述的标签数据发送方法,包括:对于请求跨端传输的数据及其对应的标签,将所述 数据、标签拷贝到一块地址连续的内存中并拼接二者,形成一内存地址连续的数据段;将上 述的拼接后的数据段(即标签数据)所对应的内存注册为RDMA内存;生成标签数据的RDMA 数据报文;并发送所述RDMA数据报文;其中,
若其(标签数据)长度超过设定的MTU,则在生成所述的RDMA数据报文时,将所 述数据段对应的RDMA内存缓冲区,根据所述标签、数据拼接时的内存偏移量,分成标签分 片对应的和数据分片对应的;使所述的RDMA数据报文包括所述标签分片的部分/全部数据,或者所述数据分片的部分数据;
并在发送所述RDMA数据报文时,控制包括了所述标签分片的部分/全部数据的RDMA数据报文最后发送。
在第一方面的各实施例中,其中的一些作为一种可能的实现方式,优选地,若在生成 RDMA报文时,使其中的一个RDMA数据报文,就能包括所述标签分片的全部数据内容。 其中,作为某种或某些用途的标识,标签一般不占用太多字节即实现上述功能。因此,尽可 能地使一个RDMA数据报文就包括所述标签分片的全部数据内容,将不仅是在减少些许 RDMA报文发送的层面,而是多方面取得增益效果,大大提高接收相应速度和整体通信效率。
在第一方面的各实施例中,其中的一些作为又一种可能的实现方式,所提供的发送数 据的方法包括:所提供的发送数据的方法包括:通过DMA引擎申请一块地址连续的内存, 作为上述的地址连续内存,并通过DMA引擎拷贝所述数据、标签到上述的内存中相邻的位 置,实现二者的拼接。
在第一方面的各实施例中,其中的一些作为又一种可能的实现方式,所提供的发送数 据的方法包括:其中的RDMA数据传输,为单侧RDMA;即其基本语义操作为RDMA读操作,或者是RDMA写操作,以减少通信两端间的消息传输和交互,提供整体通信效率。
另一方面,本发明实施例提供一种接收数据的方法,该方法应用于计算机跨端通信系 统中的目的主机端,具体应用于标签数据的RDMA传输,其能够接收包括着标签数据(即相 互对应的标签、数据)的RDMA报文,以及从中解析获取被传输的标签、数据。
结合第一方面,对应地,上述的标签数据接收方法,包括:对于接收的标签数据,具体来说,接收其全部的RDMA报文,得到完整的包括着标签数据的数据段;上述的包括标签数据的数据段包括了被传输的标签、数据;解析该数据段,获取其中的被传输的标签、数据,以提供给目的主机端的相关应用访问或调用;其中,
以收到标签分片视为完整数据传输的完成,以通知相关应用访问或调用;
而进一步地,若一个RDMA数据报文,就能包括所述标签分片的全部数据内容,则以收到包括了所述标签分片全部数据的RDMA数据报文视为完整数据传输的完成;从全部RDMA数据报文中解析获取所述的被传输标签、数据,并通知相关应用访问/调用。
在第二方面的各实施例中,其中的一些作为一种可能的实现方式,优选地,其所提供 的接收数据的方法包括:在通信两端预先约定所述标签的内存偏移量,在目的主机端接收所 述标签数据(具体来说,是指包括所述标签数据的数据段)并解析时,通过预先约定的标签 内存偏移量配置,获取其中的被传输的标签、数据。
再一方面,本发明实施例提供一种标签数据高效且低延时的传输方法,该方法应用于 计算机跨端通信系统的标签数据RDMA传输,所述系统包括源主机端设备和目的主机端设 备;其中,源主机端设备用于标签数据的发送,而目的主机端设备用于标签数据的接收。
结合第一、第二方面,上述的标签数据高效且低延时的传输方法,包括:
对于源主机端请求跨端传输的数据及其对应的标签,在源主机端执行第一方面述及的 发送数据的方法,以及在目的主机端执行第二方面述及的接收数据的方法。
又一方面,本发明实施例提供一种用于RDMA数据传输的装置。
结合上述各方面,上述的装置包括:RDMA网卡、处理器,和存储器;其中,所述 的存储器存储有可在所述处理器上运行的计算机程序;而所述的处理器在执行上述计算机程序时,能够与所述RDMA网卡共同执行第一方面述及的发送数据的方法,
和/或,第二方面述及的接收数据的方法。
又一方面,本发明实施例提供一种计算机网络系统。
结合上述各方面,上述的计算机网络系统,包括:
若干台(不少于两台的)第四方面述及的装置;所述装置通过RDMA网络彼此连接;上述这些装置中,或被用于RDMA数据报文的发送,或被用于RDMA数据报文的接收,或 者既被用于RDMA数据报文的发送,又被用于其他装置发来的RDMA数据报文的接收。
又一方面,本发明实施例提供一种计算机可读存储介质。
结合上述各方面,上述的计算机可读存储介质中存储有用于执行标签数据传输的代 码,其中包括:用于执行第一方面述及的发送数据的方法操作的指令,和/或,第二方面述及 的接收数据的方法操作的指令,或,第三方面述及的标签数据高效且低延时的传输方法操作 的指令。
上述诸实施例提供的发送数据的方法、接收数据的方法,并在此基础上的标签数据高 效且低延时的传输方法以及相关装置、计算机网络系统和计算机可读存储介质,主要是通过 在源主机端对相互对应的标签、数据进行内存拼接和RDMA发送控制,以及在目的主机端对 拼接的标签数据的解析以及分片接收识别,进而在实现标签数据中标签、数据简单且高效地 一并跨端传输的基础上,还能够实现及时有效的传输完成消息通知。
下面通过附图、具体实施例对本发明的技术方案做进一步的描述。
附图说明
为更加清楚地说明本发明实施例或现有技术中的技术方案,下面将对本发明中一部分 实施例或现有技术描述中涉及的附图做简单介绍。
图1为本发明一些优选实施例中对请求通信的数据和对应标签进行拼接的示意图;
图2为上述优选实施例的一些中一种实现数据、标签拼接的具体方式示意图;
图3为本发明一些优选实施例中解析标签数据的示意图;
图4为本发明一优选实施例提供的一种标签数据高效且低延时的传输方法的流程示 意图。
具体实施方式
下面结合本发明实施例的附图,对本发明实施例中的技术方案进行清楚、完整地描述。 显然,所描述的实施例仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的 实施例,本领域普通技术人员在无需创造性劳动的前提下所获得的所有其他实施例,都属于 本发明保护的范围。
在现有技术中,典型的基于TCP/IP协议的计算机跨端通信框架,虽然有着诸如技术 方案成熟、既有解决方案丰富、可靠易用等优点,但面对大数据跨端传输时,却也因基于TCP/IP 协议的通信框架设计之初的固有缺陷而在大数据通信时,特别是通信高峰时,形成通信瓶颈, 影响整体系统效率。虽然,RDMA作为一种远程内存访问技术,能够使计算机直接存取其他 计算机的内存,而不需要经过处理器的处理,在一定程度上克服了上述问题。但在涉标签数 据(即带有标签的数据对象)的跨端通信时,由于RDMA绕过操作内核,又因此缺少像TCP/IP 通信框架那样的数据格式机制支持,故即便是目的主机端接收到的数据,也仅会被视为无法 识别的字节流,而无法解析识别的。此外,若分开通信,不仅无法保障传输过程中标签、数 据间的对应关系,且即使能够保障二者对应关系,标签这样的字节数较少的数据传输对象基 于RDMA进行传输往往是负收益的(RDMA通信过程中,注册内存以及其中的控制消息通 信都是存在着一定的开销的)。此外,为了减少重传和提高通信效率,同基于TCP/IP的通信 框架一样,基于RDMA的跨端通信方案,也会设定网络链路MTU,对于数据的长度超过链 路层MTU的数据,执行MTU分片。但是,RDMA通信绕过操作系统内核,缺少TCP/IP通信那样完善的数据报文发送接收以及接收后的及时通知机制;即在MTU分片粒度下,即使目的主机端接收到全部数据分片,也未必能及时有效地通知目的主机端其他相关应用。
于是,本发明提供一种标签数据高效且低延时的传输方法及相关装置、系统,以实现 标签数据(其中的标签、数据)简单且高效地一并跨端传输、以及及时有效的传输完成通知 机制。
以下为本发明的一些优选实施例。其中,
本发明的一些优选实施例提供一种发送数据的方法,该方法应用于计算机跨端通信系 统中的源主机端,具体应用于标签数据的RDMA传输,其能够生成包括着标签数据(即相互 对应的标签、数据)的RDMA报文,以及控制发送RDMA报文。该方法包括:对请求跨端 传输的数据及其对应的标签,进行内存拷贝拼接,且对拼接后标签数据执行RDMA跨端通信。其具体实现可以如图1所示,实现过程可以包括:对请求通信的数据102及其对应的标签101; 申请一块与二者大小相同的且地址连续的空闲内存103,将标签101和数据102拷贝到空闲 内存103进行拼接;并在拼接后,将内存103注册为RDMA内存;生成标签数据的RDMA 报文;并发送所述RDMA报文;如此,在这些RDMA报文中,事实上,就包括有标签101 或数据102的全部或部分数据;而全部的RDMA报文则也就荷载了上述的标签101、数据102 的全部内容;其中,
在生成所述的RDMA数据报文时,若标签数据(即标签101和数据102之和)超过 设定的MTU,将内存103根据标签101、数据102拼接时的内存偏移量分成标签101(即标 签分片)对应的和数据102(即数据分片)对应的RDMA内存缓冲区;使所述的RDMA数 据报文包括标签101分片的部分/全部数据,或者数据102分片的部分数据;并在发送所述 RDMA数据报文时,控制包括了标签分片的部分/全部数据的RDMA数据报文最后发送。
在上述优选实施例中的一些中,还提供一种优选的实现方式,具体包括:在生成RDMA 报文时,一个RDMA数据报文,就能包括标签分片的全部内容,则使其中的一个RDMA数据报文荷载标签分片的全部内容。
在上述优选实施例中的一些中,还提供一种优选的实现方式,即如图2所示,包括通 过DMA引擎201申请所述的空闲内存103,并通过DMA引擎拷贝数据102、标签101到空 闲内存103的相邻的位置,实现二者的拼接。
在上述优选实施例中的一些中,其中的RDMA数据传输,为单侧RDMA;单侧RDMA 的基本语义操作,通常包括:RDMA读操作和RDMA读操作两种基本语音操作方式;故这 里的RDMA数据传输,可以采用RDMA读操作,也可以采用RDMA写操作。相较于双侧 RDMA,在一次有效通信过程中,单侧RDMA显然可以减少通信两端的消息交互次数,进而 提高整体通信效率。
本发明的另一些优选实施例提供一种接收数据的方法,该方法应用于计算机跨端通信 系统中的目的主机端,具体应用于标签数据的RDMA传输,其能够接收包括着标签数据(即 相互对应的标签、数据)的RDMA报文,以及从中解析获取被传输的标签、数据。该方法包括:
对于接收的标签数据,即接收其全部的RDMA报文,得到完整的包括着标签数据的数据段;以及解析该数据段,获取其中的被传输的标签、数据,以提供给目的主机端的相关应用访问或调用。其具体实现可以如图3所示,实现过程可以包括:上述的接收到源主机端发送来的包括标签数据的数据段,同样地也是被存储在一块地址连续的内存中,即如图3中的内存301;而上述的数据段,则包括了被传输的标签101、数据102;解析上述数据段,获 取其中的标签101、数据102,以提供给目的主机端的相关应用访问或调用;
其中,以收到标签分片视为完整标签数据传输的完成,获取被传输的数据102,并及 时通知相关应用访问或调用。
进一步地,若一个RDMA数据报文就包括所述标签分片的全部数据内容,则以收到包括了所述标签分片全部数据的RDMA数据报文视为完整数据传输的完成;从全部RDMA 数据报文中解析获取所述的被传输标签、数据,及时通知相关应用访问/调用。
在上述优选实施例中的一些中,还提供一种优选的实现方式,即利用在通信两端预先 约定所述标签的内存偏移量,在目的主机端接收所述标签数据的数据段并解析时,通过预先 约定的标签内存偏移量配置,获取其中的被传输的标签、数据。其中,所述标签,例如标签 101,其大小固定,因此,可以在通信两端预先约定标签内存偏移量,并以标签内存偏移量配 置形式记录在通信两端,在源主机端按预先约定拼接所述标签、数据,而在目的主机端解析 所述数据段时,仅读取预存的标签内存偏移量配置,即可获取被传输的标签、数据了。此外, 所述标签往往是很少字节的一段数据,故在拼接时,优选地将其放置在前面,这样在目的主 机端解析时,按照编程习惯从数据段开头逐步解析时,其中的标签内存偏移量也不大,有利 于减小不必要开销。但是,需要强调的是,所述的标签与数据的拼接,包括但不仅限于本段 中前面所述实施例中的标签与数据拼接时标签在前的情形。
本发明的再一些优选实施例提供一种标签数据高效且低延时的传输方法,具体应用于 标签数据的RDMA传输,所述系统包括源主机端设备和目的主机端设备;其中,源主机端设 备用于标签数据的发送,而目的主机端设备用于标签数据的接收。该方法包括:
对于源主机端请求跨端传输的数据及其对应的标签,
在源主机端执行上述任一实施例中述及的发送数据的方法,
以及对应地,在目的主机端执行上述任一实施例中述及的接收数据的方法。
图4为上述优选实施例中的一个提供的一种标签数据高效且低延时的传输方法的流 程示意图。如图4所示,其标签数据的传输过程以数据102以及与之对应的标签101为例,包括:
在源主机端,
S101申请一块与数据102、标签101(之和)大小相同的且地址连续的空闲内存103,将标签101和数据102拷贝到空闲内存103进行拼接;
S102将内存103注册为RDMA内存;
S103生成标签数据的RDMA报文;所述RDMA报文即包括有标签101或数据102 的全部或部分数据;而全部的RDMA报文则荷载了标签101、数据102的全部内容;
S104并发送所述RDMA报文;
其中,在注册内存缓冲区后,根据标签101、数据102拼接时的内存偏移量,将它们拼接数据段对应的RDMA内存缓冲区分成标签分片对应的内存缓冲区和数据分片对应的RDMA内存缓冲区;进而生成对应二者(标签分片、数据分片)的RDMA数据报文;
并在S104发送所述RDMA数据报文时,控制包括了标签101分片的RDMA数据报 文最后发送;
在目的主机端,
S201接收全部的RDMA报文,获取包括着标签101、数据102拼接的标签数据的数 据段;
S202根据标签内存偏移量配置,从上述数据段中解析并获取标签101、数据102。其中,
在整个接收过程中,以收到标签101分片视为标签数据整个传输过程完成,并及时通 知相关应用访问或调用被传输的数据102以及对应的标签101。另外,考虑到标签101以及 其他同属于一类的标签是有着固定长度的,故通过在通信两端的预先约定,在源主机端标签 数据拼接时,遵循相关规则,使拼接后的标签数据的标签内存偏移量符合相应配置,同时在 目的主机端预存同样的标签内存偏移量配置,以便收到标签数据时,直接用于解析其对应的 数据段,以获取其中的标签、数据,以提供给目的主机端的相关应用访问或调用。
本发明的又一些优选实施例提供一种装置,该装置包括:RDMA网卡、处理器,和 存储器;其中,所述的存储器存储有可在所述处理器上运行的计算机程序;而所述的处理器在执行上述计算机程序时,能够与所述RDMA网卡共同执行上述任一实施例述及的发送数据的方法,和/或接收数据的方法。
本发明的又一些优选实施例提供一种计算机网络系统,该系统包括:若干台(不少于 两台)上述任一实施例述及的装置;而它们通过RDMA网络彼此连接;其中,这些装置或被用于RDMA数据报文的发送(即作为源主机端),或被用于RDMA数据报文的接收(即作为 目的主机端),或者既被用于RDMA数据报文的发送,又被用于其他装置发来的RDMA数据 报文的接收。
本发明的又一些优选实施例提供一种计算机可读存储介质,该计算机可读存储介质中 存储有用于执行标签数据传输的代码,其中包括:用于执行上述任一实施例述及的发送数据 的方法操作的指令,和/或,上述任一实施例述及的接收数据的方法操作的指令,或,上述任 一实施例述及的标签数据高效且低延时的传输方法操作的指令。
此外,需要强调的是,上述各实施例中所述及的内存,包括但不仅限于狭义上的内存 (即计算机系统中内存卡提供的内存),也包括显卡的内存(通常被简称为显存)等。
以上所述仅为本发明的具体实施方式,但本发明的保护范围并不局限于此。

Claims (10)

1.一种发送数据的方法,所述方法应用于源主机端的RDMA数据传输,其特征在于,所述方法包括:
对于任一请求跨端传输的数据及其对应的标签,将所述的数据、标签拷贝到一块地址连续的内存中并拼接二者;
将拼接后的标签数据所对应的内存注册为RDMA内存;
生成RDMA数据报文;并发送所述RDMA数据报文;其中,
若所述标签数据的长度超过设定的MTU,则在生成所述的RDMA数据报文时,将所述标签数据对应的RDMA内存缓冲区,根据所述标签、数据拼接时的内存偏移量,分成标签分片和数据分片;使所述的RDMA数据报文包括所述标签分片的部分/全部数据,或者所述数据分片的部分/全部数据;
并在发送所述RDMA数据报文时,控制包括了所述标签分片的部分/全部数据的RDMA数据报文最后发送。
2.根据权利要求1所述的发送数据方法,其特征在于,所述方法包括:
一个所述的RDMA数据报文,即包括所述标签分片的全部数据。
3.根据权利要求1所述的发送数据方法,其特征在于,所述方法包括:
通过DMA引擎申请所述的地址连续的内存,并将所述标签、数据拷贝到所述内存执行拼接。
4.根据权利要求1所述的发送数据方法,其特征在于,所述方法包括:
所述的RDMA数据传输,为单侧RDMA;
其中包括:读操作或写操作。
5.一种接收数据的方法,所述方法应用于目的主机端的RDMA数据传输,其特征在于,所述方法包括:
对于任一接收的标签数据,
接收其全部的RDMA数据报文,得到完整的所述标签数据;
解析所述标签数据,获取其中的被传输的标签、数据;
其中,在接收过程中,所述的标签数据包括:标签分片和数据分片;
以收到标签分片视为完整数据传输的完成,即解析所述标签数据,从中获取其中的被传输的标签、数据,并通知相关应用访问/调用;其中,
若一个所述的RDMA数据报文,就包括了所述标签分片的全部数据;
则以收到包括了所述标签分片全部数据的RDMA数据报文视为完整数据传输的完成;从全部RDMA数据报文中解析获取所述的被传输标签、数据,并通知相关应用访问/调用。
6.根据权利要求5所述的接收数据方法,其特征在于,所述方法包括:
通过预先约定的所述标签、数据的内存偏移量解析所述的标签数据,获取其中的被传输的标签、数据。
7.一种标签数据的高效且低延时的传输方法,所述方法应用于计算机跨端通信系统的RDMA数据传输,所述系统包括源主机端设备和目的主机端设备,其特征在于,所述方法包括:
对于任一请求跨端传输的数据及其对应的标签,
在源主机端,执行权利要求1-4任一所述的发送数据的方法
以及在目的主机端,执行权利要求5-6任一所述的接收数据的方法。
8.一种用于RDMA数据传输的装置,其特征在于,包括:
RDMA网卡、处理器,和存储器;其中,
所述的存储器存储有可在所述处理器上运行的计算机程序;
所述的处理器在执行上述计算机程序时,能够与所述RDMA网卡共同执行1-4任一所述的发送数据的方法,
和/或,权利要求5-6任一所述的接收数据的方法。
9.一种计算机网络系统,其特征在于,包括:
若干台权利要求8所述的装置;所述装置通过RDMA网络彼此连接;
所述装置用于RDMA数据报文的发送,
和/或,RDMA数据报文的接收。
10.一种计算机可读存储介质,其特征在于,存储有用于执行数据传输的代码,其中包括:用于执行权利要求1-4任一所述的发送数据的方法操作的指令;
和/或,执行权利要求5-6任一所述的接收数据的方法操作的指令;
或,权利要求7所述的一种标签数据的高效且低延时的传输方法操作的指令。
CN202010628506.2A 2020-07-02 2020-07-02 一种标签数据高效且低延时的传输方法及相关装置、系统 Pending CN113886295A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010628506.2A CN113886295A (zh) 2020-07-02 2020-07-02 一种标签数据高效且低延时的传输方法及相关装置、系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010628506.2A CN113886295A (zh) 2020-07-02 2020-07-02 一种标签数据高效且低延时的传输方法及相关装置、系统

Publications (1)

Publication Number Publication Date
CN113886295A true CN113886295A (zh) 2022-01-04

Family

ID=79012893

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010628506.2A Pending CN113886295A (zh) 2020-07-02 2020-07-02 一种标签数据高效且低延时的传输方法及相关装置、系统

Country Status (1)

Country Link
CN (1) CN113886295A (zh)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102404212A (zh) * 2011-11-17 2012-04-04 曙光信息产业(北京)有限公司 一种基于InfiniBand网络的跨平台RDMA通信方法
CN103763173A (zh) * 2013-12-31 2014-04-30 华为技术有限公司 数据传输方法和计算节点
CN105893323A (zh) * 2016-05-23 2016-08-24 华为技术有限公司 一种读数据的方法及设备
US20170325171A1 (en) * 2014-11-28 2017-11-09 Huawei Technologies Co., Ltd. Message Processing Method and Apparatus
CN109391522A (zh) * 2017-08-14 2019-02-26 华为技术有限公司 一种基于rdma的网络流量确定方法及装置
CN109491809A (zh) * 2018-11-12 2019-03-19 西安微电子技术研究所 一种降低高速总线延迟的通信方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102404212A (zh) * 2011-11-17 2012-04-04 曙光信息产业(北京)有限公司 一种基于InfiniBand网络的跨平台RDMA通信方法
CN103763173A (zh) * 2013-12-31 2014-04-30 华为技术有限公司 数据传输方法和计算节点
US20170325171A1 (en) * 2014-11-28 2017-11-09 Huawei Technologies Co., Ltd. Message Processing Method and Apparatus
CN105893323A (zh) * 2016-05-23 2016-08-24 华为技术有限公司 一种读数据的方法及设备
CN109391522A (zh) * 2017-08-14 2019-02-26 华为技术有限公司 一种基于rdma的网络流量确定方法及装置
CN109491809A (zh) * 2018-11-12 2019-03-19 西安微电子技术研究所 一种降低高速总线延迟的通信方法

Similar Documents

Publication Publication Date Title
US20050223128A1 (en) Accelerated TCP (Transport Control Protocol) stack processing
CN112152940B (zh) 报文处理方法、装置以及系统
CN109120687B (zh) 数据包发送方法、装置、系统、设备及存储介质
US9794354B1 (en) System and method for communication between networked applications
US6742075B1 (en) Arrangement for instigating work in a channel adapter based on received address information and stored context information
US11601489B2 (en) Method for transmitting stream, streaming server and storage medium
WO2023103318A1 (zh) 媒体流传输方法和系统
CN114124929A (zh) 跨网络的数据处理方法和装置
US20160294926A1 (en) Using a single work item to send multiple messages
CN113886295A (zh) 一种标签数据高效且低延时的传输方法及相关装置、系统
WO2019015487A1 (zh) 一种数据重传处理方法、rlc实体和mac实体
CN114090481A (zh) 一种发送数据的方法、接收数据的方法及相关装置
CN113886294A (zh) 一种基于rdma的低延时数据传输方法及相关装置
CN112422457B (zh) 报文处理方法、装置和计算机存储介质
CN113965626A (zh) 一种发送标签数据的方法、接收标签数据的方法及相关装置
CN113965627A (zh) 一种发送数据的方法、低延时接收数据的方法及相关装置
CN109379342B (zh) 基于udp网络协议的上位机与dsp数据传输方法
CN113965511A (zh) 一种基于rdma的标签数据传输方法及相关装置、系统
CN114095550A (zh) 一种服务端直接读取引用参数的远程过程调用方法
CN113765972A (zh) 数据请求响应方法、装置、系统、服务器和存储介质
CN115176453A (zh) 报文缓存方法、内存分配器及报文转发系统
CN111405046A (zh) 一种批量设备的授权方法
WO2014205638A1 (zh) 一种数据包传输方法及设备
US7428242B2 (en) Action list for a split media access and control layer communications system
CN117041147B (zh) 智能网卡设备、主机设备和方法及系统

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination