CN101150487A - 一种零拷贝网络报文发送方法 - Google Patents
一种零拷贝网络报文发送方法 Download PDFInfo
- Publication number
- CN101150487A CN101150487A CN 200710177371 CN200710177371A CN101150487A CN 101150487 A CN101150487 A CN 101150487A CN 200710177371 CN200710177371 CN 200710177371 CN 200710177371 A CN200710177371 A CN 200710177371A CN 101150487 A CN101150487 A CN 101150487A
- Authority
- CN
- China
- Prior art keywords
- buffer
- buffering area
- message
- control structure
- function
- 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
Links
Images
Abstract
本发明公开了一种零拷贝网络报文发送方法,属于把用户空间内存直接映射为网卡DMA缓冲区的零拷贝方法领域。本发明采用如下操作步骤:A.打开设备接口;B.在用户空间内存中申请一片报文缓冲区;C.构造缓冲区控制结构;D.通过内存映射得到缓冲区控制结构中的信息;E.把发送的报文数据直接DMA传送到报文发送缓冲区中;F.应用程序处理报文数据。本发明适用于高速网上不经过协议栈拷贝发送报文。
Description
技术领域
本发明涉及一种计算机网络数据发送方法,特别是涉及一种把内存直接映射为网卡DMA缓冲区的零拷贝网络报文发送方法。
背景技术
现有技术的计算机操作系统使用的是分层思想,网卡驱动在内核层运行,给网卡分配报文缓冲区,发送报文时通过软中断处理报文缓冲区与应用数据区中的数据,而在软中断处理中,是通过协议栈来实现数据传递的,所以这种网络数据发送方式,虽然保证了一般操作系统上的通用性,但由于现有技术的数据发送过程需通过内核发送,而不是用户内存与网络直接发送,所以对要求高速发送的高速网上的应用来说,现有技术已不能满足应用的需要。
发明内容
本发明针对现有技术中,网卡传送报文要经过内核协议栈拷贝到用户空间,致使发包速度低、浪费系统资源,无法满足高速网应用对数据拷贝的速度要求的问题,提供了一种使应用能够直接访问网卡DMA缓冲区,从而极大提高网络数据发送速度,满足高速网应用的零拷贝方法。
为了实现上述发明目的,本发明采用下述技术方案:
一种零拷贝网络报文发送方法,其中,所述方法包括如下操作步骤:A、应用程序调用接口库提供的函数打开设备接口;B、打开设备接口函数在用户空间内存中申请一片连续的内存作为报文缓冲区,并把缓冲区首地址传给内核驱动;C、内核驱动根据缓冲区首地址及缓冲区大小,构造缓冲区控制结构,并把控制结构的物理地址传给接口函数,所述结构包括报文缓冲区队列的信息及队列中每个缓冲区的物理地址;D、接口函数根据缓冲区控制结构的地址,通过内存映射得到缓冲区控制结构中的信息;E、网卡驱动程序从缓冲区队列中取空闲缓冲区作为发送报文的DMA缓冲区,并把发送的报文数据不经内核空间直接DMA传送到用户内存中的报文发送缓冲区中;F、应用程序处理用户内存中报文发送缓冲区中的报文数据。
一种优选的零拷贝网络报文发送方法,其中,所述步骤B中的报文发送缓冲区队列的长度由参数指定,每个缓冲区的大小为2KB,为保证在用户空间申请的缓冲区位于连续的内存页面上,接口库函数申请的内存为共享内存,所述步骤B中的具体操作步骤为:B1、接口库函数申请共享缓冲区,并连接到共享缓冲区;B2、接口库函数把共享缓冲区的首地址通过系统调用传给驱动。
一种更进一步优选的零拷贝网络报文发送方法,其中,所述步骤C的具体操作步骤为:C1、内核驱动根据整个缓冲区队列的大小计算需要的缓冲区控制结构的大小;C2、内核驱动申请连续的页面来构造缓冲区队列控制结构;C3、内核驱动计算报文队列中每个缓冲区的物理地址,并将所述地址保存在一张物理地址表中以便DMA使用;C4、内核驱动计算报文缓冲区队列控制结构的物理地址,并将所述地址传给应用接口库函数。
一种更进一步优选的零拷贝网络报文发送方法,其中,所述步骤D的具体操作步骤为:D1、用户接口库函数从系统调用返回的数据结构中获得内核驱动中构造的缓冲区队列控制结构的物理地址;D2、用户接口库函数打开内存设备文件;D3、用户接口库函数通过系统调用把内核中的缓冲区控制结构映射到自己的地址空间。
一种更进一步优选的零拷贝网络报文发送方法,其中,所述步骤E的具体操作步骤为:E1、网卡驱动在给网卡分配DMA缓冲区的时候不从系统协议栈中分配缓冲区,而是根据零拷贝缓冲区的控制结构,从用户空间的缓冲队列中取出空闲缓冲区作DMA使用;E2、网卡把报文通过DMA方式写入缓冲区后发中断给驱动,驱动把应用的发包队列中的报文放入缓冲区。
本发明的上述技术方案,由于采用了直接访问网卡DMA缓冲区的零拷贝方法,可满足高速网应用对数据发送的速度要求,与现有网络数据传送技术相比,进一步节省了系统资源;由于引入了内存镜像连接技术,因此用户程序可以直接访问内核空间的数据,甚至可以直接访问物理设备内存中的数据,从而为应用提供了灵活、方便的数据传送机制,为开发人员提供了更广泛的开发环境;本发明的数据发送(拷贝)是在用户空间申请内存进行的,由于在拷贝过程中,可直接映射物理内存,从而避免了新增内核模块带来的不稳定性;本发明的数据传送(拷贝)是在用户空间申请内存进行的,因此可以构造大空间的数据接收缓冲区,甚至可以达到GB级;本发明在国家网络信息安全中心,在主干网上测试为进行报文分析而对专有应用发送报文,与现有技术相比,报文传输速度大大提高,比如在intel82546千兆网卡上,经过协议栈的发送64字节的报文,速度最高为每秒接收270000包,占用80%以上的cpu;但是用零拷贝方法发送报文,速度可以达到每秒710000包,占用cpu不到10%。
以下结合附图对本发明做进一步详细说明。
附图说明
图1为本发明操作步骤示意图;
图2为本发明步骤B的具体操作过程示意图;
图3为本发明步骤C的具体操作过程示意图;
图4为本发明步骤D的具体操作过程示意图;
图5为本发明步骤E的具体操作过程示意图。
具体实施方式
在本发明上述技术方案的设计思想下,本发明可以有多种,下面通过具体实施例予以说明。
实施例一
图1为本发明操作步骤示意图。在linux操作环境中,如图1所示,本发明执行如下操作步骤:
A、应用程序调用接口库提供的打开设备函数。在本步骤中,首先打开网卡设备,确定DMA缓存大小及分配给发送队列的百分比,设置接收模式、发送模式;以上操作成功则返回网卡设备ID。
B、打开设备接口函数程序在用户空间内存中申请一片连续的内存作为报文缓冲区。并把缓冲区首地址传给内核驱动。
在本步骤中,检查系统初始设置的最大共享内存值,若请求内存值大于系统默认共享内存值,则对系统默认内存值进行修改。根据所需的内存大小来分配共享内存,成功返回内存的起始地址后,就可以对内存进行保存数据或锁定操作。在使用完内存后,将此内存归还给系统。
C、内核驱动根据缓冲区首地址和缓冲区大小等相关参数,构造缓冲区控制结构,其中包括报文缓冲区队列的信息,队列中每个缓冲区的物理地址等。并把控制结构的物理地址传给接口函数。
在本步骤中,驱动程序会申请一块内存,作为全局的控制句柄,成员包括描述发送和接收报文的队列,此队列由空闲的接收队列、空闲的传输队列、缓存数据报的接收队列及缓存数据报的发送队列组成;描述驱动工作模式的变量,工作模式包含正常模式和直接拷贝模式;用于进程同步及互斥的变量等。控制句柄进行初始化后,把用户空间中发送和接收报文地址区域分割成若干数据块,将每一块的首地址转换成内核空间的物理地址,即DMA操作所需的地址,存储在控制句柄的队列结构中。
D、接口函数根据缓冲区控制结构的地址,通过内存映射得到缓冲区控制结构。
本实施例中通过映射缓存句柄的物理地址到用户空间的虚拟地址实现以上操作。
到这里为止,内核驱动和用户接口函数就都能拿到缓冲区的控制结构中的信息了。
E、网卡驱动程序从缓冲区队列中取空闲缓冲区作为发送报文的DMA缓冲区,可以把发送的报文数据不经内核空间直接DMA传送到用户内存中的报文发送缓冲区中;
F、应用程序处理用户内存中报文发送缓冲区中的报文数据。
实施例二
本实施例与实施例一的不同之处在于,本发明所述步骤B中的报文接收缓冲区队列的长度可以由参数指定,每个缓冲区的大小为2KB,为保证在用户空间申请的缓冲区位于连续的内存页面上,接口库函数申请的内存为共享内存,因为在linux操作系统中,共享内存位于连续的物理页面上。具体操作步骤如图2所示,为:
B1、接口库函数申请共享缓冲区,并连接到共享缓冲区。
B2、接口库函数把共享缓冲区的首地址通过ioctl系统调用传给驱动。
实施例三
本实施例与实施例二的不同之处在于,本发明所述步骤C的具体操作步骤如图3所示,为:
C1、内核驱动根据整个缓冲区队列的大小计算需要的缓冲区控制结构的大小。
C2、内核驱动申请连续的页面来构造缓冲区队列控制结构。
C3、内核驱动计算队列中每个缓冲区的物理地址,保存在一张物理地址表中以便DMA使用。
C4、内核驱动计算缓冲区队列控制结构的物理地址,传给应用接口库函数。
实施例四
本实施例与实施例三的不同之处在于,本发明所述步骤D的具体操作步骤如图4所示,为:
D1、用户接口库函数从系统调用返回数据结构中获得内核驱动中构造的缓冲区队列控制结构的物理地址。
D2、用户接口库函数打开内存设备文件/dev/mem。
D3、用户接口库函数通过系统调用mmap把内核中的缓冲区控制结构映射到自己的地址空间。
实施例五
本实施例与实施例四的不同之处在于,本发明所述步骤E的具体操作步骤如图5所示,为:
E1、网卡驱动在给网卡分配DMA缓冲区的时候不从系统协议栈中分配缓冲区,而是根据零拷贝缓冲区的控制结构,从用户空间的缓冲队列中取出空闲缓冲区作DMA使用;
E2、网卡把报文通过DMA方式写入缓冲区后发中断给驱动,驱动把应用的发包队列中的报文放入缓冲区。
最后应当说明的是:以上实施例仅用以说明本发明的技术方案而非对其限制,尽管参照上述实施例对本发明进行了详细的说明,所属领域的普通技术人员应当理解:依然可以对本发明的具体实施方式进行修改或者等同替换,而未脱离本发明精神和范围的任何修改或者等同替换,其均应涵盖在本发明的权利要求范围当中。
Claims (5)
1.一种零拷贝网络报文发送方法,其中,所述方法包括如下操作步骤:
A、应用程序调用接口库提供的函数打开设备接口;
B、打开设备接口函数在用户空间内存中申请一片连续的内存作为报文缓冲区,并把缓冲区首地址传给内核驱动;
C、内核驱动根据缓冲区首地址及缓冲区大小,构造缓冲区控制结构,并把控制结构的物理地址传给接口函数,所述结构包括报文缓冲区队列的信息及队列中每个缓冲区的物理地址;
D、接口函数根据缓冲区控制结构的地址,通过内存映射得到缓冲区控制结构中的信息;
E、网卡驱动程序从缓冲区队列中取空闲缓冲区作为发送报文的DMA缓冲区,并把发送的报文数据不经内核空间直接DMA传送到用户内存中的报文发送缓冲区中;
F、应用程序处理用户内存中报文发送缓冲区中的报文数据。
2.如权利要求1所述的零拷贝网络报文发送方法,其中,所述步骤B中的报文发送缓冲区队列的长度由参数指定,每个缓冲区的大小为2KB,为保证在用户空间申请的缓冲区位于连续的内存页面上,接口库函数申请的内存为共享内存,所述步骤B中的具体操作步骤为:
B1、接口库函数申请共享缓冲区,并连接到共享缓冲区;
B2、接口库函数把共享缓冲区的首地址通过系统调用传给驱动。
3.如权利要求1所述的零拷贝网络报文发送方法,其中,所述步骤C的具体操作步骤为:
C1、内核驱动根据整个缓冲区队列的大小计算需要的缓冲区控制结构的大小;
C2、内核驱动申请连续的页面来构造缓冲区队列控制结构;
C3、内核驱动计算报文队列中每个缓冲区的物理地址,并将所述地址保存在一张物理地址表中以便DMA使用;
C4、内核驱动计算报文缓冲区队列控制结构的物理地址,并将所述地址传给应用接口库函数。
4.如权利要求1所述的零拷贝网络报文发送方法,其中,所述步骤D的具体操作步骤为:
D1、用户接口库函数从系统调用返回的数据结构中获得内核驱动中构造的缓冲区队列控制结构的物理地址;
D2、用户接口库函数打开内存设备文件;
D3、用户接口库函数通过系统调用把内核中的缓冲区控制结构映射到自己的地址空间。
5.如权利要求1所述的零拷贝网络报文发送方法,其中,所述步骤E的具体操作步骤为:
E1、网卡驱动在给网卡分配DMA缓冲区的时候不从系统协议栈中分配缓冲区,而是根据零拷贝缓冲区的控制结构,从用户空间的缓冲队列中取出空闲缓冲区作DMA使用;
E2、网卡把报文通过DMA方式写入缓冲区后发中断给驱动,驱动把应用的发包队列中的报文放入缓冲区。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200710177371 CN101150487A (zh) | 2007-11-15 | 2007-11-15 | 一种零拷贝网络报文发送方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200710177371 CN101150487A (zh) | 2007-11-15 | 2007-11-15 | 一种零拷贝网络报文发送方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101150487A true CN101150487A (zh) | 2008-03-26 |
Family
ID=39250839
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 200710177371 Pending CN101150487A (zh) | 2007-11-15 | 2007-11-15 | 一种零拷贝网络报文发送方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101150487A (zh) |
Cited By (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101267361B (zh) * | 2008-05-09 | 2011-05-18 | 武汉飞思科技有限公司 | 一种基于零拷贝技术的高速网络数据包捕获方法 |
CN101718981B (zh) * | 2009-11-03 | 2012-01-11 | 四川省电力工业调整试验所 | 一种分散控制系统网络数据采样仪 |
CN102375789A (zh) * | 2010-08-09 | 2012-03-14 | 上海中标软件有限公司 | 一种通用网卡非缓存的零拷贝方法及零拷贝系统 |
CN101707565B (zh) * | 2009-12-04 | 2012-04-25 | 曙光信息产业(北京)有限公司 | 零拷贝网络报文发送、接收方法和装置 |
CN101616194B (zh) * | 2009-07-23 | 2012-07-11 | 中国科学技术大学 | 主机网络性能优化系统及方法 |
CN101707564B (zh) * | 2009-12-04 | 2012-10-10 | 曙光信息产业(北京)有限公司 | 用于零拷贝缓冲区队列网络数据发送和接收的处理方法和装置 |
CN102916905A (zh) * | 2012-10-18 | 2013-02-06 | 曙光信息产业(北京)有限公司 | 一种基于hash算法的万兆网卡多路分流方法及其系统 |
CN102929722A (zh) * | 2012-10-18 | 2013-02-13 | 曙光信息产业(北京)有限公司 | 一种基于大页面万兆网卡的收包及其系统 |
CN103905420A (zh) * | 2013-12-06 | 2014-07-02 | 北京太一星晨信息技术有限公司 | 一种协议栈和应用程序间传输数据的方法及装置 |
CN101707590B (zh) * | 2009-09-25 | 2015-03-11 | 曙光信息产业(北京)有限公司 | 基于零拷贝方式的tcp/ip协议报文发送方法和装置 |
CN104468417A (zh) * | 2014-12-16 | 2015-03-25 | 上海斐讯数据通信技术有限公司 | 一种堆叠交换机报文传输方法、系统及堆叠交换机 |
CN104796337A (zh) * | 2015-04-10 | 2015-07-22 | 京信通信系统(广州)有限公司 | 一种转发报文的方法及装置 |
CN106413004A (zh) * | 2016-09-05 | 2017-02-15 | 上海斐讯数据通信技术有限公司 | 一种无线mac嗅探扫描方法及其装置 |
CN108255890A (zh) * | 2016-12-29 | 2018-07-06 | 腾讯科技(深圳)有限公司 | 页面的处理方法和装置 |
CN108334413A (zh) * | 2017-12-22 | 2018-07-27 | 天津麒麟信息技术有限公司 | 一种基于飞腾平台的固件与操作系统之间信息传递方法 |
WO2019134403A1 (zh) * | 2018-01-05 | 2019-07-11 | 华为技术有限公司 | 发送数据包的方法、装置及计算机可读存储介质 |
CN110012343A (zh) * | 2019-02-21 | 2019-07-12 | 生迪智慧科技有限公司 | 网络报文的生成方法及装置 |
CN112039722A (zh) * | 2020-08-12 | 2020-12-04 | 中国银联股份有限公司 | 一种mqtt协议仿真方法及仿真设备 |
CN112905575A (zh) * | 2020-12-30 | 2021-06-04 | 创盛视联数码科技(北京)有限公司 | 数据采集的方法、系统、存储介质及电子设备 |
CN113098955A (zh) * | 2021-03-30 | 2021-07-09 | 山东英信计算机技术有限公司 | 一种数据传输方法、装置、设备及计算机可读存储介质 |
CN113127183A (zh) * | 2019-12-30 | 2021-07-16 | 阿里巴巴集团控股有限公司 | 一种用户态协议栈中的内存分配方法和装置 |
WO2023125430A1 (zh) * | 2021-12-29 | 2023-07-06 | 华为技术有限公司 | 流量管理装置、报文缓存方法、芯片及网络设备 |
-
2007
- 2007-11-15 CN CN 200710177371 patent/CN101150487A/zh active Pending
Cited By (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101267361B (zh) * | 2008-05-09 | 2011-05-18 | 武汉飞思科技有限公司 | 一种基于零拷贝技术的高速网络数据包捕获方法 |
CN101616194B (zh) * | 2009-07-23 | 2012-07-11 | 中国科学技术大学 | 主机网络性能优化系统及方法 |
CN101707590B (zh) * | 2009-09-25 | 2015-03-11 | 曙光信息产业(北京)有限公司 | 基于零拷贝方式的tcp/ip协议报文发送方法和装置 |
CN101718981B (zh) * | 2009-11-03 | 2012-01-11 | 四川省电力工业调整试验所 | 一种分散控制系统网络数据采样仪 |
CN101707565B (zh) * | 2009-12-04 | 2012-04-25 | 曙光信息产业(北京)有限公司 | 零拷贝网络报文发送、接收方法和装置 |
CN101707564B (zh) * | 2009-12-04 | 2012-10-10 | 曙光信息产业(北京)有限公司 | 用于零拷贝缓冲区队列网络数据发送和接收的处理方法和装置 |
CN102375789B (zh) * | 2010-08-09 | 2014-05-28 | 中标软件有限公司 | 一种通用网卡非缓存的零拷贝方法及零拷贝系统 |
CN102375789A (zh) * | 2010-08-09 | 2012-03-14 | 上海中标软件有限公司 | 一种通用网卡非缓存的零拷贝方法及零拷贝系统 |
CN102916905A (zh) * | 2012-10-18 | 2013-02-06 | 曙光信息产业(北京)有限公司 | 一种基于hash算法的万兆网卡多路分流方法及其系统 |
CN102929722A (zh) * | 2012-10-18 | 2013-02-13 | 曙光信息产业(北京)有限公司 | 一种基于大页面万兆网卡的收包及其系统 |
CN103905420A (zh) * | 2013-12-06 | 2014-07-02 | 北京太一星晨信息技术有限公司 | 一种协议栈和应用程序间传输数据的方法及装置 |
CN103905420B (zh) * | 2013-12-06 | 2017-10-10 | 北京太一星晨信息技术有限公司 | 一种协议栈和应用程序间传输数据的方法及装置 |
CN104468417A (zh) * | 2014-12-16 | 2015-03-25 | 上海斐讯数据通信技术有限公司 | 一种堆叠交换机报文传输方法、系统及堆叠交换机 |
CN104468417B (zh) * | 2014-12-16 | 2018-05-01 | 上海斐讯数据通信技术有限公司 | 一种堆叠交换机报文传输方法、系统及堆叠交换机 |
CN104796337A (zh) * | 2015-04-10 | 2015-07-22 | 京信通信系统(广州)有限公司 | 一种转发报文的方法及装置 |
CN106413004A (zh) * | 2016-09-05 | 2017-02-15 | 上海斐讯数据通信技术有限公司 | 一种无线mac嗅探扫描方法及其装置 |
CN108255890A (zh) * | 2016-12-29 | 2018-07-06 | 腾讯科技(深圳)有限公司 | 页面的处理方法和装置 |
CN108255890B (zh) * | 2016-12-29 | 2020-08-11 | 腾讯科技(深圳)有限公司 | 页面的处理方法和装置 |
CN108334413A (zh) * | 2017-12-22 | 2018-07-27 | 天津麒麟信息技术有限公司 | 一种基于飞腾平台的固件与操作系统之间信息传递方法 |
WO2019134403A1 (zh) * | 2018-01-05 | 2019-07-11 | 华为技术有限公司 | 发送数据包的方法、装置及计算机可读存储介质 |
CN110012343A (zh) * | 2019-02-21 | 2019-07-12 | 生迪智慧科技有限公司 | 网络报文的生成方法及装置 |
CN113127183A (zh) * | 2019-12-30 | 2021-07-16 | 阿里巴巴集团控股有限公司 | 一种用户态协议栈中的内存分配方法和装置 |
CN112039722A (zh) * | 2020-08-12 | 2020-12-04 | 中国银联股份有限公司 | 一种mqtt协议仿真方法及仿真设备 |
CN112905575A (zh) * | 2020-12-30 | 2021-06-04 | 创盛视联数码科技(北京)有限公司 | 数据采集的方法、系统、存储介质及电子设备 |
CN113098955A (zh) * | 2021-03-30 | 2021-07-09 | 山东英信计算机技术有限公司 | 一种数据传输方法、装置、设备及计算机可读存储介质 |
WO2023125430A1 (zh) * | 2021-12-29 | 2023-07-06 | 华为技术有限公司 | 流量管理装置、报文缓存方法、芯片及网络设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101150487A (zh) | 一种零拷贝网络报文发送方法 | |
CN101150488B (zh) | 一种零拷贝网络报文接收方法 | |
EP3748510A1 (en) | Network interface for data transport in heterogeneous computing environments | |
CN108733601B (zh) | NVMe-oF以太网SSD中的低延迟直接访问块存储 | |
US7320041B2 (en) | Controlling flow of data between data processing systems via a memory | |
Welch et al. | Pseudo devices: User-level extensions to the Sprite file system | |
Dubnicki et al. | Design and implementation of virtual memory-mapped communication on myrinet | |
WO2017066944A1 (zh) | 一种存储设备访问方法、装置和系统 | |
CN101150485A (zh) | 一种零拷贝缓冲区队列网络数据发送的管理方法 | |
CN101303656B (zh) | 一种Java应用程序远程直接内存访问方法 | |
US7409468B2 (en) | Controlling flow of data between data processing systems via a memory | |
CN101304373B (zh) | 一种实现局域网内高效传输大块数据的方法及系统 | |
US9405725B2 (en) | Writing message to controller memory space | |
CN111966446B (zh) | 一种容器环境下rdma虚拟化方法 | |
CN112422615A (zh) | 一种通信的方法及装置 | |
CN111431757B (zh) | 虚拟网络的流量采集方法及装置 | |
CN106648896B (zh) | 一种Zynq芯片在异构称多处理模式下双核共享输出外设的方法 | |
CN101150486A (zh) | 一种零拷贝缓冲区队列网络数据接收的管理方法 | |
CN105677597A (zh) | 数据写入方法及装置 | |
CN104699525A (zh) | 消息通信技术 | |
CN100535886C (zh) | 一种节点之间的数据传输系统和装置及方法 | |
US20040054822A1 (en) | Transferring interrupts from a peripheral device to a host computer system | |
US7469309B1 (en) | Peer-to-peer data transfer method and apparatus with request limits | |
CN116069711B (zh) | 直接内存访问控制器、异构设备、内存访问方法及介质 | |
CN102375789B (zh) | 一种通用网卡非缓存的零拷贝方法及零拷贝系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C12 | Rejection of a patent application after its publication | ||
RJ01 | Rejection of invention patent application after publication |
Open date: 20080326 |