Intel82599ixgbe..docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Intel82599ixgbe.

Intel 82599 ixgbe ixgbevf CNA 卡驱动分析01 ——SR-IOV SR-IOV Overview:?当在主机接口之后使用普通共享设备时,本地共享设备会为每个接口提供单独的内存空间,工作队列,中断和命令处理。这些共享资源也需要被管理,它们会向Hypervisor中可信分区提供一系列用于管理自己的寄存器。?当拥有独立的工作队列和命令处理机制后,这些设备就可以同时从多种资源接受命令,并将这些命令智能的融合在一起,在传递给下一级结构之前。?虚拟化软件不用再对I/O请求进行复用,这减少了软件的压力。?本地共享设备能够通过很多方式实现,可以按照标准实现也可以使用其他专门的实现方式。?因为大多数这些设备都是通过PCI 访问的,PCI-SIG 决定定义一种实现标准用语创建和管理本地共享设备,也就是现在的Single Root I/O Virtualization 和 Sharing (SR-IOV) specification.?SR-IOV Goal?PCI-SIG SR-IOV 标准目的在于标准化化在虚拟环境中共享一个 I/O 设备的方式。?这个目标绕开了Hypervisor 的参与,提供了独立的内存空间、中断、DMA 流给每一个虚拟机用于数据的移动。?SR-IOV 引入了两种新的function 类型:?Physical Function(PF):这是一个拥有所用PCIe 功能的fucntion,当然也包含了SR-IOV 扩展的能力?Virtual Function (VF): 这是一个轻量级的PCIe function,包含了数据移动所需的资源。High Level Overview of PCI-SIG SR-IOV虚拟化方法中的直接赋值提供了非常快速的I/O。 然而,这种方式使得I/O设备不能被共享。SR-IOV 标准提供了一个机制,通过这个机制使得一个单根的功能模块(比如一个以太网端口)看起来像是多个单独的物理设备。?一个支持SR-IOV 的设备能够通过配置(一般由Hypervisor来配置)在PCI的配置空间看起来像是拥有多个功能。每个功能都拥有自己的配置空间,拥有自己的基地址寄存器(BAR)。 支持SR-IOV 的设备为每个独立的虚拟功能提供了一个配置号,每个虚拟空能都拥有独立的PCI 配置空间。 Hypervisor 可以将一个活多个虚拟功能分配给一个虚拟机。内存地址翻译技术比如Intel VT-d 提供的硬件辅助技术使得可以针对每个虚拟机进行DMA传输。SR-IOV 标准详细列出了PCI配置空间信息该如何呈现。这些信息与标准PCI设备的信息有些不同。Hypervisor必须知道如何访问和读取这些信息,以便使得VM可以访问它们。??High Level Architecture:?在虚拟化的环境中,系统中包含SR-IOV设备,Hypervisor都必须将PCI 配置空间的信息传递给虚拟机的I/O设备。对于SR-IOV 来说,Hypervisor 将实际的配置空间信息传递给特定的VF,允许虚拟机中的VF 驱动访问这些VF资源。?SR-IOV标准的一部分规定了一个支持SR-IOV的设备需要如何表明自身具有SR-IOV的能力,PCI配置空间的虚拟VF信息是如何被存储,可以 怎样被访问。这是SR-IOV特有的机制。Hypervisor必须知道如何读取和分析这些信息。Linux和Xen内核已经更新,现已能够使用这项新功 能。?VT-d 使得一个I/O设备通过DMA重映射操作可以直接分配给一个虚拟机。Hypervisor 必须使用I/O地址来进行配置,以便进行重映射。?注:1. 文章其实是对 Intel 提供的文档和代码的理解和翻译,2.?这里没有讲SR-IOV具体是一个什么东西(或者说讲的太简略),如果有一定基础的朋友会知道,之后可能有会有专门的文章补充介绍Physical Function Driver:?PF 驱动是一个专门管理SR-IOV设备全局功能驱动,而且还要配置相关共享资源。PF 驱动 随着Hypervisor 的不同而不同,一般需要具有比普通虚拟机更高的权限才能对其进行操作。PF驱动包含了所有传统驱动的功能,使得Hypervisor能够访问设备I/O资 源。也可以通过调用PF驱动执行相关操作从而影响整个设备。PF驱动必须在VF驱动之前加载,而且需要等VF驱动卸载之后才能卸载。??Intel SR-IOV 驱动包含了所有 Intel 以太网卡的功能,并且还有下面使用SR-IOV时拥有的特殊功能:?·给每个VF生成一个MAC 地址?·通过信箱系统与VF驱动通信: ·通过VF驱动配置VLAN过滤器 ·通过VF驱动配置多播地址 ·通过VF驱动配置最大包长 ·处理VF驱动资源复位请求??Viruta

文档评论(0)

sa74g0hj + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档