(single root)SR-IOV-阿里云开发者社区

开发者社区> 云计算> 正文

(single root)SR-IOV

简介:
在准备给link设置vlan时, 无意间看到man ip的一个和IO虚拟化相关的设置.

详见
http://pubs.vmware.com/vsphere-55/index.jsp?topic=%2Fcom.vmware.vsphere.networking.doc%2FGUID-DD13D453-98B9-4D26-85EA-A738293AEE00.html
SR-IOV 组件架构和交互

vSphere SR-IOV 支持依赖于网卡端口虚拟功能 (VF) 和物理功能 (PF) 之间的交互以提高性能,依赖于 PF 驱动程序和主机交换机之间的交互以实现流量控制。

在主机中,如果在 SR-IOV 物理适配器上运行虚拟机流量,则虚拟机适配器将直接联系虚拟功能以传递数据。但是,能否配置网络基于虚拟机所在端口的活动策略。

在没有 SR-IOV 的 ESXi 主机上,虚拟交换机通过主机上的相应端口发送流出或流入相关端口组的物理适配器的外部网络流量。此外,虚拟交换机也会将网络策略应用于受管数据包。

vSphere SR-IOV 支持中的数据路径和配置路径
(single root)SR-IOV - 德哥@Digoal - PostgreSQL research
 

SR-IOV 中的数据路径

将虚拟机网络适配器分配给某一虚拟功能后,客户机操作系统中的 VF 驱动程序会使用 I/O 内存管理单元 (IOMMU) 技术访问必须通过网络才能接收和发送数据的虚拟功能。VMkernel(尤其是虚拟交换机)不会处理数据流,这缩短了已启用 SR-IOV 的工作负载的整体滞后时间。

SR-IOV 中的配置路径

当客户机操作系统尝试更改映射到 VF 的虚拟机适配器的配置时,如果与此虚拟机适配器关联的端口上的策略允许此更改,则将执行更改。

配置工作流程包括以下操作:

1

客户机操作系统请求更改 VF 的配置。

2

VF 通过邮箱机制将该请求转发至 PF。

3

PF 驱动程序向虚拟交换机(标准交换机或 Distributed Switch 的主机代理交换机)确认配置请求。

4

虚拟交换机根据与已启用 VF 的虚拟机适配器关联的端口上的策略验证配置请求。

5

如果新的设置符合虚拟机适配器的端口策略,则 PF 驱动程序将配置 VF。

例如,当 VF 驱动程序尝试修改 MAC 地址时,如果端口组或端口的安全策略不允许更改 MAC 地址,则该地址将保持不变。客户机操作系统可能会显示更改已成功完成,但日志消息将表明此操作失败。因此,客户机操作系统和虚拟设备保存的 MAC 地址不同。客户机操作系统中的网络接口可能无法获取 IP 地址并进行通信。在这种情况下,必须重置客户机操作系统中的接口,以从虚拟设备获得最新的 MAC 地址并获取 IP 地址。


[参考]
1. http://pubs.vmware.com/vsphere-55/index.jsp?topic=%2Fcom.vmware.vsphere.networking.doc%2FGUID-DD13D453-98B9-4D26-85EA-A738293AEE00.html
2. http://blog.scottlowe.org/2009/12/02/what-is-sr-iov/
3. http://www-dl.emulex.com/support/linux/835444p/sr_iov_guide.pdf
4. man ip
       vf NUM specify a Virtual Function device to be configured. The associated PF device must be specified using the
              dev parameter.

                      mac LLADDRESS - change the station address for the specified VF. The vf parameter must be speci-
                      fied.

                      vlan  VLANID  -  change the assigned VLAN for the specified VF. When specified, all traffic sent
                      from the VF will be tagged with the specified VLAN ID. Incoming traffic will be filtered for the
                      specified  VLAN  ID, and will have all VLAN tags stripped before being passed to the VF. Setting
                      this parameter to 0 disables VLAN tagging and filtering. The vf parameter must be specified.

                      qos VLAN-QOS - assign VLAN QOS (priority) bits for the VLAN tag. When specified, all  VLAN  tags
                      transmitted  by  the  VF will include the specified priority bits in the VLAN tag. If not speci-
                      fied, the value is assumed to be 0. Both the vf and vlan parameters must be  specified.  Setting
                      both vlan and qos as 0 disables VLAN tagging and filtering for the VF.

                      rate  TXRATE  -  change  the allowed transmit bandwidth, in Mbps, for the specified VF.  Setting
                      this parameter to 0 disables rate limiting. The vf parameter must be specified.

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享:
云计算
使用钉钉扫一扫加入圈子
+ 订阅

时时分享云计算技术内容,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。

其他文章