CN115801770B - 一种基于全用户态quic协议的大文件传输方法 - Google Patents
一种基于全用户态quic协议的大文件传输方法 Download PDFInfo
- Publication number
- CN115801770B CN115801770B CN202310073863.0A CN202310073863A CN115801770B CN 115801770 B CN115801770 B CN 115801770B CN 202310073863 A CN202310073863 A CN 202310073863A CN 115801770 B CN115801770 B CN 115801770B
- Authority
- CN
- China
- Prior art keywords
- file
- data packet
- event
- client
- protocol stack
- 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.)
- Active
Links
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/50—Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate
Abstract
本发明涉及计算机网络技术领域,公开了一种基于全用户态QUIC协议的大文件传输方法,从操作系统底层数据包收发架构出发,通过使用DPDK框架,轮询获取网卡收到的数据包,并将数据包交给用户空间内的协议栈进行解析,再通过libevent事件通知库将解析后的报文向上传递给应用层,达到了旁路内核的效果,实现了全用户态的QUIC协议,加速大文件传输过程。
Description
技术领域
本发明涉及计算机网络技术领域,具体涉及一种基于全用户态QUIC协议的大文件传输方法。
背景技术
近些年随着网络技术的发展,各行各业所产生的数据爆炸式增长,单体文件的容量也在快速增长,文件传输压力陡增。作为网络的基本功能,文件传输对于用户的网络体验和工作效率来说非常重要。同时,文件传输也是用于检验传输协议性能和网络质量的关键指标。随着文件容量和网络带宽的快速增长,传统的文件传输协议面临越来越多的问题,提高文件传输的效率迫在眉睫。
传统的文件传输方法主要是使用文件传输协议(File TransferProtocol,FTP)。用户通过使用支持FTP的客户端连接到远程FTP服务器,向服务器发出命令,获取相应的文件。在客户端和服务器的交互过程中,文件和命令的传输均依赖于操作系统内核的传输控制协议(Transmission Control Protocol,TCP)。然而,随着网络技术的发展,以及网络带宽的快速增长,基于操作系统内核的FTP暴露出以下问题,无法满足用户需求。
1)操作系统内核协议栈的TCP协议采用了非常保守的拥塞控制算法,比如Reno、SACK、Cubic等,这些启发式拥塞控制算法通过检测丢包来判断网络拥塞,一旦发生丢包,会大幅度减少拥塞窗口,降低传输速率。然而当下的网络环境,链路带宽高,无线链路占比越来越大,出现丢包不一定是网络拥塞导致的。因此,基于丢包的传统TCP拥塞算法表现不佳。
2)操作系统内核协议栈的版本升级依赖于操作系统的更新,难以快速迭代。特别是当文件传输协议是基于客户端-服务器架构时,仅对服务器系统进行升级,无法满足使用要求,还需要客户端同步进行系统升级。这种制约使得新研发的更优异的技术无法快速部署到实际应用之中。
3)针对于大文件传输场景,传统的基于操作系统内核的数据包收发架构会成为性能瓶颈。第一,网卡在收到数据包后会向CPU发出硬中断,频繁地处理中断会使得CPU开销非常大;第二,数据包需要在内核协议栈解析,再拷贝到用户空间的应用层,拷贝过程耗时严重;第三,多核服务器跨核处理数据任务,容易导致缓存不命中,降低处理速度。在大文件传输场景下,短时间内会出现大量的巨型长数据包时,这三个弊端产生的影响更加明显,会严重降低传输效率。
基于以上问题,本发明从操作系统底层数据包收发架构出发,通过使用DPDK框架,轮询获取网卡收到的数据包,并将数据包交给用户空间内的协议栈进行解析,再通过libevent事件通知库将解析后的报文向上传递给应用层,达到了旁路内核的效果,实现了全用户态的QUIC协议,加速大文件传输过程。
发明内容
为解决上述技术问题,本发明提供一种基于全用户态QUIC协议的大文件传输方法。
为解决上述技术问题,本发明采用如下技术方案:
一种基于全用户态QUIC协议的大文件传输方法,包括以下步骤:
步骤一:客户端向服务器发送请求命令;
步骤二:服务器根据客户端发来的请求命令找到待传输文件,对待传输文件进行分片,得到文件分片和分片信息,同时生成传输任务编号;向客户端发送传输任务编号;
步骤三:客户端根据传输任务编号创建临时文件,然后向服务器发送包含传输任务编号的请求传输文件的命令;
步骤四:服务器根据收到的传输任务编号找到对应的分片信息,根据分片信息从待传输文件中取出文件分片,以数据包的形式将文件分片连同分片信息发送给客户端;
步骤五:客户端接收到分片信息和文件分片,解析分片信息,并按照分片信息将文件分片聚合形成完整的文件;客户端接收的文件分片的数据包依次经过网卡、DPDK、用户态协议栈、libevent事件通知库、具有QUIC协议的应用层、客户端应用程序的解封装;客户端接收文件分片的数据包时,包括数据包在网卡和用户态协议栈之间的传递过程,以及数据包在用户态协议栈与应用层之间的传递过程;
数据包在网卡和用户态协议栈之间的传递过程,具体包括:
步骤五A1:网卡收到数据包后,存入本地缓冲区,等待DPDK取数据包;
步骤五A2:DPDK通过轮询的方式从网卡中获取数据包,并将数据包封装到rte_mbuf结构体组成的rte_mbuf结构体链表中;
步骤五A3:将DPDK存放数据包的rte_mbuf结构体链表转换为用户态协议栈中的mbuf结构体链表;mbuf结构体链表包括位于头结点的用于存放数据包所用协议的结构体,以及依次链接的mbuf结构体;mbuf结构体用于存放数据包所用协议的首部和数据包;
步骤五A4:根据用户态协议栈中mbuf结构体链表头节点内保存的数据包所用协议,层层剥离数据包所用协议的首部,得到完整的数据包;
数据包在用户态协议栈与应用层之间的传递过程,具体包括:
步骤五B1:应用层的QUIC协议初始化事件,设置回调函数;
步骤五B2:将初始化后的事件添加到libevent事件通知库中,完成事件注册;
步骤五B3:libevent事件通知库将事件挂载到等待链表中,等待事件被触发;
步骤五B4:用户态协议栈解析完数据包后,触发等待链表中的事件;
步骤五B5:被触发的事件会从等待链表中脱离,变为就绪事件;
步骤五B6:libevent事件通知库调用就绪事件的回调函数执行事件处理。
进一步地,待所有文件分片传输完成后,客户端向服务器发出关闭连接的请求,完成文件传输。
具体地,步骤二中,服务器对待传输文件进行分片得到文件分片和分片信息的同时,生成文件队列,将分片信息挂在到文件队列上;步骤四中,服务器根据收到的传输任务编号找到对应的文件队列,进而找到分片信息。
具体地,所述分片信息包括传输任务的编号taskID、文件分片的大小chunkSize和文件分片在待传输文件中的偏移offset。
具体地,步骤五B1中设置的回调函数能够对数据包进行读取操作;步骤五B6中,libevent事件通知库调用就绪事件的回调函数执行事件处理时,能够从用户态协议栈中读取数据包。
与现有技术相比,本发明的有益技术效果是:
在底层数据包收发架构中使用DPDK框架,将数据层与控制层分离,内核仅负责处理部分的控制指令,协议栈解析、内存管理、处理器调度等操作全在用户空间内执行;此外,本发明使用用户态的协议栈,将由DPDK框架轮询接收的数据包直接交给用户空间的协议栈进行解析,从而避免数据包在内核空间和用户空间进行频繁拷贝;协议栈解析后的数据包经由高性能事件通知库libevent传递给应用层QUIC协议,从而实现全用户态下的QUIC协议。
附图说明
图1为本发明的整体框架示意图;
图2为本发明的传输流程示意图;
图3为本发明文件分片传输的示意图;
图4为本发明网卡和用户态协议栈信息传递的示意图;
图5为本发明用户态协议栈和应用层信息传递的示意图。
具体实施方式
下面结合附图对本发明的一种优选实施方式作详细的说明。
如图1所示,本发明提出一种基于全用户态QUIC协议的大文件传输方法,整体框架由客户端和服务器组成。客户端和服务器均有应用程序、QUIC(Quick UDP InternetConnection)协议、libevent事件通知库、用户态协议栈和数据平面开发套件(Data PlaneDevelopment Kit,DPDK)。在服务器,待传输文件进行分片后依次经由应用程序、QUIC协议、libevent事件通知库、DPDK进行层层封装,最后交由网卡以数据包的形式发送到网络中;在客户端,网卡收到数据包后,依次经由DPDK、libevent事件通知库、QUIC协议、应用程序进行层层解封装,最后由应用程序得到待传输文件,完成传输。
1.传输流程
如图2所示,一次传输任务主要包括五次交互。
1)在进行文件传输之前,客户端需要向服务器发送请求命令,请求命令主要包含请求下载的文件的具体信息。
2)服务器根据客户端发来的请求命令,找到待传输文件,然后对待传输文件进行分片,得到文件分片和分片信息,并将分片信息挂在到文件队列上,同时生成此次传输任务的编号。在完成相应的操作后,向客户端发送响应,告知待传输文件的大小和此次传输任务的编号。
3)客户端根据传输任务编号先创建临时文件,然后向服务器发送请求传输文件的命令,请求传输文件的命令包含传输任务编号。
4)服务器收到传输任务编号后,根据传输任务编号找到对应的文件队列,取出分片信息,根据分片信息从待传输文件中取出文件分片进行传输。客户端和服务器之间在传输文件分片时可以建立多条连接,并行传输以提高传输效率。
5)待所有文件分片传输完成后,客户端向服务器发出关闭连接的请求,完成文件传输。
2.文件分片传输
服务器在传输文件前,会对待传输文件进行分片,生成文件队列。文件分片传输流程如图3所示,负责发送的线程从文件队列中获取分片信息,分片信息主要包含传输任务的编号taskID、文件分片的大小chunkSize和文件分片在待传输文件中的偏移offset。然后根据分片信息从待传输文件中读取多个文件分片,并连同分片信息发送给客户端的接收线程。客户端接收到分片信息和文件分片,解析处理分片信息,并按照分片信息将文件分片聚合形成完整的文件。
3.全用户态数据传递
本发明最核心的创新点是实现全用户态的QUIC协议,重点在于如何在用户态下完成数据包从网卡到协议栈再到QUIC协议的传递。接下来以客户端接受数据为例,详细叙述传递过程,服务器只需反向操作即可,不再赘述。
3.1 网卡和用户态协议栈之间的传递
数据包在网卡和用户态协议栈之间的相互传递,主要依赖于DPDK,具体流程如图4所示,具体步骤如下。
1)网卡收到数据包后,先存入本地的缓冲区,等待DPDK取数据包。
2)DPDK通过轮询的方式从网卡中获取数据包,并将数据包封装到rte_mbuf结构体中。rte_mbuf结构体的头部存放标志信息,如地址、包长度、数据长度等;rte_mbuf结构体的负载部分中预留出头尾空间由用户自定义,其他空间用于存放数据包。对于巨型长数据包,可以用多个rte_mbuf结构体链接存储,称为rte_mbuf结构体链表。
3)将DPDK存放数据包的rte_mbuf结构体链表转换为用户态协议栈的结构体链表。本发明中的用户态协议栈选取FreeBSD系统的协议栈,并使用mbuf结构体来存放数据包。mbuf结构体由头部和数据区组成,头部占20字节,包含链表指针、数据长度等控制信息,数据区由108个字节构成,主要用于存放数据包所用协议的首部和数据包。在转换过程中,需要更新mbuf结构体头部的控制信息,形成mbuf结构体链表,并在mbuf结构体链表的头节点前插入新的用于标志数据包所用协议的结构体,形成用户态协议栈的结构体链表。
4)用户态协议栈解析数据包。根据用户态协议栈的结构体链表头节点内保存的数据包所用协议信息,层层剥离数据包所用协议的首部,最终得到完整的数据包,即应用层报文。
3.2协议栈与应用层之间的传递
数据包在协议栈与应用层之间的相互传递,主要依赖于libevent事件通知库,具体流程如图5所示,具体步骤如下。
1)应用层的QUIC协议先初始化事件,设置好相应回调函数,主要包含对数据包的读操作或者写操作。
2)将初始化后的事件添加到libevent事件通知库中,完成事件注册。
3)libevent事件通知库将初始化后的事件挂载到等待链表中,进入无限循环,等待事件被触发。
4)用户态协议栈解析完数据包后,会触发等待链表中的事件。
5)被触发的事件会从等待链表中脱离,变为就绪事件。
6)libevent事件通知库调用就绪事件的回调函数执行事件处理。如果是服务器发送数据,则会调用写操作向用户态协议栈写入数据包;反之,如果是客户端接收数据,则会调用读操作从用户态协议栈读取数据包。
本发明通过整合DPDK、用户态协议栈和libevent事件通知库实现数据包从网卡到QUIC协议全用户态的路径,无需系统调用和切换内核态,大幅度减少了对操作系统内核的依赖,更加便捷高效,从底层优化数据包处理流程,非常显著的提升了大文件传输效率。
本发明根据大文件传输实际场景,分析出当下文件传输协议的弊端,创新性地利用DPDK架构和用户态协议栈,避免标准QUIC协议对内核的依赖,实现全用户态下的QUIC协议。将数据包的处理操作全部迁移到用户空间进行,避免了频繁的系统调用、网卡中断以及大量内核空间和用户空间之间的数据拷贝,从而大幅度提高数据包的处理速度。特别是针对大文件传输任务,对于处理大量长数据包,本发明提出的在DPDK框架下实现的全用户态QUIC协议相对于已有的文件传输协议更加高效,数据包处理速度更快,单条连接吞吐量更高,大文件传输整体速度显著提高。
实施例
本发明属于客户端-服务器架构,需要一台服务器提供文件下载服务,并需要一台或多台机器作为客户端。客户端和服务器均需要提前安装相应的软件和环境,包括文件传输应用程序、QUIC协议、libevent事件通知库、用户态协议栈和DPDK。其中文件传输应用程序可以自行构建,引入文件分片功能以实现并行传输,最大化提高传输效率;QUIC协议可选择IETF开源的标准版QUIC或诸如Facebook开源的MVFST、阿里巴巴开源的XQUIC等非标准版QUIC。libevent事件通知库和DPDK均有完善的开源社区,也可从Github等开源代码社区获得。用户态协议栈可以自行构建或者直接使用开源代码,唯一的要求是包含三层或四层协议栈功能,能够解析IP和UDP包。
在获取到基础的软件资源后,对代码进行配置,搭建完整的全用户态QUIC协议。数据包处理全过程能在用户空间完成,则表明环境搭建成功。此外,在具体使用前,需要将支持DPDK的网卡卸载并绑定DPDK提供的用户态驱动。网卡绑定完成后,所有的配置工作已经完成。客户端和服务器即可按照本发明中的流程进行通信,传输指定的文件。
对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化囊括在本发明内,不应将权利要求中的任何附图标记视为限制所涉及的权利要求。
此外,应当理解,虽然本说明书按照实施方式加以描述,但并非每个实施方式仅包含一个独立技术方案,说明书的这种叙述方式仅仅是为了清楚起见,本领域技术人员应当将说明书作为一个整体,各实施例中的技术方案也可以经适当组合,形成本领域技术人员可以理解的其他实施方式。
Claims (5)
1.一种基于全用户态QUIC协议的大文件传输方法,包括以下步骤:
步骤一:客户端向服务器发送请求命令;
步骤二:服务器根据客户端发来的请求命令找到待传输文件,对待传输文件进行分片,得到文件分片和分片信息,同时生成传输任务编号;向客户端发送传输任务编号;
步骤三:客户端根据传输任务编号创建临时文件,然后向服务器发送包含传输任务编号的请求传输文件的命令;
步骤四:服务器根据收到的传输任务编号找到对应的分片信息,根据分片信息从待传输文件中取出文件分片,以数据包的形式将文件分片连同分片信息发送给客户端;
步骤五:客户端接收到分片信息和文件分片,解析分片信息,并按照分片信息将文件分片聚合形成完整的文件;客户端接收的文件分片的数据包依次经过网卡、DPDK、用户态协议栈、libevent事件通知库、具有QUIC协议的应用层、客户端应用程序的解封装;客户端接收文件分片的数据包时,包括数据包在网卡和用户态协议栈之间的传递过程,以及数据包在用户态协议栈与应用层之间的传递过程;
数据包在网卡和用户态协议栈之间的传递过程,具体包括:
步骤五A1:网卡收到数据包后,存入本地缓冲区,等待DPDK取数据包;
步骤五A2:DPDK通过轮询的方式从网卡中获取数据包,并将数据包封装到rte_mbuf结构体组成的rte_mbuf结构体链表中;
步骤五A3:将DPDK存放数据包的rte_mbuf结构体链表转换为用户态协议栈中的mbuf结构体链表;mbuf结构体链表包括位于头结点的用于存放数据包所用协议的结构体,以及依次链接的mbuf结构体;mbuf结构体用于存放数据包所用协议的首部和数据包;
步骤五A4:根据用户态协议栈中mbuf结构体链表头节点内保存的数据包所用协议,层层剥离数据包所用协议的首部,得到完整的数据包;
数据包在用户态协议栈与应用层之间的传递过程,具体包括:
步骤五B1:应用层的QUIC协议初始化事件,设置回调函数;
步骤五B2:将初始化后的事件添加到libevent事件通知库中,完成事件注册;
步骤五B3:libevent事件通知库将事件挂载到等待链表中,等待事件被触发;
步骤五B4:用户态协议栈解析完数据包后,触发等待链表中的事件;
步骤五B5:被触发的事件会从等待链表中脱离,变为就绪事件;
步骤五B6:libevent事件通知库调用就绪事件的回调函数执行事件处理。
2.根据权利要求1所述的基于全用户态QUIC协议的大文件传输方法,其特征在于:待所有文件分片传输完成后,客户端向服务器发出关闭连接的请求,完成文件传输。
3.根据权利要求1所述的基于全用户态QUIC协议的大文件传输方法,其特征在于:步骤二中,服务器对待传输文件进行分片得到文件分片和分片信息的同时,生成文件队列,将分片信息挂在到文件队列上;步骤四中,服务器根据收到的传输任务编号找到对应的文件队列,进而找到分片信息。
4.根据权利要求1所述的基于全用户态QUIC协议的大文件传输方法,其特征在于:所述分片信息包括传输任务的编号taskID、文件分片的大小chunkSize和文件分片在待传输文件中的偏移offset。
5.根据权利要求1所述的基于全用户态QUIC协议的大文件传输方法,其特征在于:步骤五B1中设置的回调函数能够对数据包进行读取操作;步骤五B6中,libevent事件通知库调用就绪事件的回调函数执行事件处理时,能够从用户态协议栈中读取数据包。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310073863.0A CN115801770B (zh) | 2023-02-07 | 2023-02-07 | 一种基于全用户态quic协议的大文件传输方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310073863.0A CN115801770B (zh) | 2023-02-07 | 2023-02-07 | 一种基于全用户态quic协议的大文件传输方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115801770A CN115801770A (zh) | 2023-03-14 |
CN115801770B true CN115801770B (zh) | 2023-04-18 |
Family
ID=85430215
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310073863.0A Active CN115801770B (zh) | 2023-02-07 | 2023-02-07 | 一种基于全用户态quic协议的大文件传输方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115801770B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116708597B (zh) * | 2023-08-04 | 2023-10-24 | 新华三技术有限公司 | 一种数据处理方法及装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB201520401D0 (en) * | 2015-11-19 | 2016-01-06 | Canon Kk | System for receiving or transmitting data with a fast-path protocol processing architecture |
WO2018032399A1 (en) * | 2016-08-17 | 2018-02-22 | Zte Corporation | Server and method having high concurrency capability |
CN108900327A (zh) * | 2018-06-20 | 2018-11-27 | 昆明理工大学 | 一种基于dpdk的天文数据采集和实时处理方法 |
WO2020253674A1 (zh) * | 2019-06-18 | 2020-12-24 | 中国电子科技集团公司第五十四研究所 | 一种基于dpdk的卫星信道高速可靠数据传输方法 |
CN114422489A (zh) * | 2020-10-13 | 2022-04-29 | 中国电信股份有限公司 | 基于服务网格的信息传输方法和系统 |
-
2023
- 2023-02-07 CN CN202310073863.0A patent/CN115801770B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB201520401D0 (en) * | 2015-11-19 | 2016-01-06 | Canon Kk | System for receiving or transmitting data with a fast-path protocol processing architecture |
WO2018032399A1 (en) * | 2016-08-17 | 2018-02-22 | Zte Corporation | Server and method having high concurrency capability |
CN108900327A (zh) * | 2018-06-20 | 2018-11-27 | 昆明理工大学 | 一种基于dpdk的天文数据采集和实时处理方法 |
WO2020253674A1 (zh) * | 2019-06-18 | 2020-12-24 | 中国电子科技集团公司第五十四研究所 | 一种基于dpdk的卫星信道高速可靠数据传输方法 |
CN114422489A (zh) * | 2020-10-13 | 2022-04-29 | 中国电信股份有限公司 | 基于服务网格的信息传输方法和系统 |
Non-Patent Citations (3)
Title |
---|
Nikita Tyunyayev et al..A High-Speed QUIC Implementation.《In CoNEXT Student Workshop 2022 (CoNEXT-SW ’22)》.2022,全文. * |
Yufeng Duan et al..Towards a Scalable Modular QUIC Server.《In Proceedings of KBNets ’17, Los Angeles, CA, USA》.2017,全文. * |
赵欢欢等.基于DPDK 混合中断轮询模式的报文传输框架.《无线电通信技术》.2018,第44卷(第3期),全文. * |
Also Published As
Publication number | Publication date |
---|---|
CN115801770A (zh) | 2023-03-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20200328973A1 (en) | Packet coalescing | |
US7953817B2 (en) | System and method for supporting TCP out-of-order receive data using generic buffer | |
US9307054B2 (en) | Intelligent network interface system and method for accelerated protocol processing | |
JP5066702B2 (ja) | インテリジェントネットワークストレージインタフェースシステム及びデバイス | |
US7512128B2 (en) | System and method for a multi-packet data link layer data transmission | |
JP4264866B2 (ja) | 通信を高速化するインテリジェントネットワークインタフェース装置及びシステム | |
US7735099B1 (en) | Method and system for processing network data | |
US8090790B2 (en) | Method and system for splicing remote direct memory access (RDMA) transactions in an RDMA-aware system | |
JP4886685B2 (ja) | ネットワーク・プロトコル処理のオフロードにおいてメモリ管理をサポートする装置および方法 | |
CN108494817B (zh) | 数据传输方法、相关装置及系统 | |
US7761609B1 (en) | Socket level packet scheduling for connectionless protocols | |
US6760304B2 (en) | Apparatus and method for receive transport protocol termination | |
US8271669B2 (en) | Method and system for extended steering tags (STAGS) to minimize memory bandwidth for content delivery servers | |
CN107302499B (zh) | 无需拷贝报文缓存的nfv协议报文收发方法 | |
US7457845B2 (en) | Method and system for TCP/IP using generic buffers for non-posting TCP applications | |
CN115801770B (zh) | 一种基于全用户态quic协议的大文件传输方法 | |
US9794354B1 (en) | System and method for communication between networked applications | |
US20080263171A1 (en) | Peripheral device that DMAS the same data to different locations in a computer | |
CN109688606B (zh) | 数据处理方法、装置、计算机设备及存储介质 | |
US20030231657A1 (en) | System and method for a multi-data network layer transmit interface | |
WO2021238259A1 (zh) | 一种数据传输方法、装置、设备及计算机可读存储介质 | |
CN110445580B (zh) | 数据发送方法及装置、存储介质、电子装置 | |
JP2000067017A (ja) | デ―タ通信方法及びデ―タ通信装置 | |
CN111541624B (zh) | 空间以太网缓存处理方法 | |
CN107615259A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |