CN112565113A - 多虚拟机间的网卡共享系统、方法、装置、设备及介质 - Google Patents

多虚拟机间的网卡共享系统、方法、装置、设备及介质 Download PDF

Info

Publication number
CN112565113A
CN112565113A CN202011539928.9A CN202011539928A CN112565113A CN 112565113 A CN112565113 A CN 112565113A CN 202011539928 A CN202011539928 A CN 202011539928A CN 112565113 A CN112565113 A CN 112565113A
Authority
CN
China
Prior art keywords
network card
virtual
virtual network
end interface
target
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202011539928.9A
Other languages
English (en)
Inventor
徐春强
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Kedong Guangzhou Software Technology Co Ltd
Original Assignee
Kedong Guangzhou Software Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Kedong Guangzhou Software Technology Co Ltd filed Critical Kedong Guangzhou Software Technology Co Ltd
Priority to CN202011539928.9A priority Critical patent/CN112565113A/zh
Publication of CN112565113A publication Critical patent/CN112565113A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/70Virtual switches
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/30Peripheral units, e.g. input or output ports
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45583Memory management, e.g. access or allocation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45595Network integration; Enabling network access in virtual machine instances

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (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

本发明实施例公开了一种多虚拟机间的网卡共享系统、方法、装置、设备及介质。其中网卡共享系统包括:虚拟交换机以及多个实时虚拟机;虚拟交换机上配置与各实时虚拟机分别对应的虚拟网卡后端接口,各实时虚拟机上配置与虚拟交换机上的虚拟网卡后端接口对应的虚拟网卡前端接口;其中,各虚拟网卡前端接口与匹配的虚拟网卡后端接口通过共享内存通道建立通信连接;共享内存通道封装有读写MAC层数据包的接口;虚拟交换机,用于建立各实时虚拟机间,以及各实时虚拟机与外部设备间的通信连接。本发明实施例的方案,可以解决需要通过硬件设备才能实现多个实时虚拟机间的网卡共享的问题,实现了各实时虚拟机间,以及各实时虚拟机与外部设备间的通信连接。

Description

多虚拟机间的网卡共享系统、方法、装置、设备及介质
技术领域
本发明实施例涉及计算机虚拟化技术领域,尤其涉及一种多虚拟机间的网卡共享系统、方法、装置、设备及介质。
背景技术
计算机虚拟化技术是指计算元件在虚拟的基础上而不是真实的基础上运行。由于虚拟化技术可以扩大硬件的容量,简化软件的重新配置过程,因此,得到了业界的广发应用。
现阶段,主要基于硬件设备的虚拟化解决方案来对网卡设备进行虚拟化,但是,该方法需要通过硬件设备来实现各虚拟机间的通信,通信效率低且通信质量容易受到硬件设备的影响。
发明内容
本发明实施例提供一种多虚拟机间的网卡共享系统、方法、装置、设备及介质,以实现各实时虚拟机间,以及各实时虚拟机与外部设备间的通信连接。
第一方面,本发明实施例提供了一种多虚拟机间的网卡共享系统,包括:虚拟交换机以及多个实时虚拟机;
虚拟交换机上配置与各实时虚拟机分别对应的虚拟网卡后端接口,各实时虚拟机上配置与虚拟交换机上的虚拟网卡后端接口对应的虚拟网卡前端接口;
其中,各虚拟网卡前端接口与匹配的虚拟网卡后端接口通过共享内存通道建立通信连接,以形成虚拟交换机与各实时虚拟机之间的虚拟网卡;所述共享内存通道封装有读写MAC(Media Access Control,介质访问控制)层数据包的接口;虚拟交换机,用于通过各所述虚拟网卡以及物理网卡,建立各实时虚拟机间,以及各实时虚拟机与外部设备间的通信连接。
第二方面,本发明实施例还提供了一种多虚拟机间的网卡共享系统的配置方法,用于实现对上述第一方面所述的网卡共享系统的配置,包括:
在虚拟交换机上分别配置与多个实时虚拟机分别对应的虚拟网卡后端接口;
在各实时虚拟机上配置与所述虚拟交换机上的各所述虚拟网卡后端接口分别对应的虚拟网卡前端接口,并分别建立每个虚拟网卡前端接口与匹配的虚拟网卡后端接口之间的共享内存通道。
第三方面,本发明实施例还提供了一种信息转发方法,由上述第一方面所述的多虚拟机间的网卡共享系统中的虚拟交换机执行,包括:
当接收到目标数据包时,对所述目标数据包进行解析,获取目标数据包的目的MAC地址;
根据所述目的MAC地址,查询MAC地址表,确定与所述目标数据包匹配的目标网卡;
当所述目标网卡为目标虚拟网卡时,将所述目标数据包转发至目标虚拟网卡的后端接口,以对目标数据包进行转发。
第四方面,本发明实施例还提供了一种多虚拟机间的网卡共享系统的配置装置,用于实现上述第一方面所述的网卡共享系统的配置,包括:
虚拟网卡后端接口配置模块,用于在虚拟交换机上分别配置与多个实时虚拟机分别对应的虚拟网卡后端接口;
虚拟网卡前端接口配置模块,用于在各实时虚拟机上配置与所述虚拟交换机上的各所述虚拟网卡后端接口分别对应的虚拟网卡前端接口,并分别建立每个虚拟网卡前端接口与匹配的虚拟网卡后端接口之间的共享内存通道。
第五方面,本发明实施例还提供了一种信息转发装置,由上述第一方面所述的多虚拟机间的网卡共享系统中的虚拟交换机执行,包括:
目的MAC地址获取模块,用于当接收到目标数据包时,对所述目标数据包进行解析,获取目标数据包的目的MAC地址;
目标网卡确定模块,用于根据所述目的MAC地址,查询MAC地址表,确定与所述目标数据包匹配的目标网卡;
目标数据包转发模块,用于当所述目标网卡为目标虚拟网卡时,将所述目标数据包转发至目标虚拟网卡的后端接口,以对目标数据包进行转发。
第六方面,本发明实施例还提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述第二方面所述的多虚拟机间的网卡共享系统的配置方法,或者上述第三方面所述的信息转发方法。
第七方面,本发明实施例还提供了一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行如上述第二方面所述的多虚拟机间的网卡共享系统的配置方法,或者上述第三方面所述的信息转发方法。
本发明实施例的方案中涉及到的多虚拟机间的网卡共享系统,包括:虚拟交换机以及多个实时虚拟机;虚拟交换机上配置与各实时虚拟机分别对应的虚拟网卡后端接口,各实时虚拟机上配置与虚拟交换机上的虚拟网卡后端接口对应的虚拟网卡前端接口;其中,各虚拟网卡前端接口与匹配的虚拟网卡后端接口通过共享内存通道建立通信连接,以形成虚拟交换机与各实时虚拟机之间的虚拟网卡;所述共享内存通道封装有读写MAC层数据包的接口;所述共享内存通道封装有读写MAC层数据包的接口;在数据转发过程中可以直接将目标虚拟网卡后端接收到的数据写入共享内存通道,目标虚拟网卡的前端接口即可读出写入至共享内存通道中的数据包,进而使目标虚拟机接收到数据包,减少了数据转发路径;虚拟交换机,用于通过各虚拟网卡以及物理网卡,建立各实时虚拟机间,以及各实时虚拟机与外部设备间的通信连接,可以解决需要通过硬件设备才能实现多个实时虚拟机间的网卡共享的问题,实现了各实时虚拟机间,以及各实时虚拟机与外部设备间的通信连接。
附图说明
图1是本发明实施例一中的一种多虚拟机间的网卡共享系统的结构示意图;
图2是本发明实施例二中的一种多虚拟机间的网卡共享系统的配置方法的流程图;
图3是本发明实施例三中的一种信息转发方法的流程图;
图4是本发明实施例四中的一种信息转发方法的流程图;
图5是本发明实施例四中的一种数据转发方法的流程图;
图6是本发明实施例五中的一种多虚拟机间的网卡共享系统的配置装置的结构示意图;
图7是本发明实施例六中的一种信息转发装置的结构示意图;
图8是本发明实施例七中的一种计算机设备的结构示意图。
具体实施方式
下面结合附图和实施例对本发明实施例作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明实施例,而非对本发明实施例的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明实施例相关的部分而非全部结构。
实施例一
图1是本发明实施例一中的一种多虚拟机间的网卡共享系统的结构示意图,参考图1,该系统包括虚拟交换机110以及多个实时虚拟机120。
在本实施例的一个可选实现方式中,可以在虚拟交换机110上配置与各个实时虚拟交换机分别对应的虚拟网卡后端接口(例如,图1中的虚拟网卡后端接口131、虚拟网卡后端接口132以及虚拟网卡后端接口133)。需要说明的是,本实施例中仅是为了叙述方便,以虚拟网卡后端接口131、虚拟网卡后端接口132以及虚拟网卡后端接口133进行叙述,其并不是对本发明实施例的限定。
各实时虚拟机(例如,图1中的实时虚拟机121、实时虚拟机122以及实时虚拟机123)上配置与虚拟交换机上的虚拟网卡后端接口对应的虚拟网卡前端接口(例如,图1中的虚拟网卡前端接口141、虚拟网卡前端接口142以及虚拟网卡前端接口143)。
其中,各虚拟网卡前端接口与匹配的虚拟网卡后端接口通过共享内存通道建立通信连接,以形成虚拟交换机与各实时虚拟机之间的虚拟网卡。
示例性的,在本实施例中,虚拟网卡前端接口141通过共享内存通道151与虚拟网卡后端接口131进行通信连接,形成一个虚拟网卡;虚拟网卡前端接口142通过共享内存通道152与虚拟网卡后端接口132进行通信连接,形成另一个虚拟网卡;虚拟网卡前端接口143通过共享内存通道153与虚拟网卡后端接口133进行通信连接,形成有一个虚拟网卡。
可选的,共享内存通道封装有读写MAC层数据包的接口。可选的,可以在共享内存通道的读写接口上封装open\read\write接口,可以直接实现对MAC层数据包的读写。
在本实施例的一个可选实现方式中,当虚拟网卡后端接口131接收到数据包之后,可以进一步的检测接收到的数据包的MAC地址是否在内部MAC列表中;若是,则将接收到的数据包写入至与虚拟网卡后端接口131匹配的共享内存通道151中,进一步的,虚拟网卡前端接口141可以在共享内存通道151中读出数据包,这样即实现了数据包有虚拟交换机110转发至实时虚拟机121。
这样设置的好处在于,减少了数据包的转发路径。
在本实施例的一个可选实现方式中,虚拟交换机110可以通过上述形成的各虚拟网卡以及物理网卡,建立各实时虚拟机间,以及各实时虚拟机与外部设备间的通信连接。
本实施例的方案中涉及到的多虚拟机间的网卡共享系统,包括:虚拟交换机以及多个实时虚拟机;虚拟交换机上配置与各实时虚拟机分别对应的虚拟网卡后端接口,各实时虚拟机上配置与虚拟交换机上的虚拟网卡后端接口对应的虚拟网卡前端接口;其中,各虚拟网卡前端接口与匹配的虚拟网卡后端接口通过共享内存通道建立通信连接,以形成虚拟交换机与各实时虚拟机之间的虚拟网卡;共享内存通道封装有读写MAC层数据包的接口;在数据转发过程中可以直接将目标虚拟网卡后端接收到的数据写入共享内存通道,目标虚拟网卡的前端接口即可读出写入至共享内存通道中的数据包,进而使目标虚拟机接收到数据包,减少了数据转发路径;虚拟交换机,用于通过各虚拟网卡以及物理网卡,建立各实时虚拟机间,以及各实时虚拟机与外部设备间的通信连接,可以解决需要通过硬件设备才能实现多个实时虚拟机间的网卡共享的问题,实现了各实时虚拟机间,以及各实时虚拟机与外部设备间的通信连接。
实施例二
图2是本发明实施例二中的一种多虚拟机间的网卡共享系统的配置方法的流程图,本实施例可适用于对多虚拟机见得网卡共享系统进行配置的情况,该方法可以由多虚拟机间的网卡共享系统的配置装置来执行,该装置可以通过软件和/或硬件的方式实现,并集成在执行本方法的计算机设备中。具体的,参考图2,该方法具体包括如下步骤:
步骤210、在虚拟交换机上分别配置与多个实时虚拟机分别对应的虚拟网卡后端接口。
其中,本实施例中涉及到的虚拟交换机即为上述实施例中涉及到的虚拟交换机110,本实施例中在此不再对其进行赘述。
在本实施例的一个可选实现方式中,可以在虚拟交换机上分别配置与各个实时虚拟机分别对应的虚拟网卡后端接口;示例性的,可以在虚拟交换机上配置与第一实时虚拟机对应的虚拟网卡后端接口、配置与第二实时虚拟机对应的虚拟网卡后端接口以及配置与第N实时虚拟机对应的虚拟网卡后端接口,其中,N为大于等于三的正整数,本实施例中对其不加以限定。
可选的,在虚拟交换机上配置与各实时虚拟机分别对应的虚拟网卡后端接口,可以包括:配置各虚拟网卡后端接口的驱动程序的内存空间信息;将各后端接口的驱动程序的配置信息填充至虚拟交换机的配置区,并初始化各后端接口的驱动程序的数据结构;将各后端接口的驱动程序的配置完成标志置为有效状态。
其中,各后端接口的驱动程序的配置信息包括分区识别码和/或服务中断号。
在本实施例的一个可选实现方式中,在虚拟交换机上配置与各实时虚拟机分别对应的虚拟网卡后端接口的过程中,可以首先配置各虚拟网卡后端接口的驱动程序的内存空间信息;例如,可以为各个虚拟网卡后端接口的驱动程序分配内存空间。
进一步的,可以将各后端接口的驱动程序的配置信息填充至虚拟交换机的配置区,并对各后端接口的驱动程序的数据结构进行初始化,其中,各后端接口的驱动程序的配置信息可以包括分区识别码以及服务中断号中的一种,或者同时包括分区识别码以及服务中断号,本实施例中对其不加以限定。
进一步的,可以将各后端接口的驱动程序的配置完成标志置为有效状态,示例性的,可以将第一后端接口的驱动程序的配置完成标志位设置为1,以表明第一后端接口的驱动程序已配置完成。
步骤220、在各实时虚拟机上配置与虚拟交换机上的各虚拟网卡后端接口分别对应的虚拟网卡前端接口,并分别建立每个虚拟网卡前端接口与匹配的虚拟网卡后端接口之间的共享内存通道。
在本实施例的一个可选实现方式中,在虚拟交换机上分别配置与多个实时虚拟机分别对应的虚拟网卡后端接口之后,可以进一步的在各实时虚拟机上配置与虚拟交换机上的各虚拟网卡后端接口分别对应的虚拟网卡前端接口,并分别建立每个虚拟网卡前端接口与匹配的虚拟网卡后端接口之间的共享内存通道。
示例性的,在虚拟交换机上配置与第一实时虚拟机对应的虚拟网卡后端接口、与第二实时虚拟机对应的虚拟网卡后端接口以及与第N实时虚拟机对应的虚拟网卡后端接口之后,可以进一步的在第一实时虚拟机上配置与虚拟网卡后端接口对应的虚拟网卡前端接口、在第二实时虚拟机上配置与虚拟网卡后端接口对应的虚拟网卡前端接口,以及在第N实时虚拟机上配置与虚拟网卡后端接口对应的虚拟网卡前端接口;进一步的,可以建立每个虚拟网卡前端接口与虚拟网卡后端接口之间的共享内存通道。
需要说明的是,本实施例中每个虚拟网卡的前端接口与其后端接口连接的共享内存通道,与其他虚拟网卡的共享内存通道相互独立,互相不会干扰。
可选的,在各实时虚拟机上配置与虚拟交换机上的各虚拟网卡后端接口分别对应的虚拟网卡前端接口,并分别建立每个虚拟网卡前端接口与匹配的虚拟网卡后端接口之间的共享内存通道,可以包括:配置各虚拟网卡前端接口的驱动程序的内存空间信息;在后端接口配置完成后,将各前端接口的驱动程序的配置信息填充至虚拟交换机的配置区;其中,各前端接口的驱动程序的配置信息包括分区识别码和/或服务中断号;初始化各前端接口的驱动程序的数据结构,并设置与匹配的虚拟网卡后端接口共同使用的共享内存通道,并在各共享内存通道的读写接口中封装读写MAC层数据包的接口。在本实施例的一个可选实现方式中,在虚拟交换机上配置与各实时虚拟机分别对应的虚拟网卡后端接口之后,可以进一步的配置各虚拟网卡前端接口的驱动程序的内存空间信息;例如,可以为每个虚拟网卡前端接口的驱动程序分配不同的内存空间信息。
进一步的,当各后端接口的驱动程序额度配置完成标志位有效状态是,可以将各前端接口的驱动程序的配置信息填充至虚拟交换机的配置区,其中,各前端接口的驱动乘车的配置信息也可以包括分区识别码以及服务中断号中的一种,或者同时包括分区识别码以及服务中断号,本实施例中对其不加以限定。
进一步的,可以对各前端接口的驱动程序的数据结构进行初始化,并设置与匹配的虚拟网卡后端接口共同使用的共享内存通道,并在各共享内存通道的读写接口中封装读写MAC层数据包的接口。示例性的,可以在共享内存通道的读写接口上封装open\read\write接口,以实现直接对MAC层数据包的读写,这样可以摒弃对网卡设备的模拟,只保留网卡设备open\read\write接口,简化代码实现。
进一步的,可以将各前端接口的驱动程序的配置完成标志置为有效状态,示例性的,可以将第一前端接口的驱动程序的配置完成标志位设置为1,以表明第一前端接口的驱动程序已配置完成。
本实施例的方案,通过在虚拟交换机上分别配置与多个实时虚拟机分别对应的虚拟网卡后端接口;在各实时虚拟机上配置与虚拟交换机上的各虚拟网卡后端接口分别对应的虚拟网卡前端接口,并分别建立每个虚拟网卡前端接口与匹配的虚拟网卡后端接口之间的共享内存通道,可以实现对多虚拟机间的网卡共享系统的配置,为实现各实时虚拟机间,以及各实时虚拟机与外部设备间的通信连接提供依据。
实施例三
图3是本发明实施例三中的一种信息转发方法的流程图,本实施例可适用于通过多虚拟机间的网卡共享系统中的虚拟交换机对接收到的信息进行转发的情况,该方法可以由信息转发装置来执行,该装置可以通过软件和/或硬件的方式实现,并集成在执行本方法的计算机设备中。具体的,参考图3,该方法具体包括如下步骤:
步骤310、当接收到目标数据包时,对目标数据包进行解析,获取目标数据包的目的MAC地址。其中,目标数据包可以为通过多虚拟机间的网卡共享系统中的虚拟交换机接收到的任一MAC层数据包,本实施例中对其不加以限定。
在本实施例的一个可选实现方式中,多虚拟机间的网卡共享系统中的虚拟交换机接收到目标数据包时,可以对目标数据包进行解析,从而获取到目标数据包的目的MAC地址。步骤320、根据目的MAC地址,查询MAC地址表,确定与目标数据包匹配的目标网卡。
其中,目标网卡包括:虚拟网卡或者物理网卡,可以理解的是,此处涉及到的虚拟网卡即为上述各实施例中配置的各虚拟网卡。
在本实施例的一个可选实现方式中,多虚拟机间的网卡共享系统中的虚拟交换机在解析得到目标数据包的目的MAC地址之后,可以进一步的根据解析得到的目的MAC地址,查询MAC地址表,进而确定与目标数据包匹配的目标网卡。
示例性的,在确定目的MAC地址之后,可以查询预先建立的MAC地址表,并确定MAC地址表中与目的MAC地址匹配的网卡,该网卡即为待确定的目标网卡。
步骤330、当目标网卡为目标虚拟网卡时,将目标数据包转发至目标虚拟网卡的后端接口,以对目标数据包进行转发。
其中,目标虚拟网卡可以为多虚拟机见得网卡共享系统中的任一虚拟网卡,本实施例中对其不加以限定。
在本实施例的一个可选实现方式中,如果确定与目标数据包匹配的目标网卡为目标虚拟网卡时,可以将目标数据包转发至目标虚拟网卡的后端接口;进一步的,目标虚拟网卡后端接口可以通过与目标虚拟网卡匹配的共享内存通道的write接口,将目标数据包写入至与目标虚拟网卡匹配的共享内存通道,以对目标数据包进行转发。
可以理解的是,本实施例中,目标虚拟网卡的后端接口可以直接将目标数据包写入至目标虚拟网卡的共享内存通道,减少了目标数据包的路由转发路径。
本实施例的方法,通过多虚拟机间的网卡共享系统中的虚拟交换机接收到目标数据包时,对目标数据包进行解析,获取目标数据包的目的MAC地址;根据目的MAC地址,查询MAC地址表,确定与目标数据包匹配的目标网卡,当目标网卡为目标虚拟网卡时,将目标数据包转发至目标虚拟网卡的后端接口,并将目标数据包写入目标共享内存通道,以对目标数据包进行转发。实现了对多虚拟机间的网卡共享系统中的目标数据包的转发,并且减少了目标数据包的路由转发路径。
实施例四
图4是本发明实施例四中的一种信息转发方法的流程图,本实施例是对上述各技术方案的进一步细化,本实施例中的技术方案可以与上述一个或者多个实施例中的各个可选方案结合。如图4所示,信息转发方法可以包括如下步骤:
步骤410、当接收到目标数据包时,对目标数据包进行解析,获取目标数据包的目的MAC地址。
步骤420、检测MAC地址表中是否包含目的MAC地址;若是,则将目的MAC地址转发至与其对应的目标虚拟网卡;否则,将目的MAC地址转发至物理网卡。
在本实施例的一个可选实现方式中,多虚拟机间的网卡共享系统中的虚拟交换机根据目的MAC地址,查询MAC地址表,确定与目标数据包匹配的目标网卡,可以包括:检测MAC地址表中是否包含目的MAC地址;如果MAC地址表中包含目的MAC地址,则将解析到的目的MAC地址转发至与其对应的目标虚拟网卡;如果MAC地址表中不包含目的MAC地址,则将解析到的目的MAC地址转发至物理网卡。
在本实施例的一个可选实现方式中,如果将目的MAC地址转发至与其对应的目标虚拟网卡,则通过目标虚拟网卡将目标数据包转发至与目标虚拟网卡匹配的虚拟机;
在本实施例的另一个可选实现方式中,如果将目的MAC地址转发至物理网卡,则通过物理网卡将目标数据包转发至与物理网卡匹配的物理设备。
步骤430、当目标网卡为目标虚拟网卡时,将目标数据包转发至目标虚拟网卡的后端接口,以对目标数据包进行转发。
在本实施例的一个可选实现方式中,在将目标数据包转发至目标虚拟网卡的后端接口之后,目标虚拟网卡后端接口还可以通过与目标虚拟网卡匹配的共享内存通道的write接口,将目标数据包写入至与目标虚拟网卡匹配的共享内存通道;进一步的,目标虚拟网卡的前端接口,可以通过共享内存通道的read接口,读出目标虚拟网卡后端接口写入至共享内存通道中的目标数据包,此时,目标数据包即转发至与目标虚拟网卡前端接口匹配的实时虚拟机。
本实施例的方案,多虚拟机间的网卡共享系统中的虚拟交换机通过检测MAC地址表中是否包含目的MAC地址;若是,则将目的MAC地址转发至与其对应的目标虚拟网卡;否则,将目的MAC地址转发至物理网卡,实现了对多虚拟机间的网卡共享系统中的目标数据包的转发;当目标网卡为目标虚拟网卡时,可以将目标数据包转发至目标虚拟网卡的后端接口,进一步的,目标虚拟网卡的前端接口可以从共享内存通道读出目标数据包,减少了目标数据包的路由转发路径。
为了使本领域技术人员更好地理解本发明实施例涉及到的多虚拟机间的网卡共享系统的配置方法,以及信息转发方法,下面采用一个具体示例进行说明,具体过程包括有:
需要说明的是,本实施例中涉及到的虚拟交换机采用网桥实现网络二层(MAC层)数据交换,遵循802.1D标准,可以实现各个实时虚拟机间内部高速网络通信,实现实时虚拟机与外部网络之间的通信。
在本实施例中,一个内部通信数据流路径(实时虚拟机间的)可以为:实时虚拟机1<-->实时虚拟机1的虚拟网卡前端接口<-->实时虚拟机1的虚拟网卡后端接口<-->虚拟交换机<-->实时虚拟机2的虚拟网卡后端接口<-->实时虚拟机2的虚拟网卡前端接口<-->实时虚拟机2。
在本实施例中,实时虚拟机与外部网络之间的通信可以为:实时虚拟机1<-->实时虚拟机1的虚拟网卡前端接口<-->实时虚拟机1的虚拟网卡后端接口<-->虚拟交换机<-->物理网卡。
1、共享内存通道实现
在本实施例中,共享内存通道的实现可以基于环缓冲模型实现内存读写接口,一个内存环的读写接口形成一个共享内存通道。
2、虚拟网卡实现
虚拟网卡基于共享内存通道实现,虚拟网卡数据收发分别使用一个共享内存通道,共享内存通道的两侧分别对应虚拟网卡的前端和后端,虚拟网卡在共享内存通道读写接口上封装实现读写接口,其直接实现MAC层数据包的读写,摒弃对网卡设备的模拟,只保留网卡设备读写接口,可以简化代码实现。
3、虚拟网卡初始化
虚拟网卡初始化分前端驱动和后端驱动的初始化,其各自初始化流程如下:
后端驱动:
(1)配置后端网卡的内存空间信息并清空内存空间;
(2)设置后端驱动相关配置信息(分区ID或者服务中断号等)到配置区;
(3)初始化后端驱动相关数据结构;
(4)设置后端驱动初始化完成标志。
前端驱动:
(1)配置前端网卡内存空间信息;
(2)等待后端网卡驱动初始化完成;
(3)设置前端驱动相关信息(分区ID或者服务终端号等)到配置区;
(4)初始化前端驱动相关数据结构,并设置内存环所使用的共享内存;
(5)设置前端初始化完成标志。
在本实施例的一个可选实现方式中,虚拟网卡可以通过网桥实现,其初始化流程如下:
(1)初始化br0(网桥)虚拟网卡,并添加到网络协议栈,并将该网卡设置为缺省网卡;
(2)初始化虚拟网卡后端接口或者物理网卡,并将初始化虚拟网卡后端接口或者物理网卡添加到网桥,更改添加到网桥的网卡的输入接口,即网卡向网络协议栈投递数据包的接口,作为网桥br0的输入接口,即添加到网桥上的所有网卡的输入接口均为br0的输入接口;
(3)将步骤(2)所添加网卡的MAC地址添加到网卡对应网桥的端口。
4、MAC数据交换流
1)虚拟交换机上任一端口收到数据则会进入输入接口函数;
2)解析收到数据包的目的MAC地址;
3)如果目的MAC地址和本地网卡(当前虚拟机中所有网卡)的相同,则调用输入接口将数据包投递到网络协议栈;
4)如果目的MAC地址不是本地网卡的MAC地址,则根据MAC地址转发表找到要转发的目标网卡;
5)通过目标网卡将数据包转发出去。
6)实时虚拟机间高速通信实现
在系统网络初始化时建立内部网络MAC地址和网卡的对照表,在虚拟网卡后端接收数据处添加转发判断功能,判断所收数据包的目的MAC地址是否是在内部MAC地址表中,若在其中,则直接将数据包写入对应网卡的共享内存接收通道,减少数据转发路径,提升内部网络交换速度。
图5是本发明实施例四中的一种数据转发方法的流程图,该方法主要包括如下步骤:
步骤510、建立各虚拟网卡MAC地址对照表。
步骤520、判断网卡发送大数据的目的MAC地址是否在MAC地址对照表中。
若是,执行步骤530;
否则,执行步骤540。
步骤530、转发数据包至目标网卡。
步骤540、虚拟网络交换。
本发明实施例简化了虚拟网卡的实现,摒弃了复杂的设备模拟只保留网络MAC层数据读接口;本发明实施例基于实时虚拟机实现了虚拟网卡的MAC层数据交换,实现了实时虚拟机间高速通信和实时虚拟机与外部物理机进行网络通信。
实施例五
图6是本发明实施例五中的一种多虚拟机间的网卡共享系统的配置装置的结构示意图,该装置可以执行上述各实施例中涉及到的多虚拟机间的网卡共享系统的配置方法。参照图6,该装置包括:虚拟网卡后端接口配置模块610和虚拟网卡前端接口配置模块620。
其中,虚拟网卡后端接口配置模块610,用于在虚拟交换机上分别配置与多个实时虚拟机分别对应的虚拟网卡后端接口;
虚拟网卡前端接口配置模块620,用于在各实时虚拟机上配置与虚拟交换机上的各虚拟网卡后端接口分别对应的虚拟网卡前端接口,并分别建立每个虚拟网卡前端接口与匹配的虚拟网卡后端接口之间的共享内存通道。
本实施例通过虚拟网卡后端接口配置模块在虚拟交换机上分别配置与多个实时虚拟机分别对应的虚拟网卡后端接口;通过虚拟网卡前端接口配置模块在各实时虚拟机上配置与虚拟交换机上的各虚拟网卡后端接口分别对应的虚拟网卡前端接口,并分别建立每个虚拟网卡前端接口与匹配的虚拟网卡后端接口之间的共享内存通道,可以实现对多虚拟机间的网卡共享系统的配置,为实现各实时虚拟机间,以及各实时虚拟机与外部设备间的通信连接提供依据。
可选的,虚拟网卡后端接口配置模块610,具体用于
配置各虚拟网卡后端接口的驱动程序的内存空间信息;
将各后端接口的驱动程序的配置信息填充至虚拟交换机的配置区,并初始化各后端接口的驱动程序的数据结构;
将各后端接口的驱动程序的配置完成标志置为有效状态。
可选的,虚拟网卡前端接口配置模块620,具体用于
配置各虚拟网卡前端接口的驱动程序的内存空间信息;
在后端接口配置完成后,将各前端接口的驱动程序的配置信息填充至虚拟交换机的配置区;
初始化各前端接口的驱动程序的数据结构,并设置与匹配的虚拟网卡后端接口共同使用的共享内存通道,并在各共享内存通道的读写接口中,封装读写MAC层数据包的接口;
将各前端接口的驱动程序的配置完成标志置为有效状态。
本发明实施例所提供的多虚拟机间的网卡共享系统的配置装置可执行本发明任意实施例所提供的多虚拟机间的网卡共享系统的配置方法,具备执行方法相应的功能模块和有益效果。
实施例六
图7是本发明实施例六中的一种信息转发装置的结构示意图,该装置可以执行上述各实施例中涉及到的信息转发方法。参照图7,该装置包括:目的MAC地址获取模块710、目标网卡确定模块720和目标数据包转发模块730。
目的MAC地址获取模块710,用于当接收到目标数据包时,对目标数据包进行解析,获取目标数据包的目的MAC地址;
目标网卡确定模块720,用于根据目的MAC地址,查询MAC地址表,确定与目标数据包匹配的目标网卡;
目标数据包转发模块730,用于当所述目标网卡为目标虚拟网卡时,将所述目标数据包转发至目标虚拟网卡的后端接口,以对目标数据包进行转发。
本实施例的方案,多虚拟机间的网卡共享系统中的虚拟交换机通过目的MAC地址获取模块对目标数据包进行解析,获取目标数据包的目的MAC地址;通过目标网卡确定模块根据目的MAC地址,查询MAC地址表,确定与目标数据包匹配的目标网卡;通过目标数据包转发模块当所述目标网卡为目标虚拟网卡时,将所述目标数据包转发至目标虚拟网卡的后端接口,以对目标数据包进行转发,,实现了对多虚拟机间的网卡共享系统中的目标数据包的转发。
可选的,目标数据包转发模块730,具体用于将所述目标数据包写入与所述目标虚拟网卡后端接口匹配的共享内存通道,以使所述目标虚拟网卡的前端接口从所述共享内存通道中读出所述目标数据包。
本发明实施例所提供的信息转发装置可执行本发明任意实施例所提供的信息转发方法,具备执行方法相应的功能模块和有益效果。
实施例七
图8为本发明实施例七提供的一种计算机设备的结构示意图,如图8所示,该计算机设备包括处理器80、存储器81、输入装置82和输出装置83;计算机设备中处理器80的数量可以是一个或多个,图8中以一个处理器80为例;计算机设备中的处理器80、存储器81、输入装置82和输出装置83可以通过总线或其他方式连接,图8中以通过总线连接为例。
存储器81作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本发明实施例中的多虚拟机间的网卡共享系统的配置方法对应的程序指令/模块(例如,多虚拟机间的网卡共享系统的配置装置中的虚拟网卡后端接口配置模块610和虚拟网卡前端接口配置模块620),或者,如本发明实施例中的信息转发方法对应的程序指令/模块(例如,信息转发装置中的目的MAC地址获取模块710、目标网卡确定模块720和目标数据包转发模块730)。处理器80通过运行存储在存储器81中的软件程序、指令以及模块,从而执行计算机设备的各种功能应用以及数据处理,即实现上述的多虚拟机间的网卡共享系统的配置方法或者信息转发方法。
存储器81可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据终端的使用所创建的数据等。此外,存储器81可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储器81可进一步包括相对于处理器80远程设置的存储器,这些远程存储器可以通过网络连接至计算机设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
输入装置82可用于接收输入的数字或字符信息,以及产生与计算机设备的用户设置以及功能控制有关的键信号输入。输出装置83可包括显示屏等显示设备。
实施例八
本发明实施例八还提供一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行一种多虚拟机间的网卡共享系统的配置方法,该方法包括:
在虚拟交换机上分别配置与多个实时虚拟机分别对应的虚拟网卡后端接口;
在各实时虚拟机上配置与所述虚拟交换机上的各所述虚拟网卡后端接口分别对应的虚拟网卡前端接口,并分别建立每个虚拟网卡前端接口与匹配的虚拟网卡后端接口之间的共享内存通道。
或者,信息转发方法,该方法包括:
当接收到目标数据包时,对所述目标数据包进行解析,获取目标数据包的目的MAC地址;
根据所述目的MAC地址,查询MAC地址表,确定与所述目标数据包匹配的目标网卡;
当所述目标网卡为目标虚拟网卡时,将所述目标数据包转发至目标虚拟网卡的后端接口,以对目标数据包进行转发。
当然,本发明实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上所述的方法操作,还可以执行本发明任意实施例所提供的多虚拟机间的网卡共享系统的配置方法或者信息转发方法中的相关操作。
通过以上关于实施方式的描述,所属领域的技术人员可以清楚地了解到,本发明可借助软件及必需的通用硬件来实现,当然也可以通过硬件实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如计算机的软盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(RandomAccess Memory,RAM)、闪存(FLASH)、硬盘或光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
值得注意的是,上述多虚拟机间的网卡共享系统的配置装置或者信息转发装置的实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。

Claims (10)

1.一种多虚拟机间的网卡共享系统,其特征在于,包括:虚拟交换机以及多个实时虚拟机;
虚拟交换机上配置与各实时虚拟机分别对应的虚拟网卡后端接口,各实时虚拟机上配置与虚拟交换机上的虚拟网卡后端接口对应的虚拟网卡前端接口;
其中,各虚拟网卡前端接口与匹配的虚拟网卡后端接口通过共享内存通道建立通信连接,以形成虚拟交换机与各实时虚拟机之间的虚拟网卡;所述共享内存通道封装有读写介质访问控制MAC层数据包的接口;
虚拟交换机,用于通过各所述虚拟网卡以及物理网卡,建立各实时虚拟机间,以及各实时虚拟机与外部设备间的通信连接。
2.一种多虚拟机间的网卡共享系统的配置方法,用于实现对权利要求1所述的网卡共享系统的配置,其特征在于,包括:
在虚拟交换机上分别配置与多个实时虚拟机分别对应的虚拟网卡后端接口;
在各实时虚拟机上配置与所述虚拟交换机上的各所述虚拟网卡后端接口分别对应的虚拟网卡前端接口,并分别建立每个虚拟网卡前端接口与匹配的虚拟网卡后端接口之间的共享内存通道。
3.根据权利要求2所述的方法,其特征在于,所述在虚拟交换机上配置与各实时虚拟机分别对应的虚拟网卡后端接口,包括:
配置各所述虚拟网卡后端接口的驱动程序的内存空间信息;
将各所述后端接口的驱动程序的配置信息填充至所述虚拟交换机的配置区,并初始化各所述后端接口的驱动程序的数据结构将各所述后端接口的驱动程序的配置完成标志置为有效状态。
4.根据权利要求2或3所述的方法,其特征在于,在各实时虚拟机上配置与所述虚拟交换机上的各所述虚拟网卡后端接口分别对应的虚拟网卡前端接口,并分别建立每个虚拟网卡前端接口与匹配的虚拟网卡后端接口之间的共享内存通道,包括:
配置各所述虚拟网卡前端接口的驱动程序的内存空间信息;
在所述后端接口配置完成后,将各所述前端接口的驱动程序的配置信息填充至所述虚拟交换机的配置区;
初始化各所述前端接口的驱动程序的数据结构,并设置与匹配的虚拟网卡后端接口共同使用的共享内存通道,并在各所述共享内存通道的读写接口中,封装读写MAC层数据包的接口;
将各所述前端接口的驱动程序的配置完成标志置为有效状态。
5.一种信息转发方法,由如权利要求1所述的多虚拟机间的网卡共享系统中的虚拟交换机执行,其特征在于,包括:
当接收到目标数据包时,对所述目标数据包进行解析,获取目标数据包的目的MAC地址;
根据所述目的MAC地址,查询MAC地址表,确定与所述目标数据包匹配的目标网卡;
当所述目标网卡为目标虚拟网卡时,将所述目标数据包转发至目标虚拟网卡的后端接口,以对目标数据包进行转发。
6.根据权利要求5所述的方法,其特征在于,在将所述目标数据包转发至目标虚拟网卡的后端接口之后,还包括:
将所述目标数据包写入与所述目标虚拟网卡后端接口匹配的共享内存通道,以使所述目标虚拟网卡的前端接口从所述共享内存通道中读出所述目标数据包;
所述共享内存通道封装有读写MAC层数据包的接口。
7.一种多虚拟机间的网卡共享系统的配置装置,用于实现对权利要求1所述的网卡共享系统的配置,其特征在于,包括:
虚拟网卡后端接口配置模块,用于在虚拟交换机上分别配置与多个实时虚拟机分别对应的虚拟网卡后端接口;
虚拟网卡前端接口配置模块,用于在各实时虚拟机上配置与所述虚拟交换机上的各所述虚拟网卡后端接口分别对应的虚拟网卡前端接口,并分别建立每个虚拟网卡前端接口与匹配的虚拟网卡后端接口之间的共享内存通道。
8.一种信息转发装置,由如权利要求1所述的多虚拟机间的网卡共享系统中的虚拟交换机执行,其特征在于,包括:
目的MAC地址获取模块,用于当接收到目标数据包时,对所述目标数据包进行解析,获取目标数据包的目的MAC地址;
目标网卡确定模块,用于根据所述目的MAC地址,查询MAC地址表,确定与所述目标数据包匹配的目标网卡;
目标数据包转发模块,用于当所述目标网卡为目标虚拟网卡时,将所述目标数据包转发至目标虚拟网卡的后端接口,以对目标数据包进行转发。
9.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求2-4中任一所述的多虚拟机间的网卡共享系统的配置方法,或者如权利要求5-6中任一所述的信息转发方法。
10.一种包含计算机可执行指令的存储介质,其特征在于,所述计算机可执行指令在由计算机处理器执行时用于执行如权利要求2-4中任一所述的多虚拟机间的网卡共享系统的配置方法,或者如权利要求5-6中任一所述的信息转发方法。
CN202011539928.9A 2020-12-23 2020-12-23 多虚拟机间的网卡共享系统、方法、装置、设备及介质 Pending CN112565113A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011539928.9A CN112565113A (zh) 2020-12-23 2020-12-23 多虚拟机间的网卡共享系统、方法、装置、设备及介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011539928.9A CN112565113A (zh) 2020-12-23 2020-12-23 多虚拟机间的网卡共享系统、方法、装置、设备及介质

Publications (1)

Publication Number Publication Date
CN112565113A true CN112565113A (zh) 2021-03-26

Family

ID=75032292

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011539928.9A Pending CN112565113A (zh) 2020-12-23 2020-12-23 多虚拟机间的网卡共享系统、方法、装置、设备及介质

Country Status (1)

Country Link
CN (1) CN112565113A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113839889A (zh) * 2021-09-18 2021-12-24 深圳震有科技股份有限公司 一种报文处理方法、终端及计算机可读存储介质
CN113992428A (zh) * 2021-11-29 2022-01-28 北京天融信网络安全技术有限公司 容器环境下的入侵防御方法及装置、电子设备、存储介质
CN114327944A (zh) * 2021-12-24 2022-04-12 科东(广州)软件科技有限公司 一种多系统共享内存的方法、装置、设备及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103346981A (zh) * 2013-06-28 2013-10-09 华为技术有限公司 虚拟交换方法、相关装置和计算机系统
CN107278359A (zh) * 2016-11-09 2017-10-20 华为技术有限公司 云计算系统中报文处理的方法、主机和系统
US20180239715A1 (en) * 2017-02-17 2018-08-23 Red Hat Israel, Ltd. Secure zero-copy packet forwarding
CN108964959A (zh) * 2017-05-27 2018-12-07 阿里巴巴集团控股有限公司 一种用于虚拟化平台的网卡直通系统及数据包监管方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103346981A (zh) * 2013-06-28 2013-10-09 华为技术有限公司 虚拟交换方法、相关装置和计算机系统
CN107278359A (zh) * 2016-11-09 2017-10-20 华为技术有限公司 云计算系统中报文处理的方法、主机和系统
US20180239715A1 (en) * 2017-02-17 2018-08-23 Red Hat Israel, Ltd. Secure zero-copy packet forwarding
CN108964959A (zh) * 2017-05-27 2018-12-07 阿里巴巴集团控股有限公司 一种用于虚拟化平台的网卡直通系统及数据包监管方法

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113839889A (zh) * 2021-09-18 2021-12-24 深圳震有科技股份有限公司 一种报文处理方法、终端及计算机可读存储介质
CN113839889B (zh) * 2021-09-18 2024-04-05 深圳震有科技股份有限公司 一种报文处理方法、终端及计算机可读存储介质
CN113992428A (zh) * 2021-11-29 2022-01-28 北京天融信网络安全技术有限公司 容器环境下的入侵防御方法及装置、电子设备、存储介质
CN113992428B (zh) * 2021-11-29 2024-02-09 天融信雄安网络安全技术有限公司 容器环境下的入侵防御方法及装置、电子设备、存储介质
CN114327944A (zh) * 2021-12-24 2022-04-12 科东(广州)软件科技有限公司 一种多系统共享内存的方法、装置、设备及存储介质

Similar Documents

Publication Publication Date Title
CN112565113A (zh) 多虚拟机间的网卡共享系统、方法、装置、设备及介质
CN111371779B (zh) 一种基于dpdk虚拟化管理系统的防火墙及其实现方法
CN108270676B (zh) 一种基于Intel DPDK的网络数据处理方法及装置
US10802960B2 (en) Flash medium access method and controller
CN112416840B (zh) 一种计算资源的远程映射方法、装置、设备及存储介质
CN108984465B (zh) 一种消息传输方法及设备
US20150334011A1 (en) Traffic interconnection between virtual devices
CN106713144B (zh) 一种报文出口信息的读写方法及转发引擎
US9847937B2 (en) Hardware acceleration for routing programs
US11829309B2 (en) Data forwarding chip and server
CN114201268B (zh) 一种数据处理方法、装置、设备及可读存储介质
CN112929419B (zh) 一种数据包传输方法、装置、电子设备及可读存储介质
CN113472624A (zh) 一种基于vDPA实现虚拟网络数据包转发的方法及应用
CN112052100A (zh) 基于共享内存的虚拟机通信方法及设备
CN107992352A (zh) 用于虚拟化场景的数据交互方法及设备
CN106790162B (zh) 虚拟网络优化方法与系统
CN112579323A (zh) 一种异构多核的异步通信方法及装置
CN112543137A (zh) 基于半虚拟化和ovs-dpdk的虚拟机网络加速系统
CN112671941A (zh) 报文处理方法、装置、设备及介质
CN103226496B (zh) 业务同步处理方法和多核设备
EP3425857A1 (en) Forwarding method and apparatus for fast reroute, and network device
CN111865794B (zh) 一种逻辑端口的关联方法、系统、设备及数据传输系统
CN113132273A (zh) 一种数据转发方法及装置
CN109951365B (zh) 结合PCIe总线与以太网络的网络通信方法、系统及控制器
CN114221849A (zh) 一种fpga结合tcam实现智能网卡的方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20210326

RJ01 Rejection of invention patent application after publication