CN1801806A - Zero-copy communication method under real-time environment - Google Patents

Zero-copy communication method under real-time environment Download PDF

Info

Publication number
CN1801806A
CN1801806A CNA2005100197843A CN200510019784A CN1801806A CN 1801806 A CN1801806 A CN 1801806A CN A2005100197843 A CNA2005100197843 A CN A2005100197843A CN 200510019784 A CN200510019784 A CN 200510019784A CN 1801806 A CN1801806 A CN 1801806A
Authority
CN
China
Prior art keywords
data
network interface
interface card
dma
transmitting terminal
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.)
Granted
Application number
CNA2005100197843A
Other languages
Chinese (zh)
Other versions
CN100486248C (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.)
Huazhong University of Science and Technology
Original Assignee
Huazhong University of Science and Technology
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 Huazhong University of Science and Technology filed Critical Huazhong University of Science and Technology
Priority to CNB2005100197843A priority Critical patent/CN100486248C/en
Publication of CN1801806A publication Critical patent/CN1801806A/en
Application granted granted Critical
Publication of CN100486248C publication Critical patent/CN100486248C/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

Present invention discloses zero copying communication method under real time condition. It contains (1) transmitting end proceeding write-protect to transmitted-data,(2) transmitting end using static system buffer as user to transmit buffer,(3) transmitting end judging whether above-mentioned transmitted-data length L sub > data < / sub > is greater than k , wherein is the maximum data length in single chip package , if greater than k , entering step (4) , otherwise entering step (5),(4) transmitting end receiving terminal adopting handshake response mode to transmit and receive demand slicing transmitted-data , ending communication after processing,(5) transmitting end and receiving terminal adopting direct mapping mode sending and receiving data , ending communication after processing. Said has shorter real time communication delay and lower hardware requirement.

Description

Zero-copy communication method under a kind of real time environment
Technical field
This method belongs to the network communications technology of computer application field, is specifically related to the Zero-copy communication method under a kind of real time environment.
Background technology
Along with the appearance of group system, the disposal ability that computer system can provide is strengthened greatly, can satisfy many new application demands, but higher relatively communication delay has limited application and development under the cluster environment.Be used for the group system that science is calculated, the communication efficiency between the node has crucial influence to the overall performance of parallel computation.Under the situation that does not improve the inter-node communication performance, the performance of uniprocessor node cpu improves 32 times, and the raising of entire system performance is less than 10 times.Particularly for those operands were not very big program, the network service time had accounted for sizable ratio in the total time of program running.Therefore, how reducing the time that signal post consumes is the important component part of grid cluster development.
The network service processing time mainly is created on the data copy and transfer of data at all levels such as system, network interface.Reduce the number of times of data copy and shared bus operation, elimination communication data unnecessary intermediate copy process between memory can improve communication efficiency effectively, Here it is so-called zero duplication technology.Zero duplication technology is one of important technology that reduces communication delay.
Existing zero-copy implementation method mainly contains following three kinds.
First kind of mode copies once at transmitting terminal, and receiving terminal also copies once.This is one of initial several implementations of zero-copy.The network interface card that does not have direct memory access (DMA) function or other direct control memory power all is to adopt this Zero-copy mode.At transmitting terminal, the data that the user be about to is sent are mapped to the data space of kernel by the mode of remapping, and network interface card copies these data to the network interface card buffering area again, from buffering area data is sent then.Receiving terminal arrives the network interface card buffering area with Data Receiving earlier, directly the data of network interface card buffering area is handled then, finds its corresponding user program, then with the data copy in the past.Its advantage is: very low to the hardware device requirement, can carry out pile line operation during parallel transmission, and realize simple.Its shortcoming is: time delay is still longer in the communication, can not satisfy the requirement of real-time communication system.
The Zero-copy mode of another kind of fairly simple practicality is: transmitting terminal does not copy, and receiving terminal copies once.This scheme is also referred to as single copy scheme.This programme requires network interface card to have the DMA function.The similar substantially such scheme of process of transmitting, but network interface card directly cushions the data space of inner core region as sending.Receiving terminal is then given user by mapping mechanism with data to the DMA buffering back in the main memory with Data Receiving, and the user copies data to relevant position as required.The advantage of this scheme is: can carry out pile line operation during parallel transmission, realize fairly simplely, communication efficiency is better than above-mentioned single copy scheme.Its shortcoming is: or carried out once copy at receiving terminal, when transmitting big packet, communication delay there is tangible influence.
Also having a kind of main zero-copy communication mode is remote storage visit (RMA) (RemoteMemory Access) mode.It is suitable for big packet transmission, and its main implementation is that far-end direct memory access (RDMA) (Remote Direct Memory Access) and immediate data are placed DDP (Direct Data Placement) mode.This scheme has reduced the once copy of receiving terminal, and do not require for the size of packet, but since each data transmit before hardware all will to carry out primary information mutual, need to consume the regular hour, increased communication delay, so the time of adopting this scheme to need packet copy to be consumed be longer than data flight time the time just system effectiveness is had facilitation, be not suitable for the transmission of small data packets.Some agreement is avoided the disadvantage of RMA mode by the mode that small data packets is spliced into big packet and sends, brings into play its strong point, but adopts this scheme can prolong the communication response time in real time communication, violates the real-time requirement.
Summary of the invention
The purpose of this method is to provide the Zero-copy communication method under a kind of real time environment, and this method has relatively short time delay under real time environment.
Zero-copy communication method under a kind of real time environment that this method provides the steps include:
(1) transmitting terminal carries out write-protect to data to be sent;
(2) transmitting terminal sends buffering with the static system buffering as the user;
(3) transmitting terminal is judged the length L of above-mentioned data to be sent DataGreater than k, wherein k is the maximum length of data in the monolithic bag, if greater than k, enters step (4), otherwise enters step (5);
(4) transmitting terminal and receiving terminal adopt the response mode of shaking hands to send and receive the data to be sent that need burst, and the back sign off disposes;
(5) transmitting terminal and receiving terminal adopt direct mapping mode to transmit and receive data, and the back sign off disposes.
This method utilizes the DMA function of network interface card to realize the outstanding zero-copy communication mode of call duration time performance at the situation that does not still have at present zero-copy communication protocol special-purpose under the real time environment.The main thought of this method is to guarantee on the basis of real-time, adopts the scheme of communication delay minimum to transmit to the packet of different situations.Compare with existing zero-copy scheme, this method mainly contains following characteristics:
(1) real-time.This programme can be handled real time data bag and non-real-time data bag simultaneously, can guarantee that when two kinds of packets arrive simultaneously the real time data bag preferentially finishes, basically identical when guaranteeing real time communication efficient and receiving only the real time data bag.
(2) than short communication delay.Existing zero-copy scheme mainly contains RMA mode and single copy scheme.The RMA scheme will be carried out interacting message one time between communication, make receiving-transmitting sides understand the other side's information relevant with communication.The transmitting terminal packet all sends with Zero-copy mode according to mapping mode in single copy scheme, then adopts general datagram protocol (UDP) protocol processes at receiving terminal, has still carried out once copy.In fact comprehensive, this method is compared with this dual mode has shorter communication delay under real time environment.When handling not fragment packets, this method has been saved the once copy of receiving terminal compared with single copy mode, has then lacked the once mutual of message compared with the RMA mode.Handling under the situation of fragment packets, this method efficient is basic consistent with the RMA mode, has saved the once copy of receiving terminal compared with single copy mode, but more than once information alternately.Test shows, in general real-time communication system, the time that fragment packets once copies is greater than the mutual time of primary information.So when handling fragment packets, this method is consistent with RMA mode efficient under the best circumstances when handling fragment packets, is better than single copy scheme.The packet of considering all size shared ratio in communication, the generalized time of this method postpones littler than other agreement in the ordinary course of things.
(3) hardware requirement is lower: compared with other zero-copy communication protocol, this programme is lower for the basic demand of hardware---and only the DMA function to network interface card has requirement.If hardware can reach the requirement of RDMA mode, then can further reduce communication delay, reduce CPU usage, but this not rigid requirement.
Description of drawings
Fig. 1 is this method schematic flow sheet;
Fig. 2 is the schematic flow sheet of a kind of embodiment of the response mode of shaking hands among Fig. 1;
Fig. 3 is the schematic flow sheet of a kind of embodiment of direct mapping mode among Fig. 1;
Fig. 4 is the schematic flow sheet of prioritization scheme of the present invention;
Fig. 5 is the schematic flow sheet of 0/1 copy mode among Fig. 4.
Embodiment
The hardware environment of this method requires network interface card to have the DMA function, and software environment is communicated by letter for the UDP/IP under the Linux environment (datagram protocol/Internet protocol) mode.We's ratio juris is described below:
If the maximum length of data is k in the monolithic bag, then the maximum length of first of fragment packets middle data is k, and the maximum length of data is k+8 in other sheet; If total length of data package to be sent is L Data, the data length that does not send is L as yet Left, pointer p points to the corresponding kernel buffering start address of communication socket (socket interface).
The present invention is further detailed explanation below in conjunction with accompanying drawing and example.As shown in Figure 1, the step of the inventive method is as follows:
(1) transmitting terminal carries out write-protect to the data that will send, and makes other program not read operation in addition to this segment data;
(2) transmitting terminal is by socket interface of system call application, and distribute the kernel cache blocks of a suitable size to give this interface from the overall Buffer Pool of system, the real-time network Buffer Pool that has some meshwork bufferings simultaneously for one of this interface initialization, be defined as rtskb_pool, the meshwork buffering piece is defined as rtskb.Like this, the meshwork buffering resource that needs in the data transmission procedure is with regard to directly taking from rtskb_pool and do not need dynamic application, the kernel cushion space that this meshwork buffering is relevant does not need dynamic application yet simultaneously, but directly points to suitable position in the kernel cache blocks of this real-time socket interface;
(3) transmitting terminal is judged above-mentioned data L to be sent DataWhether,, then need burst to send if greater than k greater than k.Burst enters step (4) if desired, otherwise enters step (5);
(4) transmitting terminal and receiving terminal adopt the response mode of shaking hands that the data to be sent that need burst are received and dispatched processing, and Fig. 2 has enumerated a kind of implementation, and its step is specific as follows:
(4.1) transmitting terminal is applied for a blank meshwork buffering piece rtskb from rtskb_pool, is used for depositing related data structures in process of transmitting.Hardware head, IP head, UDP head are packed in the kernel buffers that pointer p begins successively, form total data bag to be sent, make L Left=L Data
(4.2) user program of the transmitting terminal data correspondence that will send, size and these information of fragment packets number of each fragment packets put together, and form a small data packets, and this packet is called " message ", and message is sent to receiving terminal;
(4.3) after receiving terminal is received message, read data wherein, learn that according to data transmitting terminal will send the respective user program of data;
(4.4) after receiving terminal finds corresponding user program, will receive the DMA reception buffering of the memory headroom of data correspondence as network interface card, send a packet to transmitting terminal then, the message that is called " can send " does not send " can send " message to other transmitting terminal before receiving this segment data;
(4.5) transmitting terminal is received after the message of " can send " k+36 the byte that will begin from p by the dma mode DMA buffering as network interface card, and network interface card sends this segment data by dma mode then.After sending successfully, make L Left=L Left-k, mobile backward k the byte of p simultaneously;
(4.6) receiving terminal receives data with dma mode, after being about to data and being put into DMA buffering in the internal memory with dma mode, just put into the memory headroom of corresponding user program after, the mobile backward k byte of DMA buffering of receiving terminal;
(4.7) transmitting terminal blank rtskb piece of application from rtskb_pool again, transmitting terminal are packed hardware head and IP head into respectively in the kernel buffers that pointer p begins successively;
(4.8) transmitting terminal k+36 the byte that will begin from p is as the DMA buffering of network interface card, and network interface card sends this segment data by dma mode then.After sending successfully, make L Left=L Left-k-8, mobile backward k+8 the byte of p simultaneously.Receiving terminal receives data with dma mode, the mobile backward k+8 byte of DMA buffering of receiving terminal;
(4.9) if L Left>k+8 changes step (4.7), otherwise enters step (4.10);
(4.10) the transmitting terminal L that will begin from p Left+ 36 bytes are as the DMA buffering of network interface card, and network interface card sends this segment data by dma mode then.After transmission finishes, revise the user and send buffer flag, make data to be sent be rewritten or to delete, corresponding network interface card buffering can be reused;
(4.11) receiving terminal finishes with dma mode reception packet, notifies user data to use by the callback mode, and network interface card can send the message of " can send " to other transmitting terminal simultaneously;
If wherein network interface card has the SCSI function, can carry out a part of control operation to data.If network interface card has programing function simultaneously, then step (4.2)-(4.5) by finishing alternately, do not need the CPU of transmitting-receiving two-end to participate in by the network interface card of transmitting terminal and receiving terminal, and whole fragment packets transmitting-receiving process adopts the RDMA mode.If network interface card does not possess above-mentioned functions, then the CPU by transmitting-receiving two-end finishes, and CPU usage is more, and communication delay is bigger.
(5) transmitting terminal and receiving terminal adopt direct mapping mode to transmit and receive data, and Fig. 3 has enumerated a kind of implementation, and its concrete steps are:
(5.1) transmitting terminal is applied for a blank meshwork buffering piece rtskb from rtskb_pool, is used for depositing related data structures in process of transmitting.Hardware head, IP head, UDP head are packed in the kernel buffers that pointer p begins successively;
(5.2) transmitting terminal length that pointer p is begun is L DataThe data of+36 bytes send buffering as the DMA of network interface card, and network interface card sends it with dma mode then;
(5.3) receiving terminal in the DMA buffering area of network interface card, is locked the Data Receiving received to the network interface card receiving terminal, makes it temporarily can not receive new packet;
(5.4) the pairing user program of data newly received of receiving terminal inspection, if find that the monolithic bag that receives is to be placed on correct position---be that network interface card receives in the free buffer piece in the buffering, change step (5.6), otherwise enter step (5.5);
(5.5) receive the idle data bag that distributes a rtksb structure the buffering from network interface card, in the past with the data copy;
(5.6) separate the lock of inter nic receiving terminal, notify the user, disconnect the contact of this packet and network interface card simultaneously, distribute a new rtskb bag to transfer to the network interface card management by the callback mode.
The general communication mode of the compatible Linux of this method.When adopting this method, at receiving terminal, if receive the non-real-time data bag, then the mode of fragment packets receives with treating not, then packet is transferred to Linux and handles.
In general real-time network environment, data are not long in the time of transmitting-receiving two-end transmission, so can all use the RMA mode when handling fragment packets.If under special circumstances, network delay is bigger, and one time interacting message is consuming time long.Then may occur in the RMA mode adopting the RMA scheme can reduce system effectiveness on the contrary like this for the time of mutual time of less packet segment primary information greater than secondary data copy.System tests the communication delay of all size packet when initialization, obtain the delay scope of this system, has a separation j in this scope, as packet size L DataDuring greater than j, the response scheme of shaking hands transport data communications postpones less than receiving terminal copy scheme; As packet size L DataReceiving terminal copy scheme transport data communications postpones less than the response scheme of shaking hands during less than j.When j>k or j 〉=k, this method with 0/1 copy mode as the replenishing of a kind of communication plan, general structure as shown in Figure 4, its step is as follows:
In above-mentioned steps (4) before, elder generation is to the big or small L of packet to be sent DataJudge, if L Data>j or L DataDuring 〉=j, transmitting terminal (4.1)-(4.12) is set by step handled data to be sent, otherwise transmitting terminal set by step (A.1-A.9) data to be sent are handled:
(A.1) transmitting terminal is applied for a blank meshwork buffering piece rtskb from rtskb_pool, is used for depositing related data structures in process of transmitting.Hardware head, IP head, UDP head are packed in the kernel buffers that pointer p begins successively, form total data bag to be sent, make L Left=L Data
(A.2) transmitting terminal k+36 byte that p is begun is as the DMA buffering of network interface card, and network interface card sends this segment data by dma mode then.After sending successfully, make L Left=L Left-k, mobile backward k the byte of p simultaneously.Receiving terminal is handled the reception data with general udp protocol after receiving data with dma mode;
(A.3) transmitting terminal blank rtskb data block of application from rtskb_pool again, transmitting terminal are packed hardware head and IP head into respectively in the kernel buffers that pointer p begins successively;
(A.4) transmitting terminal k+36 byte that p is begun is as the DMA buffering of network interface card, and network interface card sends this segment data by dma mode then.Make L after sending successfully Left=L Left-k-8, mobile backward k+8 the byte of p simultaneously.
(A.5) after receiving terminal receives data with dma mode, handle the reception data with general udp protocol;
(A.6) if L Left>k+8 changes step (A.3), otherwise enters step (A.7);
(A.7) transmitting terminal L that p is begun Left+ 36 bytes are as the DMA buffering of network interface card, and network interface card sends this segment data by dma mode then;
(A.8) transmitting terminal transmission packet finishes, and revises the user and sends buffer flag, makes data to be sent be rewritten or to delete, and corresponding network interface card buffering can be reused.
(A.9) receiving terminal reception packet finishes, and notifies user data to use by the callback mode, and network interface card can send the message of " can send " to other transmitting terminal simultaneously.
Example
If three kinds of communication plans are respectively communication plan one in the background technology, communication plan two and communication plan three.Because communication plan one realizes on better simply hundred Broadcoms of realtek8139 geometric ratio, can not break through 100M/s on the bandwidth, so will not test.
Utilize this programme on real-time network communication protocol, to implement, need to stop the network interface card driver module of Linux before the present invention uses, load amended Rtnet module of the present invention and amended network interface card driver module and RTAI real-time process scheduler module then.On Rtnet, realize the back two kinds of Zero-copy modes in the background technology simultaneously.The testing hardware environment is: CPU is Intel 2.0G, 256 MB of memory, IntelPro1000 network interface card.Software environment is: Linux 9.0 operating systems, RTAI3.0r4 real-time kernel module and RTNET-0.7.1 real-time network communication module.Testing scheme is: send data from the user end to server end, server end postbacks data to client after receiving data, be the ping-pong test, the difference that client is got twice time promptly once circulates round poor (Round-Trip Time) as the testing time data.Can think that generally speaking Round-Trip Time is 2 times of communication delay.After tested, the k value is 1472, and the j value is 1024, so do not adopt additional project.Test result is as follows:
Packet size (byte) RTNET (us) Communication plan two (us) Communication plan three (us) This method (us)
8 64 128 256 512 1k 2k 4k 8k 16k 20k 510 520 545 513 557 556 573 597 644 749 818 221 234 232 259 240 279 327 383 517 716 827 315 315 327 322 327 354 394 425 532 675 740 111 123 135 166 214 242 306 396 558 681 774
As seen, communication delay is less than second kind of communication mode in original Rtnet real-time scheduling and the background technology, the packet size during less than 4k communication delay more much smaller than RMA communication mode, the packet size during greater than 4k and the RMA communication mode similar, packet during greater than 8k communication delay be slightly larger than the RMA mode.Consider the ratio of packet in real time communication of all size, can think that this method has communication delay preferably under real time environment.

Claims (5)

1, the Zero-copy communication method under a kind of real time environment the steps include:
(1) transmitting terminal carries out write-protect to data to be sent;
(2) transmitting terminal sends buffering with the static system buffering as the user;
(3) transmitting terminal is judged the length L of above-mentioned data to be sent DataGreater than k, wherein k is the maximum length of data in the monolithic bag, if greater than k, enters step (4), otherwise enters step (5);
(4) transmitting terminal and receiving terminal adopt the response mode of shaking hands to send and receive the data to be sent that need burst, and the back sign off disposes;
(5) transmitting terminal and receiving terminal adopt direct mapping mode to transmit and receive data, and the back sign off disposes.
2, method according to claim 1 is characterized in that: enter step (4) before, transmitting terminal is to length of data package L to be sent DataJudge, work as L Data>j or L DataDuring 〉=j, enter step (4), wherein j is that system communication postpones separation, otherwise adopts 0/1 copy mode that data are handled, and the back sign off disposes.
3, method according to claim 2 is characterized in that: the step of 0/1 copy mode is:
(A.1) blank meshwork buffering piece of transmitting terminal application is packed hardware head, IP head, UDP head in the kernel buffers that pointer p begins successively, forms total data bag to be sent, the data length L that order does not send as yet Left=L Data
(A.2) transmitting terminal k+36 byte that p is begun is as the DMA buffering of network interface card, and network interface card sends this segment data by dma mode then, send successfully after, make L Left=L Left-k, mobile backward k the byte of p after receiving terminal adopts dma mode to receive data, adopts udp protocol to handle and receives data simultaneously;
(A.3) transmitting terminal is applied for a blank meshwork buffering piece again, and transmitting terminal is packed hardware head and IP head into respectively in the kernel buffers that pointer p begins successively;
(A.4) transmitting terminal k+36 byte that p is begun is as the DMA buffering of network interface card, and network interface card sends this segment data by dma mode then, makes L after sending successfully Left=L Left-k-8, mobile backward k+8 the byte of p simultaneously;
(A.5) after receiving terminal receives data with dma mode, adopt udp protocol to handle and receive data;
(A.6) if L Left>k+8 changes step (A.3), otherwise enters step (A.7);
(A.7) transmitting terminal L that p is begun Left+ 36 bytes are as the DMA buffering of network interface card, and network interface card sends this segment data by dma mode then;
(A.8) transmitting terminal transmission packet finishes, and revises the user and sends buffer flag;
(A.9) receiving terminal reception packet finishes, and notifies the user after receiving.
4, according to claim 1,2 or 3 described methods, it is characterized in that: step (4) is:
(4.1) blank meshwork buffering piece of transmitting terminal application is packed hardware head, IP head, UDP head in the kernel buffers that pointer p begins successively, forms total data bag to be sent, and the data length that order does not send as yet is L Left=L Data
(4.2) transmitting terminal will have the user program of the data correspondence that will send, the size of each fragment packets and " message " of fragment packets number to send to receiving terminal;
(4.3) receiving terminal is analyzed from " message " that receives and is found above-mentioned user program;
(4.4) receiving terminal will receive the DMA reception buffering of the memory headroom of data correspondence as network interface card, send the information of " can send " to transmitting terminal;
(4.5) transmitting terminal is received after the information of " can send " k+36 byte p being begun by the dma mode DMA buffering as network interface card, and network interface card sends this segment data by dma mode then, send successfully after, make L Left=L Left-k, mobile backward k the byte of p simultaneously;
(4.6) receiving terminal receives data with dma mode, the mobile backward k byte of DMA buffering of receiving terminal;
(4.7) transmitting terminal is applied for a blank meshwork buffering piece again, in the kernel buffers that the pointer p that respectively hardware head and IP head packed into successively begins;
(4.8) transmitting terminal k+36 byte that p is begun is as the DMA buffering of network interface card, and network interface card sends this segment data by dma mode then, send successfully after, make L Left=L Left-k-8, mobile backward k+8 the byte of while p, receiving terminal adopts dma mode to receive data, the mobile backward k+8 byte of DMA buffering of receiving terminal;
(4.9) if L Left>k+8 changes step (4.7), otherwise enters step (4.10);
(4.10) transmitting terminal L that p is begun Left+ 36 bytes are as the DMA buffering of network interface card, and network interface card sends this segment data by dma mode then; After transmission finishes, revise the user and send buffer flag;
(4.11) receiving terminal receives packet with dma mode, notifies the user after receiving.
5, according to claim 1,2 or 3 described methods, it is characterized in that: step (5) is:
(5.1) send blank meshwork buffering piece of application, hardware head, IP head and UDP head are packed in the kernel buffers that pointer p begins successively;
(5.2) transmitting terminal length that pointer p is begun is L DataThe data of+36 bytes send buffering as the DMA of network interface card, and network interface card sends with dma mode then;
(5.3) receiving terminal in the DMA buffering area of network interface card, is locked the Data Receiving received to the network interface card receiving terminal;
(5.4) whether the user program of the data correspondence newly received of receiving terminal inspection leaves network interface card in and receives in the free buffer piece in the buffering, if change step (5.6), otherwise enter step (5.5);
(5.5) receive idle data bag of distribution the buffering, copies data from network interface card;
(5.6) separate the lock of inter nic receiving terminal, notify the user.
CNB2005100197843A 2005-11-11 2005-11-11 Zero-copy communication method under real-time environment Expired - Fee Related CN100486248C (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNB2005100197843A CN100486248C (en) 2005-11-11 2005-11-11 Zero-copy communication method under real-time environment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNB2005100197843A CN100486248C (en) 2005-11-11 2005-11-11 Zero-copy communication method under real-time environment

Publications (2)

Publication Number Publication Date
CN1801806A true CN1801806A (en) 2006-07-12
CN100486248C CN100486248C (en) 2009-05-06

Family

ID=36811564

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2005100197843A Expired - Fee Related CN100486248C (en) 2005-11-11 2005-11-11 Zero-copy communication method under real-time environment

Country Status (1)

Country Link
CN (1) CN100486248C (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100464304C (en) * 2006-08-29 2009-02-25 飞塔信息科技(北京)有限公司 Device and method for realizing zero copy based on Linux operating system
CN102300257A (en) * 2011-07-21 2011-12-28 西北工业大学 Channel booking mechanism-based multi-channel multi-address access method in wireless ad hoc network
CN104753813A (en) * 2013-12-27 2015-07-01 国家计算机网络与信息安全管理中心 DMA (Direct Memory Access) message transfer method
CN104992711A (en) * 2015-05-27 2015-10-21 东南大学 Local area network cluster duplexing speech communication method based on mobile terminal
CN107066340A (en) * 2017-03-27 2017-08-18 恒安嘉新(北京)科技股份公司 A kind of fast packet receiving of the no trunk based on LINUX, method and apparatus of giving out a contract for a project

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102546612B (en) * 2011-12-23 2015-07-08 华中科技大学 Remote procedure call implementation method based on remote direct memory access (RDMA) protocol in user mode

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100464304C (en) * 2006-08-29 2009-02-25 飞塔信息科技(北京)有限公司 Device and method for realizing zero copy based on Linux operating system
CN102300257A (en) * 2011-07-21 2011-12-28 西北工业大学 Channel booking mechanism-based multi-channel multi-address access method in wireless ad hoc network
CN104753813A (en) * 2013-12-27 2015-07-01 国家计算机网络与信息安全管理中心 DMA (Direct Memory Access) message transfer method
CN104753813B (en) * 2013-12-27 2018-03-16 国家计算机网络与信息安全管理中心 The method that DMA transmits message
CN104992711A (en) * 2015-05-27 2015-10-21 东南大学 Local area network cluster duplexing speech communication method based on mobile terminal
CN104992711B (en) * 2015-05-27 2018-06-15 东南大学 A kind of LAN cluster duplex voice communication method based on mobile terminal
CN107066340A (en) * 2017-03-27 2017-08-18 恒安嘉新(北京)科技股份公司 A kind of fast packet receiving of the no trunk based on LINUX, method and apparatus of giving out a contract for a project
CN107066340B (en) * 2017-03-27 2020-05-12 恒安嘉新(北京)科技股份公司 LINUX-based uninterrupted line speed packet receiving and transmitting method and equipment

Also Published As

Publication number Publication date
CN100486248C (en) 2009-05-06

Similar Documents

Publication Publication Date Title
US9176911B2 (en) Explicit flow control for implicit memory registration
US11023411B2 (en) Programmed input/output mode
US8392565B2 (en) Network memory pools for packet destinations and virtual machines
US7571247B2 (en) Efficient send socket call handling by a transport layer
KR101006260B1 (en) Apparatus and method for supporting memory management in an offload of network protocol processing
CN1801806A (en) Zero-copy communication method under real-time environment
CA2655555A1 (en) Methods, systems and protocols for application to application communications
CN1679282A (en) System and method for TCP offload
KR20130099185A (en) A method and system for improved multi-cell support on a single modem board
CN1355638A (en) Radio communication system and its data processing method
CN101063963A (en) File movement method supporting data zero-copy technique
US8539112B2 (en) TCP/IP offload device
US20070271401A1 (en) Techniques to moderate interrupt transfer
CN1909507A (en) Method and system for message transfer
CN113127139A (en) Memory allocation method and device based on data plane development kit DPDK
CN1933451A (en) Interplate communicating method and interface plate
CN1742465A (en) Wireless/lan router queuing method and system
CN1271833C (en) Apparatus and method without IP rcombination, distribution and group
CN111404986A (en) Data transmission processing method, device and storage medium
CN115801770A (en) Large file transmission method based on full-user-state QUIC protocol
CN113259274B (en) Method for processing network message out-of-order and load balancing in multi-core mode and storage medium
CN1151635C (en) General dispatching system based on content adaptive for colony network service
CN1282326C (en) Method of user level parallel communication between computers based on intelligent network card
US20040240388A1 (en) System and method for dynamic assignment of timers in a network transport engine
JP2000067017A (en) Method and device for communicating data

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20090506

Termination date: 20111111