[发明专利]一种加载驱动程序的方法和服务器有效
| 申请号: | 201510942846.1 | 申请日: | 2015-12-16 |
| 公开(公告)号: | CN106886429B | 公开(公告)日: | 2020-11-06 |
| 发明(设计)人: | 杨东天;胡新宇;谢于明;赵宇萍 | 申请(专利权)人: | 华为技术有限公司 |
| 主分类号: | G06F9/4401 | 分类号: | G06F9/4401 |
| 代理公司: | 暂无信息 | 代理人: | 暂无信息 |
| 地址: | 518129 广东*** | 国省代码: | 广东;44 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 加载 驱动程序 方法 服务器 | ||
本发明提供一种加载驱动程序的方法和服务器。预先为服务器上插入的PCIe设备的每个虚拟功能VF建立全局索引和全局VF标识,当所述服务器收到业务需求时,确定所述业务需求中包括的指定功能的第一功能描述对应的第一全局索引以及第一全局VF标识,并确定所述业务需求对应的VM,关联所述第一全局VF标识和所述VM,为所述指定功能分配所述VM下的第一本地索引,建立所述第一本地索引与所述第一功能描述的对应关系,并将所述第一本地索引与所述第一功能描述的对应关系发送给所述VM。所述VM根据所述对应关系为所述第一全局VF标识对应的第一VF加载所述指定功能的驱动程序。通过本发明,能够为一个PCIe设备上虚拟出的具有不同功能的VF加载不同的驱动程序。
技术领域
本发明涉及网络通信技术,尤其涉及一种加载驱动程序的方法和服务器。
背景技术
随着网络功能虚拟化(英文:network functions virtualization,简称NFV)技术的迅速发展,NFV硬件加速成为了一个重要的研究方向。
NFV硬件加速是指把一些虚拟网络功能由专门的硬件而不是由通用计算机运行软件来实现,以提升所述虚拟网络功能的性能。
当前采用单根输入输出虚拟化(英文:single root I/O virtualization,简称:SR-IOV)技术实现NFV硬件加速。SR-IOV技术是一种基于硬件的虚拟化解决方案,SR-IOV技术允许在虚拟机之间高效共享快捷外围组件接口(英文:peripheral componentinterface express,简称:PCIe)设备。一个具有SR-IOV能力(英文:capability)且具有物理功能(英文:physical function,简称:PF)的PCIe设备可以虚拟出最多64000个虚拟功能(英文:virtual function,简称:VF),。所述VF是指能够执行网络功能的组件,每个VF在执行网络功能之前,都需要安装对应所述网络功能的驱动程序。所述PCIe设备和VF执行相同的网络功能。
现有技术中提供了一种为PCIe设备加载驱动程序的方法。服务器扫描每个PCIe总线上的设备,为扫描到的每个PCIe设备建立一个描述所述PCIe设备的数据结构,记为dev,并将所述dev顺序添加到PCIe总线描述符对应的设备列表上。如图1所示,假设服务器扫描到了三个PCIe设备,这三个PCIe设备的数据结构分别为dev1,dev2和dev3。
当所述服务器获取到(例如,从光盘中读取到或者从厂商的网站上下载)新的PCIe驱动程序时,为所述PCIe驱动程序建立一个描述所述PCIe驱动程序的数据结构,记为pci_driver,所述pci_driver的设备标识表(id_table)包括所述PCIe驱动程序可以驱动的所有PCIe设备的设备标识(英文:identifier,简称:ID)所述,其中,所述PCIe设备的ID包括厂商标识(英文:vendor ID)和设备标识(英文:device ID);一个设备ID用来标识一类PCIe设备。所述id_table是根据厂商的预先配置生成的。所述服务器将所述pci_driver添加到所述PCIe总线描述符对应的驱动程序列表上。图1中服务器总共获取到两个PCIe驱动程序。最后,依次用所述pci_driver的id_table中的ID匹配所述设备列表中的各设备的ID,当所述pci_driver的id_table中的一个ID与设备列表中的某个PCIe设备的ID相同时,则关联所述PCIe设备与所述PCIe驱动程序,即将所述PCIe设备写入所述PCIe驱动程序的设备列表。所述PCIe驱动程序的设备列表中的所有设备都可以加载所述PCIe驱动程序。例如图1中,dev1和dev2都可以使用驱动程序A,dev3可以使用驱动程序B。上述方式使用PCIe设备的设备ID来确定一个PCIe设备可以加载哪个PCIe驱动程序,而在SR-IOV场景下,由一个物理PCIe设备虚拟出的多个VF具有相同的设备ID,因此,无法针对由同一个物理PCIe设备虚拟出的不同VF加载不同的PCIe驱动程序。
发明内容
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司,未经华为技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510942846.1/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种抗紫外线外墙涂料及其制备方法
- 下一篇:一种厚膜膏溶剂型电泳漆





