WO2016197848A1 - 一种管理网卡的方法、装置及系统 - Google Patents

一种管理网卡的方法、装置及系统 Download PDF

Info

Publication number
WO2016197848A1
WO2016197848A1 PCT/CN2016/084335 CN2016084335W WO2016197848A1 WO 2016197848 A1 WO2016197848 A1 WO 2016197848A1 CN 2016084335 W CN2016084335 W CN 2016084335W WO 2016197848 A1 WO2016197848 A1 WO 2016197848A1
Authority
WO
WIPO (PCT)
Prior art keywords
virtual
network card
data packet
physical network
pcie address
Prior art date
Application number
PCT/CN2016/084335
Other languages
English (en)
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 华为技术有限公司
Publication of WO2016197848A1 publication Critical patent/WO2016197848A1/zh

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0654Management of faults, events, alarms or notifications using network fault recovery

Definitions

  • Embodiments of the present invention relate to the field of information technology, and in particular, to a method, device, and system for managing a network card.
  • Virtualization abstracts and transforms various physical resources of a computer, such as servers, networks, memory, and storage, and breaks down barriers between physical structures. Computer components run on a virtual basis rather than on a real basis. To enable users to better apply these resources. Virtualization technology can simulate multiple independent hardware environments on a single hardware platform, so that one platform can run multiple operating systems at the same time, and applications can run in separate spaces without affecting each other, thus significantly improving the work of the computer. effectiveness.
  • VMs virtual network cards used by virtual machines
  • the hypervisor software of virtualization technology is complex in design. At this level, virtualized management of devices requires complex control logic. However, the traffic isolation of virtual network cards needs to be guaranteed at this level, further increasing the Hypervisor software. Design difficulty.
  • the complex implementation results in a virtual software card stack that is too thick, and its performance is severely degraded in the case of high load and multiple virtual network cards.
  • the software-level NIC virtualization technology also has poor reliability. The virtual NIC of the software layer shares a physical NIC, so once the physical NIC fails, all virtual layer NICs based on it will not work properly.
  • a method of managing a network card including the following steps:
  • mapping table where the mapping table is used to save a plurality of virtual network cards and a plurality of physical network cards Mapping relationship between
  • mapping table Querying the mapping table according to the virtual new generation peripheral component expansion interface PCIe address of the data packet, and acquiring the address information of the physical network card corresponding to the virtual PCIe address, that is, the physical PCIe address;
  • the mapping table specifically includes: a virtual PCIe address, a virtual MAC address, a physical PCIe address, and weight information.
  • the forwarding, by the physical network card corresponding to the virtual PCIe address, the data packet The steps specifically include:
  • the data packet is directly forwarded to the corresponding physical network card
  • the data packet is sent to one physical network card of the plurality of physical network cards by using load balancing technology.
  • the querying according to the virtual PCIe address Before the step of mapping the table the method further includes:
  • the NIC manager temporarily stores the data packet in the cache unit
  • the NIC manager obtains the virtual PCIe address information.
  • a network card manager including:
  • a receiving unit configured to receive a data packet
  • a storage unit configured to store a network card mapping table, where the mapping table stores a mapping relationship between a plurality of virtual network cards and a plurality of physical network cards, wherein one virtual network card may also be mapped to multiple physical network cards;
  • control unit configured to query the mapping table according to the virtual new generation peripheral component expansion interface PCIe address of the data packet, and obtain address information of a physical network card corresponding to the virtual PCIe address;
  • a sending unit configured to send the data packet to a physical network card corresponding to the address information according to an instruction of the control unit.
  • the mapping table specifically includes: a virtual PCIe address, a virtual MAC address, a physical PCIe address, and weight information.
  • control unit is further configured to:
  • the sending unit is controlled to directly forward the data packet to the corresponding physical network card;
  • the load balancing technology is used to control the sending unit to send the data packet to one of the plurality of physical network cards.
  • the method further includes:
  • a cache unit configured to cache the data packet
  • the control unit is further configured to acquire a virtual PCIe address of the data packet.
  • a third aspect provides a network card management system, including: a plurality of physical network cards, a plurality of virtual network cards, and a network card manager, wherein the plurality of physical network cards are connected to the network card manager, and the plurality of virtual network cards are virtualized by the network card manager.
  • the network card manager further includes:
  • a receiving unit configured to receive a data packet
  • a storage unit configured to store a network card mapping table, where the mapping table stores a mapping relationship between a plurality of virtual network cards and a plurality of physical network cards, wherein one virtual network card may also be mapped to multiple physical network cards;
  • control unit configured to query the mapping table according to the virtual new generation peripheral component expansion interface PCIe address of the data packet, and obtain address information of a physical network card corresponding to the virtual PCIe address;
  • a sending unit configured to send the data packet to a physical network card corresponding to the address information according to an instruction of the control unit.
  • control unit is further configured to:
  • the sending unit is controlled to directly forward the data packet to the corresponding physical network card;
  • the load balancing technology is used to control the sending unit to send the data packet to one of the plurality of physical network cards.
  • the network controller further includes:
  • a cache unit configured to cache the data packet
  • the control unit is further configured to acquire a virtual PCIe address of the data packet.
  • a mapping relationship between a plurality of virtual network cards and a plurality of physical network cards is established by using a mapping table, and two or more virtual network cards may be mapped to one physical network card to improve physical network cards.
  • the utilization efficiency; a virtual network card can also be mapped to multiple physical network cards.
  • the network card manager can offload the data packets to other physical network cards that can work normally, and play the role of backup protection to improve virtuality.
  • the physical network card may be temporarily added according to the service requirement.
  • mapping table of the network card manager needs to be updated, and the added physical network card is added to the mapping table, and the network card manager can split the data packet according to the updated mapping table.
  • the flexibility and scalability of the virtual machine system is greatly enhanced.
  • FIG. 1 is a schematic structural diagram of a network card management system according to an embodiment of the present invention.
  • FIG. 2 is a schematic structural diagram of a network card manager according to an embodiment of the present invention.
  • FIG. 3 is a schematic flow chart of a method according to a first embodiment of the present invention.
  • FIG. 4 is a flow chart showing the method of the second embodiment of the present invention.
  • a network card management system includes: a plurality of physical network cards, a network card manager, and a plurality of virtual network cards.
  • a plurality of physical network cards are respectively connected to the network card manager, and a plurality of virtual network cards are virtualized through the network card manager.
  • the network card manager of the present invention further includes: a receiving unit, a buffer unit (RINGBUFFER), a storage unit, a control unit, and a transmitting unit.
  • the receiving unit is configured to receive a data packet
  • the cache unit is configured to cache a data packet received by the physical network card, a data packet sent to the virtual network card, and other temporary data packets
  • a storage unit configured to save the network interface card (Network Interface Card) , NIC) mapping table, the contents of the mapping table are shown in Table 1:
  • the mapping table is used to store a mapping relationship between a plurality of virtual network interface cards (VNICs) and a plurality of physical network interface cards (PNICs), wherein multiple virtual network cards can be mapped to one physical network card, one virtual The NIC can also be mapped to multiple physical NICs.
  • VNICs virtual network interface cards
  • PNICs physical network interface cards
  • the virtual network card VNIC1 corresponds to the unique physical network card PNIC1
  • the virtual network card VNIC3 is mapped to two physical network cards (PNIC2 and PNIC4).
  • control unit configured to query the mapping table according to the virtual new generation peripheral component expansion interface PCIe address of the data packet to obtain address information of a physical network card corresponding to the virtual PCIe address, and the control unit further includes direct memory access (Direct Memory Access, DMA) controller, protocol analysis (PA) logic, etc., used to control the entire workflow of the NIC manager;
  • DMA Direct Memory Access
  • PA protocol analysis
  • a sending unit configured to send the data packet to a physical network card corresponding to the address information according to an instruction of the control unit.
  • the operation process of the method according to the first embodiment of the present invention is as follows:
  • the receiving unit of the network card manager receives the data packet from the upper layer device, and assumes that the virtual PCIe (Peripheral Component Interconnect Express) address of the data packet is VNIC1;
  • VNIC1 virtual PCIe (Peripheral Component Interconnect Express) address of the data packet
  • the network card manager temporarily saves the data packet in a cache unit.
  • control unit of the network card manager obtains the virtual PCIe address of the data packet, that is, VNIC1;
  • the control unit of the network card manager queries the mapping table saved by the storage unit through the virtual PCIe address of the data packet, and obtains the address information of the physical network card corresponding to the virtual PCIe address of the data packet, that is, PNIC1;
  • the sending unit of the network card manager sends the data packet to the physical network card corresponding to the address information. Further, if the virtual network address corresponding to the virtual PCIe address of the data packet is Multiple, for example, the virtual network card VNIC3 corresponds to two physical network cards (PNIC2 and PNIC4), and the data packet can be sent to one of the physical network cards PNIC2 or PNIC4 by using load balancing technology.
  • the operation procedure of the method of the second embodiment of the present invention is as follows:
  • the receiving unit of the network card manager receives the data packet from the physical network card, and assumes that the physical PCIe (Peripheral Component Interconnect Express) address of the data packet is PNIC1;
  • PCIe Peripheral Component Interconnect Express
  • control unit of the network card manager acquires the physical PCIe address, that is, PNIC1;
  • the control unit of the network card manager queries the mapping table saved by the storage unit through the physical PCIe address, and obtains the address information of the virtual network card corresponding to the physical PCIe address, that is, VNIC1;
  • the network card manager temporarily saves the data packet in a cache unit corresponding to the virtual network card
  • the DMA interrupt is regenerated, and the data is sent to the designated memory.
  • the certain condition refers to that the cached data reaches a specified number or the time exceeds a specified time or a read request sent by the upper layer software is received.
  • the memory address of the DMA interrupt transfer data of each virtual network card is allocated by the upper input/output memory management unit (IO MMU), so that the virtual machine VM can directly use the virtual network card instead of Interventions at the hypervisor level are required.
  • IO MMU input/output memory management unit
  • a mapping relationship between a plurality of virtual network cards and a plurality of physical network cards is established by using a mapping table, and two or more virtual network cards may be mapped to one physical network card to improve utilization efficiency of the physical network card; and a virtual network card is also used. It can be mapped to multiple physical NICs. When one of the physical NICs fails, the NIC manager can offload the packets to other physical NICs that can work normally, and play the role of backup protection to improve the stability of the virtual machine system. In addition, the physical network card may be temporarily added according to the service requirement.
  • mapping table of the network card manager needs to be updated, and the added physical network card is added to the mapping table, and the network card manager can split the data packet according to the updated mapping table.
  • the flexibility and scalability of the virtual machine system is greatly enhanced.
  • the disclosed system, apparatus, and method may be implemented in other manners.
  • the device implementations 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.
  • Combinations can be integrated into another system, or some features can be ignored or not executed.
  • the mutual coupling or direct coupling or communication connection shown or discussed may be through some interface, device or unit.
  • the indirect coupling or communication connection can 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 units may or may not be physical units, that is, 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 purpose of the solution 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.
  • the integrated unit if implemented in the form of a software functional unit and sold or used as a standalone product, may be stored in a computer readable storage medium.
  • a computer readable storage medium A number of instructions are included to cause a computer device (which may be a personal computer, server, or network device, etc.) or a processor to perform all or part of the steps of the methods described in various embodiments of the present application.
  • the foregoing storage medium includes: a U disk, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk, or an optical disk, and the like. .
PCT/CN2016/084335 2015-06-09 2016-06-01 一种管理网卡的方法、装置及系统 WO2016197848A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201510312750.7 2015-06-09
CN201510312750.7A CN106301859B (zh) 2015-06-09 2015-06-09 一种管理网卡的方法、装置及系统

Publications (1)

Publication Number Publication Date
WO2016197848A1 true WO2016197848A1 (zh) 2016-12-15

Family

ID=57503036

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2016/084335 WO2016197848A1 (zh) 2015-06-09 2016-06-01 一种管理网卡的方法、装置及系统

Country Status (2)

Country Link
CN (1) CN106301859B (sv)
WO (1) WO2016197848A1 (sv)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112491570A (zh) * 2019-09-11 2021-03-12 中兴通讯股份有限公司 一种虚拟网卡链路状态设置方法、装置及存储介质
CN113923273A (zh) * 2021-09-29 2022-01-11 深信服科技股份有限公司 一种数据包控制方法及相关装置
CN114124850A (zh) * 2022-01-26 2022-03-01 浙江宇视系统技术有限公司 一种网络通信方法及装置、存储介质
WO2022177455A1 (en) * 2021-02-22 2022-08-25 Instituto De Telecomunicações Method and system for optimizing resource and traffic management of a computer execution environment in a vran

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106789363A (zh) * 2017-02-20 2017-05-31 郑州云海信息技术有限公司 一种向虚拟机配置网卡的方法及装置
CN107046469B (zh) * 2017-05-11 2021-02-02 苏州浪潮智能科技有限公司 一种用于服务器负载均衡网卡设备扩展的方法
CN109923528B (zh) 2017-09-25 2021-04-09 华为技术有限公司 一种数据访问的方法和装置
CN107832242A (zh) * 2017-10-31 2018-03-23 郑州云海信息技术有限公司 一种数据传输方法、系统、装置及计算机可读存储介质
CN108667951B (zh) * 2018-04-13 2021-04-27 普联技术有限公司 虚拟mac地址的映射方法、装置及存储介质、中继设备
CN111880901B (zh) * 2020-07-29 2023-03-31 北京浪潮数据技术有限公司 一种网络配置方法、装置、设备及可读存储介质
CN112631969B (zh) * 2020-12-30 2024-01-30 凌云光技术股份有限公司 一种基于pcie接口的虚拟多通道数据传输方法和系统
CN113778626A (zh) * 2021-08-31 2021-12-10 山石网科通信技术股份有限公司 虚拟网卡的热插拔处理方法、装置、存储介质及处理器
CN116028394B (zh) * 2023-03-29 2023-06-16 苏州浪潮智能科技有限公司 设备信息获取方法、装置、系统、通信设备及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120005521A1 (en) * 2010-06-30 2012-01-05 Oracle America, Inc. Method and system for maintaining direct hardware access in the event of network interface card failure
CN103634225A (zh) * 2013-12-18 2014-03-12 武汉朋客云计算有限公司 云计算网络虚拟化中的业务带宽扩展方法
CN103890728A (zh) * 2013-12-31 2014-06-25 华为技术有限公司 虚拟机热迁移的方法和服务器
CN104468311A (zh) * 2014-11-18 2015-03-25 浪潮(北京)电子信息产业有限公司 一种物理网卡虚拟成多个虚拟网卡的方法及系统
CN104639372A (zh) * 2015-02-13 2015-05-20 中国联合网络通信集团有限公司 基于sdn的覆盖网络和物理网络的关联方法及系统

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7925795B2 (en) * 2007-04-30 2011-04-12 Broadcom Corporation Method and system for configuring a plurality of network interfaces that share a physical interface
US7912082B2 (en) * 2008-06-09 2011-03-22 Oracle America, Inc. Shared virtual network interface

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120005521A1 (en) * 2010-06-30 2012-01-05 Oracle America, Inc. Method and system for maintaining direct hardware access in the event of network interface card failure
CN103634225A (zh) * 2013-12-18 2014-03-12 武汉朋客云计算有限公司 云计算网络虚拟化中的业务带宽扩展方法
CN103890728A (zh) * 2013-12-31 2014-06-25 华为技术有限公司 虚拟机热迁移的方法和服务器
CN104468311A (zh) * 2014-11-18 2015-03-25 浪潮(北京)电子信息产业有限公司 一种物理网卡虚拟成多个虚拟网卡的方法及系统
CN104639372A (zh) * 2015-02-13 2015-05-20 中国联合网络通信集团有限公司 基于sdn的覆盖网络和物理网络的关联方法及系统

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112491570A (zh) * 2019-09-11 2021-03-12 中兴通讯股份有限公司 一种虚拟网卡链路状态设置方法、装置及存储介质
WO2022177455A1 (en) * 2021-02-22 2022-08-25 Instituto De Telecomunicações Method and system for optimizing resource and traffic management of a computer execution environment in a vran
CN113923273A (zh) * 2021-09-29 2022-01-11 深信服科技股份有限公司 一种数据包控制方法及相关装置
CN114124850A (zh) * 2022-01-26 2022-03-01 浙江宇视系统技术有限公司 一种网络通信方法及装置、存储介质

Also Published As

Publication number Publication date
CN106301859A (zh) 2017-01-04
CN106301859B (zh) 2020-02-14

Similar Documents

Publication Publication Date Title
WO2016197848A1 (zh) 一种管理网卡的方法、装置及系统
US9529773B2 (en) Systems and methods for enabling access to extensible remote storage over a network as local storage via a logical storage controller
US7996569B2 (en) Method and system for zero copy in a virtualized network environment
EP3706394A1 (en) Writes to multiple memory destinations
US9311122B2 (en) System and method for providing a scalable signaling mechanism for virtual machine migration in a middleware machine environment
EP3343364B1 (en) Accelerator virtualization method and apparatus, and centralized resource manager
US9813283B2 (en) Efficient data transfer between servers and remote peripherals
US9031081B2 (en) Method and system for switching in a virtualized platform
US8898665B2 (en) System, method and computer program product for inviting other virtual machine to access a memory space allocated to a virtual machine
WO2015143983A1 (zh) 一种对vnf实现加速处理的方法及装置
US9432304B2 (en) System and method for supporting live migration of virtual machines based on an extended host channel adaptor (HCA) model
US20140032796A1 (en) Input/output processing
CN108965148B (zh) 一种处理器及报文处理方法
US20180329828A1 (en) Kernel-assisted inter-process data transfer
US9864717B2 (en) Input/output processing
CN103942087A (zh) 虚拟机热迁移方法及相关装置和集群系统
US11757796B2 (en) Zero-copy processing
US20150339153A1 (en) Data flow affinity for heterogenous virtual machines
WO2015010584A1 (en) Operating system virtualization for host channel adapters
US20150319250A1 (en) Technologies for accelerating network virtualization
US8812707B2 (en) Transmitting internet protocol over SCSI in a high availability cluster
WO2010100027A1 (en) Copy circumvention in a virtual network environment
US20140025859A1 (en) Input/output processing
CN112583655A (zh) 数据传输方法、装置、电子设备及可读存储介质
Guay et al. Early experiences with live migration of SR-IOV enabled InfiniBand

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: 16806746

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: 16806746

Country of ref document: EP

Kind code of ref document: A1