CN116841629A - 一种网卡功能配置方法、装置及其介质 - Google Patents
一种网卡功能配置方法、装置及其介质 Download PDFInfo
- Publication number
- CN116841629A CN116841629A CN202310796902.XA CN202310796902A CN116841629A CN 116841629 A CN116841629 A CN 116841629A CN 202310796902 A CN202310796902 A CN 202310796902A CN 116841629 A CN116841629 A CN 116841629A
- Authority
- CN
- China
- Prior art keywords
- network card
- function
- operating system
- server
- configuration
- Prior art date
- Legal status (The legal status 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 status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 82
- 230000006870 function Effects 0.000 claims abstract description 234
- 238000004590 computer program Methods 0.000 claims description 16
- 238000009434 installation Methods 0.000 claims description 15
- 230000008685 targeting Effects 0.000 claims description 12
- 238000013515 script Methods 0.000 claims description 5
- 230000002708 enhancing effect Effects 0.000 claims 3
- 230000004913 activation Effects 0.000 claims 1
- 230000000694 effects Effects 0.000 abstract description 14
- 230000008569 process Effects 0.000 description 14
- 238000012986 modification Methods 0.000 description 8
- 230000004048 modification Effects 0.000 description 8
- 238000007726 management method Methods 0.000 description 7
- 230000007246 mechanism Effects 0.000 description 6
- 230000001960 triggered effect Effects 0.000 description 6
- 238000012545 processing Methods 0.000 description 5
- 238000011084 recovery Methods 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 4
- 230000006872 improvement Effects 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 230000002093 peripheral effect Effects 0.000 description 3
- 238000003491 array Methods 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000013500 data storage Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000011900 installation process Methods 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
- G06F9/4411—Configuring for operating with peripheral devices; Loading of device drivers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4063—Device-to-bus coupling
- G06F13/4068—Electrical coupling
- G06F13/4081—Live connection to bus, e.g. hot-plugging
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Stored Programmes (AREA)
Abstract
本发明公开一种网卡功能配置方法、装置及其介质,涉及服务器技术领域,用于实现对PCI网卡EDPC功能的支持,针对目前没有一种支持PCI网卡EDPC功能的方案的问题,提供一种网卡功能配置方法:确定网卡所连接的PCI链路以进行参数配置;硬件部分通过配置服务器的BIOS固件将ACPI热插拔功能关闭、超级热插拔功能关闭、热插拔功能开启;然后进行软件配置,即修改服务器操作系统的参数设置,使操作系统支持PCI链路所连接网卡的EDPC功能。当上述配置完成并生效后,服务器即可实现PCI网卡的EDPC功能,当PCI网卡出错时,可以通过EDPC功能恢复错误数据,满足了服务器系统下PCI网卡安全稳定的运行要求。
Description
技术领域
本发明涉及服务器技术领域,特别是涉及一种网卡功能配置方法、装置及其介质。
背景技术
目前,针对任何架构的服务器芯片均需支持内存和PCI(Peripheral ComponentInterconnect,一种用于定义局部总线的标准)总线。其中,内存用于提供整个系统所需的内存物理地址空间,PCI总线则是用于链接PCI外设,如PCI网卡、PCI RAID卡、PCI HBA卡、PCI接口硬盘、PCI加速卡、PCI显卡等,实现服务器芯片与外部设备之间的扩展连接,故内存和PCI总线是整个服务器产品中的核心接口。
随着技术的不断完善和提升,热插拔(Hot plug)功能不再局限于应用在硬盘中,也逐渐扩展应用到如PCI网卡等其他PCI外设中。但是PCI网卡的热插拔功能实现又与传统的硬盘热插拔功能有区别,尤其是在PCI链路上需要支持EDPC功能(EDPC功能是DPC功能的加强版,也即在原本DPC功能的基础上,增加热插拔的错误恢复功能)。
DPC:Downstream Port Containment,下行端口控制。是一种针对根端口(rootport)等重要端口在检测到不可恢复的错误时,通知下游端口以防止数据损坏扩散的业务。
由于EDPC功能的实现与现有的热插拔功能存在部分冲突,一旦开启这部分冲突的热插拔功能会导致PCI网卡等PCI设备EDPC功能的失效。
所以,现在本领域的技术人员亟需要一种网卡功能配置方法,解决目前缺少一种支持PCI网卡EDPC功能方案的问题。
发明内容
本发明的目的是提供一种网卡功能配置方法、装置及其介质,以解决目前PCI网卡为支持EDPC功能不兼容热插拔功能的问题。
为解决上述技术问题,本发明提供一种网卡功能配置方法,包括:
确定网卡所连接的总线链路;
修改基本输入输出系统的参数配置,将总线链路的高级配置和电源管理接口热插拔功能关闭、超级热插拔功能关闭、热插拔功能开启;
修改操作系统的参数设置,以开启总线链路的加强下行端口控制功能。
另一方面,修改操作系统的参数设置,使总线链路的加强下行端口控制功能开启包括:
打开操作系统中启动文件夹下的多操作系统启动程序文件,在多操作系统启动程序文件中增加加强下行端口控制功能的使能参数。
另一方面,当针对已安装操作系统的单个服务器时,修改操作系统的参数设置,使总线链路的加强下行端口控制功能开启包括:
通过热键打开操作系统中启动文件夹下的多操作系统启动程序文件;
在多操作系统启动程序文件中增加加强下行端口控制功能的使能参数;
重启服务器。
另一方面,当针对已安装操作系统的多个服务器时,修改操作系统的参数设置,使总线链路的加强下行端口控制功能开启包括:
获取服务器的多操作系统启动程序文件的文件镜像;
在文件镜像中增加加强下行端口控制功能的使能参数;
将修改后的文件镜像发送至各服务器,并覆盖原多操作系统启动程序文件;
重启各服务器。
另一方面,当针对未安装操作系统的服务器时,修改操作系统的参数设置,使总线链路的加强下行端口控制功能开启包括:
获取操作系统的系统镜像;
在系统镜像的启动文件夹下多操作系统启动程序文件中增加加强下行端口控制功能的使能参数;
将修改后的系统镜像发送至预启动执行环境服务器中,并根据系统镜像实现预启动执行环境服务器中操作系统的安装;
当各服务器通过调用预启动执行环境服务器的网络接口进行启动时,从预启动执行环境服务器中获取系统镜像,并根据系统镜像完成操作系统的安装;
启动服务器。
另一方面,确定网卡所连接的总线链路包括:
通过查看指令获取网卡信息,根据网卡信息确定网卡所连接的总线链路。
另一方面,网卡功能配置方法通过脚本工具实现。
为解决上述技术问题,本发明还提供一种网卡功能配置装置,包括:
链路确定模块,用于确定网卡所连接的总线链路;
硬件配置模块,用于修改基本输入输出系统的参数配置,将总线链路的高级配置和电源管理接口热插拔功能关闭、超级热插拔功能关闭、热插拔功能开启;
软件配置模块,用于修改操作系统的参数设置,以开启总线链路的加强下行端口控制功能。
另一方面,上述的软件配置模块具体用于:打开操作系统中启动文件夹下的多操作系统启动程序文件,在多操作系统启动程序文件中增加加强下行端口控制功能的使能参数。
另一方面,当针对已安装操作系统的单个服务器时,上述的软件配置模块具体用于:通过热键打开操作系统中启动文件夹下的多操作系统启动程序文件;在多操作系统启动程序文件中增加加强下行端口控制功能的使能参数;重启服务器。
另一方面,当针对已安装操作系统的单个服务器时,上述的软件配置模块具体用于:获取服务器的多操作系统启动程序文件的文件镜像;在文件镜像中增加加强下行端口控制功能的使能参数;将修改后的文件镜像发送至各服务器,并覆盖原多操作系统启动程序文件;重启各服务器。
另一方面,当针对未安装操作系统的服务器时,上述的软件配置模块具体用于:获取操作系统的系统镜像;在系统镜像的启动文件夹下多操作系统启动程序文件中增加加强下行端口控制功能的使能参数;将修改后的系统镜像发送至预启动执行环境服务器中,并根据系统镜像实现预启动执行环境服务器中操作系统的安装;当各服务器通过调用预启动执行环境服务器的网络接口进行启动时,从预启动执行环境服务器中获取系统镜像,并根据系统镜像完成操作系统的安装;启动服务器。
另一方面,上述的链路确定模块具体用于:通过查看指令获取网卡信息,根据网卡信息确定网卡所连接的总线链路。
为解决上述技术问题,本发明还提供一种网卡功能配置装置,包括:
存储器,用于存储计算机程序;
处理器,用于执行计算机程序时实现如上述的网卡功能配置方法的步骤。
为解决上述技术问题,本发明还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现如上述的网卡功能配置方法的步骤。
本发明提供的一种网卡功能配置方法,首先确定需要进行功能配置的网卡所连接的PCI链路;在确定网卡所连接的PCI链路之后,即可确定配置目标进行参数配置;由于EDPC功能的开启需要服务器的BIOS固件和操作系统内核这两部分支持,所以本方法的参数配置也包括硬件和软件两部分;硬件部分通过配置服务器的BIOS,关闭可能会对EDPC功能的热插拔功能,开启不影响EDPC功能的热插拔功能,具体的,也即将高级配置和电源管理接口(Advanced Configuration and Power Management Interface,ACPI)热插拔功能关闭、超级热插拔功能(Surprise hot-plug Cap)关闭、热插拔功能(hot-plug Cap)开启;并进行软件配置,即修改服务器操作系统的参数设置,使操作系统支持PCI链路所连接网卡的EDPC功能。当上述配置完成并生效后,服务器即可实现PCI网卡的EDPC功能。
本发明提供的网卡功能配置装置、及计算机可读存储介质,与上述方法对应,效果同上。
附图说明
为了更清楚地说明本发明实施例,下面将对实施例中所需要使用的附图做简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明提供的一种网卡功能配置方法的流程图;
图2为本发明提供的一种网卡功能配置装置的结构图;
图3为本发明提供的另一种网卡功能配置装置的结构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下,所获得的所有其他实施例,都属于本发明保护范围。
本发明的核心是提供一种网卡功能配置方法、装置及其介质。
为了使本技术领域的人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。
目前,随着热插拔技术的发展,热插拔功能的使用对象已经从传统的硬盘向其他设备扩展。但是,对于PCI网卡这类情况较为特殊的设备,目前仍没有一种成熟的实现支持热插拔功能的方案。
这是由于PCI网卡在实际应用中会因某种原因出现错误,如模拟硬件产生的错误,或者因热插拔导致的错误。此时,需要触发加强下行端口控制功能(加强DPC功能,即EDPC功能)将设备从错误状态恢复至正常。
在触发普通的DPC功能时,硬件主动断链,此时也会触发数据链路层状态更改事件(Data Link Layer State Changed Events),对应于链路失效(Link Down)。当软件清除DPC状态后,硬件重新建链,此时也会触发Data Link Layer State Changed Events,对应于链路建立(Link Up)。而在触发Data Link Layer State Changed Events时,也会触发热插拔驱动,触发热插拔驱动会将设备进行移出和重新枚举。
由上述可以知道的是,DPC功能主要基于服务器的操作系统内核实现,而设备的热插拔功能则需要服务器的BISO固件支持。因此需要服务器的BIOS固件和操作系统内核一起协同处理EDPC功能。而目前的PCI链路的热插拔设置中存在多种类别,且存在部分功能开启时会导致EDPC功能失效,因而导致目前没有一种支持PCI网卡EDPC功能的方案。
基于上述问题,本申请提供一种网卡功能配置方法,如图1所示,包括:
S11:确定网卡所连接的总线链路。
对于如何实现对网卡所连接的总线链路(PCI链路)的查看,可以是服务器在设计之初或运维人员在安装网卡时根据网卡所安装的位置确定,也可以通过查看指令调取网卡的相关信息,其中即包括网卡所连接于服务器中央处理器(Central Processing Unit,CPU)的某一条PCI链路。
S12:修改基本输入输出系统的参数配置,将总线链路的高级配置和电源管理接口热插拔功能关闭、超级热插拔功能关闭、热插拔功能开启。
基本输入输出系统也即Basic Input Output System,简称为BIOS,是一组固化到服务器主板上的一个程序,它保存着计算机最重要的基本输入输出的程序、开机后自检程序和系统自启动程序。BIOS的主要功能是为计算机提供最底层的、最直接的硬件设置和控制,所以为实现对PCI网卡EDPC功能和热插拔功能的同时支持,其中的硬件配置部分即主要是对服务器的BIOS进行配置。
对于本步骤所实现的硬件配置过程,一方面需要关闭多种类热插拔功能中会失效EDPC功能的部分热插拔功能,包括:PCI链路的高级配置和电源管理接口(AdvancedConfiguration and Power Management Interface,ACPI)热插拔功能和超级热插拔(Surprise hot-plug Cap)功能。
其中,超级热插拔功能通常是用于支持服务器中硬盘的热插拔功能。
另一方面,也需要开启PCI链路最基本的热插拔功能(hot-plug Cap),以支持PCI网卡的热插拔。
上述功能的开启与关闭都是通过对BIOS中对应参数的修改实现,由于BIOS中涉及到已有热插拔功能的参数和其使能关系都为本领域技术人员所知晓的,故本实施例在此不做赘述。
S13:修改操作系统的参数设置,以开启总线链路的加强下行端口控制功能。
容易理解的是,仅修改服务器的硬件配置可以使PCI网卡所连接的PCI链路支持热插拔功能,但由于EDPC功能的实现还需要服务器操作系统内核的协同,所以对于本方法对于网卡功能的配置还包括软件配置部分,具体也即对服务器操作系统的配置。
对服务器操作系统的配置也即是开启服务器的EDPC功能,使得服务器操作系统内核与上述步骤S12进行硬件配置后的BIOS协同处理EDPC功能。具体的,操作系统的配置项从启动文件夹(/boot)下、grub2文件夹下的多操作系统启动程序文件grub.cfg,对该文件进行参数配置即可实现EDPC功能的开启。
GNU GRUB:GRand Unified Bootloader,简称GRUB。是一个来自革奴计划(GNU,一种操作系统)项目的多操作系统启动程序。GRUB是多启动规范的实现,它允许用户可以在计算机内同时拥有多个操作系统,并在计算机启动时选择希望运行的操作系统。GRUB可用于选择操作系统分区上的不同内核,也可用于向这些内核传递启动参数。
进一步的,在找到/boot/grub2文件目录下的grub.cfg文件后,打开文件,并在文件中添加以下变量(一般添加在文件末位):
CONFIG_PCIE_DPC=y;
CONFIG_PCIE_EDR=y;
上述两参数用于开启操作系统的EDPC功能。
需要说明的是,上述的步骤S12和步骤S13分别为对服务器的硬件配置和软件配置,以实现对PCI网卡EDPC功能的支持,由于EDPC功能为强化版的DPC功能,需要借助热插拔功能实现,所以在实际应用中一般采用先进行硬件配置再进行软件配置的配置顺序,如图1所示的流程顺序,向先执行步骤S12再执行步骤S13。
还需要说明的是,通过本申请所提供的一种网卡功能配置方法,可以实现PCI网卡EDPC功能的支持,但在实际应用中,PCI网卡的EDPC功能需要等待上述配置生效后才正式开启。对于配置生效的方法,最常见的一种方式即为对服务器进行重启。
本申请提供一种网卡功能配置方法,通过对PCI网卡所连接在服务器CPU的PCI链路进行定位,找到需要进行后续配置的目标总线链路,避免影响其他总线链路连接设备的功能实现。然后,一方面对服务器的BIOS进行硬件配置,将目标总线链路中影响EDPC功能实现的高级配置和电源管理接口热插拔功能(ACPI热插拔功能)和超级热插拔功能(Surprisehot-plug Cap)关闭,再将不影响EDPC功能实现的热插拔功能开启(hot-plug Cap),使得服务器的BIOS支持目标总线链路上的PCI网卡实现热插拔,完成服务器的硬件配置;另一方面,还需要对服务器的操作系统进行软件上的配置,首先需要找到配置文件,也即操作系统启动文件夹(/boot)下的多操作系统启动程序文件(grub.cfg),在grub.cfg文件中添加“CONFIG_PCIE_DPC=y”和“CONFIG_PCIE_EDR=y”变量以完成开启EDPC功能的参数配置。至此,实现服务器对于PCI网卡的EDPC功能和热插拔功能的配置,当上述配置生效后,PCI网卡即支持EDPC功能,此时当PCI网卡出错时,PCI网卡可以通过EDPC功能实现原本DPC功能所支持的对错误数据进行自动恢复,也可通过热插拔功能恢复错误数据,构建出更加完善的网卡运行机制,满足了服务器系统下PCI网卡的安全稳定的运行要求。
进一步的,上述实施例提供的一种网卡功能配置方法是针对服务器进行相应的配置以实现对PCI网卡的EDPC功能的支持,在配置完成之后还需要使配置生效,常见的一种生效方法也即对服务器系统进行重启。
考虑到在服务器的实际应用中,服务器多用于集中部署场景,所以本方法的应用场景存在对单个服务器的PCI网卡EDPC功能进行配置、以及对多个服务器的PCI网卡EDPC功能进行配置两种。
进一步的,对于服务器本身而言,也有已经存在操作系统和不存在操作系统之分,例如在服务器部署之初,部署的服务器中还未安装有操作系统。所以结合上述的多单个或多个服务器进行网卡功能配置的不同应用场景,本申请所提供的一种网卡功能配置方法根据实施对象的不同,有以下四种可能的应用场景:
一、对已存在操作系统的单个服务器进行PCI网卡EDPC功能的配置;
二、对已存在操作系统的多个服务器进行PCI网卡EDPC功能的配置;
三、对不存在操作系统的单个服务器进行PCI网卡EDPC功能的配置;
四、对不存在操作系统的多个服务器进行PCI网卡EDPC功能的配置;
需要说明的是,上述四种可能的应用场景仅影响配置方法中对操作系统进行的软件配置的步骤,也即上述实施例的步骤S13。而步骤S12中对服务器BIOS固件所进行的硬件配置,是不区分服务器存不存在操作系统,并对所有服务器都需要单独进行的,故本实施例仅讨论对上述步骤S13所实现的软件配置在不同应用场景下的不同实施方式。
首先,针对上述的场景一,此时配置方法的实施对象仅有一个服务器,且该服务器已安装有操作系统,所以步骤S13仅需对该服务器的原本操作系统进行配置修改即可。具体的如上述实施例所述,也即确定操作系统启动文件夹(/boot)下的多操作系统启动程序文件(grub.cfg),在grub.cfg文件中添加“CONFIG_PCIE_DPC=y”和“CONFIG_PCIE_EDR=y”变量以完成开启EDPC功能的参数配置。对于操作系统中的其它配置信息,不做任何修改,以避免影响服务器其它功能的实现。
由于在本场景下,实施对象少,且参数配置修改的操作较为简单,可通过编写脚本自动实现也可通过人工进行。
在通过人工进行参数配置时,一种可能的实施方案为:
S131-A:操作人员可以通过在服务器操作系统启动过程中按下热键“E”,以进入Grub界面,也即是用于对操作系统启动文件夹下的多操作系统启动程序文件grub.cfg的配置修改界面。
S132-A:在Grub界面中,直接添加上述的“CONFIG_PCIE_DPC=y”和“CONFIG_PCIE_EDR=y”变量,即实现开启服务器操作系统EDPC功能的参数配置。
S133-A:在上述参数配置完成后,通过热键“Ctrl+X”继续操作系统的启动,或直接重启服务器,从而使上述EDPC功能配置生效。
另一方面,针对上述的场景二,涉及到多个服务器的参数配置修改,所以再通过人工实现会浪费大量人力,且效率极低,故本实施例还提供一种步骤S13参数配置的优选方案,包括:
S131-B:获取服务器的多操作系统启动程序文件的文件镜像。
S132-B:在文件镜像中增加加强下行端口控制功能的使能参数。
S133-B:将修改后的文件镜像发送至各服务器,并覆盖原多操作系统启动程序文件。
S134-B:重启各服务器。
也即,由于场景二中存在多个服务器,所以本实施例不再使用人工一个一个服务器依次配置的方案,而是采用获取镜像,对镜像进行参数配置,再将镜像发往各服务器以覆盖原文件实现多个服务器参数配置的方案。
最简单的,由于步骤S13是对操作系统所进行的参数配置,所以上述的镜像可以是操作系统的镜像,为与其他镜像区分,后续称为系统镜像,对系统镜像进行如步骤S13的参数配置,再将修改后的系统镜像发送至各服务器中,以覆盖原本的操作系统,实现PCI网卡EDPC功能的支持。
进一步的,由于本场景下的多个服务器已存在操作系统,而本申请所提供的PCI网卡EDPC功能配置方法对于操作系统又仅涉及到了多操作系统启动程序文件的参数配置,所以上述进行参数配置的镜像不需要涉及操作系统多操作系统启动程序文件之外的内容,故仅获取多操作系统启动程序文件的镜像,为与其他镜像区分,后续说明中将多操作系统启动程序文件的镜像称为文件镜像。
对上述获取到的文件镜像进行参数配置修改,也即在文件镜像中增加“CONFIG_PCIE_DPC=y”和“CONFIG_PCIE_EDR=y”变量,得到修改后的文件镜像并发送给各服务器,以使服务器根据接收到的文件镜像将操作系统中/boot/grub2文件目录下的grub.cfg文件进行覆盖,并重启服务器,以使修改后的参数配置生效,保证PCI网卡EDPC功能的实现。
本实施例所提供的实施方案相比于直接使用操作系统镜像的方式,所需处理的数据量更小,并且在镜像获取以及发往各服务器的过程中时,数据量也更小,大大提高了上述网卡功能配置方法的效率。并且,本方案不对操作系统中的其它文件做出改动和覆盖,尽可能的缩减了参数配置对服务器其他功能的影响。
另一方面,对于场景三,由于该场景下只对一个服务器进行参数配置以实现PCI网卡对EDPC功能的支持,故可如上述场景一对应的实施方案,在安装完操作系统中之后,由人工依靠热键等形式进行手动修改。
另一方面,对于场景四,涉及多个服务器的参数配置,故可借鉴场景二所对应的实施方案,但考虑到场景四下的服务器未安装操作系统,所以在本场景中,上述的网卡功能配置方法还需要实现对服务器操作系统的安装,故本实施例提供以下的一种实施方案:
S131-C:获取操作系统的系统镜像。
S132-C:在系统镜像的启动文件夹下多操作系统启动程序文件中增加加强下行端口控制功能的使能参数。
S133-C:将修改后的系统镜像发送至各服务器中,以便于各服务器根据系统镜像进行操作系统的安装。
S134-C:启动服务器。
本实施例与上述场景二的实施方案较为相似,同样是基于对镜像进行修改发送到服务器进行更新(操作系统安装)实现配置的修改。区别在于,本场景下服务器中未安装操作系统,需要在安装操作系统之后实现功能,所以在服务器集中部署的操作系统安装过程中,直接对用于安装的操作系统镜像进行参数配置修改,使得后续根据修改后的系统镜像安装的服务器皆包括修改后的参数配置。最后,将服务器启动,以使配置生效。
容易知道的是,本实施例也适用于场景三的未安装操作系统的单个服务器的功能配置。
进一步的,由于在实际服务器的部署中,存在以下一种情况:服务器采用预启动执行环境(Preboot eXecution Environment,PXE)体系。
PXE也被称为预执行环境,其提供了一种使用网络接口(Network Interface)启动计算机的机制。这种机制让计算机的启动可以不依赖本地数据存储设备(如硬盘)或本地已安装的操作系统。
此外,基于PXE体系也可以实现多服务器集中部署的系统安装,故进一步的,上述配置方案还有:
S131-D:获取操作系统的系统镜像。
S132-D:在系统镜像的启动文件夹下多操作系统启动程序文件中增加加强下行端口控制功能的使能参数。
S133-D:将修改后的系统镜像发送至预启动执行环境服务器中,并根据系统镜像实现预启动执行环境服务器中操作系统的安装。
S134-D:当各服务器通过调用预启动执行环境服务器的网络接口进行启动时,从预启动执行环境服务器中获取系统镜像,并根据系统镜像完成操作系统的安装。
S135-D:启动服务器。
也即,对于本实施例所提供的实施方案,在获取参数配置完成的系统镜像后,将系统镜像发往远程PXE服务器中,并使PXE服务器安装该系统镜像,并将系统镜像部署在数据中心的网络网际互连协议(Internet Protocol,IP)地址端,使得后续基于PXE体系部署的各服务器在启动时,可以通过PXE环境自动安装操作系统,从数据中心的网络IP地址端获取到系统镜像,完成操作系统安装后即实现了对PCI网卡EDPC功能的支持。
本实施例针对在对服务器进行基于操作系统进行的软件配置时可能遇到的几种应用场景,针对性的提供了不同场景下的实施方案,以使本申请所提供的网卡功能配置方法可以适应于不同的应用场景且保持更高的实施效率。
进一步的,上述实施例提供了一种网卡功能配置方法,可以借助人工实现也可以不依赖人工实现,本实施例即提供一种不需人工参与的实施方案:
上述的网卡功能配置方法流程通过预先编写的脚本工具实现。
由于在上述实施例的说明中,已经说明各步骤的具体实施方法,具体到对某一参数以及向某一位置中增加相应变量,故本领域技术人员可以根据上述方法实施例部分所述的流程编写相应的脚本文件,用于实现上述提供的一种网卡功能配置方法,实现服务器PCI网卡EDPC功能的自动化配置,进一步提高用户的使用体验和配置效率。
另外,还需要说明的,上述实施例所提供的一种网卡功能配置方法,所针对的服务器架构即为X86架构,在X86架构中,上述方法也可以推广至除PCI网卡之外的其它PCI设备,例如磁盘阵列(Redundant Arrays of Independent Disks,RAID,一般也称为RAID卡)和主机总线适配器(Host bus adapter,HBA)等设备中。
X86架构:The X86 architecture,是微处理器执行的计算机语言指令集,指一个intel通用计算机系列的标准编号缩写,也标识一套通用的计算机指令集合。
在上述实施例中,对于一种网卡功能配置方法进行了详细描述,本发明还提供一种网卡功能配置装置对应的实施例。需要说明的是,本发明从两个角度对装置部分的实施例进行描述,一种是基于功能模块的角度,另一种是基于硬件的角度。
基于功能模块的角度,如图2所示,本实施例提供一种网卡功能配置装置,包括:
链路确定模块21,用于确定网卡所连接的总线链路;
硬件配置模块22,用于修改基本输入输出系统的参数配置,将总线链路的高级配置和电源管理接口热插拔功能关闭、超级热插拔功能关闭、热插拔功能开启;
软件配置模块23,用于修改操作系统的参数设置,以开启总线链路的加强下行端口控制功能。
另一方面,上述的软件配置模块具体用于:打开操作系统中启动文件夹下的多操作系统启动程序文件,在多操作系统启动程序文件中增加加强下行端口控制功能的使能参数。
另一方面,当针对已安装操作系统的单个服务器时,上述的软件配置模块具体用于:通过热键打开操作系统中启动文件夹下的多操作系统启动程序文件;在多操作系统启动程序文件中增加加强下行端口控制功能的使能参数;重启服务器。
另一方面,当针对已安装操作系统的单个服务器时,上述的软件配置模块具体用于:获取服务器的多操作系统启动程序文件的文件镜像;在文件镜像中增加加强下行端口控制功能的使能参数;将修改后的文件镜像发送至各服务器,并覆盖原多操作系统启动程序文件;重启各服务器。
另一方面,当针对未安装操作系统的服务器时,上述的软件配置模块具体用于:获取操作系统的系统镜像;在系统镜像的启动文件夹下多操作系统启动程序文件中增加加强下行端口控制功能的使能参数;将修改后的系统镜像发送至预启动执行环境服务器中,并根据系统镜像实现预启动执行环境服务器中操作系统的安装;当各服务器通过调用预启动执行环境服务器的网络接口进行启动时,从预启动执行环境服务器中获取系统镜像,并根据系统镜像完成操作系统的安装;启动服务器。
另一方面,上述的链路确定模块具体用于:通过查看指令获取网卡信息,根据网卡信息确定网卡所连接的总线链路。
由于装置部分的实施例与方法部分的实施例相互对应,因此装置部分的实施例请参见方法部分的实施例的描述,这里暂不赘述。
本实施例提供一种网卡功能配置装置,通过链路确定模块对PCI网卡所连接在服务器CPU的PCI链路进行定位,找到需要进行后续配置的目标总线链路,避免影响其他总线链路连接设备的功能实现。然后,一方面通过硬件配置模块对服务器的BIOS进行硬件配置,将目标总线链路中影响EDPC功能实现的ACPI热插拔功能和Surprise hot-plug Cap关闭,再将不影响EDPC功能实现的hot-plug Cap开启,使得服务器的BIOS支持目标总线链路上的PCI网卡实现热插拔,完成服务器的硬件配置;另一方面,还通过软件配置模块对服务器的操作系统进行软件上的配置,首先需要找到配置文件,也即找到/boot/grub2下的grub.cfg文件,在grub.cfg文件中添加“CONFIG_PCIE_DPC=y”和“CONFIG_PCIE_EDR=y”变量以完成开启EDPC功能的参数配置。至此,实现服务器对于PCI网卡的EDPC功能和热插拔功能的配置,当上述配置生效后,PCI网卡即支持EDPC功能,此时当PCI网卡出错时,PCI网卡可以通过EDPC功能实现原本DPC功能所支持的对错误数据进行自动恢复,也可通过热插拔功能恢复错误数据,构建出更加完善的网卡运行机制,满足了服务器系统下PCI网卡的安全稳定的运行要求。
图3为本发明另一实施例提供的一种网卡功能配置装置的结构图,如图3所示,一种网卡功能配置装置包括:存储器30,用于存储计算机程序;
处理器31,用于执行计算机程序时实现如上述实施例一种网卡功能配置方法的步骤。
本实施例提供的一种网卡功能配置装置可以包括但不限于计算机、服务器、工作站等。
其中,处理器31可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器31可以采用数字信号处理器(Digital Signal Processor,DSP)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)、可编程逻辑阵列(Programmable LogicArray,PLA)中的至少一种硬件形式来实现。处理器31也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称中央处理器(CentralProcessing Unit,CPU);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器31可以集成有图像处理器(Graphics Processing Unit,GPU),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器31还可以包括人工智能(Artificial Intelligence,AI)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器30可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器30还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。本实施例中,存储器30至少用于存储以下计算机程序301,其中,该计算机程序被处理器31加载并执行之后,能够实现前述任一实施例公开的一种网卡功能配置方法的相关步骤。另外,存储器30所存储的资源还可以包括操作系统302和数据303等,存储方式可以是短暂存储或者永久存储。其中,操作系统302可以包括Windows、Unix、Linux等。数据303可以包括但不限于一种网卡功能配置方法等。
在一些实施例中,一种网卡功能配置装置还可包括有显示屏32、输入输出接口33、通信接口34、电源35以及通信总线36。
本领域技术人员可以理解,图3中示出的结构并不构成对一种网卡功能配置装置的限定,可以包括比图示更多或更少的组件。
本发明实施例提供的一种网卡功能配置装置,包括存储器和处理器,处理器在执行存储器存储的程序时,能够实现如下方法:一种网卡功能配置方法。
本实施例所提供的一种网卡功能配置装置,通过处理器执行保存在存储器中的计算机程序,以通过对PCI网卡所连接在服务器CPU的PCI链路进行定位,找到需要进行后续配置的目标总线链路,避免影响其他总线链路连接设备的功能实现。然后,一方面对服务器的BIOS进行硬件配置,将目标总线链路中影响EDPC功能实现的ACPI热插拔功能和Surprisehot-plug Cap关闭,再将不影响EDPC功能实现的hot-plug Cap开启,使得服务器的BIOS支持目标总线链路上的PCI网卡实现热插拔,完成服务器的硬件配置;另一方面,对服务器的操作系统进行软件上的配置,首先需要找到配置文件,也即找到/boot/grub2下的grub.cfg文件,在其中添加“CONFIG_PCIE_DPC=y”和“CONFIG_PCIE_EDR=y”变量以完成开启EDPC功能的参数配置。至此,实现服务器对于PCI网卡的EDPC功能和热插拔功能的配置,当上述配置生效后,PCI网卡即支持EDPC功能,此时当PCI网卡出错时,PCI网卡可以通过EDPC功能实现原本DPC功能所支持的对错误数据进行自动恢复,也可通过热插拔功能恢复错误数据,构建出更加完善的网卡运行机制,满足了服务器系统下PCI网卡的安全稳定的运行要求。
最后,本发明还提供一种计算机可读存储介质对应的实施例。计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现如上述方法实施例中记载的步骤。
可以理解的是,如果上述实施例中的方法以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
本实施例所提供的一种计算机可读取存储介质,当其中存储的计算机程序被执行时,可以通过对PCI网卡所连接在服务器CPU的PCI链路进行定位,找到需要进行后续配置的目标总线链路,避免影响其他总线链路连接设备的功能实现。然后,一方面对服务器的BIOS进行硬件配置,将目标总线链路中影响EDPC功能实现的ACPI热插拔功能和Surprise hot-plug Cap关闭,再将不影响EDPC功能实现的hot-plug Cap开启,使得服务器的BIOS支持目标总线链路上的PCI网卡实现热插拔,完成服务器的硬件配置;另一方面,对服务器的操作系统进行软件上的配置,首先需要找到配置文件,也即找到
/boot/grub2下的grub.cfg文件,在其中添加“CONFIG_PCIE_DPC=y”和“CONFIG_PCIE_EDR=y”变量以完成开启EDPC功能的参数配置。至此,实现服务器对于PCI网卡的EDPC功能和热插拔功能的配置,当上述配置生效后,PCI网卡即支持EDPC功能,此时当PCI网卡出错时,PCI网卡可以通过EDPC功能实现原本DPC功能所支持的对错误数据进行自动恢复,也可通过热插拔功能恢复错误数据,构建出更加完善的网卡运行机制,满足了服务器系统下PCI网卡的安全稳定的运行要求。
以上对本发明所提供的一种网卡功能配置方法、装置及其介质进行了详细介绍。说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。
还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
Claims (10)
1.一种网卡功能配置方法,其特征在于,包括:
确定网卡所连接的总线链路;
修改基本输入输出系统的参数配置,将所述总线链路的高级配置和电源管理接口热插拔功能关闭、超级热插拔功能关闭、热插拔功能开启;
修改操作系统的参数设置,以开启所述总线链路的加强下行端口控制功能。
2.根据权利要求1所述的网卡功能配置方法,其特征在于,所述修改操作系统的参数设置,使所述总线链路的加强下行端口控制功能开启包括:
打开所述操作系统中启动文件夹下的多操作系统启动程序文件,在所述多操作系统启动程序文件中增加所述加强下行端口控制功能的使能参数。
3.根据权利要求2所述的网卡功能配置方法,其特征在于,当针对已安装操作系统的单个服务器时,所述修改操作系统的参数设置,使所述总线链路的加强下行端口控制功能开启包括:
通过热键打开所述操作系统中所述启动文件夹下的所述多操作系统启动程序文件;
在所述多操作系统启动程序文件中增加所述加强下行端口控制功能的使能参数;
重启所述服务器。
4.根据权利要求2所述的网卡功能配置方法,其特征在于,当针对已安装操作系统的多个服务器时,所述修改操作系统的参数设置,使所述总线链路的加强下行端口控制功能开启包括:
获取所述服务器的所述多操作系统启动程序文件的文件镜像;
在所述文件镜像中增加所述加强下行端口控制功能的使能参数;
将修改后的所述文件镜像发送至各所述服务器,并覆盖原所述多操作系统启动程序文件;
重启各所述服务器。
5.根据权利要求2所述的网卡功能配置方法,其特征在于,当针对未安装操作系统的服务器时,所述修改操作系统的参数设置,使所述总线链路的加强下行端口控制功能开启包括:
获取所述操作系统的系统镜像;
在所述系统镜像的所述启动文件夹下所述多操作系统启动程序文件中增加所述加强下行端口控制功能的使能参数;
将修改后的所述系统镜像发送至预启动执行环境服务器中,并根据所述系统镜像实现所述预启动执行环境服务器中所述操作系统的安装;
当各所述服务器通过调用所述预启动执行环境服务器的网络接口进行启动时,从所述预启动执行环境服务器中获取所述系统镜像,并根据所述系统镜像完成所述操作系统的安装;
启动所述服务器。
6.根据权利要求1所述的网卡功能配置方法,其特征在于,所述确定网卡所连接的总线链路包括:
通过查看指令获取所述网卡信息,根据所述网卡信息确定所述网卡所连接的所述总线链路。
7.根据权利要求1至6任意一项所述的网卡功能配置方法,其特征在于,所述网卡功能配置方法通过脚本工具实现。
8.一种网卡功能配置装置,其特征在于,包括:
链路确定模块,用于确定网卡所连接的总线链路;
硬件配置模块,用于修改基本输入输出系统的参数配置,将所述总线链路的高级配置和电源管理接口热插拔功能关闭、超级热插拔功能关闭、热插拔功能开启;
软件配置模块,用于修改操作系统的参数设置,以开启所述总线链路的加强下行端口控制功能。
9.一种网卡功能配置装置,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1至7任意一项所述的网卡功能配置方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至7任意一项所述的网卡功能配置方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310796902.XA CN116841629A (zh) | 2023-06-30 | 2023-06-30 | 一种网卡功能配置方法、装置及其介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310796902.XA CN116841629A (zh) | 2023-06-30 | 2023-06-30 | 一种网卡功能配置方法、装置及其介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116841629A true CN116841629A (zh) | 2023-10-03 |
Family
ID=88172031
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310796902.XA Pending CN116841629A (zh) | 2023-06-30 | 2023-06-30 | 一种网卡功能配置方法、装置及其介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116841629A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117112044A (zh) * | 2023-10-23 | 2023-11-24 | 腾讯科技(深圳)有限公司 | 基于网卡的指令处理方法、装置、设备和介质 |
-
2023
- 2023-06-30 CN CN202310796902.XA patent/CN116841629A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117112044A (zh) * | 2023-10-23 | 2023-11-24 | 腾讯科技(深圳)有限公司 | 基于网卡的指令处理方法、装置、设备和介质 |
CN117112044B (zh) * | 2023-10-23 | 2024-02-06 | 腾讯科技(深圳)有限公司 | 基于网卡的指令处理方法、装置、设备和介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11126420B2 (en) | Component firmware update from baseboard management controller | |
EP3491519B1 (en) | Optimized uefi reboot process | |
US9501289B2 (en) | Method of a UEFI firmware and computer system thereof | |
US10303458B2 (en) | Multi-platform installer | |
US9081734B2 (en) | Restoring from a legacy OS environment to a UEFI pre-boot environment | |
US7877639B2 (en) | Systems and methods to provide failover support for booting embedded hypervisor from an internal non-volatile memory card | |
TWI262443B (en) | Method, system and recording medium for automatically configuring data processing system | |
US11030047B2 (en) | Information handling system and method to restore system firmware to a selected restore point | |
US10572434B2 (en) | Intelligent certificate discovery in physical and virtualized networks | |
US11194589B2 (en) | Information handling system adaptive component reset | |
JP2007516535A (ja) | システム構成の遠隔修正のための方法および装置 | |
WO2016074127A1 (zh) | 计算机设备及计算机设备内存启动的方法 | |
CN106406847A (zh) | 远端系统配置管理方法、系统及非暂态可读式存储多媒体 | |
US20190004818A1 (en) | Method of UEFI Shell for Supporting Power Saving Mode and Computer System thereof | |
TWI840849B (zh) | 計算系統、電腦實施方法及電腦程式產品 | |
CN106990985A (zh) | 基于bmc更新及备份系统uefi固件的设备和方法 | |
CN116841629A (zh) | 一种网卡功能配置方法、装置及其介质 | |
US20060036832A1 (en) | Virtual computer system and firmware updating method in virtual computer system | |
CN113342365A (zh) | 操作系统部署方法、装置、设备及计算机可读存储介质 | |
CN114296810B (zh) | 一种操作系统迁移方法、装置、服务器与存储介质 | |
CN116627472A (zh) | 高速外围组件设备的固件程序升级方法及服务器 | |
KR100947136B1 (ko) | 소프트웨어의 증분 프로비져닝 | |
US20220391254A1 (en) | Information processing device, operation control method, and computer-readable recording medium storing operation control program | |
US12254322B2 (en) | Virtual pseudo PCIe (VVP) device nodes for fast reliable OS and virtual memory (VM) boot | |
JP2521020B2 (ja) | 情報処理システム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |