WO2015013920A1 - Data forwarding method, device and system - Google Patents

Data forwarding method, device and system Download PDF

Info

Publication number
WO2015013920A1
WO2015013920A1 PCT/CN2013/080527 CN2013080527W WO2015013920A1 WO 2015013920 A1 WO2015013920 A1 WO 2015013920A1 CN 2013080527 W CN2013080527 W CN 2013080527W WO 2015013920 A1 WO2015013920 A1 WO 2015013920A1
Authority
WO
WIPO (PCT)
Prior art keywords
notification information
virtual machine
data packet
memory address
network device
Prior art date
Application number
PCT/CN2013/080527
Other languages
French (fr)
Chinese (zh)
Inventor
张逢喆
吴红宁
段小祥
刘相斌
藏洪永
Original Assignee
华为技术有限公司
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 华为技术有限公司 filed Critical 华为技术有限公司
Priority to PCT/CN2013/080527 priority Critical patent/WO2015013920A1/en
Priority to CN201380001388.0A priority patent/CN104508632B/en
Publication of WO2015013920A1 publication Critical patent/WO2015013920A1/en

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/46Multiprogramming arrangements
    • G06F9/54Interprogram communication

Definitions

  • the present invention relates to the field of communications technologies, and in particular, to a data forwarding method, apparatus, and system. Background technique
  • Virtualization software uses software technology to simulate the creation of multiple virtual machines (VMs) on a single physical computer.
  • VMs virtual machines
  • Each VM can be installed with the operating system, installed application software, and runs various programs as a physical computer.
  • Multiple VMs can run on a single physical computer at the same time. They don't perceive each other, are isolated from each other, and can communicate with each other only through the network, just like two physical computers. The combined performance of multiple VMs does not exceed the physical computer on which they reside.
  • VMM Virtual Machine Monitor
  • I/O input/output
  • the standard virtualized I/O communication mechanism is used to exchange data between the internal and external communication ends of the VM, and the data is exchanged with an efficient interface, which simplifies the simulation process of the virtual hardware and reduces the loss of the I/O process. .
  • This solution reduces the loss, the loss is still large.
  • the prior art also refers to Single Root I/O Virtualization (SR-IOV).
  • SR-IOV Single Root I/O Virtualization
  • the hardware straight-through technology will be a physical computer. The hardware on it is handed over to the VM instead of the virtual hardware virtualized by the VMM.
  • the driver in the VM can directly drive the physical network card to perform packet transmission and reception operations.
  • the VM bypasses the intermediate process of the VMM directly using physical hardware, minimizing performance loss.
  • Embodiments of the present invention provide a data forwarding method, apparatus, and system, which solve the problem of large loss in application communication between a virtual machine and a physical machine, and improve work efficiency and operation.
  • a data forwarding method including:
  • the host Receiving, by the host, the first notification information sent by the network device, where the first notification information includes a memory address of the data packet stored by the network device in the memory;
  • a virtual machine that communicates with the network device according to a relationship between a logical channel number and a communication entity; wherein the logical channel number is a logical channel number that the network device communicates with the virtual machine;
  • the second notification information includes the logical channel number and a memory address of the data packet
  • the obtaining the second notification information according to the first notification information includes:
  • the memory address of the data packet in the second notification information exists in a standard form; wherein the standard form refers to a format agreed in advance with the virtual machine.
  • the relationship map between the logical channel number and the communication entity can be updated in real time according to the change of the communication entity.
  • the interface of the first notification information transmission data is different according to the network device
  • the form of the interface of the second notification information transmission data is the standard form.
  • a data forwarding method including:
  • the virtual machine receives the second notification information sent by the host by using the connection module on the virtual machine, where the second notification information is obtained according to the first notification information, and includes logic for the network device to communicate with the virtual machine. a channel number and a memory address of the data packet; the first notification information is sent by the network device to the host, and includes a memory address of the data packet that is stored in the memory by the network device;
  • the data packet is obtained in memory according to the memory address of the data packet.
  • the memory address of the data packet in the second notification information exists in a standard form; wherein the standard form refers to a format agreed in advance with the virtual machine.
  • the interface of the first notification information transmission data is different according to the network device
  • the form of the interface of the second notification information transmission data is the standard form.
  • the third aspect provides a data forwarding method, including: Receiving, by the host, the second notification information sent by the virtual machine, where the second notification information includes a logical channel number and a memory address of the data packet stored by the virtual machine in the memory; the logical channel number is the virtual machine and a logical channel number of the network device communication; the virtual machine sends the second notification information by using a connection module on the virtual machine;
  • the obtaining the first notification information according to the second notification information includes:
  • the first notification information is obtained according to the memory address of the converted data packet.
  • the memory address of the data packet in the second notification information exists in a standard form; wherein the standard form refers to a format agreed in advance with the virtual machine.
  • the relationship map between the logical channel number and the communication entity can be updated in real time according to the change of the communication entity.
  • the interface of the first notification information transmission data is different according to the network device;
  • the form of the interface of the second notification information transmission data is the standard form.
  • the fourth aspect provides a data forwarding method, including:
  • the virtual machine stores the data packet into the memory
  • the notification information obtains the data packet; wherein the second notification information includes a logical channel number and a memory address of the data packet that the network device communicates with the virtual machine.
  • the memory address of the data packet in the second notification information exists in a standard form; wherein the standard form refers to a format agreed in advance with the virtual machine.
  • the interface of the first notification information transmission data is different according to the network device
  • a host including:
  • a receiving unit configured to receive first notification information that is sent by the network device, where the first notification information includes a memory address of the data packet that is stored in the memory by the network device;
  • An acquiring unit configured to acquire a virtual machine that communicates with the network device according to a relationship between a logical channel number and a communication entity; where the logical channel number is a logical channel number that the network device communicates with the virtual machine;
  • the obtaining unit is further configured to obtain second notification information according to the first notification information received by the receiving unit, where the second notification information includes the logical channel number and a memory address of the data packet ;
  • the acquiring unit includes:
  • a parsing module configured to parse the first notification information to obtain a memory address of the data packet
  • a conversion module configured to convert a form of a memory address of the data packet obtained by the parsing module into a standard form
  • an obtaining module configured to obtain the second notification information according to a memory address of the data packet converted into a standard form by the conversion module and the logical channel number.
  • the memory address of the data packet in the second notification information exists in a standard form; wherein the standard form refers to a format agreed in advance with the virtual machine.
  • the relationship map between the logical channel number and the communication entity can be updated in real time according to the change of the communication entity.
  • the interface of the first notification information transmission data is different according to the network device
  • the form of the interface of the second notification information transmission data is the standard form.
  • a virtual machine including:
  • a receiving unit configured to receive second notification information sent by the host by using a connection module on the virtual machine, where the second notification information is obtained according to the first notification information, including the network device and the virtual machine a logical channel number of the communication and a memory address of the data packet; the first notification information is sent by the network device to the host, and includes a memory address of the data packet stored in the memory by the network device;
  • an obtaining unit configured to acquire the data packet in a memory according to a memory address of the data packet received by the receiving unit.
  • the memory address of the data packet in the second notification information exists in a standard form; wherein the standard form refers to a format agreed in advance with the virtual machine.
  • the interface of the first notification information transmission data is different according to the network device
  • a host including:
  • a receiving unit configured to receive second notification information that is sent by the virtual machine, where the second notification information includes a logical channel number and a memory address of a data packet that is stored in the virtual machine by the virtual machine; a logical channel number that the virtual machine communicates with the network device; the virtual machine sends the second notification information by using a connection module on the virtual machine;
  • An acquiring unit configured to acquire, according to the relationship between the logical channel number and the communication entity, a network device that communicates with the virtual machine;
  • the obtaining unit is further configured to obtain first notification information according to the second notification information that is received by the receiving unit, where the first notification information includes a memory address of the data packet;
  • a sending unit configured to send the first notification information to the network device acquired by the acquiring unit, so that the network device obtains the data packet according to a memory address of the data packet.
  • the acquiring unit includes:
  • a parsing module configured to parse the second notification information to obtain a memory address of the data packet
  • a conversion module configured to convert a form of a memory address of the datagram obtained by the parsing module into a form that the network device can recognize
  • an obtaining module configured to obtain the first notification information according to a memory address of the data packet converted by the conversion module.
  • the memory address of the data packet in the second notification information exists in a standard form; wherein the standard form refers to a format agreed in advance with the virtual machine.
  • the relationship map between the logical channel number and the communication entity can be updated in real time according to the change of the communication entity.
  • the interface of the first notification information transmission data is different according to the network device
  • a virtual machine including:
  • a processing unit configured to store a data packet into the memory
  • a sending unit configured to send, by using a connection module on the virtual machine, second notification information to the host, so that the host obtains the first notification information according to the second notification information, and sends the information to the network device to enable the network device Obtaining the data packet according to the first notification information; where the second notification information includes a logical channel number and a memory address of the data packet that the network device communicates with the virtual machine.
  • the memory address of the data packet in the second notification information exists in a standard form; wherein the standard form refers to a format agreed in advance with the virtual machine.
  • the interface of the first notification information transmission data is different according to the network device
  • a host comprising: at least one processor, a memory, a communication interface, and a bus, wherein the at least one processor, the memory, and the communication interface pass the total
  • the lines are connected and complete communication with each other, the memory is used to store program code, where: the processor is configured to call program code in the memory to perform the following operations:
  • the network device Receiving first notification information sent by the network device, where the first notification information includes a memory address of a data packet that is stored in the memory by the network device;
  • a virtual machine that communicates with the network device according to a relationship between a logical channel number and a communication entity; wherein the logical channel number is a logical channel number that the network device communicates with the virtual machine;
  • the second notification information includes the logical channel number and a memory address of the data packet
  • the processor is specifically configured to:
  • the second notification information is obtained according to a memory address of the data packet converted to a standard form and the logical channel number.
  • the memory address of the data packet in the second notification information exists in a standard form; wherein the standard form refers to a format agreed in advance with the virtual machine.
  • the relationship map between the logical channel number and the communication entity can be updated in real time according to the change of the communication entity.
  • the interface of the first notification information transmission data is different according to the network device
  • a virtual machine including: at least one processor, a memory, a communication interface, and a bus, wherein the at least one processor, the memory, and the communication interface are connected by a bus and complete communication with each other, and the memory is used for
  • the program code is stored, wherein: the processor is configured to call program code in the memory to perform the following operations:
  • connection module on the virtual machine And receiving, by the connection module on the virtual machine, the second notification information that is sent by the host, where the second notification information is obtained according to the first notification information, and includes logic for the network device to communicate with the virtual machine. a channel number and a memory address of the data packet; the first notification information is sent by the network device to the host, and includes a memory address of the data packet that is stored in the memory by the network device;
  • the data packet is obtained in memory according to the memory address of the data packet.
  • the memory address of the data packet in the second notification information exists in a standard form; wherein the standard form refers to a format agreed in advance with the virtual machine.
  • the interface of the first notification information transmission data is different according to the network device
  • a host comprising: at least one processor, a memory, a communication interface, and a bus, wherein the at least one processor, the memory, and the communication interface are connected by a bus and complete communication with each other, the memory being used for The program code is stored, wherein: the processor is configured to call program code in the memory to perform the following operations:
  • the second notification information sent by the virtual machine receives, by the host, the second notification information sent by the virtual machine, where the second notification information includes a logical channel number and a memory address of the data packet stored by the virtual machine in the memory; the logical channel number is the virtual machine and The logical channel number of the network device communication; The virtual machine sends the second notification information by using a connection module on the virtual machine;
  • the processor is specifically configured to:
  • the first notification information is obtained according to the memory address of the converted data packet.
  • the memory address of the data packet in the second notification information exists in a standard form; wherein the standard form refers to a format agreed in advance with the virtual machine.
  • the relationship map between the logical channel number and the communication entity can be updated in real time according to the change of the communication entity.
  • the interface of the first notification information transmission data is different according to the network device
  • a virtual machine including: at least one processor, a memory, a communication interface, and a bus, wherein the at least one processor, the memory, and the communication interface are Through the bus connection and complete communication with each other, the memory is used to store the program code, and its towel:
  • the processor is configured to call program code in the memory to perform the following operations:
  • the notification information obtains the data packet; wherein the second notification information includes a logical channel number and a memory address of the data packet that the network device communicates with the virtual machine.
  • the memory address of the data packet in the second notification information exists in a standard form; wherein the standard form refers to a format agreed in advance with the virtual machine.
  • the interface of the first notification information transmission data is different according to the network device
  • a thirteenth aspect provides a data forwarding system, including: a host, a virtual machine, and a network device, where:
  • the host is configured to receive first notification information sent by the network device, where the first notification information includes a memory address of the data packet stored by the network device in the memory; and the relationship between the logical channel number and the communication entity
  • the mapping table acquires a virtual machine that communicates with the network device, where the logical channel number is a logical channel number that the network device communicates with the virtual machine; and the second notification information is obtained according to the first notification information;
  • the second notification information includes the logical channel number and a memory address of the data packet; sending the second notification information to the virtual machine, so that the virtual machine is obtained according to a memory address of the data packet.
  • the data packet wherein the virtual machine receives the second notification information by using a connection module on the virtual machine;
  • the network device configured to send the data packet to the host and the data
  • the package is stored in memory
  • the virtual machine is configured to receive, by using a connection module on the virtual machine, second notification information that is sent by the host, where the second notification information is obtained according to the first notification information, including the network device and the virtual machine. a logical channel number of the communication and a memory address of the data packet; the first notification information is sent by the network device to the host, and includes a memory address of the data packet that is stored in the memory by the network device; The memory address of the data packet is obtained in memory.
  • the host is further configured to parse the first notification information to obtain a memory address of the data packet; convert a form of a memory address of the data packet into a standard form; according to the memory of the data packet converted into a standard form
  • the second notification information is obtained by the address and the logical channel number.
  • the memory address of the data packet in the second notification information exists in a standard form; wherein the standard form refers to a format agreed in advance with the virtual machine.
  • the relationship map between the logical channel number and the communication entity can be updated in real time according to the change of the communication entity.
  • the interface of the first notification information transmission data is different according to the network device
  • a data forwarding system including: a host, a virtual machine, and a network device, where:
  • the virtual machine is configured to store a data packet into the memory, and send, by using a connection module on the virtual machine, second notification information to the host, so that the host is configured according to the second
  • the notification information is obtained by the first notification information, and is sent to the network device, so that the network device obtains the data packet according to the first notification information, where the second notification information includes the network device and the virtual machine
  • the host is configured to receive second notification information that is sent by the virtual machine, where the second notification information includes a logical channel number and a memory address of a data packet that is stored in the virtual machine by the virtual machine; a logical channel number of the virtual machine communicating with the network device; the virtual machine sending the second notification information by using a connection module on the virtual machine; acquiring according to the relationship between the logical channel number and the communication entity a network device that communicates with the virtual machine; obtaining first notification information according to the second notification information; wherein, the first notification information includes a memory address of the data packet; and sending the first notification information to the a network device, so that the network device obtains the data packet according to a memory address of the data packet;
  • the network device is configured to receive first notification information sent by the host, and obtain the data packet according to a memory address of the data packet.
  • the host is further configured to parse the second notification information to obtain a memory address of the data packet; convert a format of the memory address of the data packet into a format that the network device can recognize; according to the converted data
  • the first notification information is obtained by the memory address of the packet.
  • the memory address of the data packet in the second notification information exists in a standard form; wherein the standard form refers to a format agreed in advance with the virtual machine.
  • the relationship map between the logical channel number and the communication entity can be updated in real time according to the change of the communication entity.
  • the interface of the first notification information transmission data is different according to the network device
  • the form of the interface of the second notification information transmission data is the standard form.
  • the data forwarding method, device and system provided by the embodiment of the present invention convert the form of the memory address of the information sent by the network device into a standard form, and send the memory address of the standard form information to the application on the virtual machine. It solves the problem of large loss when the application in the virtual machine communicates with the physical machine, and at the same time improves work efficiency and is convenient to operate.
  • FIG. 1 is a schematic flow chart of a data forwarding method according to an embodiment of the present invention.
  • FIG. 2 is a schematic flow chart of another data forwarding method according to an embodiment of the present invention.
  • FIG. 3 is a schematic flow chart of still another data forwarding method according to an embodiment of the present invention.
  • FIG. 4 is a schematic flowchart of a data forwarding method according to another embodiment of the present invention.
  • FIG. 5 is a schematic flowchart of another data forwarding method according to another embodiment of the present invention.
  • FIG. 6 is a schematic flowchart of still another data forwarding method according to another embodiment of the present invention.
  • FIG. 7 is a schematic structural diagram of a host according to an embodiment of the present invention
  • FIG. 8 is a schematic structural diagram of another host according to an embodiment of the present invention
  • FIG. 9 is a schematic structural diagram of a virtual machine according to an embodiment of the present invention
  • FIG. FIG. 1 is a schematic structural diagram of another host according to another embodiment of the present invention
  • FIG. 12 is a schematic structural diagram of another virtual machine according to an embodiment of the present invention
  • FIG. 14 is a schematic structural diagram of another virtual machine according to an embodiment of the present invention
  • FIG. 15 is a schematic structural diagram of another host according to another embodiment of the present invention
  • FIG. 16 is a schematic structural diagram of a virtual machine according to another embodiment of the present invention
  • FIG. 17 is a schematic structural diagram of a data forwarding system according to an embodiment of the present invention
  • FIG. 18 is a schematic structural diagram of another data forwarding system according to an embodiment of the present invention. detailed description
  • An embodiment of the present invention provides a data forwarding method, which is applied to a process in which hardware on a physical machine sends information to an application on a virtual machine.
  • the method includes the following steps:
  • the host receives the first notification information sent by the network device.
  • the first notification information includes a memory address of a data packet stored by the network device in the memory.
  • the host acquires a virtual machine that communicates with the network device according to the relationship table between the logical channel number and the communication entity.
  • the logical channel number is a logical channel number in which the network device communicates with the virtual machine. 103.
  • the host obtains the second notification information according to the first notification information.
  • the second notification information includes the logical channel number and a memory address of the data packet.
  • the host sends the second notification information to the virtual machine, so that the virtual machine obtains the data packet according to the memory address of the data packet.
  • the virtual machine receives the second notification information through a connection module on the virtual machine.
  • the data forwarding method provided by the embodiment of the present invention converts the form of the memory address of the information sent by the network device into a standard form, and sends the standard form of the letter, the memory address of the standard form to the application on the virtual machine, to solve When the application in the virtual machine communicates with the physical machine, the loss is large, and the work efficiency is improved and the operation is convenient.
  • Embodiments of the present invention provide a data forwarding method, which is applied to a process in which hardware on a physical machine sends information to an application on a virtual machine. Referring to FIG. 2, the following steps are included:
  • the virtual machine receives the second notification information sent by the host by using a connection module on the virtual machine.
  • the second notification information is obtained according to the first notification information, and includes a logical channel number of the host and the virtual machine and a memory address of the data packet.
  • the first notification information is sent by the network device to the host, including network device storage.
  • the memory address of the packet in memory.
  • the virtual machine acquires a data packet in the memory according to the memory address of the data packet.
  • the data forwarding method provided by the embodiment of the present invention converts the form of the memory address of the information sent by the network device into a standard form, and sends the standard form of the letter, the memory address of the standard form to the application on the virtual machine, to solve When the application in the virtual machine communicates with the physical machine, the loss is large, and the work efficiency is improved and the operation is convenient.
  • the embodiment of the present invention provides a data forwarding method. When the hardware applied to the physical machine sends information to the application on the virtual machine, as shown in FIG. 3, the following steps are included:
  • the host receives the first notification information sent by the network device.
  • the first notification information includes a memory address of the data packet that the network device stores in the memory.
  • the network device needs to send the data packet to the application on the virtual machine, and the network device needs to store the data packet in the memory, and then send the address of the data packet to the virtual machine, and the virtual machine obtains the location according to the received address.
  • the required data packet since different network devices have their own address formats, if the network device changes, the corresponding virtual machine needs to re-recognize the new format, which is troublesome to operate. Therefore, in this embodiment, the address of the data packet is first carried in the first notification information and sent to the host.
  • the first notification information may further include information such as the number of data packets, and the format of the first data packet varies according to the network device.
  • the network device is a physical network card.
  • the host acquires a virtual machine that communicates with the network device according to the relationship table between the logical channel number and the communication entity.
  • the logical channel number is a logical channel number in which the network device communicates with the virtual machine.
  • the relationship table between the logical channel number and the communication entity can be updated in real time according to the change of the communication entity.
  • the logical channel number needs to be obtained from the host in advance.
  • the host allows the communication, the corresponding content is added in the relationship mapping table between the logical channel number and the communication entity. And tell both parties a logical channel number. Then, the relationship table between the logical channel number and the communication entity is continuously updated according to the changes of the mutual communication.
  • the host parses the first notification information to obtain a memory address of the data packet.
  • the host converts the form of the memory address of the data packet into a standard form.
  • the host obtains the second notification information according to the memory address and the logical channel number of the data packet converted into the standard form.
  • the second notification information includes a logical channel number of the network device and the virtual machine and a memory address of the data packet.
  • the memory address of the data packet in the second notification information exists in a standard form, which refers to a format agreed in advance with the virtual machine. Specifically, the host converts the first notification information into the second notification information by using the softswitch center on the host, so that the application on the virtual machine can receive the data packet sent by any network device, thereby avoiding the coupling problem.
  • the host sends the second notification information to the virtual machine, so that the virtual machine obtains the data packet according to the memory address of the data packet.
  • the host sends the second notification information through the software switching center on the host.
  • the softswitch center is implemented by software.
  • the virtual machine receives the second notification information sent by the host by using a connection module on the virtual machine.
  • connection module on the virtual machine is implemented in the form of software.
  • the virtual machine acquires a data packet in the memory according to the memory address of the data packet.
  • the interface of the first notification information transmission data differs depending on the network device.
  • the form of the interface for transmitting information of the second notification information is a standard form.
  • the data packets acquired by the virtual machine are finally sent to the application on the virtual machine, and all operations on the host are implemented by the softswitch center on the host. Since different network devices generate different formats of the first notification information, the softswitch center running on the host needs to have an adaptation function to adapt to different hardware differences. Meanwhile, the format of the second notification information is a standard format agreed in advance with the virtual machine, and the application on the virtual machine can process the second notification without any modification as long as the host converts the first notification information into the second notification information. Information, without the problem of coupling with network devices. A virtual machine can be migrated from one physical machine to another without any changes to the software in the virtual machine.
  • the data forwarding method provided by the embodiment of the present invention converts the form of the memory address of the information sent by the network device into a standard form, and sends the standard form of the letter, the memory address of the standard form to the application on the virtual machine, to solve When the application in the virtual machine communicates with the physical machine, the loss is large, and the work efficiency is improved and the operation is convenient.
  • An embodiment of the present invention provides a data forwarding method, which is applied to a process in which an application on a virtual machine sends a data packet to a network device, as shown in FIG. Next steps:
  • the host receives the second notification information sent by the virtual machine.
  • the second notification information includes a logical channel number and a memory address of the data packet stored in the virtual machine by the virtual machine; the logical channel number is a logical channel number of the virtual machine communicating with the network device; the virtual machine is sent through the connection module on the virtual machine.
  • the second notification message includes a logical channel number and a memory address of the data packet stored in the virtual machine by the virtual machine; the logical channel number is a logical channel number of the virtual machine communicating with the network device; the virtual machine is sent through the connection module on the virtual machine.
  • the host acquires a network device that communicates with the virtual machine according to a relationship table between the logical channel number and the communication entity.
  • the host obtains the first notification information according to the second notification information.
  • the first notification information includes a memory address of the data packet.
  • the host sends the first notification information to the network device, so that the network device obtains the data packet according to the memory address of the data packet.
  • the data forwarding method provided by the embodiment of the present invention converts the form of the memory address of the information sent by the network device into a standard form, and sends the standard form of the letter, the memory address of the standard form to the application on the virtual machine, to solve When the application in the virtual machine communicates with the physical machine, the loss is large, and the work efficiency is improved and the operation is convenient.
  • An embodiment of the present invention provides a data forwarding method. When an application on a virtual machine sends a data packet to a network device, as shown in FIG. 5, the method includes the following steps:
  • the virtual machine stores the data packet into the memory.
  • the virtual machine sends the second notification information to the host by using the connection module on the virtual machine, so that the host obtains the first notification information according to the second notification information, and sends the information to the network device, so that the network device obtains the data packet according to the first notification information.
  • the second notification information includes a logical channel number of the network device and the virtual machine and a memory address of the data packet.
  • the data forwarding method provided by the embodiment of the present invention converts the form of the memory address of the information sent by the network device into a standard form, and sends the standard form of the letter, the memory address of the standard form to the application on the virtual machine, to solve When the application in the virtual machine communicates with the physical machine, the loss is large, and the work efficiency is improved and the operation is convenient.
  • An embodiment of the present invention provides a data forwarding method. In the process of sending a data packet to a network device by an application on a virtual machine, as shown in FIG. 6, the method includes the following steps: 601. The virtual machine stores a data packet into the memory.
  • the virtual machine sends the second notification information to the host by using a connection module on the virtual machine.
  • the second notification information includes a logical channel number and a memory address of the data packet stored by the virtual machine in the memory; the logical channel number is a logical channel number of the virtual machine communicating with the network device.
  • the memory address of the data packet in the second notification information exists in a standard form; wherein the standard form refers to a format agreed in advance with the virtual machine.
  • connection module on the virtual machine is implemented by software, and is used to communicate with the host through a softswitch center on the host, and the softswitch center is also implemented by software.
  • the host receives the second notification information sent by the virtual machine.
  • the host acquires a network device that communicates with the virtual machine according to a relationship table between the logical channel number and the communication entity.
  • the relationship table between the logical channel number and the communication entity can be updated in real time according to the change of the communication entity.
  • the logical channel number needs to be obtained from the host in advance.
  • the host allows the communication, the corresponding content is added in the relationship mapping table between the logical channel number and the communication entity. And tell both parties a logical channel number. Then, the relationship table between the logical channel number and the communication entity is continuously updated according to the changes of the mutual communication.
  • the host parses the second notification information to obtain a memory address of the data packet.
  • the host converts the form of the memory address of the data packet into a form that the network device can recognize.
  • the host obtains the first notification information according to the memory address of the converted data packet.
  • the first notification information includes a memory address of the data packet.
  • the host converts the second notification information into a softswitch center on the host by using The first notification information, so that the network device can receive the data packet sent by the application on the virtual machine to avoid the coupling problem.
  • Different network devices can only recognize the same information as their own format.
  • the host sends the first notification information to the network device, so that the network device obtains the data packet according to the memory address of the data packet.
  • the interface of the first notification information transmission data differs depending on the network device.
  • the form of the interface for transmitting information of the second notification information is a standard form.
  • the data packet sent by the virtual machine is provided by an application on the virtual machine, and all operations on the host are performed by software switching on the host.
  • All operations on the host are performed by software switching on the host.
  • the data forwarding method provided by the embodiment of the present invention converts the form of the memory address of the information sent by the network device into a standard form, and sends the standard form of the letter, the memory address of the standard form to the application on the virtual machine, to solve
  • the application in the virtual machine communicates with the physical machine, the loss is large, and the work efficiency is improved and the operation is convenient.
  • the communication between the application on the virtual machine and the physical device in the foregoing embodiment further includes the case where the application on the plurality of virtual machines communicates with the plurality of physical devices, and the specific operation method is the same as one of the foregoing embodiments.
  • the process of the application on the virtual machine is the same as the method of communicating with one physical device, and will not be described here.
  • the system of the present invention can be extended to perform communication between different network devices in a similar manner.
  • the network device only needs to send the first notification information to the host, and the host needs to convert the first notification information into notification information in a form recognizable by another network device, and send the information to another network device.
  • It can also be extended to communicate between different applications on the virtual machine: At this point, the host does not need to perform any operations, only need to forward the second notification information sent by the application on the virtual machine to another application. can. It can also be extended to communicate between different virtual machines. It can also be extended to the communication between the application on the host and the network device.
  • the first notification information corresponds to the plurality of second notification information
  • the second notification information corresponds to the plurality of first notification information
  • the second notification information corresponds to the plurality of application programs
  • the one application program can correspond to the plurality of second notification information.
  • An embodiment of the present invention provides a host 7. Referring to FIG. 7, the host includes: a receiving unit 71, an obtaining unit 72, and a sending unit 73, where:
  • the receiving unit 7 1 is configured to receive first notification information sent by the network device.
  • the first notification information includes a memory address of a data packet stored by the network device in the memory.
  • the obtaining unit 72 is configured to obtain a virtual machine that communicates with the network device according to the relationship table between the logical channel number and the communication entity.
  • the logical channel number is the logical channel number of the host communicating with the virtual machine.
  • the obtaining unit 72 is further configured to obtain the second notification information according to the first notification information received by the receiving unit 71.
  • the second notification information includes a logical channel number and a memory address of the data packet.
  • the sending unit 73 is configured to send the second notification information acquired by the obtaining unit 72 to the virtual machine, so that the virtual machine obtains the data packet according to the memory address of the data packet.
  • the virtual machine receives the second notification information through a software module on the virtual machine.
  • the host provided by the embodiment of the present invention solves the problem in the virtual machine by converting the form of the memory address of the information sent by the network device into a standard form, and sending the memory address of the standard form information to the application on the virtual machine.
  • the application consumes a large problem when communicating with the physical machine, and at the same time improves work efficiency and is easy to operate.
  • the obtaining unit 72 includes: a parsing module 721, a converting module 722, and an obtaining module 723, where:
  • the parsing module 721 is configured to parse the first notification information to obtain a memory address of the data packet.
  • the conversion module 722 is configured to convert the form of the memory address of the data packet obtained by the parsing module 721 into a standard form.
  • the obtaining module 723 is configured to obtain second notification information according to the memory address and the logical channel number of the data packet converted by the conversion module 722 into a standard form.
  • the memory address of the data packet in the second notification information exists in a standard form; wherein the standard form refers to a format agreed in advance with the virtual machine.
  • the relationship table between the logical channel number and the communication entity can be updated in real time according to the change of the communication entity.
  • the interface of the first notification information transmission data differs depending on the network device.
  • the form of the interface for transmitting information of the second notification information is a standard form.
  • the host provided by the embodiment of the present invention solves the problem in the virtual machine by converting the form of the memory address of the information sent by the network device into a standard form, and sending the memory address of the standard form information to the application on the virtual machine.
  • the application consumes a large problem when communicating with the physical machine, and at the same time improves work efficiency and is easy to operate.
  • An embodiment of the present invention provides a virtual machine 8. Referring to FIG. 9, the virtual machine includes: a receiving unit 81 and an obtaining unit 82, where:
  • the receiving unit 8 1 is configured to receive, by using a software module on the virtual machine, the second notification information sent by the host.
  • the second notification information is obtained according to the first notification information, and includes a logical channel number of the host and the virtual machine and a memory address of the data packet.
  • the first notification information is sent by the network device to the host, where the network device is stored in the memory.
  • the memory address of the packet in .
  • the obtaining unit 82 is configured to obtain a data packet in the memory according to the memory address of the data packet received by the receiving unit 81.
  • the memory address of the data packet in the second notification information exists in a standard form; wherein the standard form refers to a format agreed in advance with the virtual machine.
  • the interface of the first notification information transmission data differs depending on the network device.
  • the form of the interface for transmitting information of the second notification information is a standard form.
  • the virtual machine provided by the embodiment of the present invention converts the form of the memory address of the information sent by the network device into a standard form, and stores the information in the standard form.
  • the application sent to the virtual machine solves the problem of large loss in the communication between the application and the physical machine in the virtual machine, and improves the work efficiency and the operation convenience.
  • An embodiment of the present invention provides a host 9, which is shown in FIG. 10, and includes: a receiving unit 91, an obtaining unit 92, and a sending unit 93, where:
  • the receiving unit 91 is configured to receive second notification information sent by the virtual machine.
  • the second notification information includes a logical channel number and a memory address of the data packet stored in the virtual machine by the virtual machine; the logical channel number is a logical channel number of the virtual machine communicating with the network device; the virtual machine is sent through the connection module on the virtual machine.
  • the second notification message includes a logical channel number and a memory address of the data packet stored in the virtual machine by the virtual machine; the logical channel number is a logical channel number of the virtual machine communicating with the network device; the virtual machine is sent through the connection module on the virtual machine.
  • the obtaining unit 92 is configured to obtain a network device that communicates with the virtual machine according to the relationship table between the logical channel number and the communication entity.
  • the obtaining unit 92 is further configured to obtain the first notification information according to the second notification information received by the receiving unit 91.
  • the first notification information includes a memory address of the data packet.
  • the sending unit 93 is configured to send the first notification information to the network device acquired by the obtaining unit 92, so that the network device obtains the data packet according to the memory address of the data packet.
  • the obtaining unit 92 includes: a parsing module 921, a converting module 922, and an obtaining module 923, where:
  • the parsing module 921 is configured to parse the second notification information to obtain a memory address of the data packet.
  • the conversion module 922 is configured to convert the form of the memory address of the datagram obtained by the parsing module 921 into a form recognizable by the network device.
  • the obtaining module 923 is configured to obtain the first notification information according to the memory address of the data packet converted by the conversion module 922.
  • the memory address of the data packet in the second notification information exists in a standard form; wherein the standard form refers to a format agreed in advance with the virtual machine.
  • the relationship table between the logical channel number and the communication entity can be updated in real time according to the change of the communication entity.
  • the interface of the first notification information transmission data differs depending on the network device.
  • the form of the interface for transmitting information of the second notification information is a standard form.
  • the host provided by the embodiment of the present invention solves the problem in the virtual machine by converting the form of the memory address of the information sent by the network device into a standard form, and sending the memory address of the standard form information to the application on the virtual machine.
  • the application consumes a large problem when communicating with the physical machine, and at the same time improves work efficiency and is easy to operate.
  • An embodiment of the present invention provides a virtual machine 10, as shown in FIG. 12, including: a processing unit 1001 and a sending unit 1002, where:
  • the processing unit 1001 is configured to store the data packet into the memory.
  • the sending unit 1002 is configured to send the second notification information to the host by using the connection module on the virtual machine, so that the host obtains the first notification information according to the second notification information, and sends the information to the network device, so that the network device obtains the data according to the first notification information. package.
  • the second notification information includes a logical channel number of the network device and the virtual machine and a memory address of the data packet.
  • the memory address of the data packet in the second notification information exists in a standard form; wherein the standard form refers to a format agreed in advance with the virtual machine.
  • the interface of the first notification information transmission data differs depending on the network device.
  • the form of the interface for transmitting information of the second notification information is a standard form.
  • the virtual machine provided by the embodiment of the present invention solves the virtual machine by converting the form of the memory address of the information sent by the network device into a standard form, and transmitting the memory address of the standard form information to the application on the virtual machine.
  • the application in the communication with the physical machine consumes a large problem, and at the same time, the work efficiency is improved and the operation is convenient.
  • An embodiment of the present invention provides a host 11, which is shown in FIG. 13, and includes: at least one processor 1101, a memory 1102, a communication interface 1103, and a bus 1104. At least one processor 1101, a memory 1102, and a communication interface 1103 pass through a bus 1104.
  • the memory 1102 is configured to store program code, where: the bus 1104 can be an Industry Standard Architecture (ISA) bus, and a Peripheral Component Interconnect (referred to as PCI) bus or extended industry standard architecture ( Extended Industry Standard Architecture, referred to as EISA) bus.
  • ISA Industry Standard Architecture
  • PCI Peripheral Component Interconnect
  • EISA Extended Industry Standard Architecture
  • the bus 1104 can be divided into an address bus, a data bus, a control bus, and the like. For ease of representation, only one thick line is shown in Figure 13, but it does not mean that there is only one bus or one type of bus. Its towel:
  • the memory 1102 is for storing program code, the program code including an operation instruction.
  • Memory 1102 may include high speed RAM memory and may also include non-volatile memory, such as at least one disk storage device.
  • the processor 1101 may be a central processing unit (CPU), or an application specific integrated circuit (ASIC), or one or more configured to implement the embodiments of the present invention. integrated circuit.
  • CPU central processing unit
  • ASIC application specific integrated circuit
  • the communication interface 1103 is mainly used to implement communication between devices in this embodiment.
  • the processor 1101 is further configured to call the program code in the memory 1102 to perform the following operations:
  • the first notification information includes a memory address of a data packet stored by the network device in the memory.
  • the logical channel number is a logical channel number that the host communicates with the virtual machine.
  • the second notification information is obtained according to the first notification information.
  • the second notification information includes a logical channel number and a memory address of the data packet.
  • the second notification message is sent to the virtual machine, so that the virtual machine obtains the data packet according to the memory address of the data packet.
  • the virtual machine receives the second notification information through a software module on the virtual machine.
  • the processor 1101 is specifically configured to perform the following operations:
  • the first notification information is parsed to obtain the memory address of the data packet.
  • the second notification information is obtained according to the memory address and the logical channel number of the data packet converted into the standard form.
  • the memory address of the data packet in the second notification information exists in a standard form; wherein the standard form refers to a format agreed in advance with the virtual machine.
  • the relationship table between the logical channel number and the communication entity can be updated in real time according to the change of the communication entity.
  • the interface of the first notification information transmission data differs depending on the network device.
  • the form of the interface for transmitting information of the second notification information is a standard form.
  • the host provided by the embodiment of the present invention solves the problem in the virtual machine by converting the form of the memory address of the information sent by the network device into a standard form, and sending the memory address of the standard form information to the application on the virtual machine.
  • the application consumes a large problem when communicating with the physical machine, and at the same time improves work efficiency and is easy to operate.
  • An embodiment of the present invention provides a virtual machine 12, as shown in FIG. 14, comprising: at least one processor 1201, a memory 1202, a communication interface 1203, and a bus 1204. At least one processor 1201, a memory 1202, and a communication interface 1203 pass through a bus.
  • the bus 1204 connects and completes communication with each other, and the memory 1202 is configured to store program code
  • the bus 1204 may be an Industry Standard Architecture (ISA) bus, and a Peripheral Component Interconnect (abbreviation). For PCI) bus or extended industry standard architecture (EISA) bus.
  • ISA Industry Standard Architecture
  • EISA extended industry standard architecture
  • the bus 1204 can be divided into an address bus, a data bus, a control bus, and the like. For ease of representation, only one thick line is shown in Figure 14, but it does not mean that there is only one bus or one type of bus. Its towel:
  • the memory 1202 is for storing program code, the program code including an operation instruction.
  • Memory 1202 may include high speed RAM memory and may also include non-volatile memory, such as at least one disk storage device.
  • the processor 1201 may be a central processing unit (CPU), or an application specific integrated circuit (ASIC), or one or more configured to implement the embodiments of the present invention. integrated circuit.
  • the communication interface 1203 is mainly used to implement communication between devices in this embodiment.
  • the processor 1201 is further configured to call the program code in the memory 1202 to perform the following operations:
  • the second notification information sent by the host is received by the software module on the virtual machine.
  • the second notification information is obtained according to the first notification information, and includes a logical channel number of the host and the virtual machine and a memory address of the data packet.
  • the first notification information is sent by the network device to the host, where the network device is stored in the memory.
  • the memory address of the packet in .
  • the memory address of the data packet in the second notification information exists in a standard form; wherein the standard form refers to a format agreed in advance with the virtual machine.
  • the interface of the first notification information transmission data differs depending on the network device.
  • the form of the interface for transmitting information of the second notification information is a standard form.
  • the virtual machine provided by the embodiment of the present invention solves the virtual machine by converting the form of the memory address of the information sent by the network device into a standard form, and transmitting the memory address of the standard form information to the application on the virtual machine.
  • the application in the communication with the physical machine consumes a large problem, and at the same time, the work efficiency is improved and the operation is convenient.
  • An embodiment of the present invention provides a host 13, which is shown in FIG. 15, and includes: at least one processor 1301, a memory 1302, a communication interface 1303, and a bus 1304. At least one processor 1301, a memory 1302, and a communication interface 1303 pass through a bus 1304.
  • the memory 1302 is configured to store program code, where: the bus 1304 may be an Industry Standard Architecture (ISA) bus, and a Peripheral Component Interconnect (abbreviated as PCI) bus or extended industry standard architecture (EISA) bus.
  • the bus 1304 can be divided into an address bus, a data bus, a control bus, and the like. For ease of representation, only one thick line is shown in Figure 15, but it does not mean that there is only one bus or one type of bus. Its towel:
  • the memory 1302 is for storing program code, and the program code includes an operation instruction.
  • the memory 1302 may include a high speed RAM memory, and may also include a non-volatile memory such as at least one disk memory.
  • the processor 1301 may be a central processing unit (CPU), or an application specific integrated circuit (ASIC), or a communication interface 1303 configured to implement the embodiment of the present invention. It is mainly used to implement communication between devices in this embodiment.
  • the processor 1301 is further configured to call the program code in the memory 1302 to perform the following operations:
  • the second notification information includes a logical channel number and a memory address of the data packet stored in the virtual machine by the virtual machine; the logical channel number is a logical channel number of the virtual machine communicating with the network device; the virtual machine is sent through the connection module on the virtual machine.
  • the second notification message includes a logical channel number and a memory address of the data packet stored in the virtual machine by the virtual machine; the logical channel number is a logical channel number of the virtual machine communicating with the network device; the virtual machine is sent through the connection module on the virtual machine.
  • the first notification information is obtained according to the second notification information.
  • the first notification information includes a memory address of the data packet.
  • the first notification message is sent to the network device, so that the network device obtains the data packet according to the memory address of the data packet.
  • processor 1301 is specifically configured to perform the following steps:
  • the second notification information is parsed to obtain the memory address of the data packet.
  • the first notification information is obtained according to the memory address of the converted data packet.
  • the memory address of the data packet in the second notification information exists in a standard form.
  • the standard form refers to the format agreed with the virtual machine in advance.
  • the relationship table between the logical channel number and the communication entity can be updated in real time according to the change of the communication entity.
  • the interface of the first notification information transmission data differs depending on the network device.
  • the form of the interface for transmitting information of the second notification information is a standard form.
  • An embodiment of the present invention provides a virtual machine 14, which is shown in FIG. 16, and includes: at least one processor 1401, a memory 1402, a communication interface 1403, and a bus 1404. At least one processor 1401, a memory 1402, and a communication interface 1403 pass through a bus.
  • the bus 1404 connects and completes communication with each other, and the memory 1402 is configured to store program code
  • the bus 1404 can be an Industry Standard Architecture (ISA) bus, and a Peripheral Component Interconnect (abbreviation). For PCI) bus or extended industry standard architecture (EISA) bus.
  • ISA Industry Standard Architecture
  • EISA extended industry standard architecture
  • the bus 1404 can be divided into an address bus, a data bus, a control bus, and the like. For ease of representation, only one thick line is shown in Figure 16, but it does not mean that there is only one bus or one type of bus. Its towel:
  • the memory 1402 is for storing program code, the program code including an operation instruction.
  • Memory 1302 may include high speed RAM memory and may also include non-volatile memory, such as at least one disk storage device.
  • the processor 1401 may be a central processing unit (CPU), or an application specific integrated circuit (ASIC), or one or more configured to implement the embodiments of the present invention. integrated circuit.
  • CPU central processing unit
  • ASIC application specific integrated circuit
  • the communication interface 1403 is mainly used to implement communication between devices in this embodiment.
  • the processor 1401 is further configured to call the program code in the memory 1402 to perform the following operations:
  • the machine obtains the first notification information according to the second notification information, and sends the information to the network device, so that the network device obtains the data packet according to the first notification information.
  • the second notification information includes a logical channel number of the network device and the virtual machine and a memory address of the data packet.
  • the memory address of the data packet in the second notification message exists in a standard form.
  • the standard form refers to the format agreed with the virtual machine in advance.
  • the interface of the first notification information transmission data differs depending on the network device.
  • the form of the interface for transmitting information of the second notification information is a standard form.
  • the virtual machine provided by the embodiment of the present invention solves the virtual machine by converting the form of the memory address of the information sent by the network device into a standard form, and transmitting the memory address of the standard form information to the application on the virtual machine.
  • the application in the communication with the physical machine consumes a large problem, and at the same time, the work efficiency is improved and the operation is convenient.
  • An embodiment of the present invention provides a data forwarding system, as shown in FIG. 17, including: a host a, a virtual machine b, and a network device c, where:
  • the network device c is configured to send the first notification information to the host a and store the data in the memory.
  • the host a is configured to receive the first notification information sent by the network device c, where the first notification information includes a memory address of the data packet stored by the network device c in the memory; and the mapping table is obtained according to the relationship between the logical channel number and the communication entity.
  • the logical channel number is a logical channel number that the network device c communicates with the virtual machine b; and the second notification information is obtained according to the first notification information; wherein the second notification information includes a logical channel number and The memory address of the data packet is sent to the virtual machine b, so that the virtual machine b obtains the data packet according to the memory address of the data packet; wherein the virtual machine b receives the second notification information through the connection module on the virtual machine b. of.
  • the virtual machine b is configured to receive the second notification information sent by the host by using the connection module on the virtual machine, where the second notification information is obtained according to the first notification information, including the network device communicating with the virtual machine The logical channel number and the memory address of the data packet; the first notification information is sent by the network device to the host, including And storing, by the network device, a memory address of the data packet in a memory; acquiring the data packet in a memory according to a memory address of the data packet.
  • the host a is further configured to parse the first notification information to obtain a memory address of the data packet; convert the form of the memory address of the data packet into a standard form; obtain the memory address and the logical channel number of the data packet converted into the standard form Second notification message.
  • the memory address of the data packet in the second notification information exists in a standard form; wherein the standard form refers to a format agreed in advance with the virtual machine b.
  • the relationship table between the logical channel number and the communication entity can be updated in real time according to the change of the communication entity.
  • the interface of the first notification information transmission data differs according to the network device.
  • the interface of the second notification information transmission data is in a standard form.
  • the data forwarding system converts the form of the memory address of the information sent by the network device into a standard form, and sends the standard form of the letter, the memory address of the standard to the application on the virtual machine, to solve When the application in the virtual machine communicates with the physical machine, the loss is large, and the work efficiency is improved and the operation is convenient.
  • An embodiment of the present invention provides a data forwarding system, as shown in FIG. 18, including: a host d, a virtual machine e, and a network device f, where:
  • the virtual machine e is configured to store the data packet into the memory; send the second notification information to the host d through the connection module on the virtual machine e, so that the host d obtains the first notification information according to the second notification information, and sends the first notification information to the network device.
  • the network device f obtains the data packet according to the first notification information.
  • the second notification information includes the logical channel number of the network device f and the virtual machine e and the memory address of the data packet.
  • the host d is configured to receive the second notification information sent by the virtual machine e.
  • the second notification information includes a logical channel number and a memory address of the data packet stored in the virtual machine e in the memory; the logical channel number is a virtual machine and a network device.
  • the logical channel number of the communication; the virtual machine e sends the second notification information through the connection module on the virtual machine e; acquires the network device that communicates with the virtual machine according to the relationship table between the logical channel number and the communication entity; according to the second notification information Obtaining first notification information; wherein the first notification information includes a data packet The memory address; sending the first notification information to the network device f, so that the network device f obtains the data packet according to the memory address of the data packet.
  • the network device f is configured to receive the first notification information sent by the host d, and obtain the data packet according to the memory address of the data packet in the first notification information.
  • the host d is further configured to parse the second notification information to obtain a memory address of the data packet; convert the format of the memory address of the data packet into a format that the network device can recognize; and obtain the first notification according to the memory address of the converted data packet. information.
  • the memory address of the data packet in the second notification information exists in a standard form; wherein the standard form refers to a format agreed in advance with the virtual machine e.
  • the relationship table between the logical channel number and the communication entity can be updated in real time according to the change of the communication entity.
  • the interface of the first notification information transmission data differs depending on the network device f.
  • the form of the interface for transmitting information of the second notification information is a standard form.
  • the data forwarding system converts the form of the memory address of the information sent by the network device into a standard form, and sends the standard form of the letter, the memory address of the standard to the application on the virtual machine, to solve
  • the application in the virtual machine communicates with the physical machine, the loss is large, and the work efficiency is improved and the operation is convenient.
  • the disclosed system, apparatus, and method may be implemented in other manners.
  • the device embodiments described above are merely illustrative.
  • the division of the modules or units is only a logical function division.
  • there may be another division manner for example, multiple units or components may be used. Combined or can be integrated into another system, or some features can be ignored, or not executed.
  • Another point, the mutual coupling or direct coupling shown or discussed The or communication connection may be an indirect coupling or communication connection through some interface, device or unit, and may be in electrical, mechanical or other form.
  • the units described as separate components may or may not be physically separated, and the components displayed as the units may or may not be physical units, and may be located in one place or may be distributed to multiple network units. Some or all of the units may be selected according to actual needs to achieve the objectives of the embodiment of the present embodiment.
  • each functional unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit.
  • the above integrated unit can be implemented in the form of hardware or in the form of a software functional unit.

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

The present invention relates to the technical field of communications, solves the problem that the loss is great when an application in a virtual machine communicates with a physical machine. Provided are a data forwarding method, device and system. The method specifically comprises: a host receives first notification information sent by network equipment, the first notification information comprising a memory address of a packet of the network equipment stored in a memory; according to a mapping table of the relationship between a logical channel number and a communication entity, a virtual machine that communicates with the network equipment is obtained, the logical channel number being a logical channel number that the network equipment communicates with the virtual machine; according to the first notification information, second notification information is obtained, the second notification information comprising the logical channel number and the memory address of the packet; and the second notification information is sent to the virtual machine, so that the virtual machine obtains the packet according to the memory address of the packet, the virtual machine receiving the second notification information through a connection module on the virtual machine. The present invention is used in data transmission.

Description

一种数据转发方法、 装置及系统 技术领域  Data forwarding method, device and system
本发明涉及通讯技术领域, 尤其涉及一种数据转发方法、 装置 及系统。 背景技术  The present invention relates to the field of communications technologies, and in particular, to a data forwarding method, apparatus, and system. Background technique
虚拟化技术 ( Virtualization ) 使用软件技术在一台物理计算机 上模拟产生多个虚拟计算机( Virtual Machine , 简称 VM ) , 每个 VM 可以和物理计算机一样安装操作系统、 安装应用软件、 运行各种程 序。 多个 VM可以同时在一台物理计算机上运行, 互相之间不感知 对方, 彼此隔离, 只能通过网络互相通讯, 就如同两台物理计算机 一样。 多个 VM的性能总和不超过其所在的物理计算机。  Virtualization software uses software technology to simulate the creation of multiple virtual machines (VMs) on a single physical computer. Each VM can be installed with the operating system, installed application software, and runs various programs as a physical computer. Multiple VMs can run on a single physical computer at the same time. They don't perceive each other, are isolated from each other, and can communicate with each other only through the network, just like two physical computers. The combined performance of multiple VMs does not exceed the physical computer on which they reside.
在虚拟化技术中, 一台物理计算机上模拟多个 VM的软件叫虚 拟监控器 ( Virtual Machine Monitor , 简称 VMM )。 由于虚拟技术引 入了 VMM这一中间层, VM 内运行的应用程序的性质不同, 虚拟化 带来的性能损耗也不同。 进行大量 CPU运算的应用程序, 其在 VM 中运行时性能损失较小。 与外界进行大量输入 /输出 ( Input/Output , 简称 I/O ) 通讯的应用程序 (例如网络通讯或磁盘读写 ), 其在 VM 中运行时性能损失较大。 由于虚拟化技术能够带来更好的综合成本 优势, 无线通讯行业开始大规模釆用虚拟化技术。 但是在无线通讯 设备中, 应用程序往往需要进行大量的网络通讯, 有大量的数据吞 吐, 因此应用程序在 VM中的运行性能会大幅下降。  In virtualization technology, software that simulates multiple VMs on a single physical computer is called Virtual Machine Monitor (VMM). Since virtual technology introduces the middle layer of VMM, the nature of the applications running inside the VM is different, and the performance loss caused by virtualization is also different. An application that performs a large number of CPU operations with less performance loss when running in a VM. Applications that communicate with the outside world with a large number of input/output (I/O) communications (such as network communication or disk read and write) have a large performance penalty when running in a VM. As virtualization technology can bring better overall cost advantages, the wireless communications industry is beginning to adopt virtualization technology on a large scale. However, in wireless communication devices, applications often require a large amount of network communication and a large amount of data is swallowed, so the performance of the application in the VM is greatly reduced.
现有技术中是釆用标准虚拟化 I/O通讯机制通过 VM 内部和外 部的通讯两端的配合, 以高效的接口实现数据的交换, 简化了虚拟 硬件的模拟过程降低了 I/O 过程的损耗。 但是这种方案虽然降低了 损耗,但是损耗还是很大。现有技术中又引用单根 I/O虚拟化( Single Root I/O Virtualization , 简称 SR-IOV ) 硬件直通技术将物理计算机 上的硬件直接交给 VM使用而不是由 VMM虚拟出来的虚拟硬件。 这种技术中 VM 中的驱动程序可以直接驱动物理网卡, 进行收发包 操作。 VM直接使用物理硬件而旁路了 VMM的中间过程, 使得性能 损耗减至最小。 但是由于 VM 需要感知不同的物理硬件, 为不同的 硬件安装对应的驱动程序,硬件升级或变更时 VM也需要一同变动, 对 VM 的开发、 维护、 部署等产生较大影响, 使得工作效率降低, 实际操作起来也比较麻烦。 发明内容 In the prior art, the standard virtualized I/O communication mechanism is used to exchange data between the internal and external communication ends of the VM, and the data is exchanged with an efficient interface, which simplifies the simulation process of the virtual hardware and reduces the loss of the I/O process. . However, although this solution reduces the loss, the loss is still large. The prior art also refers to Single Root I/O Virtualization (SR-IOV). The hardware straight-through technology will be a physical computer. The hardware on it is handed over to the VM instead of the virtual hardware virtualized by the VMM. In this technology, the driver in the VM can directly drive the physical network card to perform packet transmission and reception operations. The VM bypasses the intermediate process of the VMM directly using physical hardware, minimizing performance loss. However, because VMs need to perceive different physical hardware and install corresponding drivers for different hardware, the VMs need to be changed together during hardware upgrade or change, which has a great impact on the development, maintenance, and deployment of VMs, resulting in reduced work efficiency. Actual operation is also more troublesome. Summary of the invention
本发明的实施例提供一种数据转发方法、 装置及系统, 解决了 虚拟机中的应用程序与物理机通信时损耗大问题, 同时提高了工作 效率, 操作方便。  Embodiments of the present invention provide a data forwarding method, apparatus, and system, which solve the problem of large loss in application communication between a virtual machine and a physical machine, and improve work efficiency and operation.
为达到上述目的, 本发明的实施例釆用如下技术方案:  In order to achieve the above object, embodiments of the present invention use the following technical solutions:
第一方面, 提供一种数据转发方法, 包括:  In a first aspect, a data forwarding method is provided, including:
主机接收网络设备发送的第一通知信息; 其中, 所述第一通知 信息中包括所述网络设备存储在内存中的数据包的内存地址;  Receiving, by the host, the first notification information sent by the network device, where the first notification information includes a memory address of the data packet stored by the network device in the memory;
根据逻辑通道号与通讯实体的关系映射表获取与所述网络设备 通信的虚拟机; 其中, 所述逻辑通道号是所述网络设备与所述虚拟 机通信的逻辑通道号;  Acquiring a virtual machine that communicates with the network device according to a relationship between a logical channel number and a communication entity; wherein the logical channel number is a logical channel number that the network device communicates with the virtual machine;
根据所述第一通知信息获得第二通知信息; 其中, 所述第二通 知信息包括所述逻辑通道号和所述数据包的内存地址;  Obtaining second notification information according to the first notification information, where the second notification information includes the logical channel number and a memory address of the data packet;
发送所述第二通知信息至所述虚拟机, 以便于所述虚拟机根据 所述数据包的内存地址获得所述数据包; 其中, 所述虚拟机是通过 所述虚拟机上的连接模块接收所述第二通知信息的。  Sending the second notification information to the virtual machine, so that the virtual machine obtains the data packet according to a memory address of the data packet; wherein the virtual machine is received by a connection module on the virtual machine The second notification information.
在第一种可能的实现方式中, 结合第一方面, 所述根据所述第 一通知信息获得第二通知信息, 包括:  In a first possible implementation, in combination with the first aspect, the obtaining the second notification information according to the first notification information includes:
解析所述第一通知信息获得所述数据包的内存地址;  Parsing the first notification information to obtain a memory address of the data packet;
将所述数据包的内存地址的形式转换为标准形式;  Converting the form of the memory address of the data packet to a standard form;
根据转换为标准形式的所述数据包的内存地址和所述逻辑通道 号获得所述第二通知信息。 a memory address of the data packet converted to a standard form and the logical channel The second notification information is obtained.
在第二种可能的实现方式中, 结合第一方面或第一种可能的实 现方式,  In a second possible implementation, in combination with the first aspect or the first possible implementation manner,
所述第二通知信息中的数据包的内存地址以标准形式存在; 其 中, 所述标准形式指的是预先与所述虚拟机约定的格式。  The memory address of the data packet in the second notification information exists in a standard form; wherein the standard form refers to a format agreed in advance with the virtual machine.
在第三种可能的实现方式中, 结合第一方面或第一种可能的实 现方式,  In a third possible implementation, in combination with the first aspect or the first possible implementation,
所述逻辑通道号与通讯实体的关系映射表可以根据通讯实体的 变化进行实时更新。  The relationship map between the logical channel number and the communication entity can be updated in real time according to the change of the communication entity.
在第四种可能的实现方式中, 结合第一方面或第一种可能的实 现方式,  In a fourth possible implementation, in combination with the first aspect or the first possible implementation manner,
所述第一通知信息传输数据的接口根据所述网络设备的不同而 不同;  The interface of the first notification information transmission data is different according to the network device;
所述第二通知信息传输数据的接口的形式为所述标准形式。 第二方面, 提供一种数据转发方法, 包括:  The form of the interface of the second notification information transmission data is the standard form. In a second aspect, a data forwarding method is provided, including:
虚拟机通过所述虚拟机上的连接模块接收所述主机发送的第二 通知信息; 其中, 所述第二通知信息是根据第一通知信息获得的, 包括网络设备与所述虚拟机通信的逻辑通道号和数据包的内存地 址; 所述第一通知信息是所述网络设备发送至所述主机的, 包括所 述网络设备存储在内存中的所述数据包的内存地址;  The virtual machine receives the second notification information sent by the host by using the connection module on the virtual machine, where the second notification information is obtained according to the first notification information, and includes logic for the network device to communicate with the virtual machine. a channel number and a memory address of the data packet; the first notification information is sent by the network device to the host, and includes a memory address of the data packet that is stored in the memory by the network device;
根据所述数据包的内存地址在内存中获取所述数据包。  The data packet is obtained in memory according to the memory address of the data packet.
在第一种可能的实现方式中, 结合第二方面,  In a first possible implementation, in combination with the second aspect,
所述第二通知信息中的数据包的内存地址以标准形式存在; 其 中, 所述标准形式指的是预先与所述虚拟机约定的格式。  The memory address of the data packet in the second notification information exists in a standard form; wherein the standard form refers to a format agreed in advance with the virtual machine.
在第二种可能的实现方式中, 结合第二方面,  In a second possible implementation, in combination with the second aspect,
所述第一通知信息传输数据的接口根据所述网络设备的不同而 不同;  The interface of the first notification information transmission data is different according to the network device;
所述第二通知信息传输数据的接口的形式为所述标准形式。 第三方面, 提供数据转发方法, 包括: 主机接收虚拟机发送的第二通知信息; 其中, 所述第二通知信 息包括逻辑通道号和所述虚拟机存储在内存中的数据包的内存地 址; 所述逻辑通道号为所述虚拟机与网络设备通信的逻辑通道号; 所述虚拟机是通过所述虚拟机上的连接模块发送所述第二通知信息 的; The form of the interface of the second notification information transmission data is the standard form. The third aspect provides a data forwarding method, including: Receiving, by the host, the second notification information sent by the virtual machine, where the second notification information includes a logical channel number and a memory address of the data packet stored by the virtual machine in the memory; the logical channel number is the virtual machine and a logical channel number of the network device communication; the virtual machine sends the second notification information by using a connection module on the virtual machine;
根据所述逻辑通道号与通讯实体的关系映射表获取与所述虚拟 机通信的网络设备;  Acquiring a network device that communicates with the virtual machine according to the relationship between the logical channel number and the communication entity;
根据所述第二通知信息获得第一通知信息; 其中, 所述第一通 知信息包括所述数据包的内存地址;  Obtaining first notification information according to the second notification information, where the first notification information includes a memory address of the data packet;
发送所述第一通知信息至所述网络设备, 以便于所述网络设备 根据所述数据包的内存地址获得所述数据包。  Sending the first notification information to the network device, so that the network device obtains the data packet according to a memory address of the data packet.
在第一种可能的实现方式中, 结合第三方面, 所述根据所述第 二通知信息获得第一通知信息, 包括:  In a first possible implementation, in combination with the third aspect, the obtaining the first notification information according to the second notification information includes:
解析所述第二通知信息获得所述数据包的内存地址;  Parsing the second notification information to obtain a memory address of the data packet;
将所述数据报的内存地址的形式转换为所述网络设备可以识别 的形式;  Converting a form of a memory address of the datagram into a form recognizable by the network device;
根据转换的所述数据包的内存地址获得所述第一通知信息。 在第二种可能的实现方式中, 结合第三方面或第一种可能的实 现方式,  The first notification information is obtained according to the memory address of the converted data packet. In a second possible implementation, in combination with the third aspect or the first possible implementation,
所述第二通知信息中的数据包的内存地址以标准形式存在; 其 中, 所述标准形式指的是预先与所述虚拟机约定的格式。  The memory address of the data packet in the second notification information exists in a standard form; wherein the standard form refers to a format agreed in advance with the virtual machine.
在第三种可能的实现方式中, 结合第三方面或第一种可能的实 现方式,  In a third possible implementation, in combination with the third aspect or the first possible implementation,
所述逻辑通道号与通讯实体的关系映射表可以根据通讯实体的 变化进行实时更新。  The relationship map between the logical channel number and the communication entity can be updated in real time according to the change of the communication entity.
在第四种可能的实现方式中, 结合第三方面或第一种可能的实 现方式,  In a fourth possible implementation, in combination with the third aspect or the first possible implementation,
所述第一通知信息传输数据的接口根据所述网络设备的不同而 不同; 所述第二通知信息传输数据的接口的形式为所述标准形式。 第四方面, 提供一种数据转发方法, 包括: The interface of the first notification information transmission data is different according to the network device; The form of the interface of the second notification information transmission data is the standard form. The fourth aspect provides a data forwarding method, including:
虚拟机存储数据包至内存中;  The virtual machine stores the data packet into the memory;
通过所述虚拟机上的连接模块发送第二通知信息至主机, 以便 于所述主机根据所述第二通知信息获得第一通知信息, 并发送至网 络设备使得所述网络设备根据所述第一通知信息获得所述数据包; 其中, 所述第二通知信息中包括所述网络设备与所述虚拟机通信的 逻辑通道号和数据包的内存地址。  Sending the second notification information to the host by using the connection module on the virtual machine, so that the host obtains the first notification information according to the second notification information, and sends the information to the network device, so that the network device is configured according to the first The notification information obtains the data packet; wherein the second notification information includes a logical channel number and a memory address of the data packet that the network device communicates with the virtual machine.
在第一种可能的实现方式中, 结合第四方面,  In a first possible implementation, in combination with the fourth aspect,
所述第二通知信息中的数据包的内存地址以标准形式存在; 其 中, 所述标准形式指的是预先与所述虚拟机约定的格式。  The memory address of the data packet in the second notification information exists in a standard form; wherein the standard form refers to a format agreed in advance with the virtual machine.
在第二种可能的实现方式中, 结合第四方面,  In a second possible implementation, in combination with the fourth aspect,
所述第一通知信息传输数据的接口根据所述网络设备的不同而 不同;  The interface of the first notification information transmission data is different according to the network device;
所述第二通知信息传输数据的接口的形式为所述标准形式。 第五方面, 提供一种主机, 包括:  The form of the interface of the second notification information transmission data is the standard form. In a fifth aspect, a host is provided, including:
接收单元, 用于接收网络设备发送的第一通知信息; 其中, 所 述第一通知信息中包括所述网络设备存储在内存中的数据包的内存 地址;  a receiving unit, configured to receive first notification information that is sent by the network device, where the first notification information includes a memory address of the data packet that is stored in the memory by the network device;
获取单元, 用于根据逻辑通道号与通讯实体的关系映射表获取 与所述网络设备通信的虚拟机; 其中, 所述逻辑通道号是所述网络 设备与所述虚拟机通信的逻辑通道号;  An acquiring unit, configured to acquire a virtual machine that communicates with the network device according to a relationship between a logical channel number and a communication entity; where the logical channel number is a logical channel number that the network device communicates with the virtual machine;
所述获取单元, 还用于根据所述接收单元接收到的所述第一通 知信息获得第二通知信息; 其中, 所述第二通知信息包括所述逻辑 通道号和所述数据包的内存地址;  The obtaining unit is further configured to obtain second notification information according to the first notification information received by the receiving unit, where the second notification information includes the logical channel number and a memory address of the data packet ;
发送单元, 用于发送所述获取单元获取到的所述第二通知信息 至所述虚拟机, 以便于所述虚拟机根据所述数据包的内存地址获得 所述数据包; 其中, 所述虚拟机是通过所述虚拟机上的连接模块接 收所述第二通知信息的。 在第一种可能的实现方式中, 结合第五方面, 所述获取单元包 括: a sending unit, configured to send the second notification information that is obtained by the acquiring unit to the virtual machine, so that the virtual machine obtains the data packet according to a memory address of the data packet; The machine receives the second notification information through a connection module on the virtual machine. In a first possible implementation, in combination with the fifth aspect, the acquiring unit includes:
解析模块, 用于解析所述第一通知信息获得所述数据包的内存 地址;  a parsing module, configured to parse the first notification information to obtain a memory address of the data packet;
转换模块, 用于将所述解析模块获得的所述数据包的内存地址 的形式转换为标准形式;  a conversion module, configured to convert a form of a memory address of the data packet obtained by the parsing module into a standard form;
获取模块, 用于根据所述转换模块转换为标准形式的数据包的 内存地址和所述逻辑通道号获得所述第二通知信息。  And an obtaining module, configured to obtain the second notification information according to a memory address of the data packet converted into a standard form by the conversion module and the logical channel number.
在第二种可能的实现方式中, 结合第五方面或第一种可能的实 现方式,  In a second possible implementation manner, in combination with the fifth aspect or the first possible implementation manner,
所述第二通知信息中的数据包的内存地址以标准形式存在; 其 中, 所述标准形式指的是预先与所述虚拟机约定的格式。  The memory address of the data packet in the second notification information exists in a standard form; wherein the standard form refers to a format agreed in advance with the virtual machine.
在第三种可能的实现方式中, 结合第五方面或第一种可能的实 现方式,  In a third possible implementation, in combination with the fifth aspect or the first possible implementation,
所述逻辑通道号与通讯实体的关系映射表可以根据通讯实体的 变化进行实时更新。  The relationship map between the logical channel number and the communication entity can be updated in real time according to the change of the communication entity.
在第四种可能的实现方式中, 结合第五方面或第一种可能的实 现方式,  In a fourth possible implementation, in combination with the fifth aspect or the first possible implementation manner,
所述第一通知信息传输数据的接口根据所述网络设备的不同而 不同;  The interface of the first notification information transmission data is different according to the network device;
所述第二通知信息传输数据的接口的形式为所述标准形式。 第六方面, 提供一种虚拟机, 包括:  The form of the interface of the second notification information transmission data is the standard form. In a sixth aspect, a virtual machine is provided, including:
接收单元, 用于通过所述虚拟机上的连接模块接收所述主机发 送的第二通知信息; 其中, 所述第二通知信息是根据第一通知信息 获得的, 包括网络设备与所述虚拟机通信的逻辑通道号和数据包的 内存地址; 所述第一通知信息是所述网络设备发送至所述主机的, 包括所述网络设备存储在内存中的所述数据包的内存地址;  a receiving unit, configured to receive second notification information sent by the host by using a connection module on the virtual machine, where the second notification information is obtained according to the first notification information, including the network device and the virtual machine a logical channel number of the communication and a memory address of the data packet; the first notification information is sent by the network device to the host, and includes a memory address of the data packet stored in the memory by the network device;
获取单元, 用于根据所述接收单元接收到的所述数据包的内存 地址在内存中获取所述数据包。 在第一种可能的实现方式中, 结合第六方面, And an obtaining unit, configured to acquire the data packet in a memory according to a memory address of the data packet received by the receiving unit. In a first possible implementation, in combination with the sixth aspect,
所述第二通知信息中的数据包的内存地址以标准形式存在; 其 中, 所述标准形式指的是预先与所述虚拟机约定的格式。  The memory address of the data packet in the second notification information exists in a standard form; wherein the standard form refers to a format agreed in advance with the virtual machine.
在第二种可能的实现方式中, 结合第六方面,  In a second possible implementation, in combination with the sixth aspect,
所述第一通知信息传输数据的接口根据所述网络设备的不同而 不同;  The interface of the first notification information transmission data is different according to the network device;
所述第二通知信息传输数据的接口的形式为所述标准形式。 第七方面, 提供一种主机, 包括:  The form of the interface of the second notification information transmission data is the standard form. In a seventh aspect, a host is provided, including:
接收单元, 用于接收虚拟机发送的第二通知信息; 其中, 所述 第二通知信息包括逻辑通道号和所述虚拟机存储在内存中的数据包 的内存地址; 所述逻辑通道号为所述虚拟机与网络设备通信的逻辑 通道号; 所述虚拟机是通过所述虚拟机上的连接模块发送所述第二 通知信息的;  a receiving unit, configured to receive second notification information that is sent by the virtual machine, where the second notification information includes a logical channel number and a memory address of a data packet that is stored in the virtual machine by the virtual machine; a logical channel number that the virtual machine communicates with the network device; the virtual machine sends the second notification information by using a connection module on the virtual machine;
获取单元, 用于根据所述逻辑通道号与通讯实体的关系映射表 获取与所述虚拟机通信的网络设备;  An acquiring unit, configured to acquire, according to the relationship between the logical channel number and the communication entity, a network device that communicates with the virtual machine;
所述获取单元, 还用于根据所述接收单元接收到的所述第二通 知信息获得第一通知信息; 其中, 所述第一通知信息包括所述数据 包的内存地址;  The obtaining unit is further configured to obtain first notification information according to the second notification information that is received by the receiving unit, where the first notification information includes a memory address of the data packet;
发送单元, 用于发送所述第一通知信息至所述获取单元获取的 所述网络设备, 以便于所述网络设备根据所述数据包的内存地址获 得所述数据包。  And a sending unit, configured to send the first notification information to the network device acquired by the acquiring unit, so that the network device obtains the data packet according to a memory address of the data packet.
在第一种可能的实现方式中, 结合第七方面, 所述获取单元包 括:  In a first possible implementation manner, in combination with the seventh aspect, the acquiring unit includes:
解析模块, 用于解析所述第二通知信息获得所述数据包的内存 地址;  a parsing module, configured to parse the second notification information to obtain a memory address of the data packet;
转换模块, 用于将所述解析模块得到的所述数据报的内存地址 的形式转换为所述网络设备可以识别的形式;  a conversion module, configured to convert a form of a memory address of the datagram obtained by the parsing module into a form that the network device can recognize;
获取模块, 用于根据所述转换模块转换的所述数据包的内存地 址获得所述第一通知信息。 在第二种可能的实现方式中, 结合第七方面或第一种可能的实 现方式, And an obtaining module, configured to obtain the first notification information according to a memory address of the data packet converted by the conversion module. In a second possible implementation manner, in combination with the seventh aspect or the first possible implementation manner,
所述第二通知信息中的数据包的内存地址以标准形式存在; 其 中, 所述标准形式指的是预先与所述虚拟机约定的格式。  The memory address of the data packet in the second notification information exists in a standard form; wherein the standard form refers to a format agreed in advance with the virtual machine.
在第三种可能的实现方式中, 结合第七方面或第一种可能的实 现方式,  In a third possible implementation, in combination with the seventh aspect or the first possible implementation,
所述逻辑通道号与通讯实体的关系映射表可以根据通讯实体的 变化进行实时更新。  The relationship map between the logical channel number and the communication entity can be updated in real time according to the change of the communication entity.
在第四种可能的实现方式中, 结合第七方面或第一种可能的实 现方式,  In a fourth possible implementation, in combination with the seventh aspect or the first possible implementation manner,
所述第一通知信息传输数据的接口根据所述网络设备的不同而 不同;  The interface of the first notification information transmission data is different according to the network device;
所述第二通知信息传输数据的接口的形式为所述标准形式。 第八方面, 提供一种虚拟机, 包括:  The form of the interface of the second notification information transmission data is the standard form. In an eighth aspect, a virtual machine is provided, including:
处理单元, 用于存储数据包至内存中;  a processing unit, configured to store a data packet into the memory;
发送单元, 用于通过所述虚拟机上的连接模块发送第二通知信 息至主机, 以便于所述主机根据所述第二通知信息获得第一通知信 息, 并发送至网络设备使得所述网络设备根据所述第一通知信息获 得所述数据包; 其中, 所述第二通知信息中包括所述网络设备与所 述虚拟机通信的逻辑通道号和数据包的内存地址。  a sending unit, configured to send, by using a connection module on the virtual machine, second notification information to the host, so that the host obtains the first notification information according to the second notification information, and sends the information to the network device to enable the network device Obtaining the data packet according to the first notification information; where the second notification information includes a logical channel number and a memory address of the data packet that the network device communicates with the virtual machine.
在第一种可能的实现方式中, 结合第八方面,  In the first possible implementation, in combination with the eighth aspect,
所述第二通知信息中的数据包的内存地址以标准形式存在; 其 中, 所述标准形式指的是预先与所述虚拟机约定的格式。  The memory address of the data packet in the second notification information exists in a standard form; wherein the standard form refers to a format agreed in advance with the virtual machine.
在第二种可能的实现方式中, 结合第八方面,  In a second possible implementation manner, in combination with the eighth aspect,
所述第一通知信息传输数据的接口根据所述网络设备的不同而 不同;  The interface of the first notification information transmission data is different according to the network device;
所述第二通知信息传输数据的接口的形式为所述标准形式。 第九方面, 提供一种主机, 包括: 至少一个处理器、 存储器、 通信接口和总线, 所述至少一个处理器、 存储器和通信接口通过总 线连接并完成相互间的通信, 所述存储器用于存储程序代码, 其中: 所述处理器, 用于调用存储器中的程序代码, 用以执行以下操 作: The form of the interface of the second notification information transmission data is the standard form. In a ninth aspect, a host is provided, comprising: at least one processor, a memory, a communication interface, and a bus, wherein the at least one processor, the memory, and the communication interface pass the total The lines are connected and complete communication with each other, the memory is used to store program code, where: the processor is configured to call program code in the memory to perform the following operations:
接收网络设备发送的第一通知信息; 其中, 所述第一通知信息 中包括所述网络设备存储在内存中的数据包的内存地址;  Receiving first notification information sent by the network device, where the first notification information includes a memory address of a data packet that is stored in the memory by the network device;
根据逻辑通道号与通讯实体的关系映射表获取与所述网络设备 通信的虚拟机; 其中, 所述逻辑通道号是所述网络设备与所述虚拟 机通信的逻辑通道号;  Acquiring a virtual machine that communicates with the network device according to a relationship between a logical channel number and a communication entity; wherein the logical channel number is a logical channel number that the network device communicates with the virtual machine;
根据所述第一通知信息获得第二通知信息; 其中, 所述第二通 知信息中包括所述逻辑通道号和所述数据包的内存地址;  Obtaining the second notification information according to the first notification information, where the second notification information includes the logical channel number and a memory address of the data packet;
发送所述第二通知信息至所述虚拟机, 以便于所述虚拟机根据 所述数据包的内存地址获得所述数据包; 其中, 所述虚拟机是通过 所述虚拟机上的连接模块接收所述第二通知信息的。  Sending the second notification information to the virtual machine, so that the virtual machine obtains the data packet according to a memory address of the data packet; wherein the virtual machine is received by a connection module on the virtual machine The second notification information.
在第一种可能的实现方式中, 结合第九方面, 所述处理器具体 用于:  In a first possible implementation, in combination with the ninth aspect, the processor is specifically configured to:
解析所述第一通知信息获得所述数据包的内存地址;  Parsing the first notification information to obtain a memory address of the data packet;
将所述数据包的内存地址的形式转换为标准形式;  Converting the form of the memory address of the data packet to a standard form;
根据转换为标准形式的所述数据包的内存地址和所述逻辑通道 号获得所述第二通知信息。  The second notification information is obtained according to a memory address of the data packet converted to a standard form and the logical channel number.
在第二种可能的实现方式中, 结合第九方面或第一种可能的实 现方式,  In a second possible implementation manner, in combination with the ninth aspect or the first possible implementation manner,
所述第二通知信息中的数据包的内存地址以标准形式存在; 其 中, 所述标准形式指的是预先与所述虚拟机约定的格式。  The memory address of the data packet in the second notification information exists in a standard form; wherein the standard form refers to a format agreed in advance with the virtual machine.
在第三种可能的实现方式中, 结合第九方面或第一种可能的实 现方式,  In a third possible implementation, in combination with the ninth aspect or the first possible implementation,
所述逻辑通道号与通讯实体的关系映射表可以根据通讯实体的 变化进行实时更新。  The relationship map between the logical channel number and the communication entity can be updated in real time according to the change of the communication entity.
在第四种可能的实现方式中, 结合第九方面或第一种可能的实 现方式, 所述第一通知信息传输数据的接口根据所述网络设备的不同而 不同; In a fourth possible implementation manner, in combination with the ninth aspect or the first possible implementation manner, The interface of the first notification information transmission data is different according to the network device;
所述第二通知信息传输数据的接口的形式为所述标准形式。 第十方面, 提供一种虚拟机, 包括: 至少一个处理器、 存储器、 通信接口和总线, 所述至少一个处理器、 存储器和通信接口通过总 线连接并完成相互间的通信, 所述存储器用于存储程序代码, 其中: 所述处理器, 用于调用存储器中的程序代码, 用以执行以下操 作:  The form of the interface of the second notification information transmission data is the standard form. According to a tenth aspect, a virtual machine is provided, including: at least one processor, a memory, a communication interface, and a bus, wherein the at least one processor, the memory, and the communication interface are connected by a bus and complete communication with each other, and the memory is used for The program code is stored, wherein: the processor is configured to call program code in the memory to perform the following operations:
通过所述虚拟机上的连接模块接收所述主机发送的第二通知信 息; 其中, 所述第二通知信息是根据第一通知信息获得的, 包括所 述网络设备与所述虚拟机通信的逻辑通道号和所述数据包的内存地 址; 所述第一通知信息是所述网络设备发送至所述主机的, 包括所 述网络设备存储在内存中的所述数据包的内存地址;  And receiving, by the connection module on the virtual machine, the second notification information that is sent by the host, where the second notification information is obtained according to the first notification information, and includes logic for the network device to communicate with the virtual machine. a channel number and a memory address of the data packet; the first notification information is sent by the network device to the host, and includes a memory address of the data packet that is stored in the memory by the network device;
根据所述数据包的内存地址在内存中获取所述数据包。  The data packet is obtained in memory according to the memory address of the data packet.
在第一种可能的实现方式中, 结合第十方面,  In a first possible implementation, in combination with the tenth aspect,
所述第二通知信息中的数据包的内存地址以标准形式存在; 其 中, 所述标准形式指的是预先与所述虚拟机约定的格式。  The memory address of the data packet in the second notification information exists in a standard form; wherein the standard form refers to a format agreed in advance with the virtual machine.
在第二种可能的实现方式中, 结合第十方面,  In a second possible implementation, in combination with the tenth aspect,
所述第一通知信息传输数据的接口根据所述网络设备的不同而 不同;  The interface of the first notification information transmission data is different according to the network device;
所述第二通知信息传输数据的接口的形式为所述标准形式。 第十一方面, 提供一种主机, 包括: 至少一个处理器、 存储器、 通信接口和总线, 所述至少一个处理器、 存储器和通信接口通过总 线连接并完成相互间的通信, 所述存储器用于存储程序代码, 其中: 所述处理器, 用于调用存储器中的程序代码, 用以执行以下操 作:  The form of the interface of the second notification information transmission data is the standard form. In an eleventh aspect, a host is provided, comprising: at least one processor, a memory, a communication interface, and a bus, wherein the at least one processor, the memory, and the communication interface are connected by a bus and complete communication with each other, the memory being used for The program code is stored, wherein: the processor is configured to call program code in the memory to perform the following operations:
主机接收虚拟机发送的第二通知信息; 其中, 所述第二通知信 息包括逻辑通道号和所述虚拟机存储在内存中的数据包的内存地 址; 所述逻辑通道号为所述虚拟机与网络设备通信的逻辑通道号; 所述虚拟机是通过所述虚拟机上的连接模块发送所述第二通知信息 的; Receiving, by the host, the second notification information sent by the virtual machine, where the second notification information includes a logical channel number and a memory address of the data packet stored by the virtual machine in the memory; the logical channel number is the virtual machine and The logical channel number of the network device communication; The virtual machine sends the second notification information by using a connection module on the virtual machine;
根据所述逻辑通道号与通讯实体的关系映射表获取与所述虚拟 机通信的网络设备;  Acquiring a network device that communicates with the virtual machine according to the relationship between the logical channel number and the communication entity;
根据所述第二通知信息获得第一通知信息; 其中, 所述第一通 知信息包括所述数据包的内存地址;  Obtaining first notification information according to the second notification information, where the first notification information includes a memory address of the data packet;
发送所述第一通知信息至所述网络设备, 以便于所述网络设备 根据所述数据包的内存地址获得所述数据包。  Sending the first notification information to the network device, so that the network device obtains the data packet according to a memory address of the data packet.
在第一种可能的实现方式中, 结合第十一方面, 所述处理器具 体用于:  In a first possible implementation, in combination with the eleventh aspect, the processor is specifically configured to:
解析所述第二通知信息获得所述数据包的内存地址;  Parsing the second notification information to obtain a memory address of the data packet;
将所述数据报的内存地址的形式转换为所述网络设备可以识别 的形式;  Converting a form of a memory address of the datagram into a form recognizable by the network device;
根据转换的所述数据包的内存地址获得所述第一通知信息。 在第二种可能的实现方式中, 结合第十一方面或第一种可能的 实现方式,  The first notification information is obtained according to the memory address of the converted data packet. In a second possible implementation manner, in combination with the eleventh aspect or the first possible implementation manner,
所述第二通知信息中的数据包的内存地址以标准形式存在; 其 中, 所述标准形式指的是预先与所述虚拟机约定的格式。  The memory address of the data packet in the second notification information exists in a standard form; wherein the standard form refers to a format agreed in advance with the virtual machine.
在第三种可能的实现方式中, 结合第十一方面或第一种可能的 实现方式,  In a third possible implementation, in combination with the eleventh aspect or the first possible implementation,
所述逻辑通道号与通讯实体的关系映射表可以根据通讯实体的 变化进行实时更新。  The relationship map between the logical channel number and the communication entity can be updated in real time according to the change of the communication entity.
在第四种可能的实现方式中, 结合第九方面或第十一种可能的 实现方式,  In a fourth possible implementation manner, in combination with the ninth aspect or the eleventh possible implementation manner,
所述第一通知信息传输数据的接口根据所述网络设备的不同而 不同;  The interface of the first notification information transmission data is different according to the network device;
所述第二通知信息传输数据的接口的形式为所述标准形式。 第十二方面, 提供一种虚拟机, 包括: 至少一个处理器、 存储 器、 通信接口和总线, 所述至少一个处理器、 存储器和通信接口通 过总线连接并完成相互间的通信, 所述存储器用于存储程序代码, 其巾: The form of the interface of the second notification information transmission data is the standard form. According to a twelfth aspect, a virtual machine is provided, including: at least one processor, a memory, a communication interface, and a bus, wherein the at least one processor, the memory, and the communication interface are Through the bus connection and complete communication with each other, the memory is used to store the program code, and its towel:
所述处理器, 用于调用存储器中的程序代码, 用以执行以下操 作:  The processor is configured to call program code in the memory to perform the following operations:
存储数据包至内存中;  Store data packets into memory;
通过所述虚拟机上的连接模块发送第二通知信息至主机, 以便 于所述主机根据所述第二通知信息获得第一通知信息, 并发送至网 络设备使得所述网络设备根据所述第一通知信息获得所述数据包; 其中, 所述第二通知信息中包括所述网络设备与所述虚拟机通信的 逻辑通道号和数据包的内存地址。  Sending the second notification information to the host by using the connection module on the virtual machine, so that the host obtains the first notification information according to the second notification information, and sends the information to the network device, so that the network device is configured according to the first The notification information obtains the data packet; wherein the second notification information includes a logical channel number and a memory address of the data packet that the network device communicates with the virtual machine.
在第一种可能的实现方式中, 结合第十二方面,  In a first possible implementation, in combination with the twelfth aspect,
所述第二通知信息中的数据包的内存地址以标准形式存在; 其 中, 所述标准形式指的是预先与所述虚拟机约定的格式。  The memory address of the data packet in the second notification information exists in a standard form; wherein the standard form refers to a format agreed in advance with the virtual machine.
在第二种可能的实现方式中, 结合第十二方面,  In a second possible implementation manner, in combination with the twelfth aspect,
所述第一通知信息传输数据的接口根据所述网络设备的不同而 不同;  The interface of the first notification information transmission data is different according to the network device;
所述第二通知信息传输数据的接口的形式为所述标准形式。 第十三方面, 提供一种数据转发系统, 包括: 主机、 虚拟机和 网络设备, 其中:  The form of the interface of the second notification information transmission data is the standard form. A thirteenth aspect provides a data forwarding system, including: a host, a virtual machine, and a network device, where:
所述主机, 用于接收网络设备发送的第一通知信息; 其中, 所 述第一通知信息中包括所述网络设备存储在内存中的数据包的内存 地址; 根据逻辑通道号与通讯实体的关系映射表获取与所述网络设 备通信的虚拟机; 其中, 所述逻辑通道号是所述网络设备与所述虚 拟机通信的逻辑通道号; 根据所述第一通知信息获得第二通知信息; 其中, 所述第二通知信息包括所述逻辑通道号和所述数据包的内存 地址; 发送所述第二通知信息至所述虚拟机, 以便于所述虚拟机根 据所述数据包的内存地址获得所述数据包; 其中, 所述虚拟机是通 过所述虚拟机上的连接模块接收所述第二通知信息的;  The host is configured to receive first notification information sent by the network device, where the first notification information includes a memory address of the data packet stored by the network device in the memory; and the relationship between the logical channel number and the communication entity The mapping table acquires a virtual machine that communicates with the network device, where the logical channel number is a logical channel number that the network device communicates with the virtual machine; and the second notification information is obtained according to the first notification information; The second notification information includes the logical channel number and a memory address of the data packet; sending the second notification information to the virtual machine, so that the virtual machine is obtained according to a memory address of the data packet. The data packet; wherein the virtual machine receives the second notification information by using a connection module on the virtual machine;
所述网络设备, 用于发送所述数据包至所述主机并将所述数据 包存储在内存中; The network device, configured to send the data packet to the host and the data The package is stored in memory;
所述虚拟机, 用于通过所述虚拟机上的连接模块接收主机发送 的第二通知信息; 其中, 所述第二通知信息是根据第一通知信息获 得的, 包括网络设备与所述虚拟机通信的逻辑通道号和数据包的内 存地址; 所述第一通知信息是所述网络设备发送至所述主机的, 包 括所述网络设备存储在内存中的所述数据包的内存地址; 根据所述 数据包的内存地址在内存中获取所述数据包。  The virtual machine is configured to receive, by using a connection module on the virtual machine, second notification information that is sent by the host, where the second notification information is obtained according to the first notification information, including the network device and the virtual machine. a logical channel number of the communication and a memory address of the data packet; the first notification information is sent by the network device to the host, and includes a memory address of the data packet that is stored in the memory by the network device; The memory address of the data packet is obtained in memory.
在第一种可能的实现方式中, 结合第十三方面,  In a first possible implementation, in combination with the thirteenth aspect,
所述主机, 还用于解析所述第一通知信息获得所述数据包的内 存地址; 将所述数据包的内存地址的形式转换为标准形式; 根据转 换为标准形式的所述数据包的内存地址和所述逻辑通道号获得所述 第二通知信息。  The host is further configured to parse the first notification information to obtain a memory address of the data packet; convert a form of a memory address of the data packet into a standard form; according to the memory of the data packet converted into a standard form The second notification information is obtained by the address and the logical channel number.
在第二种可能的实现方式中, 结合第十三方面或第一种可能的 实现方式,  In a second possible implementation manner, in combination with the thirteenth aspect or the first possible implementation manner,
所述第二通知信息中的数据包的内存地址以标准形式存在; 其 中, 所述标准形式指的是预先与所述虚拟机约定的格式。  The memory address of the data packet in the second notification information exists in a standard form; wherein the standard form refers to a format agreed in advance with the virtual machine.
在第三种可能的实现方式中, 结合第十三方面或第一种可能的 实现方式,  In a third possible implementation, in combination with the thirteenth aspect or the first possible implementation,
所述逻辑通道号与通讯实体的关系映射表可以根据通讯实体的 变化进行实时更新。  The relationship map between the logical channel number and the communication entity can be updated in real time according to the change of the communication entity.
在第四种可能的实现方式中, 结合第十三方面或第一种可能的 实现方式,  In a fourth possible implementation, in combination with the thirteenth aspect or the first possible implementation,
所述第一通知信息传输数据的接口根据所述网络设备的不同而 不同;  The interface of the first notification information transmission data is different according to the network device;
所述第二通知信息传输数据的接口的形式为所述标准形式。 第十四方面, 提供一种数据转发系统, 包括: 主机、 虚拟机和 网络设备, 其中:  The form of the interface of the second notification information transmission data is the standard form. In a fourteenth aspect, a data forwarding system is provided, including: a host, a virtual machine, and a network device, where:
所述虚拟机, 用于存储数据包至内存中; 通过所述虚拟机上的 连接模块发送第二通知信息至主机, 以便于所述主机根据所述第二 通知信息获得第一通知信息, 并发送至网络设备使得所述网络设备 根据所述第一通知信息获得所述数据包; 其中, 所述第二通知信息 中包括所述网络设备与所述虚拟机通信的逻辑通道号和数据包的内 存地址; The virtual machine is configured to store a data packet into the memory, and send, by using a connection module on the virtual machine, second notification information to the host, so that the host is configured according to the second The notification information is obtained by the first notification information, and is sent to the network device, so that the network device obtains the data packet according to the first notification information, where the second notification information includes the network device and the virtual machine The logical channel number of the communication and the memory address of the data packet;
所述主机, 用于接收虚拟机发送的第二通知信息; 其中, 所述 第二通知信息包括逻辑通道号和所述虚拟机存储在内存中的数据包 的内存地址; 所述逻辑通道号为所述虚拟机与网络设备通信的逻辑 通道号; 所述虚拟机是通过所述虚拟机上的连接模块发送所述第二 通知信息的; 根据所述逻辑通道号与通讯实体的关系映射表获取与 所述虚拟机通信的网络设备; 根据所述第二通知信息获得第一通知 信息; 其中, 所述第一通知信息包括所述数据包的内存地址; 发送 所述第一通知信息至所述网络设备, 以便于所述网络设备根据所述 数据包的内存地址获得所述数据包;  The host is configured to receive second notification information that is sent by the virtual machine, where the second notification information includes a logical channel number and a memory address of a data packet that is stored in the virtual machine by the virtual machine; a logical channel number of the virtual machine communicating with the network device; the virtual machine sending the second notification information by using a connection module on the virtual machine; acquiring according to the relationship between the logical channel number and the communication entity a network device that communicates with the virtual machine; obtaining first notification information according to the second notification information; wherein, the first notification information includes a memory address of the data packet; and sending the first notification information to the a network device, so that the network device obtains the data packet according to a memory address of the data packet;
所述网络设备, 用于接收所述主机发送的第一通知信息; 根据 所述数据包的内存地址获得所述数据包。  The network device is configured to receive first notification information sent by the host, and obtain the data packet according to a memory address of the data packet.
在第一种可能的实现方式中, 结合第十四方面,  In a first possible implementation, in combination with the fourteenth aspect,
所述主机, 还用于解析所述第二通知信息获得所述数据包的内 存地址; 将所述数据包的内存地址的格式转换为所述网络设备可以 识别的格式; 根据转换的所述数据包的内存地址获得所述第一通知 信息。  The host is further configured to parse the second notification information to obtain a memory address of the data packet; convert a format of the memory address of the data packet into a format that the network device can recognize; according to the converted data The first notification information is obtained by the memory address of the packet.
在第二种可能的实现方式中, 结合第十四方面或第一种可能的 实现方式,  In a second possible implementation, in combination with the fourteenth aspect or the first possible implementation,
所述第二通知信息中的数据包的内存地址以标准形式存在; 其 中, 所述标准形式指的是预先与所述虚拟机约定的格式。  The memory address of the data packet in the second notification information exists in a standard form; wherein the standard form refers to a format agreed in advance with the virtual machine.
在第三种可能的实现方式中, 结合第十四方面或第一种可能的 实现方式,  In a third possible implementation, in combination with the fourteenth aspect or the first possible implementation,
所述逻辑通道号与通讯实体的关系映射表可以根据通讯实体的 变化进行实时更新。  The relationship map between the logical channel number and the communication entity can be updated in real time according to the change of the communication entity.
在第四种可能的实现方式中, 结合第十四方面或第一种可能的 实现方式, In a fourth possible implementation, in combination with the fourteenth aspect or the first possible Method to realize,
所述第一通知信息传输数据的接口根据所述网络设备的不同而 不同;  The interface of the first notification information transmission data is different according to the network device;
所述第二通知信息传输数据的接口的形式为所述标准形式。 本发明的实施例提供的数据转发方法、 装置及系统, 通过将网 络设备发送的信息的内存地址的形式转换为标准形式, 并将该标准 形式的信息的内存地址发送至虚拟机上的应用程序, 解决了虚拟机 中的应用程序与物理机通信时损耗大问题, 同时提高了工作效率, 操作方便。 附图说明  The form of the interface of the second notification information transmission data is the standard form. The data forwarding method, device and system provided by the embodiment of the present invention convert the form of the memory address of the information sent by the network device into a standard form, and send the memory address of the standard form information to the application on the virtual machine. It solves the problem of large loss when the application in the virtual machine communicates with the physical machine, and at the same time improves work efficiency and is convenient to operate. DRAWINGS
为了更清楚地说明本发明实施例或现有技术中的技术方案, 下 面将对实施例或现有技术描述中所需要使用的附图作简单地介绍, 显而易见地, 下面描述中的附图仅仅是本发明的一些实施例, 对于 本领域普通技术人员来讲, 在不付出创造性劳动的前提下, 还可以 根据这些附图获得其他的附图。  In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings used in the embodiments or the description of the prior art will be briefly described below. Obviously, the drawings in the following description are only It is a certain embodiment of the present invention, and other drawings can be obtained from those skilled in the art without any creative work.
图 1 为本发明的实施例提供的一种数据转发方法的流程示意 图;  1 is a schematic flow chart of a data forwarding method according to an embodiment of the present invention;
图 2为本发明的实施例提供的另一种数据转发方法的流程示意 图;  2 is a schematic flow chart of another data forwarding method according to an embodiment of the present invention;
图 3 为本发明的实施例提供的又一种数据转发方法的流程示意 图;  FIG. 3 is a schematic flow chart of still another data forwarding method according to an embodiment of the present invention; FIG.
图 4为本发明的另一实施例提供的一种数据转发方法的流程示 意图;  FIG. 4 is a schematic flowchart of a data forwarding method according to another embodiment of the present invention; FIG.
图 5为本发明的另一实施例提供的另一种数据转发方法的流程 示意图;  FIG. 5 is a schematic flowchart of another data forwarding method according to another embodiment of the present invention;
图 6为本发明的另一实施例提供的又一种数据转发方法的流程 示意图;  FIG. 6 is a schematic flowchart of still another data forwarding method according to another embodiment of the present invention; FIG.
图 7为本发明的实施例提供的一种主机的结构示意图; 图 8为本发明的实施例提供的另一种主机的结构示意图; 图 9为本发明的实施例提供的一种虚拟机的结构示意图; 图 10为本发明的实施例提供的又一种主机的结构示意图; 图 1 1为本发明的另一实施例提供的一种主机的结构示意图; 图 12为本发明的实施例提供的另一种虚拟机的结构示意图; 图 13为本发明的另一实施例提供的另一种主机的结构示意图; 图 14为本发明的实施例提供的又一种虚拟机的结构示意图; 图 15为本发明的另一实施例提供的又一种主机的结构示意图; 图 16为本发明的另一实施例提供的一种虚拟机的结构示意图; 图 17 为本发明的实施例提供的一种数据转发系统的结构示意 图; FIG. 7 is a schematic structural diagram of a host according to an embodiment of the present invention; FIG. 8 is a schematic structural diagram of another host according to an embodiment of the present invention; FIG. 9 is a schematic structural diagram of a virtual machine according to an embodiment of the present invention; FIG. FIG. 1 is a schematic structural diagram of another host according to another embodiment of the present invention; FIG. 12 is a schematic structural diagram of another virtual machine according to an embodiment of the present invention; FIG. 14 is a schematic structural diagram of another virtual machine according to an embodiment of the present invention; FIG. 15 is a schematic structural diagram of another host according to another embodiment of the present invention; FIG. 16 is a schematic structural diagram of a virtual machine according to another embodiment of the present invention; FIG. 17 is a schematic structural diagram of a data forwarding system according to an embodiment of the present invention;
图 18 为本发明的实施例提供的另一种数据转发系统的结构示 意图。 具体实施方式  FIG. 18 is a schematic structural diagram of another data forwarding system according to an embodiment of the present invention. detailed description
下面将结合本发明实施例中的附图, 对本发明实施例中的技术 方案进行清楚、 完整地描述, 显然, 所描述的实施例仅仅是本发明 一部分实施例, 而不是全部的实施例。 基于本发明中的实施例, 本 领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他 实施例, 都属于本发明保护的范围。  The technical solutions in the embodiments of the present invention are clearly and completely described in the following with reference to the accompanying drawings in the embodiments of the present invention. It is obvious that the described embodiments are only a part of the embodiments of the present invention, but not all embodiments. All other embodiments obtained by a person of ordinary skill in the art based on the embodiments of the present invention without creative efforts are within the scope of the present invention.
本发明的实施例提供一种数据转发方法, 应用于物理机上的硬 件向虚拟机上的应用程序发送信息的过程中, 参照图 1 所示, 该方 法包括以下步骤:  An embodiment of the present invention provides a data forwarding method, which is applied to a process in which hardware on a physical machine sends information to an application on a virtual machine. Referring to FIG. 1, the method includes the following steps:
101、 主机接收网络设备发送的第一通知信息。  101. The host receives the first notification information sent by the network device.
其中, 第一通知信息中包括网络设备存储在内存中的数据包的 内存地址。  The first notification information includes a memory address of a data packet stored by the network device in the memory.
102、主机根据逻辑通道号与通讯实体的关系映射表获取与网络 设备通信的虚拟机。  102. The host acquires a virtual machine that communicates with the network device according to the relationship table between the logical channel number and the communication entity.
其中, 逻辑通道号是网络设备与虚拟机通信的逻辑通道号。 103、 主机根据第一通知信息获得第二通知信息。 The logical channel number is a logical channel number in which the network device communicates with the virtual machine. 103. The host obtains the second notification information according to the first notification information.
其中, 第二通知信息包括该逻辑通道号和数据包的内存地址。 The second notification information includes the logical channel number and a memory address of the data packet.
104、 主机发送第二通知信息至虚拟机, 以便于该虚拟机根据数 据包的内存地址获得数据包。 104. The host sends the second notification information to the virtual machine, so that the virtual machine obtains the data packet according to the memory address of the data packet.
其中,虚拟机是通过虚拟机上的连接模块接收第二通知信息的。 本发明的实施例提供的数据转发方法, 通过将网络设备发送的 信息的内存地址的形式转换为标准形式, 并将该标准形式的信, ¾的 内存地址发送至虚拟机上的应用程序, 解决了虚拟机中的应用程序 与物理机通信时损耗大问题, 同时提高了工作效率, 操作方便。 本发明的实施例提供一种数据转发方法, 应用于物理机上的硬 件向虚拟机上的应用程序发送信息的过程中, 参照图 2 所示, 包括 以下步骤:  The virtual machine receives the second notification information through a connection module on the virtual machine. The data forwarding method provided by the embodiment of the present invention converts the form of the memory address of the information sent by the network device into a standard form, and sends the standard form of the letter, the memory address of the standard form to the application on the virtual machine, to solve When the application in the virtual machine communicates with the physical machine, the loss is large, and the work efficiency is improved and the operation is convenient. Embodiments of the present invention provide a data forwarding method, which is applied to a process in which hardware on a physical machine sends information to an application on a virtual machine. Referring to FIG. 2, the following steps are included:
201、虚拟机通过虚拟机上的连接模块接收主机发送的第二通知 信息。  201. The virtual machine receives the second notification information sent by the host by using a connection module on the virtual machine.
其中, 所述第二通知信息是根据第一通知信息获得的, 包括主 机与虚拟机通信的逻辑通道号和数据包的内存地址; 第一通知信息 是网络设备发送至主机的, 包括网络设备存储在内存中的数据包的 内存地址。  The second notification information is obtained according to the first notification information, and includes a logical channel number of the host and the virtual machine and a memory address of the data packet. The first notification information is sent by the network device to the host, including network device storage. The memory address of the packet in memory.
202、 虚拟机根据数据包的内存地址在内存中获取数据包。  202. The virtual machine acquires a data packet in the memory according to the memory address of the data packet.
本发明的实施例提供的数据转发方法, 通过将网络设备发送的 信息的内存地址的形式转换为标准形式, 并将该标准形式的信, ¾的 内存地址发送至虚拟机上的应用程序, 解决了虚拟机中的应用程序 与物理机通信时损耗大问题, 同时提高了工作效率, 操作方便。 本发明的实施例提供一种数据转发方法,应用于物理机上的硬 件向虚拟机上的应用程序发送信息的过程中, 参照图 3 所示, 包括 以下步骤:  The data forwarding method provided by the embodiment of the present invention converts the form of the memory address of the information sent by the network device into a standard form, and sends the standard form of the letter, the memory address of the standard form to the application on the virtual machine, to solve When the application in the virtual machine communicates with the physical machine, the loss is large, and the work efficiency is improved and the operation is convenient. The embodiment of the present invention provides a data forwarding method. When the hardware applied to the physical machine sends information to the application on the virtual machine, as shown in FIG. 3, the following steps are included:
301、 主机接收网络设备发送的第一通知信息。 其中, 第一通知信息中包括网络设备存储在内存中的数据包的 内存地址。 301. The host receives the first notification information sent by the network device. The first notification information includes a memory address of the data packet that the network device stores in the memory.
具体的, 网络设备需要发送数据包至虚拟机上的应用程序, 则 网络设备需要将该数据包存储在内存中, 然后发送该数据包的地址 至虚拟机, 虚拟机根据接收到的地址获得所需的数据包。 但是由于 不同的网络设备具有各自的地址格式, 如果网络设备发生变换时, 则对应的虚拟机需要重新识别新的格式, 操作起来比较麻烦。 因此, 本实施例中先将数据包的地址携带在第一通知信息中发送至主机。  Specifically, the network device needs to send the data packet to the application on the virtual machine, and the network device needs to store the data packet in the memory, and then send the address of the data packet to the virtual machine, and the virtual machine obtains the location according to the received address. The required data packet. However, since different network devices have their own address formats, if the network device changes, the corresponding virtual machine needs to re-recognize the new format, which is troublesome to operate. Therefore, in this embodiment, the address of the data packet is first carried in the first notification information and sent to the host.
该第一通知信息中还可以包括数据包的个数等信息, 第一数据 包的格式根据网络设备的的不同而不同。 其中, 网络设备优选的可 以为物理网卡。  The first notification information may further include information such as the number of data packets, and the format of the first data packet varies according to the network device. Preferably, the network device is a physical network card.
302、主机根据逻辑通道号与通讯实体的关系映射表获取与网络 设备通信的虚拟机。  302. The host acquires a virtual machine that communicates with the network device according to the relationship table between the logical channel number and the communication entity.
其中, 逻辑通道号是网络设备与虚拟机通信的逻辑通道号。 逻辑通道号与通讯实体的关系映射表可以根据通讯实体的变化 进行实时更新。  The logical channel number is a logical channel number in which the network device communicates with the virtual machine. The relationship table between the logical channel number and the communication entity can be updated in real time according to the change of the communication entity.
当网络设备需要与虚拟机上的应用程序通信时, 需要预先从主 机上获取逻辑通道号, 主机允许其通信时, 会在自 己的逻辑通道号 与通讯实体的关系映射表中增加相应的内容, 并告知双方一个逻辑 通道号。 则逻辑通道号与通讯实体的关系映射表会根据互相通信双 方的变化而不断的更新。  When the network device needs to communicate with the application on the virtual machine, the logical channel number needs to be obtained from the host in advance. When the host allows the communication, the corresponding content is added in the relationship mapping table between the logical channel number and the communication entity. And tell both parties a logical channel number. Then, the relationship table between the logical channel number and the communication entity is continuously updated according to the changes of the mutual communication.
303、 主机解析第一通知信息获得数据包的内存地址。  303. The host parses the first notification information to obtain a memory address of the data packet.
304、 主机将数据包的内存地址的形式转换为标准形式。  304. The host converts the form of the memory address of the data packet into a standard form.
305、主机根据转换为标准形式的数据包的内存地址和逻辑通道 号获得第二通知信息。  305. The host obtains the second notification information according to the memory address and the logical channel number of the data packet converted into the standard form.
其中, 第二通知信息中包括网络设备与虚拟机通信的逻辑通道 号和数据包的内存地址。  The second notification information includes a logical channel number of the network device and the virtual machine and a memory address of the data packet.
第二通知信息中的数据包的内存地址以标准形式存在, 该标准 形式指的是预先与虚拟机约定的格式。 具体的, 主机通过主机上的软交换中心将第一通知信息转换为 第二通知信息, 从而使得虚拟机上的应用程序可以接收任何网络设 备发送的数据包, 避免耦合问题的产生。 The memory address of the data packet in the second notification information exists in a standard form, which refers to a format agreed in advance with the virtual machine. Specifically, the host converts the first notification information into the second notification information by using the softswitch center on the host, so that the application on the virtual machine can receive the data packet sent by any network device, thereby avoiding the coupling problem.
306、 主机发送第二通知信息至虚拟机, 以便于虚拟机根据数据 包的内存地址获得数据包。  306. The host sends the second notification information to the virtual machine, so that the virtual machine obtains the data packet according to the memory address of the data packet.
具体的,主机是通过主机上的软件换中心发送第二通知信息的。 该软交换中心是通过软件来实现的。  Specifically, the host sends the second notification information through the software switching center on the host. The softswitch center is implemented by software.
307、虚拟机通过虚拟机上的连接模块接收主机发送的第二通知 信息。  307. The virtual machine receives the second notification information sent by the host by using a connection module on the virtual machine.
其中, 虚拟机上的连接模块是通过软件的形式实现的。  The connection module on the virtual machine is implemented in the form of software.
308、 虚拟机根据数据包的内存地址在内存中获取数据包。  308. The virtual machine acquires a data packet in the memory according to the memory address of the data packet.
第一通知信息传输数据的接口根据网络设备的不同而不同。 第二通知信息传输数据的接口的形式为标准形式。  The interface of the first notification information transmission data differs depending on the network device. The form of the interface for transmitting information of the second notification information is a standard form.
在本实施例中, 虚拟机获取的数据包最终会发送至虚拟机上的 应用程序, 主机上的所有操作都是通过主机上的软交换中心实现的。 由于不同的网络设备会产生不同的第一通知信息的格式, 因此需要 通过主机上运行的软交换中心具有适配功能, 适应不同硬件的差异。 同时, 第二通知信息的格式是预先与虚拟机约定的标准格式, 则只 要主机将第一通知信息转换为第二通知信息, 虚拟机上的应用程序 不需要任何的改动就可以处理第二通知信息, 而不存在与网络设备 耦合的问题。 虚拟机可以从一台物理计算机迁移到另一台物理计算 机上, 不需要对虚拟机中的软件作任何的改动。  In this embodiment, the data packets acquired by the virtual machine are finally sent to the application on the virtual machine, and all operations on the host are implemented by the softswitch center on the host. Since different network devices generate different formats of the first notification information, the softswitch center running on the host needs to have an adaptation function to adapt to different hardware differences. Meanwhile, the format of the second notification information is a standard format agreed in advance with the virtual machine, and the application on the virtual machine can process the second notification without any modification as long as the host converts the first notification information into the second notification information. Information, without the problem of coupling with network devices. A virtual machine can be migrated from one physical machine to another without any changes to the software in the virtual machine.
本发明的实施例提供的数据转发方法, 通过将网络设备发送的 信息的内存地址的形式转换为标准形式, 并将该标准形式的信, ¾的 内存地址发送至虚拟机上的应用程序, 解决了虚拟机中的应用程序 与物理机通信时损耗大问题, 同时提高了工作效率, 操作方便。 本发明的实施例, 提供一种数据转发方法, 应用于虚拟机上的 应用程序向网络设备发送数据包的过程中, 参照图 4 所示, 包括以 下步骤: The data forwarding method provided by the embodiment of the present invention converts the form of the memory address of the information sent by the network device into a standard form, and sends the standard form of the letter, the memory address of the standard form to the application on the virtual machine, to solve When the application in the virtual machine communicates with the physical machine, the loss is large, and the work efficiency is improved and the operation is convenient. An embodiment of the present invention provides a data forwarding method, which is applied to a process in which an application on a virtual machine sends a data packet to a network device, as shown in FIG. Next steps:
401、 主机接收虚拟机发送的第二通知信息。  401. The host receives the second notification information sent by the virtual machine.
其中, 第二通知信息包括逻辑通道号和虚拟机存储在内存中的 数据包的内存地址; 逻辑通道号为虚拟机与网络设备通信的逻辑通 道号; 虚拟机是通过虚拟机上的连接模块发送第二通知信息的。  The second notification information includes a logical channel number and a memory address of the data packet stored in the virtual machine by the virtual machine; the logical channel number is a logical channel number of the virtual machine communicating with the network device; the virtual machine is sent through the connection module on the virtual machine. The second notification message.
402、主机根据逻辑通道号与通讯实体的关系映射表获取与虚拟 机通信的网络设备。  402. The host acquires a network device that communicates with the virtual machine according to a relationship table between the logical channel number and the communication entity.
403、 主机根据第二通知信息获得第一通知信息。  403. The host obtains the first notification information according to the second notification information.
其中, 第一通知信息包括数据包的内存地址。  The first notification information includes a memory address of the data packet.
404、 主机发送第一通知信息至网络设备, 以便于网络设备根据 数据包的内存地址获得数据包。  404. The host sends the first notification information to the network device, so that the network device obtains the data packet according to the memory address of the data packet.
本发明的实施例提供的数据转发方法, 通过将网络设备发送的 信息的内存地址的形式转换为标准形式, 并将该标准形式的信, ¾的 内存地址发送至虚拟机上的应用程序, 解决了虚拟机中的应用程序 与物理机通信时损耗大问题, 同时提高了工作效率, 操作方便。 本发明的实施例, 提供一种数据转发方法, 虚拟机上的应用程 序向网络设备发送数据包的过程中, 参照图 5所示, 包括以下步骤: The data forwarding method provided by the embodiment of the present invention converts the form of the memory address of the information sent by the network device into a standard form, and sends the standard form of the letter, the memory address of the standard form to the application on the virtual machine, to solve When the application in the virtual machine communicates with the physical machine, the loss is large, and the work efficiency is improved and the operation is convenient. An embodiment of the present invention provides a data forwarding method. When an application on a virtual machine sends a data packet to a network device, as shown in FIG. 5, the method includes the following steps:
501、 虚拟机存储数据包至内存中。 501. The virtual machine stores the data packet into the memory.
502、 虚拟机通过虚拟机上的连接模块发送第二通知信息至主 机, 以便于主机根据第二通知信息获得第一通知信息, 并发送至网 络设备使得网络设备根据第一通知信息获得数据包。  502. The virtual machine sends the second notification information to the host by using the connection module on the virtual machine, so that the host obtains the first notification information according to the second notification information, and sends the information to the network device, so that the network device obtains the data packet according to the first notification information.
其中, 第二通知信息中包括网络设备与虚拟机通信的逻辑通道 号和数据包的内存地址。  The second notification information includes a logical channel number of the network device and the virtual machine and a memory address of the data packet.
本发明的实施例提供的数据转发方法, 通过将网络设备发送的 信息的内存地址的形式转换为标准形式, 并将该标准形式的信, ¾的 内存地址发送至虚拟机上的应用程序, 解决了虚拟机中的应用程序 与物理机通信时损耗大问题, 同时提高了工作效率, 操作方便。 本发明的实施例提供一种数据转发方法, 虚拟机上的应用程序 向网络设备发送数据包的过程中, 参照图 6所示, 包括以下步骤: 601、 虚拟机存储数据包至内存中。 The data forwarding method provided by the embodiment of the present invention converts the form of the memory address of the information sent by the network device into a standard form, and sends the standard form of the letter, the memory address of the standard form to the application on the virtual machine, to solve When the application in the virtual machine communicates with the physical machine, the loss is large, and the work efficiency is improved and the operation is convenient. An embodiment of the present invention provides a data forwarding method. In the process of sending a data packet to a network device by an application on a virtual machine, as shown in FIG. 6, the method includes the following steps: 601. The virtual machine stores a data packet into the memory.
602、 虚拟机通过虚拟机上的连接模块发送第二通知信息至主 机。  602. The virtual machine sends the second notification information to the host by using a connection module on the virtual machine.
其中, 第二通知信息包括逻辑通道号和虚拟机存储在内存中的 数据包的内存地址; 逻辑通道号为虚拟机与网络设备通信的逻辑通 道号。  The second notification information includes a logical channel number and a memory address of the data packet stored by the virtual machine in the memory; the logical channel number is a logical channel number of the virtual machine communicating with the network device.
第二通知信息中的数据包的内存地址以标准形式存在; 其中, 标准形式指的是预先与虚拟机约定的格式。  The memory address of the data packet in the second notification information exists in a standard form; wherein the standard form refers to a format agreed in advance with the virtual machine.
具体的, 虚拟机上的连接模块是通过软件的方式实现的, 用于 通过主机上的软交换中心与主机进行通信, 该软交换中心也是通过 软件形式实现的。  Specifically, the connection module on the virtual machine is implemented by software, and is used to communicate with the host through a softswitch center on the host, and the softswitch center is also implemented by software.
603、 主机接收虚拟机发送的第二通知信息。  603. The host receives the second notification information sent by the virtual machine.
604、主机根据逻辑通道号与通讯实体的关系映射表获取与虚拟 机通信的网络设备。  604. The host acquires a network device that communicates with the virtual machine according to a relationship table between the logical channel number and the communication entity.
逻辑通道号与通讯实体的关系映射表可以根据通讯实体的变化 进行实时更新。  The relationship table between the logical channel number and the communication entity can be updated in real time according to the change of the communication entity.
当虚拟机上的应用程序需要与网络设备通信时, 需要预先从主 机上获取逻辑通道号, 主机允许其通信时, 会在自 己的逻辑通道号 与通讯实体的关系映射表中增加相应的内容, 并告知双方一个逻辑 通道号。 则逻辑通道号与通讯实体的关系映射表会根据互相通信双 方的变化而不断的更新。  When the application on the virtual machine needs to communicate with the network device, the logical channel number needs to be obtained from the host in advance. When the host allows the communication, the corresponding content is added in the relationship mapping table between the logical channel number and the communication entity. And tell both parties a logical channel number. Then, the relationship table between the logical channel number and the communication entity is continuously updated according to the changes of the mutual communication.
605、 主机解析第二通知信息获得数据包的内存地址。  605. The host parses the second notification information to obtain a memory address of the data packet.
606、主机将数据包的内存地址的形式转换为网络设备可以识别 的形式。  606. The host converts the form of the memory address of the data packet into a form that the network device can recognize.
607、 主机根据转换的数据包的内存地址获得第一通知信息。 其中, 第一通知信息包括数据包的内存地址。  607. The host obtains the first notification information according to the memory address of the converted data packet. The first notification information includes a memory address of the data packet.
具体的, 主机通过主机上的软交换中心将第二通知信息转换为 第一通知信息, 从而使得网络设备可以接收虚拟机上的应用程序发 送的数据包, 避免耦合问题的产生。 不同的网络设备只能识别与 自 己格式相同的信息。 Specifically, the host converts the second notification information into a softswitch center on the host by using The first notification information, so that the network device can receive the data packet sent by the application on the virtual machine to avoid the coupling problem. Different network devices can only recognize the same information as their own format.
608、 主机发送第一通知信息至网络设备, 以便于网络设备根据 数据包的内存地址获得数据包。  608. The host sends the first notification information to the network device, so that the network device obtains the data packet according to the memory address of the data packet.
第一通知信息传输数据的接口根据网络设备的不同而不同。 第二通知信息传输数据的接口的形式为标准形式。  The interface of the first notification information transmission data differs depending on the network device. The form of the interface for transmitting information of the second notification information is a standard form.
在本实施例中虚拟机发送的数据包是由虚拟机上的应用程序提 供的, 主机上的所有操作都是通过主机上的软件换中心进行的。 本 实施例中与上述实施例中相同的操作与上述实施例中的解释相同, 此处不再赘述。  In this embodiment, the data packet sent by the virtual machine is provided by an application on the virtual machine, and all operations on the host are performed by software switching on the host. The same operations in the above embodiment as those in the above embodiment are the same as those in the above embodiment, and are not described herein again.
本发明的实施例提供的数据转发方法, 通过将网络设备发送的 信息的内存地址的形式转换为标准形式, 并将该标准形式的信, ¾的 内存地址发送至虚拟机上的应用程序, 解决了虚拟机中的应用程序 与物理机通信时损耗大问题, 同时提高了工作效率, 操作方便。  The data forwarding method provided by the embodiment of the present invention converts the form of the memory address of the information sent by the network device into a standard form, and sends the standard form of the letter, the memory address of the standard form to the application on the virtual machine, to solve When the application in the virtual machine communicates with the physical machine, the loss is large, and the work efficiency is improved and the operation is convenient.
当然, 上述实施例中的虚拟机上的应用程序与物理设备之间的 通信还包括多个虚拟机上的应用程序与多个物理设备通信的情况, 具体的操作方法与上述实施例中的一个虚拟机上的应用程序与一个 物理设备通信的方法的过程相同, 此处不再赘述。  Of course, the communication between the application on the virtual machine and the physical device in the foregoing embodiment further includes the case where the application on the plurality of virtual machines communicates with the plurality of physical devices, and the specific operation method is the same as one of the foregoing embodiments. The process of the application on the virtual machine is the same as the method of communicating with one physical device, and will not be described here.
对于上述的实施例, 应用本发明中系统, 还可以扩展为釆用类 似的方法进行不同的网络设备之间的通信。 此时, 只需要网络设备 发送第一通知信息至主机, 主机需要将第一通知信息转换为另 ―网 络设备可识别的形式的通知信息, 发送至另一网络设备。 还可以为 扩展为虚拟机上不同的应用程序之间的通信: 此时, 主机不需要进 行任何的操作只需要将虚拟机上的应用程序发送的第二通知信息转 发至另一应用程序上即可。 还可以扩展为不同虚拟机之间的通信。 还可以扩展为主机上的应用程序与网络设备之间的通信, 此时, 主 机只需要直接接收网络设备发送的第一通知信息即可, 不需要做任 何额定操作。 还包括: 主机上的应用程序之间的通信、 主机上的应 用程序与虚拟机上的应用程序之间的通信, 具体的步骤参照本发明 上述实施例中与相应设备相关的步骤操作即可, 此处不再——列出。 其中, 一个第一通知信息对应多个第二通知信息, 一个第二通知信 息对应多个第一通知信息, 一个第二通知信息对应多个应用程序, 一个应用程序可以对应多个第二通知信息。 本发明的实施例提供一种主机 7 , 参照图 7所示, 该主机包括: 接收单元 71 , 获取单元 72和发送单元 73 , 其中: For the above embodiments, the system of the present invention can be extended to perform communication between different network devices in a similar manner. At this time, the network device only needs to send the first notification information to the host, and the host needs to convert the first notification information into notification information in a form recognizable by another network device, and send the information to another network device. It can also be extended to communicate between different applications on the virtual machine: At this point, the host does not need to perform any operations, only need to forward the second notification information sent by the application on the virtual machine to another application. can. It can also be extended to communicate between different virtual machines. It can also be extended to the communication between the application on the host and the network device. At this time, the host only needs to directly receive the first notification information sent by the network device, and does not need to perform any rated operation. Also included: communication between applications on the host, should be on the host For the communication between the program and the application on the virtual machine, the specific steps may be referred to the steps related to the corresponding device in the above embodiment of the present invention, and are not listed here. The first notification information corresponds to the plurality of second notification information, the second notification information corresponds to the plurality of first notification information, the second notification information corresponds to the plurality of application programs, and the one application program can correspond to the plurality of second notification information. . An embodiment of the present invention provides a host 7. Referring to FIG. 7, the host includes: a receiving unit 71, an obtaining unit 72, and a sending unit 73, where:
接收单元 7 1 , 用于接收网络设备发送的第一通知信息。  The receiving unit 7 1 is configured to receive first notification information sent by the network device.
其中, 第一通知信息中包括网络设备存储在内存中的数据包的 内存地址。  The first notification information includes a memory address of a data packet stored by the network device in the memory.
获取单元 72 , 用于根据逻辑通道号与通讯实体的关系映射表获 取与网络设备通信的虚拟机。  The obtaining unit 72 is configured to obtain a virtual machine that communicates with the network device according to the relationship table between the logical channel number and the communication entity.
其中, 逻辑通道号是主机与虚拟机通信的逻辑通道号。  The logical channel number is the logical channel number of the host communicating with the virtual machine.
获取单元 72 , 还用于根据接收单元 71 接收到的第一通知信息 获得第二通知信息。  The obtaining unit 72 is further configured to obtain the second notification information according to the first notification information received by the receiving unit 71.
其中, 第二通知信息包括逻辑通道号和数据包的内存地址。 发送单元 73 , 用于发送获取单元 72 获取到的第二通知信息至 虚拟机, 以便于虚拟机根据数据包的内存地址获得数据包。  The second notification information includes a logical channel number and a memory address of the data packet. The sending unit 73 is configured to send the second notification information acquired by the obtaining unit 72 to the virtual machine, so that the virtual machine obtains the data packet according to the memory address of the data packet.
其中,虚拟机是通过虚拟机上的软件模块接收第二通知信息的。 本发明的实施例提供的主机, 通过将网络设备发送的信息的内 存地址的形式转换为标准形式, 并将该标准形式的信息的内存地址 发送至虚拟机上的应用程序, 解决了虚拟机中的应用程序与物理机 通信时损耗大问题, 同时提高了工作效率, 操作方便。  The virtual machine receives the second notification information through a software module on the virtual machine. The host provided by the embodiment of the present invention solves the problem in the virtual machine by converting the form of the memory address of the information sent by the network device into a standard form, and sending the memory address of the standard form information to the application on the virtual machine. The application consumes a large problem when communicating with the physical machine, and at the same time improves work efficiency and is easy to operate.
具体的, 参照图 8所示, 该获取单元 72 包括: 解析模块 721、 转换模块 722和获取模块 723 , 其中:  Specifically, referring to FIG. 8, the obtaining unit 72 includes: a parsing module 721, a converting module 722, and an obtaining module 723, where:
解析模块 721 , 用于解析第一通知信息获得数据包的内存地址。 转换模块 722 , 用于将解析模块 721 获得的数据包的内存地址 的形式转换为标准形式。 获取模块 723 , 用于根据转换模块 722 转换为标准形式的数据 包的内存地址和逻辑通道号获得第二通知信息。 The parsing module 721 is configured to parse the first notification information to obtain a memory address of the data packet. The conversion module 722 is configured to convert the form of the memory address of the data packet obtained by the parsing module 721 into a standard form. The obtaining module 723 is configured to obtain second notification information according to the memory address and the logical channel number of the data packet converted by the conversion module 722 into a standard form.
第二通知信息中的数据包的内存地址以标准形式存在; 其中, 标准形式指的是预先与虚拟机约定的格式。  The memory address of the data packet in the second notification information exists in a standard form; wherein the standard form refers to a format agreed in advance with the virtual machine.
逻辑通道号与通讯实体的关系映射表可以根据通讯实体的变化 进行实时更新。  The relationship table between the logical channel number and the communication entity can be updated in real time according to the change of the communication entity.
第一通知信息传输数据的接口根据网络设备的不同而不同。 第二通知信息传输数据的接口的形式为标准形式。  The interface of the first notification information transmission data differs depending on the network device. The form of the interface for transmitting information of the second notification information is a standard form.
本发明的实施例提供的主机, 通过将网络设备发送的信息的内 存地址的形式转换为标准形式, 并将该标准形式的信息的内存地址 发送至虚拟机上的应用程序, 解决了虚拟机中的应用程序与物理机 通信时损耗大问题, 同时提高了工作效率, 操作方便。 本发明的实施例提供一种虚拟机 8 , 参照图 9 所示, 该虚拟机 包括: 接收单元 81和获取单元 82 , 其中:  The host provided by the embodiment of the present invention solves the problem in the virtual machine by converting the form of the memory address of the information sent by the network device into a standard form, and sending the memory address of the standard form information to the application on the virtual machine. The application consumes a large problem when communicating with the physical machine, and at the same time improves work efficiency and is easy to operate. An embodiment of the present invention provides a virtual machine 8. Referring to FIG. 9, the virtual machine includes: a receiving unit 81 and an obtaining unit 82, where:
接收单元 8 1 , 用于通过虚拟机上的软件模块接收主机发送的第 二通知信息。  The receiving unit 8 1 is configured to receive, by using a software module on the virtual machine, the second notification information sent by the host.
其中, 第二通知信息是根据第一通知信息获得的, 包括主机与 虚拟机通信的逻辑通道号和数据包的内存地址; 第一通知信息是网 络设备发送至主机的, 包括网络设备存储在内存中的数据包的内存 地址。  The second notification information is obtained according to the first notification information, and includes a logical channel number of the host and the virtual machine and a memory address of the data packet. The first notification information is sent by the network device to the host, where the network device is stored in the memory. The memory address of the packet in .
获取单元 82 , 用于根据接收单元 81 接收到的数据包的内存地 址在内存中获取数据包。  The obtaining unit 82 is configured to obtain a data packet in the memory according to the memory address of the data packet received by the receiving unit 81.
第二通知信息中的数据包的内存地址以标准形式存在; 其中, 标准形式指的是预先与虚拟机约定的格式。  The memory address of the data packet in the second notification information exists in a standard form; wherein the standard form refers to a format agreed in advance with the virtual machine.
第一通知信息传输数据的接口根据网络设备的不同而不同。 第二通知信息传输数据的接口的形式为标准形式。  The interface of the first notification information transmission data differs depending on the network device. The form of the interface for transmitting information of the second notification information is a standard form.
本发明的实施例提供的虚拟机, 通过将网络设备发送的信息的 内存地址的形式转换为标准形式, 并将该标准形式的信息的内存地 址发送至虚拟机上的应用程序, 解决了虚拟机中的应用程序与物理 机通信时损耗大问题, 同时提高了工作效率, 操作方便。 本发明的实施例提供一种主机 9 , 参照图 10所示, 包括: 接收 单元 91、 获取单元 92和发送单元 93 , 其中: The virtual machine provided by the embodiment of the present invention converts the form of the memory address of the information sent by the network device into a standard form, and stores the information in the standard form. The application sent to the virtual machine solves the problem of large loss in the communication between the application and the physical machine in the virtual machine, and improves the work efficiency and the operation convenience. An embodiment of the present invention provides a host 9, which is shown in FIG. 10, and includes: a receiving unit 91, an obtaining unit 92, and a sending unit 93, where:
接收单元 91 , 用于接收虚拟机发送的第二通知信息。  The receiving unit 91 is configured to receive second notification information sent by the virtual machine.
其中, 第二通知信息包括逻辑通道号和虚拟机存储在内存中的 数据包的内存地址; 逻辑通道号为虚拟机与网络设备通信的逻辑通 道号; 虚拟机是通过虚拟机上的连接模块发送第二通知信息的。  The second notification information includes a logical channel number and a memory address of the data packet stored in the virtual machine by the virtual machine; the logical channel number is a logical channel number of the virtual machine communicating with the network device; the virtual machine is sent through the connection module on the virtual machine. The second notification message.
获取单元 92 , 用于根据逻辑通道号与通讯实体的关系映射表获 取与虚拟机通信的网络设备。  The obtaining unit 92 is configured to obtain a network device that communicates with the virtual machine according to the relationship table between the logical channel number and the communication entity.
获取单元 92 , 还用于根据接收单元 91 接收到的第二通知信息 获得第一通知信息。  The obtaining unit 92 is further configured to obtain the first notification information according to the second notification information received by the receiving unit 91.
其中, 第一通知信息包括数据包的内存地址。  The first notification information includes a memory address of the data packet.
发送单元 93 , 用于发送第一通知信息至获取单元 92 获取的网 络设备, 以便于网络设备根据数据包的内存地址获得数据包。  The sending unit 93 is configured to send the first notification information to the network device acquired by the obtaining unit 92, so that the network device obtains the data packet according to the memory address of the data packet.
进一步, 参照图 1 1所示, 该获取单元 92 包括: 解析模块 921、 转换模块 922和获取模块 923 , 其中:  Further, referring to FIG. 11, the obtaining unit 92 includes: a parsing module 921, a converting module 922, and an obtaining module 923, where:
解析模块 921 , 用于解析第二通知信息获得数据包的内存地址。 转换模块 922 , 用于将解析模块 921 得到的数据报的内存地址 的形式转换为网络设备可以识别的形式。  The parsing module 921 is configured to parse the second notification information to obtain a memory address of the data packet. The conversion module 922 is configured to convert the form of the memory address of the datagram obtained by the parsing module 921 into a form recognizable by the network device.
获取模块 923 , 用于根据转换模块 922 转换的数据包的内存地 址获得第一通知信息。  The obtaining module 923 is configured to obtain the first notification information according to the memory address of the data packet converted by the conversion module 922.
第二通知信息中的数据包的内存地址以标准形式存在; 其中, 标准形式指的是预先与虚拟机约定的格式。  The memory address of the data packet in the second notification information exists in a standard form; wherein the standard form refers to a format agreed in advance with the virtual machine.
逻辑通道号与通讯实体的关系映射表可以根据通讯实体的变化 进行实时更新。  The relationship table between the logical channel number and the communication entity can be updated in real time according to the change of the communication entity.
第一通知信息传输数据的接口根据网络设备的不同而不同。 第二通知信息传输数据的接口的形式为标准形式。 本发明的实施例提供的主机, 通过将网络设备发送的信息的内 存地址的形式转换为标准形式, 并将该标准形式的信息的内存地址 发送至虚拟机上的应用程序, 解决了虚拟机中的应用程序与物理机 通信时损耗大问题, 同时提高了工作效率, 操作方便。 本发明的实施例提供一种虚拟机 10, 参照图 12 所示, 包括: 处理单元 1001和发送单元 1002, 其中: The interface of the first notification information transmission data differs depending on the network device. The form of the interface for transmitting information of the second notification information is a standard form. The host provided by the embodiment of the present invention solves the problem in the virtual machine by converting the form of the memory address of the information sent by the network device into a standard form, and sending the memory address of the standard form information to the application on the virtual machine. The application consumes a large problem when communicating with the physical machine, and at the same time improves work efficiency and is easy to operate. An embodiment of the present invention provides a virtual machine 10, as shown in FIG. 12, including: a processing unit 1001 and a sending unit 1002, where:
处理单元 1001, 用于存储数据包至内存中。  The processing unit 1001 is configured to store the data packet into the memory.
发送单元 1002, 用于通过虚拟机上的连接模块发送第二通知信 息至主机, 以便于主机根据第二通知信息获得第一通知信息, 并发 送至网络设备使得网络设备根据第一通知信息获得数据包。  The sending unit 1002 is configured to send the second notification information to the host by using the connection module on the virtual machine, so that the host obtains the first notification information according to the second notification information, and sends the information to the network device, so that the network device obtains the data according to the first notification information. package.
其中, 第二通知信息中包括网络设备与虚拟机通信的逻辑通道 号和数据包的内存地址。  The second notification information includes a logical channel number of the network device and the virtual machine and a memory address of the data packet.
第二通知信息中的数据包的内存地址以标准形式存在; 其中, 标准形式指的是预先与虚拟机约定的格式。  The memory address of the data packet in the second notification information exists in a standard form; wherein the standard form refers to a format agreed in advance with the virtual machine.
第一通知信息传输数据的接口根据网络设备的不同而不同。 第二通知信息传输数据的接口的形式为标准形式。  The interface of the first notification information transmission data differs depending on the network device. The form of the interface for transmitting information of the second notification information is a standard form.
本发明的实施例提供的虚拟机, 通过将网络设备发送的信息的 内存地址的形式转换为标准形式, 并将该标准形式的信息的内存地 址发送至虚拟机上的应用程序, 解决了虚拟机中的应用程序与物理 机通信时损耗大问题, 同时提高了工作效率, 操作方便。 本发明的实施例提供一种主机 11, 参照图 13 所示, 包括: 至 少一个处理器 1101、 存储器 1102、 通信接口 1103和总线 1104, 至 少一个处理器 1101、 存储器 1102 和通信接口 1103 通过总线 1104 连接并完成相互间的通信, 存储器 1102用于存储程序代码, 其中: 该总线 1104 可以是工业标准体系结构 ( Industry Standard Architecture,简称为 ISA )总线、夕卜部设备互连( Peripheral Component Interconnect, 简称为 PCI )总线或扩展工业标准体系结构 ( Extended Industry Standard Architecture, 简称为 EISA ) 总线等。 该总线 1104 可以分为地址总线、 数据总线、 控制总线等。 为便于表示, 图 13 中 仅用一条粗线表示, 但并不表示仅有一根总线或一种类型的总线。 其巾: The virtual machine provided by the embodiment of the present invention solves the virtual machine by converting the form of the memory address of the information sent by the network device into a standard form, and transmitting the memory address of the standard form information to the application on the virtual machine. The application in the communication with the physical machine consumes a large problem, and at the same time, the work efficiency is improved and the operation is convenient. An embodiment of the present invention provides a host 11, which is shown in FIG. 13, and includes: at least one processor 1101, a memory 1102, a communication interface 1103, and a bus 1104. At least one processor 1101, a memory 1102, and a communication interface 1103 pass through a bus 1104. Connecting and completing communication with each other, the memory 1102 is configured to store program code, where: the bus 1104 can be an Industry Standard Architecture (ISA) bus, and a Peripheral Component Interconnect (referred to as PCI) bus or extended industry standard architecture ( Extended Industry Standard Architecture, referred to as EISA) bus. The bus 1104 can be divided into an address bus, a data bus, a control bus, and the like. For ease of representation, only one thick line is shown in Figure 13, but it does not mean that there is only one bus or one type of bus. Its towel:
存储器 1102用于存储程序代码, 该程序代码包括操作指令。 存 储器 1102可能包含高速 RAM存储器, 也可能还包括非易失性存储 器 ( non-volatile memory ), 例如至少一个磁盘存 4诸器。  The memory 1102 is for storing program code, the program code including an operation instruction. Memory 1102 may include high speed RAM memory and may also include non-volatile memory, such as at least one disk storage device.
处理器 1101可能是一个中央处理器 ( Central Processing Unit, 简称为 CPU), 或者是特定集成电路( Application Specific Integrated Circuit, 简称为 ASIC ), 或者是被配置成实施本发明实施例的一个 或多个集成电路。  The processor 1101 may be a central processing unit (CPU), or an application specific integrated circuit (ASIC), or one or more configured to implement the embodiments of the present invention. integrated circuit.
通信接口 1103, 主要用于实现本实施例中的装置之间的通信。 处理器 1101, 还用于调用存储器 1102 中的程序代码, 用以执 行以下操作:  The communication interface 1103 is mainly used to implement communication between devices in this embodiment. The processor 1101 is further configured to call the program code in the memory 1102 to perform the following operations:
接收网络设备发送的第一通知信息。  Receiving the first notification information sent by the network device.
其中, 第一通知信息中包括网络设备存储在内存中的数据包的 内存地址。  The first notification information includes a memory address of a data packet stored by the network device in the memory.
根据逻辑通道号与通讯实体的关系映射表获取与网络设备通信 的虚拟机。 其中, 该逻辑通道号是主机与虚拟机通信的逻辑通道号。  Obtain a virtual machine that communicates with the network device according to the relationship table between the logical channel number and the communication entity. The logical channel number is a logical channel number that the host communicates with the virtual machine.
根据第一通知信息获得第二通知信息。  The second notification information is obtained according to the first notification information.
其中, 第二通知信息中包括逻辑通道号和数据包的内存地址。 发送第二通知信息至虚拟机, 以便于虚拟机根据数据包的内存 地址获得数据包。  The second notification information includes a logical channel number and a memory address of the data packet. The second notification message is sent to the virtual machine, so that the virtual machine obtains the data packet according to the memory address of the data packet.
其中,虚拟机是通过虚拟机上的软件模块接收第二通知信息的。 处理器 1101具体用于执行以下操作:  The virtual machine receives the second notification information through a software module on the virtual machine. The processor 1101 is specifically configured to perform the following operations:
解析第一通知信息获得数据包的内存地址。  The first notification information is parsed to obtain the memory address of the data packet.
将数据包的内存地址的形式转换为标准形式。  Converts the form of the memory address of the packet to a standard form.
根据转换为标准形式的数据包的内存地址和逻辑通道号获得第 二通知信息。 第二通知信息中的数据包的内存地址以标准形式存在; 其中, 标准形式指的是预先与虚拟机约定的格式。 The second notification information is obtained according to the memory address and the logical channel number of the data packet converted into the standard form. The memory address of the data packet in the second notification information exists in a standard form; wherein the standard form refers to a format agreed in advance with the virtual machine.
逻辑通道号与通讯实体的关系映射表可以根据通讯实体的变化 进行实时更新。  The relationship table between the logical channel number and the communication entity can be updated in real time according to the change of the communication entity.
第一通知信息传输数据的接口根据网络设备的不同而不同。 第二通知信息传输数据的接口的形式为标准形式。  The interface of the first notification information transmission data differs depending on the network device. The form of the interface for transmitting information of the second notification information is a standard form.
本发明的实施例提供的主机, 通过将网络设备发送的信息的内 存地址的形式转换为标准形式, 并将该标准形式的信息的内存地址 发送至虚拟机上的应用程序, 解决了虚拟机中的应用程序与物理机 通信时损耗大问题, 同时提高了工作效率, 操作方便。 本发明的实施例提供一种虚拟机 12 , 参照图 14 所示, 包括: 至少一个处理器 1201、 存储器 1202、 通信接口 1203和总线 1204 , 至少一个处理器 1201、存储器 1202和通信接口 1203通过总线 1204 连接并完成相互间的通信, 存储器 1202用于存储程序代码, 其中: 该总线 1204 可以是工业标准体系结构 ( Industry Standard Architecture ,简称为 ISA )总线、夕卜部设备互连( Peripheral Component Interconnect , 简称为 PCI )总线或扩展工业标准体系结构 ( Extended Industry Standard Architecture , 简称为 EISA ) 总线等。 该总线 1204 可以分为地址总线、 数据总线、 控制总线等。 为便于表示, 图 14 中 仅用一条粗线表示, 但并不表示仅有一根总线或一种类型的总线。 其巾:  The host provided by the embodiment of the present invention solves the problem in the virtual machine by converting the form of the memory address of the information sent by the network device into a standard form, and sending the memory address of the standard form information to the application on the virtual machine. The application consumes a large problem when communicating with the physical machine, and at the same time improves work efficiency and is easy to operate. An embodiment of the present invention provides a virtual machine 12, as shown in FIG. 14, comprising: at least one processor 1201, a memory 1202, a communication interface 1203, and a bus 1204. At least one processor 1201, a memory 1202, and a communication interface 1203 pass through a bus. 1204 connects and completes communication with each other, and the memory 1202 is configured to store program code, where: the bus 1204 may be an Industry Standard Architecture (ISA) bus, and a Peripheral Component Interconnect (abbreviation). For PCI) bus or extended industry standard architecture (EISA) bus. The bus 1204 can be divided into an address bus, a data bus, a control bus, and the like. For ease of representation, only one thick line is shown in Figure 14, but it does not mean that there is only one bus or one type of bus. Its towel:
存储器 1202用于存储程序代码, 该程序代码包括操作指令。 存 储器 1202可能包含高速 RAM存储器, 也可能还包括非易失性存储 器 ( non-volatile memory ) , 例如至少一个磁盘存 4诸器。  The memory 1202 is for storing program code, the program code including an operation instruction. Memory 1202 may include high speed RAM memory and may also include non-volatile memory, such as at least one disk storage device.
处理器 1201可能是一个中央处理器 ( Central Processing Unit , 简称为 CPU ) , 或者是特定集成电路( Application Specific Integrated Circuit , 简称为 ASIC ) , 或者是被配置成实施本发明实施例的一个 或多个集成电路。 通信接口 1203 , 主要用于实现本实施例中的装置之间的通信。 处理器 1201 , 还用于调用存储器 1202 中的程序代码, 用以执 行以下操作: The processor 1201 may be a central processing unit (CPU), or an application specific integrated circuit (ASIC), or one or more configured to implement the embodiments of the present invention. integrated circuit. The communication interface 1203 is mainly used to implement communication between devices in this embodiment. The processor 1201 is further configured to call the program code in the memory 1202 to perform the following operations:
通过虚拟机上的软件模块接收主机发送的第二通知信息。  The second notification information sent by the host is received by the software module on the virtual machine.
其中, 第二通知信息是根据第一通知信息获得的, 包括主机与 虚拟机通信的逻辑通道号和数据包的内存地址; 第一通知信息是网 络设备发送至主机的, 包括网络设备存储在内存中的数据包的内存 地址。  The second notification information is obtained according to the first notification information, and includes a logical channel number of the host and the virtual machine and a memory address of the data packet. The first notification information is sent by the network device to the host, where the network device is stored in the memory. The memory address of the packet in .
根据数据包的内存地址在内存中获取数据包。  Get the packet in memory based on the memory address of the packet.
第二通知信息中的数据包的内存地址以标准形式存在; 其中, 标准形式指的是预先与虚拟机约定的格式。  The memory address of the data packet in the second notification information exists in a standard form; wherein the standard form refers to a format agreed in advance with the virtual machine.
第一通知信息传输数据的接口根据网络设备的不同而不同。 第二通知信息传输数据的接口的形式为标准形式。  The interface of the first notification information transmission data differs depending on the network device. The form of the interface for transmitting information of the second notification information is a standard form.
本发明的实施例提供的虚拟机, 通过将网络设备发送的信息的 内存地址的形式转换为标准形式, 并将该标准形式的信息的内存地 址发送至虚拟机上的应用程序, 解决了虚拟机中的应用程序与物理 机通信时损耗大问题, 同时提高了工作效率, 操作方便。 本发明的实施例提供一种主机 13 , 参照图 15 所示, 包括: 至 少一个处理器 1301、 存储器 1302、 通信接口 1303和总线 1304 , 至 少一个处理器 1301、 存储器 1302 和通信接口 1303 通过总线 1304 连接并完成相互间的通信, 存储器 1302用于存储程序代码, 其中: 该总线 1304 可以是工业标准体系结构 ( Industry Standard Architecture ,简称为 ISA )总线、夕卜部设备互连( Peripheral Component Interconnect , 简称为 PCI )总线或扩展工业标准体系结构 ( Extended Industry Standard Architecture , 简称为 EISA ) 总线等。 该总线 1304 可以分为地址总线、 数据总线、 控制总线等。 为便于表示, 图 15 中 仅用一条粗线表示, 但并不表示仅有一根总线或一种类型的总线。 其巾: 存储器 1302用于存储程序代码, 该程序代码包括操作指令。 存 储器 1302可能包含高速 RAM存储器, 也可能还包括非易失性存储 器 ( non-volatile memory ) , 例如至少一个磁盘存 4诸器。 The virtual machine provided by the embodiment of the present invention solves the virtual machine by converting the form of the memory address of the information sent by the network device into a standard form, and transmitting the memory address of the standard form information to the application on the virtual machine. The application in the communication with the physical machine consumes a large problem, and at the same time, the work efficiency is improved and the operation is convenient. An embodiment of the present invention provides a host 13, which is shown in FIG. 15, and includes: at least one processor 1301, a memory 1302, a communication interface 1303, and a bus 1304. At least one processor 1301, a memory 1302, and a communication interface 1303 pass through a bus 1304. Connecting and completing communication with each other, the memory 1302 is configured to store program code, where: the bus 1304 may be an Industry Standard Architecture (ISA) bus, and a Peripheral Component Interconnect (abbreviated as PCI) bus or extended industry standard architecture (EISA) bus. The bus 1304 can be divided into an address bus, a data bus, a control bus, and the like. For ease of representation, only one thick line is shown in Figure 15, but it does not mean that there is only one bus or one type of bus. Its towel: The memory 1302 is for storing program code, and the program code includes an operation instruction. The memory 1302 may include a high speed RAM memory, and may also include a non-volatile memory such as at least one disk memory.
处理器 1301可能是一个中央处理器 ( Central Processing Unit , 简称为 CPU ) , 或者是特定集成电路( Application Specific Integrated Circuit , 简称为 ASIC ) , 或者是被配置成实施本发明实施例的一个 通信接口 1303 , 主要用于实现本实施例中的装置之间的通信。 处理器 1301 , 还用于调用存储器 1302 中的程序代码, 用以执 行以下操作:  The processor 1301 may be a central processing unit (CPU), or an application specific integrated circuit (ASIC), or a communication interface 1303 configured to implement the embodiment of the present invention. It is mainly used to implement communication between devices in this embodiment. The processor 1301 is further configured to call the program code in the memory 1302 to perform the following operations:
接收虚拟机发送的第二通知信息。  Receiving second notification information sent by the virtual machine.
其中, 第二通知信息包括逻辑通道号和虚拟机存储在内存中的 数据包的内存地址; 逻辑通道号为虚拟机与网络设备通信的逻辑通 道号; 虚拟机是通过虚拟机上的连接模块发送第二通知信息的。  The second notification information includes a logical channel number and a memory address of the data packet stored in the virtual machine by the virtual machine; the logical channel number is a logical channel number of the virtual machine communicating with the network device; the virtual machine is sent through the connection module on the virtual machine. The second notification message.
根据逻辑通道号与通讯实体的关系映射表获取与虚拟机通信的 网络设备。  Obtain a network device that communicates with the virtual machine according to the relationship table between the logical channel number and the communication entity.
根据第二通知信息获得第一通知信息。  The first notification information is obtained according to the second notification information.
其中, 第一通知信息包括数据包的内存地址。  The first notification information includes a memory address of the data packet.
发送第一通知信息至网络设备, 以便于网络设备根据数据包的 内存地址获得数据包。  The first notification message is sent to the network device, so that the network device obtains the data packet according to the memory address of the data packet.
进一步, 处理器 1301具体用于执行以下步骤:  Further, the processor 1301 is specifically configured to perform the following steps:
解析第二通知信息获得数据包的内存地址。  The second notification information is parsed to obtain the memory address of the data packet.
将数据报的内存地址的形式转换为网络设备可以识别的形式。 根据转换的数据包的内存地址获得第一通知信息。  Converts the form of the memory address of the datagram into a form that the network device can recognize. The first notification information is obtained according to the memory address of the converted data packet.
具体的,第二通知信息中的数据包的内存地址以标准形式存在。 其中, 标准形式指的是预先与虚拟机约定的格式。  Specifically, the memory address of the data packet in the second notification information exists in a standard form. The standard form refers to the format agreed with the virtual machine in advance.
逻辑通道号与通讯实体的关系映射表可以根据通讯实体的变化 进行实时更新。  The relationship table between the logical channel number and the communication entity can be updated in real time according to the change of the communication entity.
第一通知信息传输数据的接口根据网络设备的不同而不同。 第二通知信息传输数据的接口的形式为标准形式。 The interface of the first notification information transmission data differs depending on the network device. The form of the interface for transmitting information of the second notification information is a standard form.
本发明的实施例提供的主机, 通过将网络设备发送的信息的内 存地址的形式转换为标准形式, 并将该标准形式的信息的内存地址 发送至虚拟机上的应用程序, 解决了虚拟机中的应用程序与物理机 通信时损耗大问题, 同时提高了工作效率, 操作方便。 本发明的实施例提供一种虚拟机 14 , 参照图 16 所示, 包括: 至少一个处理器 1401、 存储器 1402、 通信接口 1403和总线 1404 , 至少一个处理器 1401、存储器 1402和通信接口 1403通过总线 1404 连接并完成相互间的通信, 存储器 1402用于存储程序代码, 其中: 该总线 1404 可以是工业标准体系结构 ( Industry Standard Architecture ,简称为 ISA )总线、夕卜部设备互连( Peripheral Component Interconnect , 简称为 PCI )总线或扩展工业标准体系结构 ( Extended Industry Standard Architecture , 简称为 EISA ) 总线等。 该总线 1404 可以分为地址总线、 数据总线、 控制总线等。 为便于表示, 图 16 中 仅用一条粗线表示, 但并不表示仅有一根总线或一种类型的总线。 其巾:  The host provided by the embodiment of the present invention solves the problem in the virtual machine by converting the form of the memory address of the information sent by the network device into a standard form, and sending the memory address of the standard form information to the application on the virtual machine. The application consumes a large problem when communicating with the physical machine, and at the same time improves work efficiency and is easy to operate. An embodiment of the present invention provides a virtual machine 14, which is shown in FIG. 16, and includes: at least one processor 1401, a memory 1402, a communication interface 1403, and a bus 1404. At least one processor 1401, a memory 1402, and a communication interface 1403 pass through a bus. 1404 connects and completes communication with each other, and the memory 1402 is configured to store program code, where: the bus 1404 can be an Industry Standard Architecture (ISA) bus, and a Peripheral Component Interconnect (abbreviation). For PCI) bus or extended industry standard architecture (EISA) bus. The bus 1404 can be divided into an address bus, a data bus, a control bus, and the like. For ease of representation, only one thick line is shown in Figure 16, but it does not mean that there is only one bus or one type of bus. Its towel:
存储器 1402用于存储程序代码, 该程序代码包括操作指令。 存 储器 1302可能包含高速 RAM存储器, 也可能还包括非易失性存储 器 ( non-volatile memory ) , 例如至少一个磁盘存 4诸器。  The memory 1402 is for storing program code, the program code including an operation instruction. Memory 1302 may include high speed RAM memory and may also include non-volatile memory, such as at least one disk storage device.
处理器 1401可能是一个中央处理器 ( Central Processing Unit , 简称为 CPU ) , 或者是特定集成电路( Application Specific Integrated Circuit , 简称为 ASIC ) , 或者是被配置成实施本发明实施例的一个 或多个集成电路。  The processor 1401 may be a central processing unit (CPU), or an application specific integrated circuit (ASIC), or one or more configured to implement the embodiments of the present invention. integrated circuit.
通信接口 1403 , 主要用于实现本实施例中的装置之间的通信。 处理器 1401 , 还用于调用存储器 1402 中的程序代码, 用以执 行以下操作:  The communication interface 1403 is mainly used to implement communication between devices in this embodiment. The processor 1401 is further configured to call the program code in the memory 1402 to perform the following operations:
存储数据包至内存中。  Store the packet in memory.
通过虚拟机上的连接模块发送第二通知信息至主机, 以便于主 机根据第二通知信息获得第一通知信息, 并发送至网络设备使得网 络设备根据第一通知信息获得数据包。 Send the second notification message to the host through the connection module on the virtual machine, so as to facilitate the main The machine obtains the first notification information according to the second notification information, and sends the information to the network device, so that the network device obtains the data packet according to the first notification information.
其中, 第二通知信息中包括网络设备与虚拟机通信的逻辑通道 号和数据包的内存地址。  The second notification information includes a logical channel number of the network device and the virtual machine and a memory address of the data packet.
第二通知信息中的数据包的内存地址以标准形式存在。  The memory address of the data packet in the second notification message exists in a standard form.
其中, 标准形式指的是预先与虚拟机约定的格式。  The standard form refers to the format agreed with the virtual machine in advance.
第一通知信息传输数据的接口根据网络设备的不同而不同。 第二通知信息传输数据的接口的形式为标准形式。  The interface of the first notification information transmission data differs depending on the network device. The form of the interface for transmitting information of the second notification information is a standard form.
本发明的实施例提供的虚拟机, 通过将网络设备发送的信息的 内存地址的形式转换为标准形式, 并将该标准形式的信息的内存地 址发送至虚拟机上的应用程序, 解决了虚拟机中的应用程序与物理 机通信时损耗大问题, 同时提高了工作效率, 操作方便。 本发明的实施例提供一种数据转发系统,参照图 17所示,包括: 主机 a、 虚拟机 b和网络设备 c , 其中:  The virtual machine provided by the embodiment of the present invention solves the virtual machine by converting the form of the memory address of the information sent by the network device into a standard form, and transmitting the memory address of the standard form information to the application on the virtual machine. The application in the communication with the physical machine consumes a large problem, and at the same time, the work efficiency is improved and the operation is convenient. An embodiment of the present invention provides a data forwarding system, as shown in FIG. 17, including: a host a, a virtual machine b, and a network device c, where:
网络设备 c , 用于发送第一通知信息至主机 a 并存储数据在内 存中。  The network device c is configured to send the first notification information to the host a and store the data in the memory.
主机 a , 用于接收网络设备 c 发送的第一通知信息; 其中, 第 一通知信息中包括网络设备 c 存储在内存中的数据包的内存地址; 根据逻辑通道号与通讯实体的关系映射表获取与网络设备通信的虚 拟机 b ; 其中, 逻辑通道号是网络设备 c与虚拟机 b通信的逻辑通道 号; 根据第一通知信息获得第二通知信息; 其中, 第二通知信息包 括逻辑通道号和数据包的内存地址; 发送第二通知信息至虚拟机 b , 以便于虚拟机 b根据数据包的内存地址获得数据包; 其中, 虚拟机 b是通过虚拟机 b上的连接模块接收第二通知信息的。  The host a is configured to receive the first notification information sent by the network device c, where the first notification information includes a memory address of the data packet stored by the network device c in the memory; and the mapping table is obtained according to the relationship between the logical channel number and the communication entity. a virtual machine b that communicates with the network device; wherein, the logical channel number is a logical channel number that the network device c communicates with the virtual machine b; and the second notification information is obtained according to the first notification information; wherein the second notification information includes a logical channel number and The memory address of the data packet is sent to the virtual machine b, so that the virtual machine b obtains the data packet according to the memory address of the data packet; wherein the virtual machine b receives the second notification information through the connection module on the virtual machine b. of.
虚拟机 b , 用于通过所述虚拟机上的连接模块接收主机发送的 第二通知信息; 其中, 所述第二通知信息是根据第一通知信息获得 的, 包括网络设备与所述虚拟机通信的逻辑通道号和数据包的内存 地址; 所述第一通知信息是所述网络设备发送至所述主机的, 包括 所述网络设备存储在内存中的所述数据包的内存地址; 根据所述数 据包的内存地址在内存中获取所述数据包。 The virtual machine b is configured to receive the second notification information sent by the host by using the connection module on the virtual machine, where the second notification information is obtained according to the first notification information, including the network device communicating with the virtual machine The logical channel number and the memory address of the data packet; the first notification information is sent by the network device to the host, including And storing, by the network device, a memory address of the data packet in a memory; acquiring the data packet in a memory according to a memory address of the data packet.
具体的, 主机 a , 还用于解析第一通知信息获得数据包的内存 地址; 将数据包的内存地址的形式转换为标准形式; 根据转换为标 准形式的数据包的内存地址和逻辑通道号获得第二通知信息。  Specifically, the host a is further configured to parse the first notification information to obtain a memory address of the data packet; convert the form of the memory address of the data packet into a standard form; obtain the memory address and the logical channel number of the data packet converted into the standard form Second notification message.
第二通知信息中的数据包的内存地址以标准形式存在; 其中, 标准形式指的是预先与虚拟机 b约定的格式。  The memory address of the data packet in the second notification information exists in a standard form; wherein the standard form refers to a format agreed in advance with the virtual machine b.
逻辑通道号与通讯实体的关系映射表可以根据通讯实体的变化 进行实时更新。  The relationship table between the logical channel number and the communication entity can be updated in real time according to the change of the communication entity.
第一通知信息传输数据的接口根据网络设备的不同而不同. 第二通知信息传输数据的接口的形式为标准形式。  The interface of the first notification information transmission data differs according to the network device. The interface of the second notification information transmission data is in a standard form.
本发明的实施例提供的数据转发系统, 通过将网络设备发送的 信息的内存地址的形式转换为标准形式, 并将该标准形式的信, ¾的 内存地址发送至虚拟机上的应用程序, 解决了虚拟机中的应用程序 与物理机通信时损耗大问题, 同时提高了工作效率, 操作方便。 本发明的实施例提供一种数据转发系统,参照图 1 8所示,包括: 主机 d、 虚拟机 e和网络设备 f, 其中:  The data forwarding system provided by the embodiment of the present invention converts the form of the memory address of the information sent by the network device into a standard form, and sends the standard form of the letter, the memory address of the standard to the application on the virtual machine, to solve When the application in the virtual machine communicates with the physical machine, the loss is large, and the work efficiency is improved and the operation is convenient. An embodiment of the present invention provides a data forwarding system, as shown in FIG. 18, including: a host d, a virtual machine e, and a network device f, where:
虚拟机 e , 用于存储数据包至内存中; 通过虚拟机 e 上的连接 模块发送第二通知信息至主机 d , 以便于主机 d 根据第二通知信息 获得第一通知信息,并发送至网络设备 f使得网络设备 f根据第一通 知信息获得数据包; 其中, 第二通知信息中包括网络设备 f 与虚拟 机 e通信的逻辑通道号和数据包的内存地址。  The virtual machine e is configured to store the data packet into the memory; send the second notification information to the host d through the connection module on the virtual machine e, so that the host d obtains the first notification information according to the second notification information, and sends the first notification information to the network device. The network device f obtains the data packet according to the first notification information. The second notification information includes the logical channel number of the network device f and the virtual machine e and the memory address of the data packet.
主机 d , 用于接收虚拟机 e 发送的第二通知信息; 其中, 第二 通知信息包括逻辑通道号和虚拟机 e 存储在内存中的数据包的内存 地址; 逻辑通道号为虚拟机与网络设备通信的逻辑通道号; 虚拟机 e是通过虚拟机 e上的连接模块发送第二通知信息的;根据逻辑通道 号与通讯实体的关系映射表获取与虚拟机通信的网络设备; 根据第 二通知信息获得第一通知信息; 其中, 第一通知信息包括数据包的 内存地址; 发送第一通知信息至网络设备 f , 以便于网络设备 f根据 数据包的内存地址获得数据包。 The host d is configured to receive the second notification information sent by the virtual machine e. The second notification information includes a logical channel number and a memory address of the data packet stored in the virtual machine e in the memory; the logical channel number is a virtual machine and a network device. The logical channel number of the communication; the virtual machine e sends the second notification information through the connection module on the virtual machine e; acquires the network device that communicates with the virtual machine according to the relationship table between the logical channel number and the communication entity; according to the second notification information Obtaining first notification information; wherein the first notification information includes a data packet The memory address; sending the first notification information to the network device f, so that the network device f obtains the data packet according to the memory address of the data packet.
网络设备 f , 用于接收主机 d 发送的第一通知信息; 根据第一 通知信息中的数据包的内存地址获取数据包。  The network device f is configured to receive the first notification information sent by the host d, and obtain the data packet according to the memory address of the data packet in the first notification information.
具体的, 主机 d , 还用于解析第二通知信息获得数据包的内存 地址; 将数据包的内存地址的格式转换为网络设备可以识别的格式; 根据转换的数据包的内存地址获得第一通知信息。  Specifically, the host d is further configured to parse the second notification information to obtain a memory address of the data packet; convert the format of the memory address of the data packet into a format that the network device can recognize; and obtain the first notification according to the memory address of the converted data packet. information.
第二通知信息中的数据包的内存地址以标准形式存在; 其中, 标准形式指的是预先与虚拟机 e约定的格式。  The memory address of the data packet in the second notification information exists in a standard form; wherein the standard form refers to a format agreed in advance with the virtual machine e.
逻辑通道号与通讯实体的关系映射表可以根据通讯实体的变化 进行实时更新。  The relationship table between the logical channel number and the communication entity can be updated in real time according to the change of the communication entity.
第一通知信息传输数据的接口根据网络设备 f 的不同而不同。 第二通知信息传输数据的接口的形式为标准形式。  The interface of the first notification information transmission data differs depending on the network device f. The form of the interface for transmitting information of the second notification information is a standard form.
本发明的实施例提供的数据转发系统, 通过将网络设备发送的 信息的内存地址的形式转换为标准形式, 并将该标准形式的信, ¾的 内存地址发送至虚拟机上的应用程序, 解决了虚拟机中的应用程序 与物理机通信时损耗大问题, 同时提高了工作效率, 操作方便。  The data forwarding system provided by the embodiment of the present invention converts the form of the memory address of the information sent by the network device into a standard form, and sends the standard form of the letter, the memory address of the standard to the application on the virtual machine, to solve When the application in the virtual machine communicates with the physical machine, the loss is large, and the work efficiency is improved and the operation is convenient.
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁, 仅以上述各功能模块的划分进行举例说明, 实际应用中, 可以根据 需要而将上述功能分配由不同的功能模块完成, 即将装置的内部结 构划分成不同的功能模块, 以完成以上描述的全部或者部分功能。 上述描述的系统, 装置和单元的具体工作过程, 可以参考前述方法 实施例中的对应过程, 在此不再赘述。  It will be clearly understood by those skilled in the art that for the convenience and brevity of the description, only the division of each functional module described above is exemplified. In practical applications, the above functional assignments may be completed by different functional modules as needed. The internal structure of the device is divided into different functional modules to perform all or part of the functions described above. For the specific working process of the system, the device and the unit described above, refer to the corresponding process in the foregoing method embodiment, and details are not described herein again.
在本申请所提供的几个实施例中, 应该理解到, 所揭露的系统, 装置和方法, 可以通过其它的方式实现。 例如, 以上所描述的装置 实施例仅仅是示意性的, 例如, 所述模块或单元的划分, 仅仅为一 种逻辑功能划分, 实际实现时可以有另外的划分方式, 例如多个单 元或组件可以结合或者可以集成到另一个系统, 或一些特征可以忽 略, 或不执行。 另一点, 所显示或讨论的相互之间的耦合或直接耦 合或通信连接可以是通过一些接口, 装置或单元的间接耦合或通信 连接, 可以是电性, 机械或其它的形式。 In the several embodiments provided by the present application, it should be understood that the disclosed system, apparatus, and method may be implemented in other manners. For example, the device embodiments described above are merely illustrative. For example, the division of the modules or units is only a logical function division. In actual implementation, there may be another division manner, for example, multiple units or components may be used. Combined or can be integrated into another system, or some features can be ignored, or not executed. Another point, the mutual coupling or direct coupling shown or discussed The or communication connection may be an indirect coupling or communication connection through some interface, device or unit, and may be in electrical, mechanical or other form.
所述作为分离部件说明的单元可以是或者也可以不是物理上分 开的, 作为单元显示的部件可以是或者也可以不是物理单元, 即可 以位于一个地方, 或者也可以分布到多个网络单元上。 可以根据实 际的需要选择其中的部分或者全部单元来实现本实施例方案的 目 的。  The units described as separate components may or may not be physically separated, and the components displayed as the units may or may not be physical units, and may be located in one place or may be distributed to multiple network units. Some or all of the units may be selected according to actual needs to achieve the objectives of the embodiment of the present embodiment.
另外, 在本申请各个实施例中的各功能单元可以集成在一个处 理单元中, 也可以是各个单元单独物理存在, 也可以两个或两个以 上单元集成在一个单元中。 上述集成的单元既可以釆用硬件的形式 实现, 也可以釆用软件功能单元的形式实现。  In addition, each functional unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit. The above integrated unit can be implemented in the form of hardware or in the form of a software functional unit.
以上所述, 以上实施例仅用以说明本申请的技术方案, 而非对 其限制; 尽管参照前述实施例对本申请进行了详细的说明, 本领域 的普通技术人员应当理解: 其依然可以对前述各实施例所记载的技 术方案进行修改, 或者对其中部分技术特征进行等同替换; 而这些 修改或者替换, 并不使相应技术方案的本质脱离本申请各实施例技 术方案的精神和范围。 因此, 本发明的保护范围应以所述权利要求 的保护范围为准。  The above embodiments are only used to illustrate the technical solutions of the present application, and are not limited thereto. Although the present application has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that The technical solutions described in the embodiments are modified, or some of the technical features are equivalently replaced; and the modifications or substitutions do not depart from the spirit and scope of the technical solutions of the embodiments of the present application. Therefore, the scope of the invention should be determined by the scope of the appended claims.

Claims

权 利 要 求 书 claims
1、 一种数据转发方法, 其特征在于, 包括: 1. A data forwarding method, characterized by including:
主机接收网络设备发送的第一通知信息; 其中, 所述第一通知信 息中包括所述网络设备存储在内存中的数据包的内存地址; The host receives the first notification information sent by the network device; wherein the first notification information includes the memory address of the data packet stored in the memory by the network device;
根据逻辑通道号与通讯实体的关系映射表获取与所述网络设备 通信的虚拟机; 其中, 所述逻辑通道号是所述网络设备与所述虚拟机 通信的逻辑通道号; Obtain the virtual machine communicating with the network device according to the relationship mapping table between the logical channel number and the communication entity; wherein, the logical channel number is the logical channel number used by the network device to communicate with the virtual machine;
根据所述第一通知信息获得第二通知信息; 其中, 所述第二通知 信息包括所述逻辑通道号和所述数据包的内存地址; Obtain second notification information according to the first notification information; wherein, the second notification information includes the logical channel number and the memory address of the data packet;
发送所述第二通知信息至所述虚拟机,以便于所述虚拟机根据所 述数据包的内存地址获得所述数据包; 其中, 所述虚拟机是通过所述 虚拟机上的连接模块接收所述第二通知信息的。 Send the second notification information to the virtual machine so that the virtual machine obtains the data packet according to the memory address of the data packet; wherein, the virtual machine receives the data packet through a connection module on the virtual machine. of the second notification information.
2、 根据权利要求 1 所述的方法, 其特征在于, 所述根据所述第 一通知信息获得第二通知信息, 包括: 2. The method according to claim 1, characterized in that: obtaining the second notification information based on the first notification information includes:
解析所述第一通知信息获得所述数据包的内存地址; Parse the first notification information to obtain the memory address of the data packet;
将所述数据包的内存地址的形式转换为标准形式; Convert the form of the memory address of the data packet into a standard form;
根据转换为标准形式的所述数据包的内存地址和所述逻辑通道 号获得所述第二通知信息。 The second notification information is obtained according to the memory address of the data packet converted into a standard form and the logical channel number.
3、 根据权利要求 1或 2所述的方法, 其特征在于, 3. The method according to claim 1 or 2, characterized in that,
所述第二通知信息中的数据包的内存地址以标准形式存在; 其 中, 所述标准形式指的是预先与所述虚拟机约定的格式。 The memory address of the data packet in the second notification information exists in a standard form; where the standard form refers to a format agreed with the virtual machine in advance.
4、 根据权利要求 1或 2所述的方法, 其特征在于, 4. The method according to claim 1 or 2, characterized in that,
所述逻辑通道号与通讯实体的关系映射表可以根据通讯实体的 变化进行实时更新。 The relationship mapping table between the logical channel number and the communication entity can be updated in real time according to changes in the communication entity.
5、 根据权利要求 1或 2所述的方法, 其特征在于, 5. The method according to claim 1 or 2, characterized in that,
所述第一通知信息传输数据的接口根据所述网络设备的不同而 不同; The interface through which the first notification information transmits data varies according to the different network devices;
所述第二通知信息传输数据的接口的形式为所述标准形式。 The form of the interface for transmitting data in the second notification information is the standard form.
6、 一种数据转发方法, 其特征在于, 包括: 虚拟机通过所述虚拟机上的连接模块接收主机发送的第二通知 信息; 其中, 所述第二通知信息是根据第一通知信息获得的, 包括网 络设备与所述虚拟机通信的逻辑通道号和数据包的内存地址; 所述第 一通知信息是所述网络设备发送至所述主机的, 包括所述网络设备存 储在内存中的所述数据包的内存地址; 6. A data forwarding method, characterized by including: The virtual machine receives the second notification information sent by the host through the connection module on the virtual machine; wherein the second notification information is obtained according to the first notification information and includes a logical channel number for communication between the network device and the virtual machine. and the memory address of the data packet; the first notification information is sent by the network device to the host, and includes the memory address of the data packet stored in the memory by the network device;
根据所述数据包的内存地址在内存中获取所述数据包。 Obtain the data packet in memory based on the memory address of the data packet.
7、 根据权利要求 6所述的方法, 其特征在于, 7. The method according to claim 6, characterized in that,
所述第二通知信息中的数据包的内存地址以标准形式存在; 其 中, 所述标准形式指的是预先与所述虚拟机约定的格式。 The memory address of the data packet in the second notification information exists in a standard form; where the standard form refers to a format agreed with the virtual machine in advance.
8、 根据权利要求 6所述的方法, 其特征在于, 8. The method according to claim 6, characterized in that,
所述第一通知信息传输数据的接口根据所述网络设备的不同而 不同; The interface through which the first notification information transmits data varies according to the different network devices;
所述第二通知信息传输数据的接口的形式为所述标准形式。 The form of the interface for transmitting data in the second notification information is the standard form.
9、 一种数据转发方法, 其特征在于, 包括: 9. A data forwarding method, characterized by including:
主机接收虚拟机发送的第二通知信息; 其中, 所述第二通知信息 包括逻辑通道号和所述虚拟机存储在内存中的数据包的内存地址; 所 述逻辑通道号为所述虚拟机与网络设备通信的逻辑通道号; 所述虚拟 机是通过所述虚拟机上的连接模块发送所述第二通知信息的; The host receives the second notification information sent by the virtual machine; wherein, the second notification information includes a logical channel number and the memory address of the data packet stored by the virtual machine in the memory; the logical channel number is the link between the virtual machine and The logical channel number for network device communication; The virtual machine sends the second notification information through the connection module on the virtual machine;
根据所述逻辑通道号与通讯实体的关系映射表获取与所述虚拟 机通信的网络设备; Obtain the network device communicating with the virtual machine according to the relationship mapping table between the logical channel number and the communication entity;
根据所述第二通知信息获得第一通知信息; 其中, 所述第一通知 信息包括所述数据包的内存地址; The first notification information is obtained according to the second notification information; wherein the first notification information includes the memory address of the data packet;
发送所述第一通知信息至所述网络设备,以便于所述网络设备根 据所述数据包的内存地址获得所述数据包。 Send the first notification information to the network device so that the network device obtains the data packet according to the memory address of the data packet.
10、 根据权利要求 9所述的方法, 其特征在于, 所述根据所述第 二通知信息获得第一通知信息, 包括: 10. The method according to claim 9, characterized in that: obtaining the first notification information based on the second notification information includes:
解析所述第二通知信息获得所述数据包的内存地址; Parse the second notification information to obtain the memory address of the data packet;
将所述数据包的内存地址的格式转换为所述网络设备可以识别 的格式; 根据转换的所述数据包的内存地址获得所述第一通知信息。 Convert the format of the memory address of the data packet into a format that can be recognized by the network device; The first notification information is obtained according to the converted memory address of the data packet.
1 1、 根据权利要求 9或 10所述的方法, 其特征在于, 11. The method according to claim 9 or 10, characterized in that,
所述第二通知信息中的数据包的内存地址以标准形式存在; 其 中, 所述标准形式指的是预先与所述虚拟机约定的格式。 The memory address of the data packet in the second notification information exists in a standard form; where the standard form refers to a format agreed with the virtual machine in advance.
12、 根据权利要求 9或 10所述的方法, 其特征在于, 12. The method according to claim 9 or 10, characterized in that,
所述逻辑通道号与通讯实体的关系映射表可以根据通讯实体的 变化进行实时更新。 The relationship mapping table between the logical channel number and the communication entity can be updated in real time according to changes in the communication entity.
13、 根据权利要求 9或 10所述的方法, 其特征在于, 13. The method according to claim 9 or 10, characterized in that,
所述第一通知信息传输数据的接口根据所述网络设备的不同而 不同; The interface through which the first notification information transmits data varies according to the different network devices;
所述第二通知信息传输数据的接口的形式为所述标准形式。 The form of the interface for transmitting data in the second notification information is the standard form.
14、 一种数据转发方法, 其特征在于, 包括: 14. A data forwarding method, characterized by including:
虚拟机存储数据包至内存中; The virtual machine stores data packets into memory;
通过所述虚拟机上的连接模块发送第二通知信息至主机,以便于 所述主机根据所述第二通知信息获得第一通知信息, 并发送至网络设 备使得所述网络设备根据所述第一通知信息获得所述数据包; 其中, 所述第二通知信息中包括所述网络设备与所述虚拟机通信的逻辑通 道号和数据包的内存地址。 Send the second notification information to the host through the connection module on the virtual machine, so that the host can obtain the first notification information according to the second notification information, and send it to the network device so that the network device can obtain the first notification information according to the first notification information. The notification information obtains the data packet; wherein the second notification information includes a logical channel number for communication between the network device and the virtual machine and a memory address of the data packet.
15、 根据权利要求 14所述的方法, 其特征在于, 15. The method according to claim 14, characterized in that,
所述第二通知信息中的数据包的内存地址以标准形式存在; 其 中, 所述标准形式指的是预先与所述虚拟机约定的格式。 The memory address of the data packet in the second notification information exists in a standard form; where the standard form refers to a format agreed with the virtual machine in advance.
16、 根据权利要求 14所述的方法, 其特征在于, 16. The method according to claim 14, characterized in that,
所述第一通知信息传输数据的接口根据所述网络设备的不同而 不同; The interface through which the first notification information transmits data varies according to the different network devices;
所述第二通知信息传输数据的接口的形式为所述标准形式。 The form of the interface for transmitting data in the second notification information is the standard form.
17、 一种主机, 其特征在于, 包括: 17. A host, characterized in that it includes:
接收单元, 用于接收网络设备发送的第一通知信息; 其中, 所述 第一通知信息中包括所述网络设备存储在内存中的数据包的内存地 获取单元,用于根据逻辑通道号与通讯实体的关系映射表获取与 所述网络设备通信的虚拟机; 其中, 所述逻辑通道号是所述网络设备 与所述虚拟机通信的逻辑通道号; A receiving unit configured to receive the first notification information sent by the network device; wherein the first notification information includes the memory location of the data packet stored in the memory by the network device. An acquisition unit configured to acquire a virtual machine communicating with the network device according to a mapping table of relationships between logical channel numbers and communication entities; wherein the logical channel number is a logical channel number used by the network device to communicate with the virtual machine;
所述获取单元,还用于根据所述接收单元接收到的所述第一通知 信息获得第二通知信息; 其中, 所述第二通知信息包括所述逻辑通道 号和所述数据包的内存地址; The obtaining unit is further configured to obtain second notification information according to the first notification information received by the receiving unit; wherein, the second notification information includes the logical channel number and the memory address of the data packet. ;
发送单元,用于发送所述获取单元获取到的所述第二通知信息至 所述虚拟机, 以便于所述虚拟机根据所述数据包的内存地址获得所述 数据包; 其中, 所述虚拟机是通过所述虚拟机上的连接模块接收所述 第二通知信息的。 A sending unit, configured to send the second notification information obtained by the obtaining unit to the virtual machine, so that the virtual machine obtains the data packet according to the memory address of the data packet; wherein, the virtual machine The computer receives the second notification information through the connection module on the virtual machine.
18、 根据权利要求 17所述的主机, 其特征在于, 所述获取单元 包括: 18. The host according to claim 17, characterized in that the acquisition unit includes:
解析模块,用于解析所述第一通知信息获得所述数据包的内存地 址; A parsing module, used to parse the first notification information to obtain the memory address of the data packet;
转换模块,用于将所述解析模块获得的所述数据包的内存地址的 形式转换为标准形式; A conversion module, used to convert the form of the memory address of the data packet obtained by the parsing module into a standard form;
获取模块,用于根据所述转换模块转换为标准形式的数据包的内 存地址和所述逻辑通道号获得所述第二通知信息。 An acquisition module, configured to obtain the second notification information according to the memory address of the data packet converted by the conversion module into a standard form and the logical channel number.
19、 根据权利要求 17或 18所述的主机, 其特征在于, 19. The host according to claim 17 or 18, characterized in that,
所述第二通知信息中的数据包的内存地址以标准形式存在; 其 中, 所述标准形式指的是预先与所述虚拟机约定的格式。 The memory address of the data packet in the second notification information exists in a standard form; where the standard form refers to a format agreed with the virtual machine in advance.
20、 根据权利要求 17或 18所述的主机, 其特征在于, 20. The host according to claim 17 or 18, characterized in that,
所述逻辑通道号与通讯实体的关系映射表可以根据通讯实体的 变化进行实时更新。 The relationship mapping table between the logical channel number and the communication entity can be updated in real time according to changes in the communication entity.
21、 根据权利要求 17或 18所述的主机, 其特征在于, 21. The host according to claim 17 or 18, characterized in that,
所述第一通知信息传输数据的接口根据所述网络设备的不同而 不同; The interface through which the first notification information transmits data varies according to the different network devices;
所述第二通知信息传输数据的接口的形式为所述标准形式。 The form of the interface for transmitting data in the second notification information is the standard form.
22、 一种虚拟机, 其特征在于, 包括: 接收单元,用于通过所述虚拟机上的连接模块接收所述主机发送 的第二通知信息; 其中, 所述第二通知信息是根据第一通知信息获得 的, 包括所述网络设备与所述虚拟机通信的逻辑通道号和数据包的内 存地址; 所述第一通知信息是所述网络设备发送至所述主机的, 包括 所述网络设备存储在内存中的所述数据包的内存地址; 22. A virtual machine, characterized by including: A receiving unit configured to receive the second notification information sent by the host through the connection module on the virtual machine; wherein the second notification information is obtained according to the first notification information, including the network device and the The logical channel number for virtual machine communication and the memory address of the data packet; the first notification information is sent by the network device to the host and includes the memory address of the data packet stored in the memory by the network device;
获取单元,用于根据所述接收单元接收到的所述数据包的内存地 址在内存中获取所述数据包。 An acquisition unit, configured to acquire the data packet in the memory according to the memory address of the data packet received by the receiving unit.
23、 根据权利要求 22所述的虚拟机, 其特征在于, 23. The virtual machine according to claim 22, characterized in that,
所述第二通知信息中的数据包的内存地址以标准形式存在; 其 中, 所述标准形式指的是预先与所述虚拟机约定的格式。 The memory address of the data packet in the second notification information exists in a standard form; where the standard form refers to a format agreed with the virtual machine in advance.
24、 根据权利要求 22所述的虚拟机, 其特征在于, 24. The virtual machine according to claim 22, characterized in that,
所述第一通知信息传输数据的接口根据所述网络设备的不同而 不同; The interface through which the first notification information transmits data varies according to the different network devices;
所述第二通知信息传输数据的接口的形式为所述标准形式。 The form of the interface for transmitting data in the second notification information is the standard form.
25、 一种主机, 其特征在于, 包括: 25. A host, characterized in that it includes:
接收单元, 用于接收虚拟机发送的第二通知信息; 其中, 所述第 二通知信息包括逻辑通道号和所述虚拟机存储在内存中的数据包的 内存地址; 所述逻辑通道号为所述虚拟机与网络设备通信的逻辑通道 号; 所述虚拟机是通过所述虚拟机上的连接模块发送所述第二通知信 息的; A receiving unit, configured to receive the second notification information sent by the virtual machine; wherein the second notification information includes a logical channel number and the memory address of the data packet stored in the memory by the virtual machine; the logical channel number is the The logical channel number for communication between the virtual machine and the network device; The virtual machine sends the second notification information through the connection module on the virtual machine;
获取单元,用于根据所述逻辑通道号与通讯实体的关系映射表获 取与所述虚拟机通信的网络设备; An acquisition unit, configured to acquire the network device communicating with the virtual machine according to the relationship mapping table between the logical channel number and the communication entity;
所述获取单元,还用于根据所述接收单元接收到的所述第二通知 信息获得第一通知信息; 其中, 所述第一通知信息包括所述数据包的 内存地址; The obtaining unit is further configured to obtain the first notification information according to the second notification information received by the receiving unit; wherein, the first notification information includes the memory address of the data packet;
发送单元,用于发送所述第一通知信息至所述获取单元获取的所 述网络设备, 以便于所述网络设备根据所述数据包的内存地址获得所 述数据包。 A sending unit, configured to send the first notification information to the network device obtained by the obtaining unit, so that the network device obtains the data packet according to the memory address of the data packet.
26、 根据权利要求 25所述的主机, 其特征在于, 所述获取单元 包括: 26. The host according to claim 25, characterized in that: the acquisition unit include:
解析模块,用于解析所述第二通知信息获得所述数据包的内存地 址; A parsing module, used to parse the second notification information to obtain the memory address of the data packet;
转换模块,用于将所述解析模块得到的所述数据报的内存地址的 形式转换为所述网络设备可以识别的形式; A conversion module, configured to convert the form of the memory address of the datagram obtained by the parsing module into a form that can be recognized by the network device;
获取模块,用于根据所述转换模块转换的所述数据包的内存地址 获得所述第一通知信息。 An acquisition module, configured to obtain the first notification information according to the memory address of the data packet converted by the conversion module.
27、 根据权利要求 25或 26所述的主机, 其特征在于, 27. The host according to claim 25 or 26, characterized in that,
所述第二通知信息中的数据包的内存地址以标准形式存在; 其 中, 所述标准形式指的是预先与所述虚拟机约定的格式。 The memory address of the data packet in the second notification information exists in a standard form; where the standard form refers to a format agreed with the virtual machine in advance.
28、 根据权利要求 25或 26所述的主机, 其特征在于, 28. The host according to claim 25 or 26, characterized in that,
所述逻辑通道号与通讯实体的关系映射表可以根据通讯实体的 变化进行实时更新。 The relationship mapping table between the logical channel number and the communication entity can be updated in real time according to changes in the communication entity.
29、 根据权利要求 25或 26所述的主机, 其特征在于, 29. The host according to claim 25 or 26, characterized in that,
所述第一通知信息传输数据的接口根据所述网络设备的不同而 不同; The interface through which the first notification information transmits data varies according to the different network devices;
所述第二通知信息传输数据的接口的形式为所述标准形式。 The form of the interface for transmitting data in the second notification information is the standard form.
30、 一种虚拟机, 其特征在于, 包括: 30. A virtual machine, characterized by including:
处理单元, 用于存储数据包至内存中; Processing unit, used to store data packets into memory;
发送单元,用于通过所述虚拟机上的连接模块发送第二通知信息 至主机, 以便于所述主机根据所述第二通知信息获得第一通知信息, 并发送至网络设备使得所述网络设备根据所述第一通知信息获得所 述数据包; 其中, 所述第二通知信息中包括所述网络设备与所述虚拟 机通信的逻辑通道号和数据包的内存地址。 A sending unit configured to send the second notification information to the host through the connection module on the virtual machine, so that the host can obtain the first notification information according to the second notification information, and send it to the network device so that the network device The data packet is obtained according to the first notification information; wherein the second notification information includes a logical channel number for communication between the network device and the virtual machine and a memory address of the data packet.
3 1、 根据权利要求 30所述的虚拟机, 其特征在于, 3 1. The virtual machine according to claim 30, characterized in that,
所述第二通知信息中的数据包的内存地址以标准形式存在; 其 中, 所述标准形式指的是预先与所述虚拟机约定的格式。 The memory address of the data packet in the second notification information exists in a standard form; where the standard form refers to a format agreed with the virtual machine in advance.
32、 根据权利要求 30所述的虚拟机, 其特征在于, 32. The virtual machine according to claim 30, characterized in that,
所述第一通知信息传输数据的接口根据所述网络设备的不同而 不同; The interface through which the first notification information transmits data varies depending on the network device. different;
所述第二通知信息传输数据的接口的形式为所述标准形式。 The form of the interface for transmitting data in the second notification information is the standard form.
33、 一种主机, 其特征在于, 包括: 至少一个处理器、 存储器、 通信接口和总线, 所述至少一个处理器、 存储器和通信接口通过总线 连接并完成相互间的通信, 所述存储器用于存储程序代码, 其中: 所述处理器,用于调用存储器中的程序代码,用以执行以下操作: 接收网络设备发送的第一通知信息; 其中, 所述第一通知信息中 包括所述网络设备存储在内存中的数据包的内存地址; 33. A host, characterized in that it includes: at least one processor, memory, communication interface and bus, the at least one processor, memory and communication interface are connected through the bus and complete communication with each other, the memory is used for Store program code, wherein: the processor is configured to call the program code in the memory to perform the following operations: receive first notification information sent by a network device; wherein the first notification information includes the network device The memory address of the packet stored in memory;
根据逻辑通道号与通讯实体的关系映射表获取与所述网络设备 通信的虚拟机; 其中, 所述逻辑通道号是所述网络设备与所述虚拟机 通信的逻辑通道号; Obtain the virtual machine communicating with the network device according to the relationship mapping table between the logical channel number and the communication entity; wherein, the logical channel number is the logical channel number used by the network device to communicate with the virtual machine;
根据所述第一通知信息获得第二通知信息; 其中, 所述第二通知 信息中包括所述逻辑通道号和所述数据包的内存地址; Obtain second notification information according to the first notification information; wherein, the second notification information includes the logical channel number and the memory address of the data packet;
发送所述第二通知信息至所述虚拟机,以便于所述虚拟机根据所 述数据包的内存地址获得所述数据包; 其中, 所述虚拟机是通过所述 虚拟机上的连接模块接收所述第二通知信息的。 Send the second notification information to the virtual machine so that the virtual machine obtains the data packet according to the memory address of the data packet; wherein, the virtual machine receives the data packet through a connection module on the virtual machine. of the second notification information.
34、 根据权利要求 33 所述的主机, 其特征在于, 所述处理器具 体用于: 34. The host according to claim 33, wherein the processor is specifically used for:
解析所述第一通知信息获得所述数据包的内存地址; Parse the first notification information to obtain the memory address of the data packet;
将所述数据包的内存地址的形式转换为标准形式; Convert the form of the memory address of the data packet into a standard form;
根据转换为标准形式的所述数据包的内存地址和所述逻辑通道 号获得所述第二通知信息。 The second notification information is obtained according to the memory address of the data packet converted into a standard form and the logical channel number.
35、 根据权利要求 33或 34所述的主机, 其特征在于, 35. The host according to claim 33 or 34, characterized in that,
所述第二通知信息中的数据包的内存地址以标准形式存在; 其 中, 所述标准形式指的是预先与所述虚拟机约定的格式。 The memory address of the data packet in the second notification information exists in a standard form; where the standard form refers to a format agreed with the virtual machine in advance.
36、 根据权利要求 33或 34所述的主机, 其特征在于, 36. The host according to claim 33 or 34, characterized in that,
所述逻辑通道号与通讯实体的关系映射表可以根据通讯实体的 变化进行实时更新。 The relationship mapping table between the logical channel number and the communication entity can be updated in real time according to changes in the communication entity.
37、 根据权利要求 33或 34所述的主机, 其特征在于, 所述第一通知信息传输数据的接口根据所述网络设备的不同而 不同; 37. The host according to claim 33 or 34, characterized in that, The interface through which the first notification information transmits data varies depending on the network device;
所述第二通知信息传输数据的接口的形式为所述标准形式。 The form of the interface for transmitting data in the second notification information is the standard form.
38、 一种虚拟机, 其特征在于, 包括: 至少一个处理器、 存储器、 通信接口和总线, 所述至少一个处理器、 存储器和通信接口通过总线 连接并完成相互间的通信, 所述存储器用于存储程序代码, 其中: 所述处理器,用于调用存储器中的程序代码,用以执行以下操作: 通过所述虚拟机上的连接模块接收所述主机发送的第二通知信 息; 其中, 所述第二通知信息是根据第一通知信息获得的, 包括所述 网络设备与所述虚拟机通信的逻辑通道号和数据包的内存地址; 所述 第一通知信息是所述网络设备发送至所述主机的, 包括所述网络设备 存储在内存中的所述数据包的内存地址; 38. A virtual machine, characterized in that it includes: at least one processor, memory, communication interface and bus, the at least one processor, memory and communication interface are connected through the bus and complete communication with each other, the memory is used for storing program code, wherein: the processor is configured to call the program code in the memory to perform the following operations: receiving the second notification information sent by the host through the connection module on the virtual machine; wherein: The second notification information is obtained based on the first notification information and includes the logical channel number for communication between the network device and the virtual machine and the memory address of the data packet; the first notification information is sent by the network device to the virtual machine. The host includes the memory address of the data packet stored in the memory by the network device;
根据所述数据包的内存地址在内存中获取所述数据包。 Obtain the data packet in memory based on the memory address of the data packet.
39、 根据权利要求 38所述的虚拟机, 其特征在于, 39. The virtual machine according to claim 38, characterized in that,
所述第二通知信息中的数据包的内存地址以标准形式存在; 其 中, 所述标准形式指的是预先与所述虚拟机约定的格式。 The memory address of the data packet in the second notification information exists in a standard form; where the standard form refers to a format agreed with the virtual machine in advance.
40、 根据权利要求 38所述的虚拟机, 其特征在于, 40. The virtual machine according to claim 38, characterized in that,
所述第一通知信息传输数据的接口根据所述网络设备的不同而 不同; The interface through which the first notification information transmits data varies according to the different network devices;
所述第二通知信息传输数据的接口的形式为所述标准形式。 The form of the interface for transmitting data in the second notification information is the standard form.
41、 一种主机, 其特征在于, 包括: 至少一个处理器、 存储器、 通信接口和总线, 所述至少一个处理器、 存储器和通信接口通过总线 连接并完成相互间的通信, 所述存储器用于存储程序代码, 其中: 所述处理器,用于调用存储器中的程序代码,用以执行以下操作: 接收虚拟机发送的第二通知信息; 其中, 所述第二通知信息包括 逻辑通道号和所述虚拟机存储在内存中的数据包的内存地址; 所述逻 辑通道号为所述虚拟机与网络设备通信的逻辑通道号; 所述虚拟机是 通过所述虚拟机上的连接模块发送所述第二通知信息的; 41. A host, characterized in that it includes: at least one processor, memory, communication interface and bus, the at least one processor, memory and communication interface are connected through the bus and complete communication with each other, the memory is used for Store the program code, wherein: the processor is used to call the program code in the memory to perform the following operations: receive the second notification information sent by the virtual machine; wherein the second notification information includes the logical channel number and the The memory address of the data packet stored in the memory of the virtual machine; The logical channel number is the logical channel number for communication between the virtual machine and the network device; The virtual machine sends the Second notification of information;
根据所述逻辑通道号与通讯实体的关系映射表获取与所述虚拟 机通信的网络设备; According to the mapping table of the relationship between the logical channel number and the communication entity, the relationship between the virtual channel number and the virtual channel number is obtained Network equipment for machine communication;
根据所述第二通知信息获得第一通知信息; 其中, 所述第一通知 信息包括所述数据包的内存地址; The first notification information is obtained according to the second notification information; wherein the first notification information includes the memory address of the data packet;
发送所述第一通知信息至所述网络设备,以便于所述网络设备根 据所述数据包的内存地址获得所述数据包。 Send the first notification information to the network device so that the network device obtains the data packet according to the memory address of the data packet.
42、 根据权利要求 41 所述的主机, 其特征在于, 所述处理器具 体用于: 42. The host according to claim 41, characterized in that the processor is specifically used for:
解析所述第二通知信息获得所述数据包的内存地址; Parse the second notification information to obtain the memory address of the data packet;
将所述数据报的内存地址的形式转换为所述网络设备可以识别 的形式; Convert the form of the memory address of the datagram into a form that can be recognized by the network device;
根据转换的所述数据包的内存地址获得所述第一通知信息。 The first notification information is obtained according to the converted memory address of the data packet.
43、 根据权利要求 41或 42所述的主机, 其特征在于, 43. The host according to claim 41 or 42, characterized in that,
所述第二通知信息中的数据包的内存地址以标准形式存在; 其 中, 所述标准形式指的是预先与所述虚拟机约定的格式。 The memory address of the data packet in the second notification information exists in a standard form; where the standard form refers to a format agreed with the virtual machine in advance.
44、 根据权利要求 41或 42所述的主机, 其特征在于, 44. The host according to claim 41 or 42, characterized in that,
所述逻辑通道号与通讯实体的关系映射表可以根据通讯实体的 变化进行实时更新。 The relationship mapping table between the logical channel number and the communication entity can be updated in real time according to changes in the communication entity.
45、 根据权利要求 41或 42所述的主机, 其特征在于, 45. The host according to claim 41 or 42, characterized in that,
所述第一通知信息传输数据的接口根据所述网络设备的不同而 不同; The interface through which the first notification information transmits data varies according to the different network devices;
所述第二通知信息传输数据的接口的形式为所述标准形式。 The form of the interface for transmitting data in the second notification information is the standard form.
46、 一种虚拟机, 其特征在于, 包括: 至少一个处理器、 存储器、 通信接口和总线, 所述至少一个处理器、 存储器和通信接口通过总线 连接并完成相互间的通信, 所述存储器用于存储程序代码, 其中: 所述处理器,用于调用存储器中的程序代码,用以执行以下操作: 存储数据包至内存中; 46. A virtual machine, characterized in that it includes: at least one processor, memory, communication interface and bus, the at least one processor, memory and communication interface are connected through the bus and complete communication with each other, the memory is used for storing program code, wherein: the processor is used to call the program code in the memory to perform the following operations: store the data packet into the memory;
通过所述虚拟机上的连接模块发送第二通知信息至主机,以便于 所述主机根据所述第二通知信息获得第一通知信息, 并发送至网络设 备使得所述网络设备根据所述第一通知信息获得所述数据包; 其中, 所述第二通知信息中包括所述网络设备与所述虚拟机通信的逻辑通 道号和数据包的内存地址。 Send the second notification information to the host through the connection module on the virtual machine, so that the host can obtain the first notification information according to the second notification information, and send it to the network device so that the network device can obtain the first notification information according to the first notification information. Notification information obtains the data packet; where, The second notification information includes the logical channel number for communication between the network device and the virtual machine and the memory address of the data packet.
47、 根据权利要求 46所述的虚拟机, 其特征在于, 47. The virtual machine according to claim 46, characterized in that,
所述第二通知信息中的数据包的内存地址以标准形式存在; 其 中, 所述标准形式指的是预先与所述虚拟机约定的格式。 The memory address of the data packet in the second notification information exists in a standard form; where the standard form refers to a format agreed with the virtual machine in advance.
48、 根据权利要求 46所述的虚拟机, 其特征在于, 48. The virtual machine according to claim 46, characterized in that,
所述第一通知信息传输数据的接口根据所述网络设备的不同而 不同; The interface through which the first notification information transmits data varies according to the different network devices;
所述第二通知信息传输数据的接口的形式为所述标准形式。 The form of the interface for transmitting data in the second notification information is the standard form.
49、 一种数据转发系统, 其特征在于, 包括: 主机、 虚拟机和网 络设备, 其中: 49. A data forwarding system, characterized by including: a host, a virtual machine and a network device, wherein:
所述主机为权利要求 17〜21所述的任一主机,所述虚拟机为权利 要求 22〜24所述的任一虚拟机; The host is any host described in claims 17 to 21, and the virtual machine is any virtual machine described in claims 22 to 24;
或, 所述主机为权利要求 33〜37所述的任一主机, 所述虚拟机为 权利要求 38〜40所述的任一虚拟机; Or, the host is any host described in claims 33 to 37, and the virtual machine is any virtual machine described in claims 38 to 40;
所述网络设备, 用于发送数据包至所述虚拟机。 The network device is used to send data packets to the virtual machine.
50、 一种数据转发系统, 其特征在于, 包括: 主机、 虚拟机和网 络设备, 其中: 50. A data forwarding system, characterized by including: a host, a virtual machine and a network device, wherein:
所述主机为权利要求 25〜29所述的任一主机,所述虚拟机为权利 要求 30〜32所述的任一虚拟机; The host is any host described in claims 25 to 29, and the virtual machine is any virtual machine described in claims 30 to 32;
或, 所述主机为权利要求 41〜45所述的任一主机, 所述虚拟机为 权利要求 46〜48所述的任一虚拟机; Or, the host is any host described in claims 41 to 45, and the virtual machine is any virtual machine described in claims 46 to 48;
所述网络设备, 用于接收所述虚拟机发送的数据包。 The network device is used to receive data packets sent by the virtual machine.
PCT/CN2013/080527 2013-07-31 2013-07-31 Data forwarding method, device and system WO2015013920A1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
PCT/CN2013/080527 WO2015013920A1 (en) 2013-07-31 2013-07-31 Data forwarding method, device and system
CN201380001388.0A CN104508632B (en) 2013-07-31 2013-07-31 A kind of data forwarding method, apparatus and system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2013/080527 WO2015013920A1 (en) 2013-07-31 2013-07-31 Data forwarding method, device and system

Publications (1)

Publication Number Publication Date
WO2015013920A1 true WO2015013920A1 (en) 2015-02-05

Family

ID=52430858

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2013/080527 WO2015013920A1 (en) 2013-07-31 2013-07-31 Data forwarding method, device and system

Country Status (2)

Country Link
CN (1) CN104508632B (en)
WO (1) WO2015013920A1 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107168768B (en) * 2016-03-08 2020-04-14 深信服科技股份有限公司 Mapping method and device of equipment and virtual machine
CN107783722B (en) * 2016-08-25 2020-08-21 星辰天合(北京)数据科技有限公司 Data transmission method and data forwarding device

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101158924A (en) * 2007-11-27 2008-04-09 北京大学 Dynamic EMS memory mappings method of virtual machine manager
CN101667144A (en) * 2009-09-29 2010-03-10 北京航空航天大学 Virtual machine communication method based on shared memory
CN102591702A (en) * 2011-12-31 2012-07-18 华为技术有限公司 Virtualization processing method, related device and computer system
CN103176833A (en) * 2013-03-11 2013-06-26 华为技术有限公司 Data transmission method, data receiving method and system based on virtual machine

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9317441B2 (en) * 2011-12-22 2016-04-19 Intel Cororation Indexed page address translation to reduce memory footprint in virtualized environments
CN102801729B (en) * 2012-08-13 2015-06-17 福建星网锐捷网络有限公司 Virtual machine message forwarding method, network switching equipment and communication system

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101158924A (en) * 2007-11-27 2008-04-09 北京大学 Dynamic EMS memory mappings method of virtual machine manager
CN101667144A (en) * 2009-09-29 2010-03-10 北京航空航天大学 Virtual machine communication method based on shared memory
CN102591702A (en) * 2011-12-31 2012-07-18 华为技术有限公司 Virtualization processing method, related device and computer system
CN103176833A (en) * 2013-03-11 2013-06-26 华为技术有限公司 Data transmission method, data receiving method and system based on virtual machine

Also Published As

Publication number Publication date
CN104508632B (en) 2018-03-13
CN104508632A (en) 2015-04-08

Similar Documents

Publication Publication Date Title
CN105579987B (en) The port general PCI EXPRESS
US9100349B2 (en) User selectable multiple protocol network interface device
CN111656336B (en) PCIE sending and receiving method, device, equipment and system
US20110060859A1 (en) Host-to-host software-based virtual system
US20110103389A1 (en) Method and apparatus for switching traffic between virtual machines
US11586575B2 (en) System decoder for training accelerators
CN110297797B (en) Heterogeneous protocol conversion device and method
CN102323905A (en) Remote monitoring system for Godson main board
US11726951B2 (en) Packet transmission method and apparatus
CN108021525B (en) A kind of redundancy exchange system based on the more primary interconnects of PCIE bus
WO2014134947A1 (en) Device for transmitting and receiving control information and method thereof
CN113157624B (en) Serial port communication method, device, equipment and storage medium
CN1976310B (en) Communication method using bus interface over a network
WO2015013920A1 (en) Data forwarding method, device and system
CN113285839A (en) Design method of programmable data plane software switch based on DPDK
CN109189711B (en) Serial console interface based on Ethernet and application method thereof
WO2012019376A1 (en) Method and apparatus for implementing network device function of wireless communication terminal
CN207676336U (en) Interconnecting device, telecommunication system
WO2014026594A1 (en) Data transmission method and device
WO2023040330A1 (en) Data processing method, device, and system
TWI345711B (en)
JP2017010070A (en) Paravirtualized network device, information processing device, information processing method, and information processing program
CN109951365A (en) In conjunction with the network communication method of PCIe bus and Ethernet, system and controller

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 13890428

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 13890428

Country of ref document: EP

Kind code of ref document: A1