CN109062671A - A kind of high-performance interconnection network software virtual method of lightweight - Google Patents
A kind of high-performance interconnection network software virtual method of lightweight Download PDFInfo
- Publication number
- CN109062671A CN109062671A CN201810929669.7A CN201810929669A CN109062671A CN 109062671 A CN109062671 A CN 109062671A CN 201810929669 A CN201810929669 A CN 201810929669A CN 109062671 A CN109062671 A CN 109062671A
- Authority
- CN
- China
- Prior art keywords
- virtual machine
- resource
- host
- virtual
- interconnection network
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/20—Handling requests for interconnection or transfer for access to input/output bus
- G06F13/28—Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/546—Message passing systems or structures, e.g. queues
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45579—I/O management, e.g. providing access to device drivers or storage
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45595—Network integration; Enabling network access in virtual machine instances
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/54—Indexing scheme relating to G06F9/54
- G06F2209/548—Queue
Abstract
The present invention discloses a kind of high-performance interconnection network software virtual method of lightweight, comprising: the process creation resource on S101, virtual machine: virtual machine is to host application resource number;Virtual machine configures resource;Resource is destroyed on virtual machine;Messaging on S102, virtual machine: after the completion of the process creation resource on virtual machine, dedicated data path is established;When being communicated, consumer process directly passes through I/O write operation by message queue doorbell, then message is directly copied to from the user buffering area of sender to by network interface card by dma operation the user buffering area of destination party.The present invention realizes the virtualization of high-performance interconnection network by way of pure software, it does not need hardware and increases design additionally to realize other virtualization standards, support dynamic, the distribution according to need of hardware resource, support the functions such as container type virtual machine rapid deployment and faulty physical isolation, and memory zero-copy, virtual machine network performance loss are small when messaging on virtual machine.
Description
Technical field
The present invention relates to the high-performance interconnection network software in interference networks virtualization field more particularly to a kind of lightweight is empty
Quasi-ization method.
Background technique
Interference networks virtualization will realize following function: each virtual machine can see independent NI equipment;Virtual NI tool
Have with the communication performance physics NI, i.e., the process on all virtual machines can bypass virtual machine manager and native virtual machine
Operating system directly accesses hardware and is communicated.Currently, the I/O device virtualization universal standard based on PCIE bus is SRIOV
(Single Root I/O Virtualization).SRIOV technology is a kind of hardware based virtualization solution, is allowed
PCIE device is efficiently shared between virtual machine.The PCIE device of SRIOV is supported to can be configured to multiple Virtual
Function (VF), each VF have the PCIE configuration space of oneself.Most of network card equipments are realized empty using SRIOV technology
Quasi-ization, but SRIOV need EP provide support, it is this support otherwise be with hardware logic realize or be by embedded place
The form for managing device reinforcing member is realized.In addition, SRIOV hardware resource divides in advance, the more of variable number cannot be flexibly supported
A VM.
Summary of the invention
It is an object of the invention to the high-performance interconnection network software virtual method by a kind of lightweight, come solve with
The problem of upper background technology part is mentioned.
To achieve this purpose, the present invention adopts the following technical scheme:
A kind of high-performance interconnection network software virtual method of lightweight, this method comprises:
Process creation resource on S101, virtual machine: S1011, virtual machine are to host application resource number;It is S1012, virtual
Machine configures resource;Resource is destroyed on S1013, virtual machine;
Messaging on S102, virtual machine: after the completion of the process creation resource on virtual machine, it is logical that dedicated data are established
Road;When being communicated, consumer process directly passes through I/O write operation by message queue doorbell, is then incited somebody to action by network interface card by dma operation
Message directly copies the user buffering area of destination party to from the user buffering area of sender.
Particularly, the step S1011 is specifically included: one, virtual machine initiates to apply by hcall to host;Two, place
After host receives application, bitmap is inquired, finds out unappropriated resource, and resource number is returned into virtual machine;Wherein, all resources
Number by host management and distribution, host is that every class resource all safeguards a bitmap, records the distribution condition of resource.
Particularly, the step S1012 is specifically included: after virtual machine application to resource number, directly accessing matching for the resource
Register is set to be initialized.
Particularly, the step S1013 is specifically included: one, the configuration register that virtual machine directly accesses the resource carries out
Destroy operation;Two, virtual machine is to host returned resource number: virtual machine initiates to apply by hcall to host;Host is received
To after application, bitmap is modified, resource number is discharged.
Particularly, after some virtual machine breaks down, host will recycle the resource number of virtual machine occupancy.
The high-performance interconnection network software virtual method of lightweight proposed by the present invention is realized by way of pure software
The virtualization of high-performance interconnection network does not need hardware and increases design additionally to realize other virtualization standards (such as
SRIOV), the function such as container type virtual machine rapid deployment and faulty physical isolation are supported in dynamic, the distribution according to need for supporting hardware resource
Can, and memory zero-copy, virtual machine network performance loss are small when messaging on virtual machine.
Detailed description of the invention
Fig. 1 is the working principle of the high-performance interconnection network software virtual method of lightweight provided in an embodiment of the present invention
Figure.
Specific embodiment
Present invention will be further explained below with reference to the attached drawings and examples.It is understood that tool described herein
Body embodiment is used only for explaining the present invention rather than limiting the invention.It also should be noted that for the ease of retouching
It states, only some but not all contents related to the present invention are shown in the drawings, it is unless otherwise defined, used herein all
Technical and scientific term has the same meaning as commonly understood by one of ordinary skill in the art to which this invention belongs.It is used herein
Term be intended merely to description specific embodiment, it is not intended that in limitation the present invention.
The high-performance interconnection network software virtual method of lightweight specifically includes in the present embodiment:
Process creation resource on S101, virtual machine: S1011, virtual machine are to host application resource number;It is S1012, virtual
Machine configures resource;Resource is destroyed on S1013, virtual machine.
Messaging on S102, virtual machine: after the completion of the process creation resource on virtual machine, it is logical that dedicated data are established
Road;The transmitting-receiving of message needs not move through host and virtual machine OS and can be normally carried out;When being communicated, consumer process is direct
Message queue doorbell is pressed by I/O write operation, dma operation is then passed through for message directly from the user buffering of sender by network interface card
Area copies the user buffering area of destination party to, to realize bypass core and message zero-copy.
As shown in Figure 1, SQ:Send Queue in figure, is in network interface card for managing the component for sending request;RQ:Receive
Queue is in network interface card for managing the component for receiving request;CQ:Complete Queue is to complete letter for managing in network interface card
The component of breath;DMA:Direct Memory Access, a kind of data exchange mould directly carrying out memory access without CPU
Formula;Internuclear interruption: one of multi-core processor interrupt type issues another by a calculating core and calculates core.This hair
It is bright to be made of host drive software and virtual machine drive software two parts.In the present embodiment, all resource numbers are by host
Machine management and distribution cause to conflict to avoid different virtual machines using identical resource;Host is that every class resource is all tieed up
A bitmap is protected, the distribution condition of resource is recorded.When the process creation resource on virtual machine, need to host application resource
Number;Assignable resource number is returned to virtual machine by host, and records Current resource distribution condition;Then by virtual machine independence
Complete relevant configuration operation.At the end of the process on virtual machine, to host returned resource number.
The step S1011 is specifically included in the present embodiment: one, virtual machine initiates to apply by hcall to host;
Two, after host receives application, bitmap is inquired, finds out unappropriated resource, and resource number is returned into virtual machine.The step
S1012 is specifically included: after virtual machine application to resource number, the configuration register for directly accessing the resource is initialized.It is described
Step S1013 is specifically included: one, the configuration register that virtual machine directly accesses the resource carries out destruction operation;Two, virtual machine to
Host returned resource number: virtual machine initiates to apply by hcall to host;After host receives application, bitmap is modified, it will
Resource number release.
Due to the dynamic of resource, distribution according to need, each virtual machine has independent hardware resource and data path.When some
After virtual machine breaks down, host only needs to recycle the resource number of host occupancy, therefore virtual machine may be implemented
Rapid deployment and Fault Isolation.
The present invention is made of host drive software and virtual machine drive software two parts, and it is virtual to significantly reduce network interface card
Change the dependence to hardware.A set of virtualization software stack and the driving of respective pci bus are run on each virtual machine, in this way
Each virtual machine can see NI equipment, to flexibly support multiple VM of variable number.All resource numbers are by host pipe
Reason and distribution.Application program on all virtual machines can dynamic to host application resource, and can be by directly pressing door
Bell delivers work request, to send and receive data, i.e., process on all virtual machines can bypass virtual machine manager and
Native virtual machine operating system directly accesses hardware communications.
Technical solution of the present invention realizes the virtualization of high-performance interconnection network by way of pure software, does not need
Hardware increases design additionally to realize other virtualization standards (such as SRIOV), supports dynamic, the distribution according to need of hardware resource, branch
The functions such as container type virtual machine rapid deployment and faulty physical isolation, and memory zero-copy when messaging on virtual machine are held, it is empty
Quasi- machine network performance loss is small.
Those of ordinary skill in the art will appreciate that realizing that all parts in above-described embodiment are can to pass through computer
Program is completed to instruct relevant hardware, and the program can be stored in a computer-readable storage medium, the program
When being executed, it may include such as the process of the embodiment of above-mentioned each method.Wherein, the storage medium can for magnetic disk, CD, only
Read storage memory (Read-Only Memory, ROM) or random access memory (Random Access Memory, RAM)
Deng.
Note that the above is only a better embodiment of the present invention and the applied technical principle.It will be appreciated by those skilled in the art that
The invention is not limited to the specific embodiments described herein, be able to carry out for a person skilled in the art it is various it is apparent variation,
It readjusts and substitutes without departing from protection scope of the present invention.Therefore, although being carried out by above embodiments to the present invention
It is described in further detail, but the present invention is not limited to the above embodiments only, without departing from the inventive concept, also
It may include more other equivalent embodiments, and the scope of the invention is determined by the scope of the appended claims.
Claims (5)
1. a kind of high-performance interconnection network software virtual method of lightweight characterized by comprising
Process creation resource on S101, virtual machine: S1011, virtual machine are to host application resource number;S1012, virtual machine pair
Resource is configured;Resource is destroyed on S1013, virtual machine;
Messaging on S102, virtual machine: after the completion of the process creation resource on virtual machine, dedicated data path is established;Into
When row communication, consumer process directly passes through I/O write operation by message queue doorbell, then passes through dma operation by network interface card message is straight
Meet the user buffering area for copying destination party to from the user buffering area of sender.
2. the high-performance interconnection network software virtual method of lightweight according to claim 1, which is characterized in that described
Step S1011 is specifically included: one, virtual machine initiates to apply by hcall to host;Two, after host receives application, inquiry
Bitmap finds out unappropriated resource, and resource number is returned to virtual machine;Wherein, all resource numbers by host management and
Distribution, host are that every class resource all safeguards a bitmap, record the distribution condition of resource.
3. the high-performance interconnection network software virtual method of lightweight according to claim 2, which is characterized in that described
Step S1012 is specifically included: after virtual machine application to resource number, the configuration register for directly accessing the resource is initialized.
4. the high-performance interconnection network software virtual method of lightweight according to claim 3, which is characterized in that described
Step S1013 is specifically included: one, the configuration register that virtual machine directly accesses the resource carries out destruction operation;Two, virtual machine to
Host returned resource number: virtual machine initiates to apply by hcall to host;After host receives application, bitmap is modified, it will
Resource number release.
5. according to claim 1 to the high-performance interconnection network software virtual method of lightweight described in one of 4, feature exists
In after some virtual machine breaks down, host will recycle the resource number of virtual machine occupancy.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810929669.7A CN109062671A (en) | 2018-08-15 | 2018-08-15 | A kind of high-performance interconnection network software virtual method of lightweight |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810929669.7A CN109062671A (en) | 2018-08-15 | 2018-08-15 | A kind of high-performance interconnection network software virtual method of lightweight |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109062671A true CN109062671A (en) | 2018-12-21 |
Family
ID=64687007
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810929669.7A Pending CN109062671A (en) | 2018-08-15 | 2018-08-15 | A kind of high-performance interconnection network software virtual method of lightweight |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109062671A (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020135504A1 (en) * | 2018-12-27 | 2020-07-02 | 中兴通讯股份有限公司 | Virtualization method and apparatus |
CN113672411A (en) * | 2021-08-25 | 2021-11-19 | 烽火通信科技股份有限公司 | Method and device for realizing virtualization drive adaptation layer of network equipment |
US11301277B2 (en) | 2019-11-04 | 2022-04-12 | International Business Machines Corporation | Channel identifier coupling with virtualized communications hardware |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101324893A (en) * | 2008-07-02 | 2008-12-17 | 中国科学院计算技术研究所 | System and method for managing resource |
CN101751284A (en) * | 2009-12-25 | 2010-06-23 | 北京航空航天大学 | I/O resource scheduling method for distributed virtual machine monitor |
CN102650976A (en) * | 2012-04-01 | 2012-08-29 | 中国科学院计算技术研究所 | Control device and method supporting single IO (Input/Output) virtual user level interface |
CN103729254A (en) * | 2013-12-31 | 2014-04-16 | 国网山东省电力公司 | Virtual server Virtual CPU resource monitoring and dynamic allocation method |
US9183025B2 (en) * | 2009-11-25 | 2015-11-10 | Citrix Systems, Inc. | Systems and algorithm for interfacing with a virtualized computing service over a network using a lightweight client |
-
2018
- 2018-08-15 CN CN201810929669.7A patent/CN109062671A/en active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101324893A (en) * | 2008-07-02 | 2008-12-17 | 中国科学院计算技术研究所 | System and method for managing resource |
US9183025B2 (en) * | 2009-11-25 | 2015-11-10 | Citrix Systems, Inc. | Systems and algorithm for interfacing with a virtualized computing service over a network using a lightweight client |
CN101751284A (en) * | 2009-12-25 | 2010-06-23 | 北京航空航天大学 | I/O resource scheduling method for distributed virtual machine monitor |
CN102650976A (en) * | 2012-04-01 | 2012-08-29 | 中国科学院计算技术研究所 | Control device and method supporting single IO (Input/Output) virtual user level interface |
CN103729254A (en) * | 2013-12-31 | 2014-04-16 | 国网山东省电力公司 | Virtual server Virtual CPU resource monitoring and dynamic allocation method |
Non-Patent Citations (1)
Title |
---|
彭龙根等: "一种基于Xen平台的InfiniBand网络虚拟化技术", 《计算机工程与科学》 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020135504A1 (en) * | 2018-12-27 | 2020-07-02 | 中兴通讯股份有限公司 | Virtualization method and apparatus |
US11301277B2 (en) | 2019-11-04 | 2022-04-12 | International Business Machines Corporation | Channel identifier coupling with virtualized communications hardware |
CN113672411A (en) * | 2021-08-25 | 2021-11-19 | 烽火通信科技股份有限公司 | Method and device for realizing virtualization drive adaptation layer of network equipment |
CN113672411B (en) * | 2021-08-25 | 2023-08-11 | 烽火通信科技股份有限公司 | Method and device for realizing network equipment virtualization driving adaptation layer |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20200278880A1 (en) | Method, apparatus, and system for accessing storage device | |
JP5510556B2 (en) | Method and system for managing virtual machine storage space and physical hosts | |
CN100555257C (en) | The memory controller of the dma operation between the processing page replicative phase and method | |
WO2017114283A1 (en) | Method and apparatus for processing read/write request in physical host | |
WO2017008675A1 (en) | Method and device for transmitting data in virtual environment | |
WO2021000717A1 (en) | Method and apparatus for processing io | |
EP4160424A2 (en) | Zero-copy processing | |
CN109062671A (en) | A kind of high-performance interconnection network software virtual method of lightweight | |
WO2018000197A1 (en) | Virtual network function resource management method and device | |
CN107967225B (en) | Data transmission method and device, computer readable storage medium and terminal equipment | |
CN101150488A (en) | A receiving method for zero copy network packet | |
CN115185880B (en) | Data storage method and device | |
CN105739930A (en) | Storage framework as well as initialization method, data storage method and data storage and management apparatus therefor | |
CN102413183A (en) | Cloud intelligence switch and processing method and system thereof | |
CN111651269A (en) | Method, device and computer readable storage medium for realizing equipment virtualization | |
CN114397999A (en) | Communication method, device and equipment based on nonvolatile memory interface-remote processing message transmission | |
CN104123173A (en) | Method and device for achieving communication between virtual machines | |
CN107844304A (en) | The hot upgrade method of virtual machine and device | |
CN110445580B (en) | Data transmission method and device, storage medium, and electronic device | |
US11042495B2 (en) | Providing interrupts from an input-output memory management unit to guest operating systems | |
US11360824B2 (en) | Customized partitioning of compute instances | |
CN107643938A (en) | Data transmission method, device and storage medium | |
CN116628717A (en) | Data processing method, device, electronic equipment and storage medium | |
US8041902B2 (en) | Direct memory move of multiple buffers between logical partitions | |
CN103678163A (en) | Method, device and system for switching of data stream |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20181221 |