CN106484652B - A kind of more queue communication method and system based on NTB hardware - Google Patents

A kind of more queue communication method and system based on NTB hardware Download PDF

Info

Publication number
CN106484652B
CN106484652B CN201610948832.5A CN201610948832A CN106484652B CN 106484652 B CN106484652 B CN 106484652B CN 201610948832 A CN201610948832 A CN 201610948832A CN 106484652 B CN106484652 B CN 106484652B
Authority
CN
China
Prior art keywords
data
queue
ntb
sent
side controller
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
Application number
CN201610948832.5A
Other languages
Chinese (zh)
Other versions
CN106484652A (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.)
Zhengzhou Yunhai Information Technology Co Ltd
Original Assignee
Zhengzhou Yunhai Information 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 Zhengzhou Yunhai Information Technology Co Ltd filed Critical Zhengzhou Yunhai Information Technology Co Ltd
Priority to CN201610948832.5A priority Critical patent/CN106484652B/en
Publication of CN106484652A publication Critical patent/CN106484652A/en
Application granted granted Critical
Publication of CN106484652B publication Critical patent/CN106484652B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4204Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
    • G06F13/4221Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being an input/output bus, e.g. ISA bus, EISA bus, PCI bus, SCSI bus

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Communication Control (AREA)

Abstract

More queue communication method and system based on NTB hardware that the invention discloses a kind of, comprising: send size of data and scheduled queue selection rule of the side controller according to data to be sent, choose corresponding target NTB queue;The transmission side controller is packaged the data to be sent according to predetermined encapsulation format, and encapsulation of data is sent to reception side controller by the target NTB queue, and modifies the management data of the target NTB queue control page;The management data for receiving side controller and controlling page by monitoring the target NTB queue obtain the encapsulation of data for sending side controller and sending;As it can be seen that the communication means provided by this programme, is not in data-bag lost, situations such as data packet disorder, and due to the reliability of NTB link, the problems such as circulation that will not have message SN is overflowed, to realize efficient message transmission.

Description

A kind of more queue communication method and system based on NTB hardware
Technical field
The present invention relates to computer system software design philosophy field, more specifically to a kind of based on NTB hardware More queue communication method and system.
Background technique
PCIe is one of the primary bus agreement that modem computer systems use, there is it is nontransparent bridge joint (i.e. NTB, Non-transparent Bridging) extend specification.Interconnection with the development of heritage storage system, for multi-controller The bandwidth performance of communication requires also higher and higher, and PCIe also grows up along with the improvement of agreement, and the NTB of PCIe is also gradually As the new means communicated between multi-controller, since NTB is a kind of new hardware communication device, how to realize base In the communication means of NTB, communication task is completed, realizes that the communication between multi-controller is that those skilled in the art need to solve Problem.
Summary of the invention
More queue communication method and system based on NTB hardware that the purpose of the present invention is to provide a kind of are based on realizing The communication between multi-controller is realized in the communication of NTB.
To achieve the above object, the embodiment of the invention provides following technical solutions:
A kind of more queue communication methods based on NTB hardware, comprising:
Size of data and scheduled queue selection rule of the side controller according to data to be sent are sent, corresponding mesh is chosen Mark NTB queue;
The transmission side controller is packaged the data to be sent according to predetermined encapsulation format, passes through the target Encapsulation of data is sent to reception side controller by NTB queue, and modifies the management data of the target NTB queue control page;
The management data for receiving side controller and controlling page by monitoring the target NTB queue, obtain the transmission The encapsulation of data that side controller is sent.
Wherein, the size of data and scheduled queue selection rule for sending side controller according to data to be sent, choosing Take corresponding target NTB queue, comprising:
According to the size of data of the data to be sent, determine that the data to be sent are located at the target of queue range concentration Queue range, and using with NTB queue corresponding to the object queue range as target NTB queue;
If determining that the data to be sent are not located at queue range concentration according to the size of data of the data to be sent, The immediate NTB queue of size of data with the data to be sent is then chosen as target NTB queue, and according to immediate The granularity of NTB queue executes Fragmentation to the data to be sent.
Wherein, NTB queue corresponding to the queue range collection includes:
Using 4KB as NTB queue corresponding to granularity, using 16KB as NTB queue corresponding to granularity, using 256KB as granularity Corresponding NTB queue and using 1MB as NTB queue corresponding to granularity.
Wherein, the management data for receiving side controller and controlling page by monitoring the NTB queue, obtain the transmission The encapsulation of data that side controller is sent, comprising:
If the receiving end controller monitoring changes to the idle following table information in the management data, obtain Encapsulation of data is sent to upper layer application after encapsulation of data parses to described;
The side controller that receives updates the idle following table information managed in data.
Wherein, the encapsulation format of encapsulation of data successively includes: sequence number information, version number information, zone bit information, is returned Complex sequences information, the length information of load data, load data verify data;Wherein, the zone bit information expression has been sealed Fill the attribute information of data.
Wherein, after the reception side controller obtains encapsulation of data, further includes:
With the presence or absence of reply sequence number in the detection encapsulation of data;If it exists, then it judges whether there is and needs to send To the reply data for sending side controller;
Data are replied if it exists, then according to the predetermined encapsulation format to including the reply data and the reply sequence Number message package be packaged, and transmission side controller is sent to by NTB queue;
Data are replied if it does not exist, then after being spaced preset duration, according to the predetermined encapsulation format to including the reply The message package of sequence number is packaged, and is sent to transmission side controller by NTB queue.
Wherein, this programme further include:
The transmission side controller judges whether that the number to be sent can be sent according to the data structure of current NTB queue According to;If can, encapsulation of data is sent to by reception side controller by NTB queue;If cannot, by the data to be sent It is stored in waiting list, until current NTB queue can send the data to be sent.
A kind of more queue communication systems based on NTB hardware, including send side controller and receive side controller;
Sending side controller includes:
Choose module, for according to data to be sent size of data and scheduled queue selection rule, choose it is corresponding Target NTB queue;
Package module, for being packaged according to predetermined encapsulation format to the data to be sent;
First sending module, for encapsulation of data to be sent to reception side controller by the target NTB queue, and Modify the management data of the target NTB queue control page;
The management data for receiving side controller and controlling page by monitoring the target NTB queue, obtain the transmission The encapsulation of data that side controller is sent.
Wherein, the reception side controller, further includes:
Detection module, for detecting in the encapsulation of data with the presence or absence of reply sequence number;
Judgment module judges whether there is when replying sequence number for existing in the encapsulation of data and needs to send To the reply data for sending side controller;
Second sending module, when replying data for existing, according to the predetermined encapsulation format to including the reply number According to and the message package for replying sequence number be packaged, and transmission side controller is sent to by NTB queue;
Third sending module, when for there is no replying data, after being spaced preset duration, according to the predetermined encapsulation format The message package for including the reply sequence number is packaged, and transmission side controller is sent to by NTB queue.
Wherein, further includes:
The transmission side controller judges whether that the number to be sent can be sent according to the data structure of current NTB queue According to;If can, encapsulation of data is sent to by reception side controller by NTB queue;If cannot, by the data to be sent It is stored in waiting list, until current NTB queue can send the data to be sent.
By above scheme it is found that a kind of more queue communication methods based on NTB hardware provided in an embodiment of the present invention and System, comprising: send size of data and scheduled queue selection rule of the side controller according to data to be sent, choose corresponding Target NTB queue;The transmission side controller is packaged the data to be sent according to predetermined encapsulation format, by described Encapsulation of data is sent to reception side controller by target NTB queue, and modifies the management number of the target NTB queue control page According to;The management data for receiving side controller and controlling page by monitoring the target NTB queue obtain the transmitting terminal control The encapsulation of data that device is sent;As it can be seen that the communication means provided by this programme, is not in data-bag lost, data packet is random Situations such as sequence, and due to the reliability of NTB link, there will not be the problems such as circulation spilling of message SN, thus real Now efficient message transmission.
Detailed description of the invention
In order to more clearly explain the embodiment of the invention or the technical proposal in the existing technology, to embodiment or will show below There is attached drawing needed in technical description to be briefly described, it should be apparent that, the accompanying drawings in the following description is only this Some embodiments of invention for those of ordinary skill in the art without creative efforts, can be with It obtains other drawings based on these drawings.
Fig. 1 is a kind of more queue communication method flow schematic diagrams based on NTB hardware disclosed by the embodiments of the present invention;
Fig. 2 is a kind of mapping window data structure schematic diagram disclosed by the embodiments of the present invention;
Fig. 3 is a kind of data packet format schematic diagram disclosed by the embodiments of the present invention;
Fig. 4 is a kind of communication conveying flow schematic diagram disclosed by the embodiments of the present invention;
Fig. 5 is a kind of more queue communication system structure diagrams based on NTB hardware disclosed by the embodiments of the present invention.
Specific embodiment
Following will be combined with the drawings in the embodiments of the present invention, and technical solution in the embodiment of the present invention carries out clear, complete Site preparation description, it is clear that described embodiments are only a part of the embodiments of the present invention, instead of all the embodiments.It is based on Embodiment in the present invention, it is obtained by those of ordinary skill in the art without making creative efforts every other Embodiment shall fall within the protection scope of the present invention.
More queue communication method and system based on NTB hardware that the embodiment of the invention discloses a kind of are based on NTB to realize Communication, realize multi-controller between communication.
It should be noted that the characteristics of NTB hardware is the address space that can directly access remote memory, that is to say, that false If node A is connected with node B using NTB, node A directly the memory headroom of accessed node B, NTB can map out a ground Location window, this window are a part of address spaces of the memory of node B, it may be possible to 4GB, it is also possible to 2GB, it can be according to reality The environment on border carries out corresponding adjusting, but the used data structure of this mapping window is not distinctly claimed, But as communication means, meeting specific description data structure, while the lattice for the communication information being stored in this data structure Formula be also it is very crucial, communication means can also be illustrated the communication format of specific message.
Referring to Fig. 1, a kind of more queue communication methods based on NTB hardware provided in an embodiment of the present invention, comprising:
S101, size of data and scheduled queue selection rule of the side controller according to data to be sent, selection pair are sent The target NTB queue answered;
Wherein, the size of data and scheduled queue selection rule for sending side controller according to data to be sent, choosing Take corresponding target NTB queue, comprising:
According to the size of data of the data to be sent, determine that the data to be sent are located at the target of queue range concentration Queue range, and using with NTB queue corresponding to the object queue range as target NTB queue;
If determining that the data to be sent are not located at queue range concentration according to the size of data of the data to be sent, The immediate NTB queue of size of data with the data to be sent is then chosen as target NTB queue, and according to immediate The granularity of NTB queue executes Fragmentation to the data to be sent.
Specifically, NTB queue corresponding to the queue range collection includes:
Using 4KB as NTB queue corresponding to granularity, using 16KB as NTB queue corresponding to granularity, using 256KB as granularity Corresponding NTB queue and using 1MB as NTB queue corresponding to granularity.
Specifically, NTB's maps out an address window and can form queue, pass through the encapsulation of the granularity and data of queue Data to be sent are sent to reception side controller by format, and the granularity of each queue may be the same or different, but in order to Reduction fragmental messages appropriate, while efficiency of transmission is also improved, increase message queue in this programme, and each queue has Referring to fig. 24 queues are arranged, granularity is respectively 4KB, 16KB, 256KB and 1MB, is being selected in this way in one granularity in this programme It when taking the queue of transmission, is selected according to the size of data to be sent, selection, which does not have to fragment, in principle can directly transmit number According to queue, such as 0~4KB data selection granularity be 4KB queue, the data selection granularity of 4KB~16KB is 16KB's Queue, the data selection granularity of 16KB~256KB are the queue of 256KB, and the data selection granularity of 256KB~1MB is the team of 1MB Column, and for greater than 1MB fragment is then still taken using data method carry out message transmitting, need application data into Row fragment carries out message encapsulation later, is transmitted later.And each first 4KB of queue can be stored as control page The data of management, such as the first subscript of idle first subscript, occupancy, a queue is Priority Queues, another queue is common team Column.
Wherein, the encapsulation format of encapsulation of data successively includes: sequence number information, version number information, zone bit information, is returned Complex sequences information, the length information of load data, load data verify data;Wherein, the zone bit information expression has been sealed Fill the attribute information of data.
Specifically, be packaged in this programme according to referring to encapsulation format shown in Fig. 3, disappearing for encapsulation of data is generated Breath packet, the composition of a message package are divided into following components:
1) sequence number indicates the particular sequence number of this message, what this number was initially randomly generated, but cannot be zero, Zero has special meaning, occupies 4 bytes;
2) version number indicates the version number of this message, occupies 4 bytes, the main format version for indicating data packet, version It determines the specific format of data packet, that is, determines how to carry out the parsing of data packet.Sequence number and version number be it is fixed, That is preceding 8 bytes of a message are fixed and constant, and in this series, no matter version is several, the first eight word Section all can be sequence number and version number;
3) flag bit indicates the attribute information of some transmission data of message, such as: whether have and replys sequence number, is No to have using data, with the presence or absence of method of calibration, what method of calibration is, occupies 4 bytes, but current flags only makes With low 2 bytes, high two bytes be it is reserved, be all set to zero at present.The value and semanteme of specific flag bit are such as 1 institute of table Show:
Table 1
4) sequence number is replied, also known as confirmation number, NM_REPLY, which is set, just to be existed, and is that local terminal confirms that receiving opposite end transmitted The message SN come, occupies 4 bytes;
5) length of load data, NM_DATA, which is set, just to be existed, and is indicated the length for applying data, is occupied 4 bytes;
6) load data also known as applies data, and NM_DATA, which is set, just to be existed, and is the main body of the data of transmitting application;
7) data are verified, NM_ECHECK, which is set, just to be existed, and specific size depends on NM_CRC and NM_MD5, if it is NM_CRC, then 4 bytes;It is then 16 bytes if it is NM_MD5.
S102, the transmission side controller are packaged the data to be sent according to predetermined encapsulation format, pass through institute It states target NTB queue and encapsulation of data is sent to reception side controller, and modify the management of the target NTB queue control page Data;
Specifically, need to modify the residue of NTB window idle subscript and quantity after sending data by NTB queue, So that receive side controller finds that sending side controller has sent data in time.It should be noted that transmission packet for the first time If, 0 is write on the position of the number of confirmation, indicates that this is first, does not confirm any message package.
S103, the reception side controller, which pass through, monitors the management data that the target NTB queue controls page, described in acquisition Send the encapsulation of data that side controller is sent.
Wherein, the management data for receiving side controller and controlling page by monitoring the NTB queue, obtain the transmission The encapsulation of data that side controller is sent, comprising:
If the receiving end controller monitoring changes to the idle following table information in the management data, obtain Encapsulation of data is sent to upper layer application after encapsulation of data parses to described;
The side controller that receives updates the idle following table information managed in data.
Specifically, the free time of the management data of NTB queue control page is first checked in the receiving thread timing for receiving side controller Subscript, discover whether new message;If so, just fetching message to come, message is subjected to corresponding parsing later, is given Layer application processing, and the first subscript of corresponding occupancy is modified, after having handled, it can go to handle disappearing for the low queue of another priority Breath;Receiving end to the parsing of encapsulation of data is solved according to the setting of different piece in the data packet format of encapsulation of data Analysis.
Based on the above-mentioned technical proposal, after the reception side controller obtains encapsulation of data, further includes:
With the presence or absence of reply sequence number in the detection encapsulation of data;If it exists, then it judges whether there is and needs to send To the reply data for sending side controller;
Data are replied if it exists, then according to the predetermined encapsulation format to including the reply data and the reply sequence Number message package be packaged, and transmission side controller is sent to by NTB queue;
Data are replied if it does not exist, then after being spaced preset duration, according to the predetermined encapsulation format to including the reply The message package of sequence number is packaged, and is sent to transmission side controller by NTB queue.
Specifically, in the present solution, sequence number to be confirmed is put into if there is reply sequence number in encapsulation of data In the array of transmission to be confirmed, if there is replying data, that is, there is message transmission that sequence number is directly just put into message to opposite end Bao Zhong, if the message not sent, wait for a period of time (this time is usually 1ms) just automatically form confirmation afterwards and disappear Breath packet is sent to opposite end, and sending method is consistent with the side controller transmission mode of data is sent.
Based on the above-mentioned technical proposal, this programme further include:
The transmission side controller judges whether that the number to be sent can be sent according to the data structure of current NTB queue According to;If can, encapsulation of data is sent to by reception side controller by NTB queue;If cannot, by the data to be sent It is stored in waiting list, until current NTB queue can send the data to be sent.
It should be noted that by after data fragmentation to be sent, from the point of view of the queue data structure of current NTB window Whether all fragments can be transmitted, if it is not, being put into waiting list, waited to be sent.
Referring to fig. 4, after data to be sent are sent to communication core layer by the upper layer application of transmitting terminal in this programme, communication Core layer carries out fragment and encapsulation to data to be sent, and encapsulation of data is sent to the communication of receiving end by communication equipment level Data after parsing are transferred to receiving end by equipment level, the parsing by the communication core central layer of receiving end to encapsulation of data Application layer.
More queue communication systems provided in an embodiment of the present invention are introduced below, more queue communication systems described below System can be cross-referenced with above-described more queue communication methods.
Referring to Fig. 5, a kind of more queue communication systems based on NTB hardware provided in an embodiment of the present invention, including transmitting terminal Controller 100 and reception side controller 200;
Sending side controller 100 includes:
Choose module 101, for according to data to be sent size of data and scheduled queue selection rule, choose correspond to Target NTB queue;
Package module 102, for being packaged according to predetermined encapsulation format to the data to be sent;
First sending module 103, for encapsulation of data to be sent to receiving end control by the target NTB queue Device, and modify the management data of the target NTB queue control page;
The management data for receiving side controller 200 and controlling page by monitoring the target NTB queue, obtain the hair The encapsulation of data that sending end controller is sent.
Based on the above-mentioned technical proposal, the reception side controller, further includes:
Detection module, for detecting in the encapsulation of data with the presence or absence of reply sequence number;
Judgment module judges whether there is when replying sequence number for existing in the encapsulation of data and needs to send To the reply data for sending side controller;
Second sending module, when replying data for existing, according to the predetermined encapsulation format to including the reply number According to and the message package for replying sequence number be packaged, and transmission side controller is sent to by NTB queue;
Third sending module, when for there is no replying data, after being spaced preset duration, according to the predetermined encapsulation format The message package for including the reply sequence number is packaged, and transmission side controller is sent to by NTB queue.
Based on the above-mentioned technical proposal, further includes:
The transmission side controller judges whether that the number to be sent can be sent according to the data structure of current NTB queue According to;If can, encapsulation of data is sent to by reception side controller by NTB queue;If cannot, by the data to be sent It is stored in waiting list, until current NTB queue can send the data to be sent.
A kind of more queue communication method and system based on NTB hardware provided in an embodiment of the present invention, comprising: transmitting terminal control Size of data and scheduled queue selection rule of the device processed according to data to be sent, choose corresponding target NTB queue;The hair Sending end controller is packaged the data to be sent according to predetermined encapsulation format, will have been sealed by the target NTB queue Dress data are sent to reception side controller, and modify the management data of the target NTB queue control page;The receiving end control Device controls the management data of page by monitoring the target NTB queue, obtains the encapsulation number for sending side controller and sending According to;As it can be seen that the communication means provided by this programme, is not in data-bag lost, situations such as data packet disorder, and due to The problems such as reliability of NTB link, the circulation that will not have message SN is overflowed, to realize efficient message transmission.
Each embodiment in this specification is described in a progressive manner, the highlights of each of the examples are with other The difference of embodiment, the same or similar parts in each embodiment may refer to each other.
The foregoing description of the disclosed embodiments enables those skilled in the art to implement or use the present invention. Various modifications to these embodiments will be readily apparent to those skilled in the art, as defined herein General Principle can be realized in other embodiments without departing from the spirit or scope of the present invention.Therefore, of the invention It is not intended to be limited to the embodiments shown herein, and is to fit to and the principles and novel features disclosed herein phase one The widest scope of cause.

Claims (9)

1. a kind of more queue communication methods based on NTB hardware characterized by comprising
Size of data and scheduled queue selection rule of the side controller according to data to be sent are sent, corresponding target is chosen NTB queue;
The transmission side controller is packaged the data to be sent according to predetermined encapsulation format, passes through the target NTB Encapsulation of data is sent to reception side controller by queue, and modifies the management data of the target NTB queue control page;
The management data for receiving side controller and controlling page by monitoring the target NTB queue, obtain the transmitting terminal control The encapsulation of data that device processed is sent;
Wherein, the size of data and scheduled queue selection rule for sending side controller according to data to be sent, selection pair The target NTB queue answered, comprising:
According to the size of data of the data to be sent, determine that the data to be sent are located at the object queue of queue range concentration Range, and using with NTB queue corresponding to the object queue range as target NTB queue;
If determining that the data to be sent are not located at queue range concentration according to the size of data of the data to be sent, then selecting It takes with the immediate NTB queue of the size of data of the data to be sent as target NTB queue, and according to immediate NTB The granularity of queue executes Fragmentation to the data to be sent.
2. more queue communication methods according to claim 1, which is characterized in that NTB corresponding to the queue range collection Queue includes:
It is right by granularity of 256KB using 16KB as NTB queue corresponding to granularity using 4KB as NTB queue corresponding to granularity The NTB queue answered and using 1MB as NTB queue corresponding to granularity.
3. more queue communication methods according to claim 2, which is characterized in that the reception side controller passes through monitoring institute The management data for stating NTB queue control page obtain the encapsulation of data for sending side controller and sending, comprising:
If the receiving end controller monitoring changes to the idle following table information in the management data, obtains and encapsulated Data are sent to upper layer application after encapsulation of data parses to described;
The side controller that receives updates the idle following table information managed in data.
4. more queue communication methods according to claim 1, which is characterized in that
The encapsulation format of encapsulation of data successively includes: sequence number information, version number information, zone bit information, reply sequence number Information, the length information of load data, load data verify data;Wherein, the zone bit information indicates encapsulation of data Attribute information.
5. more queue communication methods according to claim 4, which is characterized in that the reception side controller acquisition has encapsulated After data, further includes:
With the presence or absence of reply sequence number in the detection encapsulation of data;If it exists, then it judges whether there is and needs to be sent to institute State the reply data for sending side controller;
Data are replied if it exists, then according to the predetermined encapsulation format to including the reply data and described reply sequence number Message package is packaged, and is sent to transmission side controller by NTB queue;
Data are replied if it does not exist, then after being spaced preset duration, according to the predetermined encapsulation format to including the reply sequence Number message package be packaged, and transmission side controller is sent to by NTB queue.
6. more queue communication methods described in any one of -5 according to claim 1, which is characterized in that further include:
The transmission side controller judges whether that the data to be sent can be sent according to the data structure of current NTB queue;If Can, then encapsulation of data is sent to by reception side controller by NTB queue;If cannot, the data to be sent are stored in Waiting list, until current NTB queue can send the data to be sent.
7. a kind of more queue communication systems based on NTB hardware, which is characterized in that including sending side controller and receiving end control Device;
Sending side controller includes:
Choose module, for according to data to be sent size of data and scheduled queue selection rule, choose corresponding target NTB queue;
Package module, for being packaged according to predetermined encapsulation format to the data to be sent;
First sending module for encapsulation of data to be sent to reception side controller by the target NTB queue, and is modified The management data of the target NTB queue control page;
The management data for receiving side controller and controlling page by monitoring the target NTB queue, obtain the transmitting terminal control The encapsulation of data that device processed is sent;
Wherein, the selection module is specifically used for: according to the size of data of the data to be sent, determining the data to be sent Positioned at queue range concentrate object queue range, and using with NTB queue corresponding to the object queue range as target NTB queue;If determining that the data to be sent are not located at queue range concentration according to the size of data of the data to be sent, The immediate NTB queue of size of data with the data to be sent is then chosen as target NTB queue, and according to immediate The granularity of NTB queue executes Fragmentation to the data to be sent.
8. more queue communication systems according to claim 7, which is characterized in that the reception side controller, further includes:
Detection module, for detecting in the encapsulation of data with the presence or absence of reply sequence number;
Judgment module judges whether there is when replying sequence number for existing in the encapsulation of data and needs to be sent to institute State the reply data for sending side controller;
Second sending module, for exist reply data when, according to the predetermined encapsulation format to include the reply data and The message package for replying sequence number is packaged, and is sent to transmission side controller by NTB queue;
Third sending module, when for there is no replying data, after being spaced preset duration, according to the predetermined encapsulation format to packet It includes the message package for replying sequence number to be packaged, and transmission side controller is sent to by NTB queue.
9. more queue communication systems according to claim 7 or 8, which is characterized in that further include:
The transmission side controller judges whether that the data to be sent can be sent according to the data structure of current NTB queue;If Can, then encapsulation of data is sent to by reception side controller by NTB queue;If cannot, the data to be sent are stored in Waiting list, until current NTB queue can send the data to be sent.
CN201610948832.5A 2016-10-26 2016-10-26 A kind of more queue communication method and system based on NTB hardware Active CN106484652B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610948832.5A CN106484652B (en) 2016-10-26 2016-10-26 A kind of more queue communication method and system based on NTB hardware

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610948832.5A CN106484652B (en) 2016-10-26 2016-10-26 A kind of more queue communication method and system based on NTB hardware

Publications (2)

Publication Number Publication Date
CN106484652A CN106484652A (en) 2017-03-08
CN106484652B true CN106484652B (en) 2019-09-24

Family

ID=58271649

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610948832.5A Active CN106484652B (en) 2016-10-26 2016-10-26 A kind of more queue communication method and system based on NTB hardware

Country Status (1)

Country Link
CN (1) CN106484652B (en)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107329917A (en) * 2017-06-26 2017-11-07 郑州云海信息技术有限公司 A kind of data transmission method and device
CN109062708B (en) * 2018-07-05 2020-07-10 武汉斗鱼网络科技有限公司 Data sending method, receiving method and device
CN109117393A (en) * 2018-08-06 2019-01-01 郑州云海信息技术有限公司 A kind of two-way NTB communication means, apparatus and system
CN110618881B (en) * 2019-09-19 2022-04-12 中国银行股份有限公司 Method and system for simulating message queue
CN110830972A (en) * 2019-12-02 2020-02-21 北京深思数盾科技股份有限公司 Data transmission method and device for Bluetooth communication and storage medium

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103038758A (en) * 2010-06-02 2013-04-10 英特尔公司 Method and system to improve the operations of an integrated non-transparent bridge device
CN104486365A (en) * 2014-09-28 2015-04-01 浪潮(北京)电子信息产业有限公司 Communication method and system between double controls
CN105183677A (en) * 2015-08-31 2015-12-23 北京神州云科数据技术有限公司 Asynchronous non-transparent bridge based data transmission method and system
CN105988948A (en) * 2015-02-13 2016-10-05 浙江大华技术股份有限公司 Data transmission method and equipment

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8250260B2 (en) * 2009-12-15 2012-08-21 International Business Machines Corporation Method, arrangement, data processing program and computer program product for exchanging message data in a distributed computer system

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103038758A (en) * 2010-06-02 2013-04-10 英特尔公司 Method and system to improve the operations of an integrated non-transparent bridge device
CN104486365A (en) * 2014-09-28 2015-04-01 浪潮(北京)电子信息产业有限公司 Communication method and system between double controls
CN105988948A (en) * 2015-02-13 2016-10-05 浙江大华技术股份有限公司 Data transmission method and equipment
CN105183677A (en) * 2015-08-31 2015-12-23 北京神州云科数据技术有限公司 Asynchronous non-transparent bridge based data transmission method and system

Also Published As

Publication number Publication date
CN106484652A (en) 2017-03-08

Similar Documents

Publication Publication Date Title
CN106484652B (en) A kind of more queue communication method and system based on NTB hardware
KR102144330B1 (en) Encapsulation Enabled PCIE Virtualisation
CN103905300B (en) A kind of data message sending method, equipment and system
CN102263698B (en) Method for establishing virtual channel, method of data transmission and line card
CN105556930A (en) NVM EXPRESS controller for remote memory access
EP3077914B1 (en) System and method for managing and supporting virtual host bus adaptor (vhba) over infiniband (ib) and for supporting efficient buffer usage with a single external memory interface
CN106301859A (en) A kind of manage the method for network interface card, Apparatus and system
CN110476156A (en) Universal serial bus networks interchanger
CN106549845A (en) A kind of communication means and system based on NTB hardware
CN103365810B (en) The method and apparatus that flash memory devices programming time is reduced in C.A.N. buses
KR101559089B1 (en) Communication protocol for sharing memory resources between components of a device
CN104484219B (en) The method and apparatus of distributing policy in virtual platform
CN103282888A (en) Data processing method, graphics processing unit (gpu) and first node device
JP6333120B2 (en) Method of message confirmation and / or data collection from communication devices by packet message transmission in wireless mesh network, and method of confirmation and data collection that can be used for creation of general-purpose platform
CN108076529B (en) A kind of method for transmitting uplink data, terminal and network side equipment
CN105939293A (en) SKB (Struct sk_buff) recycling method and device
US8898353B1 (en) System and method for supporting virtual host bus adaptor (VHBA) over infiniband (IB) using a single external memory interface
CN109951255A (en) A kind of data transmission method based on TCP, system, source device and target device
CN110166575A (en) A kind of http Proxy Method, system, device and computer media
CN104580328A (en) Virtual machine migration method, device and system
EP2726992B1 (en) Network control model driver
CN103294560A (en) Method and device for character string across process transmission
CN107483306A (en) A kind of communication means, communication system and storage medium
CN111092817A (en) Data transmission method and device
CN106549846A (en) A kind of communication means based on NBT hardware

Legal Events

Date Code Title Description
C06 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