目录
网络虚拟化解决方案
Solarflare ef_vi 是 Solarflare 公司开发的一款高性能网络虚拟化解决方案,它可以显著提高数据中心的网络吞吐量和性能,并提供高度可靠性和可伸缩性。
Solarflare ef_vi 采用协议加速引擎(Protocol Acceleration Engine)和传输加速引擎(Transport Acceleration Engine)技术,可以通过优化网络协议来提高网络性能。它还支持 SR-IOV(Single Root I/O Virtualization)技术,将物理网络适配器(NIC)虚拟化为多个逻辑 NIC,从而实现更高的网络吞吐量和更低的延迟。
此外,Solarflare ef_vi 还提供了一系列的安全性能和管理功能,如基于硬件的网络流量监控、带宽限制、虚拟网卡控制等,可以帮助数据中心管理员更好地管理和保护网络资源。
总的来说,Solarflare ef_vi 是一款高性能、可靠、安全的网络虚拟化解决方案,可以有效提高数据中心的网络性能和管理效率。
赛灵思网卡是指由Xilinx公司推出的一种高性能网卡,其中EF_VI是它的一个重要特性。EF_VI代表了Ethernet Frame Virtualization Interface,是一种基于SR-IOV(Single Root I/O Virtualization)技术的网络虚拟化接口。它可以将一个实际的物理网卡虚拟化成多个虚拟网卡,每个虚拟网卡都可以拥有独立的MAC地址、IP地址等网络资源,从而满足多租户环境下的网络隔离和安全需求。此外,EF_VI还支持Zero-copy技术,可以提高网络I/O性能,降低CPU负载。
EF_VI介绍
EF_VI是基于SR-IOV技术实现的一种网卡虚拟化接口,具有以下特性:
-
多个虚拟网卡:通过EF_VI,一张物理网卡可以被虚拟化成多个虚拟网卡,每个虚拟网卡都可以拥有独立的MAC地址、IP地址等网络资源。这样,不同的虚拟机或容器可以共享同一张物理网卡,实现网络资源的共享和利用效率的提高。
-
隔离性:每个虚拟网卡可以被分配到不同的虚拟机或容器中,从而实现网络隔离,保证网络安全。同时,EF_VI还提供了一些安全机制,如基于VF MAC的ARP保护和基于VF MAC的流量策略,可以进一步增强网络安全。
-
高性能:EF_VI支持Zero-copy技术,可以提高网络I/O性能,降低CPU负载。此外,EF_VI还支持Packet Filtering和VLAN Offload等功能,可以进一步提高网络性能。
-
管理简单:EF_VI可以通过驱动程序和命令行工具来进行配置和管理,管理起来非常方便。
总之,EF_VI通过将物理网卡虚拟化成多个虚拟网卡,为多租户环境下的网络隔离和安全提供了一种高效可靠的解决方案,同时还具有高性能和管理简单等优点。
EF_VI支持的功能
物理网卡虚拟化
EF_VI是赛灵思公司的一种I/O虚拟化技术,支持物理网卡虚拟化实现原理如下:
EF_VI技术利用PCI-SIG的SR-IOV标准,将物理网卡的硬件资源分割成多个虚拟网卡,每个虚拟网卡被赋予唯一的PCIe地址。
EF_VI技术需要支持SR-IOV的物理网卡才能实现。当主机操作系统(Host OS)需要为虚拟机分配一个虚拟网卡时,EF_VI会通过PCIe总线控制器实现在物理网卡上创建、配置一个虚拟功能(VF)。主机操作系统将虚拟网卡分配给虚拟机(Guest OS),从而实现了物理网卡的虚拟化。
在虚拟机中,虚拟网卡不需要额外的驱动程序,因为虚拟网卡的驱动已经在主机操作系统中加载。虚拟机操作系统(Guest OS)通过PCIe连接到虚拟网卡,实现与网络的通信。
这种物理网卡虚拟化技术能够提高虚拟机的网络性能和吞吐量,减少主机CPU的负担,并能够简化虚拟网络的管理。
Zero-copy技术
EF_VI技术支持Zero-copy技术,Zero-copy技术可以减少数据在网络传输过程中的拷贝,提高网络数据传输效率。EF_VI技术支持Zero-copy技术的实现原理如下:
开启SR-IOV的DMA(直接内存访问)功能,这样可以直接将数据从物理网卡的DMA引擎中读取,避免了将数据从DMA引擎复制到内存的过程。
在主机物理内存中开辟一个专门的缓冲区,称为Share Memory。当虚拟机需要发送数据时,主机会将Share Memory中的一部分缓冲区映射到虚拟机的内存空间中,虚拟机可以通过直接访问这个缓冲区将数据发送出去。
当虚拟机接收数据时,数据不会经过主机内存,而是直接被存储在Share Memory缓冲区中,然后通过DMA引擎直接传输到虚拟机的内存中,避免了在主机内存中进行复制的过程。
采用Zero-copy技术,可以避免不必要的数据复制,提高数据传输的效率和速度,同时减少了主机CPU的负担。
Packet Filtering功能
EF_VI技术支持Packet Filtering功能,可以在虚拟机和物理网卡之间进行数据包过滤和转发。其实现原理如下:
首先,在SR-IOV物理网卡中,设置过滤规则,规定了哪些数据包需要进行过滤,哪些数据包不需要过滤。过滤规则可以基于MAC地址、IP地址、端口号、协议等多个因素进行定义。
当物理网卡接收到数据包时,会将该数据包的一些特征信息(如MAC地址、IP地址、端口号等)传递给SR-IOV虚拟网卡,虚拟网卡根据这些特征信息来判断是否需要对该数据包进行过滤处理。
如果需要对该数据包进行过滤处理,则虚拟网卡会将该数据包发送给主机CPU进行分析处理,否则直接将该数据包发送给目标虚拟机。
在主机CPU中,可以通过一些软件进行过滤处理,该软件可以基于设置好的过滤规则进行判断,将符合规则的数据包进行处理后转发给目标虚拟机,而不符合规则的数据包则被丢弃。
通过Packet Filtering功能,EF_VI可以实现数据包的快速过滤和转发,减少了不必要的数据包传输,提高了网络数据传输效率和安全性。
VLAN Offload功能
EF_VI技术支持VLAN Offload功能,可以在虚拟机和物理网卡之间进行VLAN标记的添加和删除。其实现原理如下:
首先,在SR-IOV物理网卡中,设置VLAN Offload功能,使得物理网卡能够实现VLAN标记的添加和删除。
当虚拟机需要添加VLAN标记时,虚拟网卡会将该数据包传递给主机CPU进行处理。主机CPU会在数据包头部中添加VLAN标记,并将该数据包发回给虚拟网卡。
当虚拟机需要删除VLAN标记时,虚拟网卡会将该数据包传递给主机CPU进行处理。主机CPU会将数据包头部中的VLAN标记删除,并将该数据包发回给虚拟网卡。
在数据包到达物理网卡时,如果该数据包带有VLAN标记,则物理网卡会按照标记进行路由,将该数据包发送给目标网络。否则,物理网卡会将该数据包发送给默认网络。
通过VLAN Offload功能,EF_VI可以实现虚拟机和物理网络之间的快速VLAN标记添加和删除,提高网路数据传输效率,优化网络性能。