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 PDF

Info

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
Application number
CN201810929669.7A
Other languages
Chinese (zh)
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.)
Wuxi Jiangnan Computing Technology Institute
Original Assignee
Wuxi Jiangnan Computing Technology Institute
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 Wuxi Jiangnan Computing Technology Institute filed Critical Wuxi Jiangnan Computing Technology Institute
Priority to CN201810929669.7A priority Critical patent/CN109062671A/en
Publication of CN109062671A publication Critical patent/CN109062671A/en
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • 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/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/28Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/546Message passing systems or structures, e.g. queues
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45579I/O management, e.g. providing access to device drivers or storage
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45595Network integration; Enabling network access in virtual machine instances
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/54Indexing scheme relating to G06F9/54
    • G06F2209/548Queue

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

A kind of high-performance interconnection network software virtual method of lightweight
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.
CN201810929669.7A 2018-08-15 2018-08-15 A kind of high-performance interconnection network software virtual method of lightweight Pending CN109062671A (en)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

Patent Citations (5)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
Title
彭龙根等: "一种基于Xen平台的InfiniBand网络虚拟化技术", 《计算机工程与科学》 *

Cited By (4)

* Cited by examiner, † Cited by third party
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