CN114416185B - 一种网口排序方法、装置、设备和存储介质 - Google Patents
一种网口排序方法、装置、设备和存储介质 Download PDFInfo
- Publication number
- CN114416185B CN114416185B CN202111616153.5A CN202111616153A CN114416185B CN 114416185 B CN114416185 B CN 114416185B CN 202111616153 A CN202111616153 A CN 202111616153A CN 114416185 B CN114416185 B CN 114416185B
- Authority
- CN
- China
- Prior art keywords
- identification information
- network port
- target
- ordering
- card
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 78
- 238000012163 sequencing technique Methods 0.000 claims abstract description 61
- 230000002093 peripheral effect Effects 0.000 claims abstract description 22
- 238000004891 communication Methods 0.000 claims description 15
- 230000008569 process Effects 0.000 description 22
- 238000010586 diagram Methods 0.000 description 11
- 238000004590 computer program Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 5
- 101100513046 Neurospora crassa (strain ATCC 24698 / 74-OR23-1A / CBS 708.71 / DSM 1257 / FGSC 987) eth-1 gene Proteins 0.000 description 4
- 230000003993 interaction Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000026676 system process Effects 0.000 description 1
- 238000010200 validation analysis Methods 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/4406—Loading of operating system
-
- 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/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4204—Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
- G06F13/4221—Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being an input/output bus, e.g. ISA bus, EISA bus, PCI bus, SCSI bus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2213/00—Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F2213/0026—PCI express
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Small-Scale Networks (AREA)
Abstract
本申请实施例公开了一种网口排序方法,方法包括:在目标操作***处于启动状态的情况下,若检测到包括参考网口排序顺序的第一目标文件,获取第二目标文件;其中,第二目标文件包括具有第一目标文件中对应的网口信息对应的网卡的***设备互连标准PCI/扩展***设备互联标准PCIe总线树信息,第一目标文件和第二目标文件预置于目标操作***的镜像文件中;获取第一插卡槽位标识信息集合和第一网口标识信息集合;基于第二目标文件、第一插卡槽位标识信息集合、第一网口标识信息集合和参考网口排序顺序,得到目标网口排序顺序;写入目标网口排序顺序至第一目标文件中。本申请实施例同时还公开了一种网口排序装置、设备和存储介质。
Description
技术领域
本申请涉及通信技术领域,尤其涉及一种网口排序方法、装置、设备和存储介质。
背景技术
目前市面上的服务器或台式主机中的网卡通常设置为可插拔形式,以及设置了可扩充网卡的插槽,以便用户更换网卡或根据需求***更多的网卡,以提高服务器或台式主机的网络服务功能。目前,常用的两种确定网口顺序的实现方法为:一种通过***设备互连标准(Peripheral Component Interconnect,PCI)/扩展***设备互联标准(PeripheralComponent Interconnect Express,PCIe)的设备物理地址(Media Access ControlAddress,MAC地址)与网口名称绑定来确定网口顺序,另一种通过网卡的身份标识信息与网口名称绑定来实现网口顺序的确定。
但是,上述两种网口确定方案中,将服务器或台式主机中增加网卡、拔除网卡、同槽更换网卡、网卡更换槽位等场景下,依然会发生网口名称及命名顺序混乱的情况。如此,在服务器或台式主机出现网络顺序混乱问题等情况需要对网口的顺序进行调整以保证网口名称和顺序一致时,目前常用的调整方式为关闭服务器或台式主机,然后通过用户手动插拔网卡,然后从特定文件例如设备管理器Udev对应的规则(rules)文件中,查找到对应的网口序号进行手动排序调整。这样,网口序号调整过程的操作较为复杂,耗时较长,导致确定网口序号效率较低。
申请内容
有鉴于此,本申请实施例期望提供一种网口排序方法、装置、设备和存储介质,解决了目前确定网口序号的操作过程较为复杂的问题,提供了一种对网口进行排序的方法,简化了确定网口序号的过程,提高了确定网口序号的效率。
为达到上述目的,本申请的技术方案是这样实现的:
第一方面,一种网口排序方法,所述方法包括:
在目标操作***处于启动状态的情况下,若检测到包括参考网口排序顺序的第一目标文件,获取第二目标文件;其中,所述第二目标文件包括具有所述第一目标文件中对应的网口信息对应的网卡的***设备互连标准PCI/扩展***设备互联标准PCIe总线树信息,所述第一目标文件和所述第二目标文件预置于所述目标操作***的镜像文件中;
获取第一插卡槽位标识信息集合和第一网口标识信息集合;其中,所述第一插卡槽位标识信息集合包括所述目标操作***当前插有第一目标网卡的至少一个槽位标识信息,所述第一网口标识信息集合包括所述第一目标网卡包括的至少一个网口的网口标识信息;
基于所述第二目标文件、所述第一插卡槽位标识信息集合、所述第一网口标识信息集合和所述参考网口排序顺序,得到目标网口排序顺序;
写入所述目标网口排序顺序至所述第一目标文件中,以替换所述第一目标文件中的所述参考网口排序顺序。
可选的,所述基于所述第二目标文件、所述第一插卡槽位标识信息集合、所述第一网口标识信息集合和所述参考网口排序顺序,得到目标网口排序顺序,包括:
获取所述第二目标文件中包括的参考插卡槽位标识信息集合和参考网口标识信息集合;
基于所述第一插卡槽位标识信息集合和所述参考插卡槽位标识信息集合,确定新增插卡槽位标识信息集合;其中,所述新增插卡槽位标识信息集合包括新增的插卡槽位标识信息;
从所述第一网口标识信息集合中,确定与所述新增插卡槽位标识信息集合对应的网口标识信息,得到新增网口标识信息集合;
基于所述新增插卡槽位标识信息集合、所述新增网口标识信息集合和所述参考网口排序顺序,得到所述目标网口排序顺序。
可选的,所述基于所述新增插卡槽位标识信息集合、所述新增网口标识信息集合和所述参考网口排序顺序,得到所述目标网口排序顺序,包括:
获取主板配置信息和网卡配置信息;
基于所述主板配置信息中包括物理位置序号,对所述新增插卡槽位标识信息集合中插卡槽位标识信息进行排序,得到第一排序顺序;
将所述新增网口标识信息集合中每一插卡槽位标识信息对应的网口标识信息,按照所述第一排序顺序排序至所述参考网口排序顺序后,得到第一排序结果;
将所述第一排序结果中每一插卡槽位标识信息对应的网口标识信息,按照所述主板配置信息中包括的卡槽方向和所述网卡配置信息中包括的网口加载顺序进行排序,得到所述目标网口排序顺序。
可选的,所述方法还包括:
从所述参考插卡槽位标识信息集合中,确定所述第一插卡槽位标识信息集合不包括的插卡槽位标识信息,得到至少一个待删除插卡槽位标识信息;
从参考网口标识信息集合中,确定至少一个所述待删除插卡槽位标识信息对应的网口标识信息,得到至少一个待删除网口标识信息;
删除所述参考网口排序顺序中至少一个所述待删除网口标识信息,保留所述参考网口排序顺序中的排序序号,得到目标网口排序顺序。
可选的,所述方法还包括:
确定所述参考插卡槽位标识信息集合与所述第一插卡槽位标识信息集合中相同的插卡槽位标识信息,得到至少一个待分析插卡槽位标识信息;
从所述第一网口标识信息集合中,确定每一所述待分析插卡槽位标识信息对应的第一网口标识信息子集合;
从所述参考网口标识信息集合中,确定每一所述待分析插卡槽位标识信息对应的第二网口标识信息子集合;
若确定所述第一网口标识信息子集合与对应的第二网口标识信息子集合不同,从所述参考网口排序顺序中,确定对应的所述待分析插卡槽位标识信息的第一目标网口名称和对应的第一目标排序序号;
确定所述目标排序顺序中每一所述待分析插卡槽位标识信息对应的网口名称为对应的所述第一目标网口名称,每一所述待分析插卡槽位标识信息对应的排序序号为所述第一目标排序序号。
可选的,所述方法还包括:
确定所述第一网口标识信息集合与所述参考网口标识信息集合中属于同一个网卡的网口标识信息,得到至少一个网口标识信息集合;
从所述第一插卡槽位标识信息集合中,确定每一网口标识信息集合对应的第一插卡槽位标识信息;
从所述参考插卡槽位标识信息集合中,确定每一网口标识信息集合对应的第二插卡槽位标识信息;
若确定所述第一插卡槽位标识信息与对应的第二插卡槽位标识信息不同,从所述参考网口排序顺序中,确定所述第二插卡槽位标识信息对应的第二目标网口名称和对应的第二目标排序序号;
在所述目标排序顺序中,保留所述第二插卡槽位标识信息对应的所述第二目标网口名称和对应的所述第二目标排序序号。
可选的,所述方法还包括:
在目标操作***处于启动状态的情况下,若未检测到包括参考网口排序顺序的第一目标文件,获取主板配置信息和网卡配置信息;
获取所述目标操作***当前插有第二目标网卡的第二插卡槽位标识信息集合和所述目标操作***包括的第二网口标识信息集合;
基于所述主板配置信息中包括的物理位置序号,对所述第二插卡槽位标识信息集合中插卡槽位标识信息进行排序,得到第二排序顺序;
将所述第二网口标识信息集合中每一插卡槽位标识信息对应的网口标识信息,按照所述第二排序顺序进行排序,得到第二排序结果;
将所述第二排序结果中每一插卡槽位标识信息对应的网口标识信息,按照所述主板配置信息中包括的卡槽方向和所述网卡配置信息中包括的网口加载顺序进行排序,得到所述参考网口排序顺序;
记录所述参考网口排序顺序至所述第一目标文件。
可选的,所述在目标操作***处于启动状态的情况下,若未检测到包括参考网口排序顺序的第一目标文件,获取主板配置信息和网卡配置信息,包括:
在目标操作***处于启动状态的情况下,若未检测到包括参考网口排序顺序的第一目标文件,获取主板标识信息;
若所述主板标识信息属于预设标识信息,获取所述主板配置信息和所述网卡配置信息。
可选的,所述方法还包括:
获取当前PCI/PCIe总线树信息;
更新所述第二目标文件中的PCI/PCIe总线树信息为所述当前PCI/PCIe总线树信息。
第二方面,一种网口排序装置,该装置包括:第一获取单元、第二获取单元、得到单元和更新单元;其中:
所述第一获取单元,用于在目标操作***处于启动状态的情况下,若检测到包括参考网口排序顺序的第一目标文件,获取第二目标文件;其中,所述第二目标文件包括具有所述第一目标文件中对应的网口信息对应的网卡的***设备互连标准PCI/扩展***设备互联标准PCIe总线树信息;
所述第二获取单元,用于获取第一插卡槽位标识信息集合和第一网口标识信息集合;其中,所述第一插卡槽位标识信息集合包括所述目标操作***当前插有第一目标网卡的至少一个槽位标识信息,所述第一网口标识信息集合包括所述第一目标网卡包括的至少一个网口的网口标识信息;
所述得到单元,用于基于所述第二目标文件、所述第一插卡槽位标识信息集合、所述第一网口标识信息集合和所述参考网口排序顺序,得到目标网口排序顺序;
所述更新单元,用于写入所述目标网口排序顺序至所述第一目标文件中,以替换所述第一目标文件中的所述参考网口排序顺序。
第三方面,一种网口排序设备,所述网口排序设备包括:插卡槽位、第一目标网卡、存储器、处理器和通信总线;其中:
所述插卡槽位,用于安装网卡;
所述第一目标网卡,用于实现网口排序设备在计算机网络上进行通讯;
所述存储器,用于存储可执行指令;
所述通信总线,用于实现所述处理器和所述存储器之间的通信连接;
所述处理器,用于执行所述存储器中存储的网口排序程序,实现如上述任一项所述的网口排序方法的步骤。
第四方面,一种存储介质,其特征在于,所述存储介质上存储有网口排序程序,所述网口排序程序被处理器执行时实现如上述任一项所述的网口排序方法的步骤。
本申请的实施例所提供的网口排序方法、装置、设备和存储介质,在目标操作***处于启动状态的情况下,若检测到包括参考网口排序顺序的第一目标文件,获取第二目标文件,并获取第一插卡槽位标识信息集合和第一网口标识信息集合,然后基于第二目标文件、第一插卡槽位标识信息集合、第一网口标识信息集合和参考网口排序顺序,得到目标网口排序顺序,并写入所述目标网口排序顺序至所述第一目标文件中,以替换所述第一目标文件中的所述参考网口排序顺序。这样,通过预置于目标操作***的镜像文件中的第一目标文件和第二目标文件,来实现网口名称和网口排序顺序的一致性,解决了目前确定网口序号的操作过程较为复杂的问题,提供了一种对网口进行排序的方法,简化了确定网口序号的过程,提高了确定网口序号的效率。
附图说明
图1为本申请实施例提供的一种网口排序方法的流程示意图;
图2为本申请实施例提供的另一种网口排序方法的流程示意图;
图3为本申请实施例提供的又一种网口排序方法的流程示意图;
图4为本申请实施例提供的一种网口排序方法的实施例流程示意图;
图5为本申请实施例提供的一种服务器背板插有网卡的网口名称标识示意图;
图6为本申请实施例提供的另一种服务器背板插有网卡的网口名称标识示意图;
图7为本申请实施例提供的一种网口排序装置的结构示意图;
图8为本申请实施例提供的一种网口排序设备的结构示意图。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请的实施例提供一种网口排序方法,该方法应用于网口排序设备,参照图1所示,该方法包括以下步骤:
步骤101、在目标操作***处于启动状态的情况下,若检测到包括参考网口排序顺序的第一目标文件,获取第二目标文件。
其中,第二目标文件包括具有第一目标文件中对应的网口信息对应的网卡的***设备互连标准(Peripheral Component Interconnect,PCI)/扩展***设备互联标准(Peripheral Component Interconnect Express,PCIe)总线树信息,第一目标文件和第二目标文件预置于目标操作***的镜像文件中。
在本申请实施例中,检测到目标操作***接收到目标操作***的启动指令后,目标操作***处于启动的状态,其中,目标操作***的启动指令可以指的是网口排序设备检测到的上电指令,即目标操作***接收到开机指令。第一目标文件和第二目标文件均为目标操作***的启动过程中,可以运行的文件,第二目标文件包括当前启动指令下,前一次启动情况下对应的历史运行状态下的PCI/PCIe总线树信息。网口排序设备可以是具有网卡的设备,例如可以是服务器,或计算机设备等。若检测到包括参考网口排序顺序的第一目标文件,表明目标操作***为重启状态。
步骤102、获取第一插卡槽位标识信息集合和第一网口标识信息集合。
其中,第一插卡槽位标识信息集合包括目标操作***当前插有第一目标网卡的至少一个槽位标识信息,第一网口标识信息集合包括第一目标网卡包括的至少一个网口的网口标识信息。
在本申请实施例中,网口排序设备对其中用于安装网卡的槽位进行检测,确定得到插有第一目标网卡的全部槽位,得到第一插卡槽位标识信息集合,并确定当前***的全部第一目标网卡包括的至少一个网口的网口标识信息,得到第一网口标识信息集合。
步骤103、基于第二目标文件、第一插卡槽位标识信息集合、第一网口标识信息集合和参考网口排序顺序,得到目标网口排序顺序。
在本申请实施例中,对第二目标文件中包括的设备标识信息与第一插卡槽位标识信息集合和第一网口标识信息集合进行分析,确定出变化的网口,并基于确定得到的变化的网口,对参考网口排序顺序进行处理,得到目标网口排序顺序。
步骤104、写入目标网口排序顺序至第一目标文件中。
其中,写入目标网口排序顺序至第一目标文件中,以替换第一目标文件中的参考网口排序顺序。
在本申请实施例中,将第一目标文件中的参考网口排序顺序更新为目标网口排序顺序,以使网口排序设备基于更新后的参考网口排序顺序来调用对应的网口进行通信。
本申请的实施例所提供的网口排序方法,在目标操作***处于启动状态的情况下,若检测到包括参考网口排序顺序的第一目标文件,获取第二目标文件,并获取第一插卡槽位标识信息集合和第一网口标识信息集合,然后基于第二目标文件、第一插卡槽位标识信息集合、第一网口标识信息集合和参考网口排序顺序,得到目标网口排序顺序,并写入目标网口排序顺序至第一目标文件中,以替换第一目标文件中的参考网口排序顺序。这样,通过预置于目标操作***的镜像文件中的第一目标文件和第二目标文件,来实现网口名称和网口排序顺序的一致性,解决了目前确定网口序号的操作过程较为复杂的问题,提供了一种对网口进行排序的方法,简化了确定网口序号的过程,提高了确定网口序号的效率。
基于前述实施例,本申请的实施例提供一种网口排序方法,该方法应用于网口排序设备,该方法包括以下步骤:
步骤201、在目标操作***处于启动状态的情况下,若检测到包括参考网口排序顺序的第一目标文件,获取第二目标文件。
其中,第二目标文件包括具有第一目标文件中对应的网口信息对应的网卡的***设备互连标准PCI/扩展***设备互联标准PCIe总线树信息,第一目标文件和第二目标文件预置于目标操作***的镜像文件中。
在本申请实施例中,在网口排序设备接收到开机指令后,嵌入式控制器中运行的基本输入输出***(Basic Input Output System,BIOS)运行,引导中央处理器(CentralProcessing Unit,CPU)中运行的操作***镜像文件,网口排序设备检测运行的操作***镜像文件中是否包括第一目标文件,若检测到操作***镜像文件中包括第一目标文件,获取包括PCI/PCIe总线树信息的第二目标文件。第二目标文件中包括当前接入PCI/PCIe的全部PCI设备,例如接入的网卡等。
步骤202、获取第一插卡槽位标识信息集合和第一网口标识信息集合。
其中,第一插卡槽位标识信息集合包括目标操作***当前插有第一目标网卡的至少一个槽位标识信息,第一网口标识信息集合包括第一目标网卡包括的至少一个网口的网口标识信息。
在本申请实施例中,网口排序设备中的BIOS对当前PCI/PCIe总线树信息进行扫描,可以扫描得到当前插有第一目标网卡的第一插卡槽位标识信息集合,以及对应的第一网口标识信息集合。
步骤203、基于第二目标文件、第一插卡槽位标识信息集合、第一网口标识信息集合和参考网口排序顺序,得到目标网口排序顺序。
步骤204、写入目标网口排序顺序至第一目标文件中。
其中,写入目标网口排序顺序至第一目标文件中,以替换第一目标文件中的参考网口排序顺序。
在本申请实施例中,将第一目标文件中的参考网口排序顺序更新为目标网口排序顺序,这样,实现了在网卡增加的情况下,对网口进行排序的方法,保证了网口排序顺序的一致性,降低了网口出现乱序的概率。
基于前述实施例,在本申请其他实施例中,步骤203可以由步骤203a~203d来实现:
步骤203a、获取第二目标文件中包括的参考插卡槽位标识信息集合和参考网口标识信息集合。
在本申请其他实施例中,网口排序设备的内核对第二目标文件进行扫描分析,得到第二目标文件中插有网卡的插卡槽位组成的参考插卡槽位标识信息集合,以及对应的全部网口的网口标识信息集合。
步骤203b、基于第一插卡槽位标识信息集合和参考插卡槽位标识信息集合,确定新增插卡槽位标识信息集合。
其中,新增插卡槽位标识信息集合包括新增的插卡槽位标识信息。
在本申请实施例中,对第一插卡槽位标识信息集合与参考插卡槽位标识信息集合以及对第一网口标识信息集合与参考网口标识信息集合进行分析,确定网卡排序设备中当前增加的网卡。但在确定增加的网卡过程中,需先对第一插卡槽位标识信息集合和参考插卡槽位标识信息集合进行分析,确定增加网卡所安装的槽位,得到新增插卡槽位标识信息集合。
步骤203c、从第一网口标识信息集合中,确定与新增插卡槽位标识信息集合对应的网口标识信息,得到新增网口标识信息集合。
其中,新增网口标识信息集合包括新增的插卡槽位标识信息。
在本申请实施例中,从第一网口标识信息集合中,确定新增插卡槽位标识信息集合中每一插卡槽位标识信息对应的网口标识信息,得到新增网口标识信息集合。网口标识信息具体可以是网口的网口总线号。需说明的是,第一网口标识信息集合和参考网口标识信息集合中,均是按照网卡为单元对网口标识信息进行存储的。示例性的,假设针对第一网口标识信息集合可以记为((wa1,wa2,wa3),(wb1,wb2,wb3,wb4),(wc1,wc2))其中,(wa1,wa2,wa3)为网卡wa对应的网口标识信息,(wb1,wb2,wb3,wb4)为网卡wb对应的网口标识信息,(wc1,wc2)为网卡wc对应的网口标识信息。
步骤203d、基于新增插卡槽位标识信息集合、新增网口标识信息集合和参考网口排序顺序,得到目标网口排序顺序。
在本申请实施例中,对新增插卡槽位标识信息集合中的插卡槽位标识信息进行排序,并按照新增插卡槽位标识信息集合中的插卡槽位标识信息的排序顺序,依次对新增网口标识信息集合中每一网口对应的网口标识信息在参考网口排序顺序中进行排序,得到目标网口排序顺序。
基于前述实施例,在本申请其他实施例中,步骤203d可以由步骤a11~a14来实现:
步骤a11、获取主板配置信息和网卡配置信息。
在本申请实施例中,主板配置信息和网口配置信息是用户预先输入的包括对槽位和网口进行排序的排序规则的配置信息。主板配置信息中至少包括以下参数:主板厂商、主板型号、主板上的槽位数量、物理位置序号即期望的槽位加载顺序号和槽位方向也称为卡槽方向等,其中,槽位方向具体可以包括以下三种方向之一:槽口向上、槽口向右、槽口向左。网卡配置信息中至少包括以下参数:网卡型号、网卡名称、网卡的网口数量和网卡上电后的网口加载顺序等。
步骤a12、基于主板配置信息中包括物理位置序号,对新增插卡槽位标识信息集合中插卡槽位标识信息进行排序,得到第一排序顺序。
在本申请实施例中,按照主板配置信息中包括的物理位置序号,对新增插卡槽位标识信息集合中的插卡槽位标识信息进行排序,得到第一排序顺序。
示例性的,假设新增插卡槽位标识信息集合为(c2,c4,c5),对应的物理位置序号中,c2的物理位置序号为6,c4的物理位置序号为4,c5的物理位置序号为3,对应的,对c2,c4,c5按照物理位置序号从小到大的顺序进行排序,得到第一排序顺序为c5、c4、c2。
步骤a13、将新增网口标识信息集合中每一插卡槽位标识信息对应的网口标识信息,按照第一排序顺序排序至参考网口排序顺序后,得到第一排序结果。
在本申请实施例中,按照第一排序顺序,将新增网口标识信息集合中每一插卡槽位标识信息对应的网口标识信息按照第一排序顺序进行排序,并排序至参考排序顺序后,得到第一排序结果。
示例性的,新增网口标识信息集合为((w21,w22,w23),(w41,w42,w43,w44),(w51,w52)),其中,(w21,w22,w23)为c2槽位上插有的网卡的网口标识信息,(w41,w42,w43,w44)为c4槽位上插有的网卡的网口标识信息,(w51,w52)为c5槽位上插有的网卡的网口标识信息,假设参考网口排序顺序为(w01,w02,w03),如此,按照第一排序顺序为c5、c4、c2,对新增网口标识信息集合((w21,w22,w23),(w41,w42,w43,w44),(w51,w52))进行排序,得到第一排序结果(w01,w02,w03)、(w51,w52)、(w41,w42,w43,w44)、(w21,w22,w23)。
步骤a14、将第一排序结果中每一插卡槽位标识信息对应的网口标识信息,按照主板配置信息中包括的卡槽方向和网卡配置信息中包括的网口加载顺序进行排序,得到目标网口排序顺序。
在本申请实施例中,按照主板配置信息中包括的卡槽方向和网卡配置信息中包括的网口加载顺序,对第一排序结果中每一插卡槽位标识信息对应的网口标识信息进行排序,得到目标网口排序顺序。
示例性的,对第一排序结果(w01,w02,w03)、(w51,w52)、(w41,w42,w43,w44)、(w21,w22,w23),按照主板配置信息中包括的卡槽方向和网卡配置信息中包括的网口加载顺序进行排序,网口加载顺序通常为先电后光、从左到右、从下到上,如此,假设得到最终的目标网口排序顺序为:w01,w02,w03,w51,w52,w42,w44,w41,w43,w22,w21,w23。
基于前述实施例,在本申请其他实施例中,网口排序设备执行步骤203a之后,还可以选择执行步骤203e~203g,用于实现在拔出网卡应用场景时,对网口进行排序的方案:
步骤203e、从参考插卡槽位标识信息集合中,确定第一插卡槽位标识信息集合不包括的插卡槽位标识信息,得到至少一个待删除插卡槽位标识信息。
在本申请实施例中,从参考插卡槽位标识信息集合中,确定第一插卡槽位标识信息集合不包括的插卡槽位标识信息,可以确定得到被拔出网卡所在的槽位的槽位标识信息,如此,即可得到至少一个待删除插卡槽位标识信息。
示例性的,假设参考插卡标识信息集合为(d1、d2、d6、d8),第一插卡槽位标识信息集合为(d2、d3、d5、d6),如此,可以确定参考插卡槽位标识信息集合包括,且第一插卡槽位标识信息集合中不包括的至少一个待删除插卡槽位标识信息为d1和d8。
步骤203f、从参考网口标识信息集合中,确定至少一个待删除插卡槽位标识信息对应的网口标识信息,得到至少一个待删除网口标识信息。
在本申请实施例中,从参考标识信息集合中,确定至少一个待删除插卡槽位标识信息为d1和d8对应的网口标识信息,得到至少一个待删除网口标识信息。假设d1对应的网口标识信息为wd11、wd12和wd13,d8对应的网口标识信息为wd81和wd82,因此,得到的至少一个待删除网口标识信息为wd11、wd12、wd13、wd81和wd82。
步骤203g、删除参考网口排序顺序中至少一个待删除网口标识信息,保留至少一个待删除网口标识信息的排序序号,得到目标网口排序顺序。
在本申请实施例中,假设参考网口排序顺序为(wd11,wd12,wd13,wd82,wd81,wd64,wd63,wd61,wd62,wd21,wd22),对应的排序序号是从1开始增序的,如此,可以删除至少一个待删除网口标识信息wd11、wd12、wd13、wd81和wd82,但是不改变参考网口排序顺序中保留的网口排序顺序,如此,可以得到目标网口排序顺序为(0,0,0,0,0,wd64,wd63,wd61,wd62,wd21,wd22)。
基于前述实施例,在本申请其他实施例中,在针对同槽更换网卡的应用场景下,网口排序设备执行步骤203a之后,还可以选择执行步骤203h~203l:
步骤203h、确定参考插卡槽位标识信息集合与第一插卡槽位标识信息集合中相同的插卡槽位标识信息,得到至少一个待分析插卡槽位标识信息。
在本申请实施例中,可以采用交集运算的方式来确定参考插卡槽位标识信息集合与第一插卡槽位标识信息集合中相同的插卡槽位标识信息。假设参考插卡标识信息集合为(d1、d2、d6、d8),第一插卡槽位标识信息集合为(d2、d3、d5、d6),对应的,得到的至少一个待分析插卡槽位标识信息为d2和d6。
步骤203i、从第一网口标识信息集合中,确定每一待分析插卡槽位标识信息对应的第一网口标识信息子集合。
在本申请实施例中,从第一网口标识信息集合中,获取待分析插卡槽位标识信息d2对应的第一网口标识信息子集合和待分析插卡槽位标识信息d6对应的第一网口标识信息子集合。
步骤203j、从参考网口标识信息集合中,确定每一待分析插卡槽位标识信息对应的第二网口标识信息子集合。
在本申请实施例中,从参考网口标识信息集合中,获取待分析插卡槽位标识信息d2对应的第二网口标识信息子集合和待分析插卡槽位标识信息d6对应的第二网口标识信息子集合。
步骤203k、若确定第一网口标识信息子集合与对应的第二网口标识信息子集合不同,从参考网口排序顺序中,确定对应的待分析插卡槽位标识信息的第一目标网口名称和对应的第一目标排序序号。
在本申请实施例中,假设待分析插卡槽位标识信息d2对应的第二网口标识信息子集合与待分析插卡槽位标识信息d2对应的第一网口标识信息子集合不同,表明待分析插卡槽位标识信息d2上的网卡发生替换,即用户进行了同槽更换网卡的情况,此时,从参考网口排序顺序(wd11,wd12,wd13,wd82,wd81,wd64,wd63,wd61,wd62,wd21,wd22)中,确定待分析插卡槽位标识信息d2对应的网口标识信息wd21对应的第一目标网口名称为eth9,第一目标排序序号为10,待分析插卡槽位标识信息d2对应的网口标识信息wd22对应的第一目标网口名称为eth10,第一目标排序序号为11。
步骤203l、确定目标排序顺序中每一待分析插卡槽位标识信息对应的网口名称为对应的第一目标网口名称,每一待分析插卡槽位标识信息对应的排序序号为第一目标排序序号。
在本申请实施例中,在目标排序顺序中,针对待分析插卡槽位标识信息d2上更换后的网卡的网口的排序序号依然保持不变,为10和11,对应的网口名称也保持不变,依然为eth9和eth10,也就是说更换后的网卡的网口标识信息为wd2A和wd2B时,对应的目标排序顺序为(wd11,wd12,wd13,wd82,wd81,wd64,wd63,wd61,wd62,wd2A,wd2B)。这样,实现网口名称和网口排序顺序不随网卡的改变而改变,保证了网口顺序的一致性。
基于前述实施例,在本申请其他实施例中,在针对网卡更换槽位的场景下,网口排序设备执行步骤203a之后,还可以选择执行步骤203m~203p:
步骤203m、确定第一网口标识信息集合与参考网口标识信息集合中属于同一个网卡的网口标识信息,得到至少一个网口标识信息集合。
在本申请实施例中,可以采用交集计算方式来确定第一网口标识信息集合与参考网口标识信息集合中属于同一个网卡的网口标识信息集合。
步骤203n、从第一插卡槽位标识信息集合中,确定每一网口标识信息集合对应的第一插卡槽位标识信息。
步骤203n、从参考插卡槽位标识信息集合中,确定每一网口标识信息集合对应的第二插卡槽位标识信息。
步骤203o、若确定第一插卡槽位标识信息与对应的第二插卡槽位标识信息不同,从参考网口排序顺序中,确定第二插卡槽位标识信息对应的第二目标网口名称和对应的第二目标排序序号。
在本申请实施例中,若同一个网口标识信息集合的第一插卡槽位标识信息与第二插卡槽位标识信息不同,可以确定出现了网卡更换槽位的情况,即对应的每一网口标识信息集合从第二插卡槽位标识信息对应的槽位处更新至了第一插卡槽位标识信息对应的槽位处。示例性,从参考网口排序顺序(wd11,wd12,wd13,wd82,wd81,wd64,wd63,wd61,wd62,wd21,wd22)中,假设确定第二插卡槽位标识信息为d1,对应的第二目标网口名称依次为eth0、eth1和eth2,对应的第二目标排序序号依次为1、2和3。
步骤203p、在目标排序顺序中,保留第二插卡槽位标识信息对应的第二目标网口名称和对应的第二目标排序序号。
在本申请实施例中,在确定目标排序顺序时,对第二插卡槽位标识信息d1对应的第二目标网口名称和第二目标排序序号不进行调整,在目标排序顺序中,第二目标网口名称依然为eth0、eth1和eth2,对应的第二目标排序序号依次为1、2和3。
需说明的是,步骤203b~203d、步骤203e~203g、步骤203h~203l和步骤203m~203p可以根据实际应用场景进行任意组合来确定目标排序顺序。
基于前述实施例,在本申请其他实施例中,参照图2所示,网口排序设备还用于执行步骤205~210:
步骤205、在目标操作***处于启动状态的情况下,若未检测到包括参考网口排序顺序的第一目标文件,获取主板配置信息和网卡配置信息。
示例性的,主板配置信息可以如下所示:
[mother_board]
manufacturer=OEM //厂商
family=SMC-X10 //型号
[count]
slot_count=5 //包括的槽位总数
[slot1]
bus_info=/pci0000:00/0000:00:03.2/0000:04:00.0 //槽位的总线号
number=1 //物理位置序号
direction=right //卡槽方向
[slot2]
bus_info=/pci0000:80/0000:80:01.0/0000:81:00.0
number=2
direction=up
[slot3]
bus_info=/pcioo00:80/0000:80:03.0/0000:82:00.0
number=3
direction=up
[slot4]
bus_info=/pcioooo:00/0000:00:03.0/0000:03:00.0
number=4
direction=up
[slot5]
bus_info=/pci0000:00/0000:00:02.0/0000:02:00.0
number=5
direction=up。
网卡配置信息可以如下所示:
[8086:1521-2] //网卡型号
name=Intel Corporation I350 Gigabit Network Connection //网卡名称
iface_count=2 //网卡包括网口数量
load_order=asc //网口加载顺序
[15b3:1017-2]
name=Mellanox Technologies MT27800 Family[ConnectX-5]
iface_count=2
load_order=asc
[15ad:07bo-1]
name=VMware VMXNET3 Ethernet Controller
iface_count=1
load_order=asc。
步骤206、获取目标操作***当前插有第二目标网卡的第二插卡槽位标识信息集合和目标操作***包括的第二网口标识信息集合。
在本申请实施例中,获取目标操作***当前插有第二目标网卡的第二插卡槽位标识信息集合和目标操作***包括的第二网口标识信息集合可以是通过BIOS操作***对PCI/PCIe总线树进行扫描确定得到的。
步骤207、基于主板配置信息中包括的物理位置序号,对第二插卡槽位标识信息集合中插卡槽位标识信息进行排序,得到第二排序顺序。
步骤208、将第二网口标识信息集合中每一插卡槽位标识信息对应的网口标识信息,按照第二排序顺序进行排序,得到第二排序结果。
步骤209、将第二排序结果中每一插卡槽位标识信息对应的网口标识信息,按照主板配置信息中包括的卡槽方向和网卡配置信息中包括的网口加载顺序进行排序,得到参考网口排序顺序。
步骤210、记录参考网口排序顺序至第一目标文件。
在本申请实施例中,第一目标文件可以是规则(rules)文件,可以通过操作***组件(udev)加载识别,实现自定义网口顺序生效。
基于前述实施例,在本申请其他实施例中,步骤205可以由步骤205a~205b来实现:
步骤205a、在目标操作***处于启动状态的情况下,若未检测到包括参考网口排序顺序的第一目标文件,获取主板标识信息。
在本申请实施例中,主板标识信息可以是主板名称或主板型号。
步骤205b、若主板标识信息属于预设标识信息,获取主板配置信息和网卡配置信息。
在本申请实施例中,预设标识信息为用于指示可以采用本申请方案确定网口排序顺序的主板标识信息。若主板标识信息不属于预设标识信息,则网口排序设备采用默认的网口排序规则对网口进行排序。
基于前述实施例,在本申请其他实施例中,参照图3所示,网口排序设备执行步骤204或步骤210之后,还用于执行步骤211~212:
步骤211、获取当前PCI/PCIe总线树信息。
步骤212、更新第二目标文件中的PCI/PCIe总线树信息为当前PCI/PCIe总线树信息。
在本申请实施例中,第二目标文件与第一目标文件是成对出现的。
基于前述实施例,在本申请其他实施例中,本申请实施例提供一种网口排序方法,参照图4所示,具体包括以下实现流程:
步骤301、开始。
步骤302、服务器设备判断/udev/rules.d/目录中是否存在98-remap-iface.rules文件,若/udev/rules.d/目录中不存在98-remap-iface.rules文件,执行步骤303~308;若/udev/rules.d/目录中存在98-remap-iface.rules文件,执行步骤309~313。
其中,98-remap-iface.rules文件与前述第一目标文件对应。
步骤303、读取主板配置文件mobo.ini。
其中,主板配置文件mobo.ini中记录的是设备序列号(BUS_ID)、卡槽方向和设备顺序号即前述物理位置序号之间的映射关系。主板配置文件为前述主板配置信息。
步骤304、读取网口配置文件nic.ini。
其中,网口配置文件nic.ini中记录的是网卡类型、网口数量和加载顺序。网口配置文件为前述网口配置信息。
步骤305、读取***当前插卡槽位序列号。
其中,插卡槽位序列号与前述插卡槽位标识信息匹配,可以用device_id来表示。
步骤306、依据主板配置文件中声明的顺序,对当前***中的当前槽位序列号进行排序。
步骤307、根据当前槽位序列号的排序,基于网口配置文件及槽位上网卡的网口顺序,按排序顺序递增的规则,对每一槽位中的网口进行排序,得到网口排序结果。
其中,目标排序结果与前述参考网口排序顺序对应。
步骤308、将网口排序结果写入98-remap-iface.rules文件中。
其中,若/udev/rules.d/目录中不存在98-remap-iface.rules文件,表明当前为重新安装***过程。
步骤309、读取init_iface_map.ini文件。
其中,init_iface_map.ini文件与前述第二目标文件对应。
步骤310、读取***当前插卡槽位序列号和网卡网口总线号信息。
步骤311、对init_iface_map.ini文件、当前插卡槽位序列号和网卡网口信息进行处理,确定移除的网口、未发生变更的网口以及增加的网口。
步骤312、基于预设规则和98-remap-iface.rules文件中的网口排序顺序,对确定的移除的网口、未发生变更的网口以及增加的网口的排序顺序进行更新,得到目标排序顺序。
其中,预设规则可以参照下表内容所示。
步骤313、将最终确定得到的目标排序顺序写入98-remap-iface.rules文件中。
步骤314、结束。
其中,在一些应用场景中,在服务器设备启动过程中进行内核初始化时,扫描服务器设备的主板型号,并在判断主板型号与允许使用步骤301~314来实现网口排序的配置文件匹配时,执行步骤301~314的前提条件,若主板型号与配置文件不匹配,采用默认网口顺序确定方法来确定网口顺序。
其中,服务器背板插槽逻辑图可以参照图5所示,包括PCIe-B、PCIe-C、PCIe-D、PCIe-E和服务器主板上焊接的网卡MotherBoard。其中,假设init_iface_map.ini文件中记录的插槽为MotherBoard和PCIe-B上插有网卡,对应的参考网口顺序如图5中所示,MotherBoard和PCIe-B上插有网卡的网口排序与网口命名名称一致为:Eth0、Eth1、Eth2、Eth3、Eth4、Eth5、Eth6、Eth7、Eth8、Eth9。假设当前确定插槽PCIe-B上插有的网卡被切换至插槽PCIe-E上时,由于插槽PCIe-B上并未安装新的网卡,但为了保证网口顺序的一致性,保留插槽PCIe-B上原来插有的网口排序顺序和网口名称,因此,更新后的网口排序顺序如图6所示为:Eth0、Eth1、Eth2、Eth3、Eth4、Eth5、Eth6、Eth7、Eth8、Eth9、Eth10、Eth11、Eth12、Eth13、Eth14、Eth15。这样,之后若在插槽PCIe-B上安装新的网卡时,对应的网卡的网口名称和网口排序顺序为Eth4、Eth5、Eth6、Eth7、Eth8、Eth9。
需要说明的是,本实施例中与其它实施例中相同步骤或概念的解释可以参考其它实施例中的描述,此处不再赘述。
本申请的实施例所提供的网口排序方法,在目标操作***处于启动状态的情况下,若检测到包括参考网口排序顺序的第一目标文件,获取第二目标文件,并获取第一插卡槽位标识信息集合和第一网口标识信息集合,然后基于第二目标文件、第一插卡槽位标识信息集合、第一网口标识信息集合和参考网口排序顺序,得到目标网口排序顺序,并写入目标网口排序顺序至第一目标文件中,以替换第一目标文件中的参考网口排序顺序。这样,通过预置于目标操作***的镜像文件中的第一目标文件和第二目标文件,来实现网口名称和网口排序顺序的一致性,解决了目前确定网口序号的操作过程较为复杂的问题,提供了一种对网口进行排序的方法,简化了确定网口序号的过程,提高了确定网口序号的效率。
基于前述实施例,本申请实施例提供一种网口排序装置4,该网口排序装置4可以应用于图1~3对应的实施例中,参照图7所示,该网口排序装置4包括:第一获取单元41、第二获取单元42、得到单元43和更新单元44;其中:
第一获取单元41,用于在目标操作***处于启动状态的情况下,若检测到包括参考网口排序顺序的第一目标文件,获取第二目标文件;其中,第二目标文件包括具有第一目标文件中对应的网口信息对应的网卡的***设备互连标准PCI/扩展***设备互联标准PCIe总线树信息;
第二获取单元42,用于获取第一插卡槽位标识信息集合和第一网口标识信息集合;其中,第一插卡槽位标识信息集合包括目标操作***当前插有第一目标网卡的至少一个槽位标识信息,第一网口标识信息集合包括第一目标网卡包括的至少一个网口的网口标识信息;
得到单元43,用于基于第二目标文件、第一插卡槽位标识信息集合、第一网口标识信息集合和参考网口排序顺序,得到目标网口排序顺序;
更新单元44,用于写入目标网口排序顺序至第一目标文件中,以替换第一目标文件中的参考网口排序顺序。
在本申请其他实施例中,得到单元43包括:第一获取模块、确定模块和得到模块;其中:
第一获取模块,用于获取第二目标文件中包括的参考插卡槽位标识信息集合和参考网口标识信息集合;
确定模块,用于基于第一插卡槽位标识信息集合和参考插卡槽位标识信息集合,确定新增插卡槽位标识信息集合;其中,新增插卡槽位标识信息集合包括新增的插卡槽位标识信息;
确定模块,还用于从第一网口标识信息集合中,确定与新增插卡槽位标识信息集合对应的网口标识信息,得到新增网口标识信息集合;
得到模块,用于基于新增插卡槽位标识信息集合、新增网口标识信息集合和参考网口排序顺序,得到目标网口排序顺序。
在本申请其他实施例中,得到模块具体用于实现以下步骤:
获取主板配置信息和网卡配置信息;
基于主板配置信息中包括物理位置序号,对新增插卡槽位标识信息集合中插卡槽位标识信息进行排序,得到第一排序顺序;
将新增网口标识信息集合中每一插卡槽位标识信息对应的网口标识信息,按照第一排序顺序排序至参考网口排序顺序后,得到第一排序结果;
将第一排序结果中每一插卡槽位标识信息对应的网口标识信息,按照主板配置信息中包括的卡槽方向和网卡配置信息中包括的网口加载顺序进行排序,得到目标网口排序顺序。
在本申请其他实施例中,得到模块,还用于从参考插卡槽位标识信息集合中,确定第一插卡槽位标识信息集合不包括的插卡槽位标识信息,得到至少一个待删除插卡槽位标识信息;
得到模块,还用于从参考网口标识信息集合中,确定至少一个待删除插卡槽位标识信息对应的网口标识信息,得到至少一个待删除网口标识信息;
得到模块,还用于删除参考网口排序顺序中至少一个待删除网口标识信息,保留参考网口排序顺序中的排序序号,得到目标网口排序顺序。
在本申请其他实施例中,得到模块还用于执行以下步骤:
确定参考插卡槽位标识信息集合与第一插卡槽位标识信息集合中相同的插卡槽位标识信息,得到至少一个待分析插卡槽位标识信息;
从第一网口标识信息集合中,确定每一待分析插卡槽位标识信息对应的第一网口标识信息子集合;
从参考网口标识信息集合中,确定每一待分析插卡槽位标识信息对应的第二网口标识信息子集合;
若确定第一网口标识信息子集合与对应的第二网口标识信息子集合不同,从参考网口排序顺序中,确定对应的待分析插卡槽位标识信息的第一目标网口名称和对应的第一目标排序序号;
确定目标排序顺序中每一待分析插卡槽位标识信息对应的网口名称为对应的第一目标网口名称,每一待分析插卡槽位标识信息对应的排序序号为第一目标排序序号。
在本申请其他实施例中,得到模块还用于执行以下步骤:
确定第一网口标识信息集合与参考网口标识信息集合中属于同一个网卡的网口标识信息,得到至少一个网口标识信息集合;
从第一插卡槽位标识信息集合中,确定每一网口标识信息集合对应的第一插卡槽位标识信息;
从参考插卡槽位标识信息集合中,确定每一网口标识信息集合对应的第二插卡槽位标识信息;
若确定第一插卡槽位标识信息与对应的第二插卡槽位标识信息不同,从参考网口排序顺序中,确定第二插卡槽位标识信息对应的第二目标网口名称和对应的第二目标排序序号;
在目标排序顺序中,保留第二插卡槽位标识信息对应的第二目标网口名称和对应的第二目标排序序号。
在本申请其他实施例中,网口排序装置还包括:记录单元;其中:
第一获取单元,还用于在目标操作***处于启动状态的情况下,若未检测到包括参考网口排序顺序的第一目标文件,获取主板配置信息和网卡配置信息;
第二获取单元,还用于获取目标操作***当前插有第二目标网卡的第二插卡槽位标识信息集合和目标操作***包括的第二网口标识信息集合;
得到单元,还用于基于主板配置信息中包括的物理位置序号,对第二插卡槽位标识信息集合中插卡槽位标识信息进行排序,得到第二排序顺序;
得到单元,还用于将第二网口标识信息集合中每一插卡槽位标识信息对应的网口标识信息,按照第二排序顺序进行排序,得到第二排序结果;
得到单元,还用于将第二排序结果中每一插卡槽位标识信息对应的网口标识信息,按照主板配置信息中包括的卡槽方向和网卡配置信息中包括的网口加载顺序进行排序,得到参考网口排序顺序;
记录单元,还用于记录参考网口排序顺序至第一目标文件。
在本申请其他实施例中,第一获取单元还包括:第二获取模块和第三获取模块;其中:
第二获取模块,用于在目标操作***处于启动状态的情况下,若未检测到包括参考网口排序顺序的第一目标文件,获取主板标识信息;
第三获取模块,用于若主板标识信息属于预设标识信息,获取主板配置信息和网卡配置信息。
在本申请其他实施例中,第二获取单元,还用于获取当前PCI/PCIe总线树信息;
更新单元,还用于更新第二目标文件中的PCI/PCIe总线树信息为当前PCI/PCIe总线树信息。
需要说明的是,本实施例中单元与模块之间的信息交互过程可以参考前述方法实施例描述的信息交互过程,此处不再赘述。
本申请的实施例所提供的网口排序装置,在目标操作***处于启动状态的情况下,若检测到包括参考网口排序顺序的第一目标文件,获取第二目标文件,并获取第一插卡槽位标识信息集合和第一网口标识信息集合,然后基于第二目标文件、第一插卡槽位标识信息集合、第一网口标识信息集合和参考网口排序顺序,得到目标网口排序顺序,并写入目标网口排序顺序至第一目标文件中,以替换第一目标文件中的参考网口排序顺序。这样,通过预置于目标操作***的镜像文件中的第一目标文件和第二目标文件,来实现网口名称和网口排序顺序的一致性,解决了目前确定网口序号的操作过程较为复杂的问题,提供了一种对网口进行排序的方法,简化了确定网口序号的过程,提高了确定网口序号的效率。
基于前述实施例,本申请实施例提供一种网口排序设备5,该网口排序设备5可以应用于图1~3对应的实施例中,参照图8所示,该网口排序设备5包括:插卡槽位51、第一目标网卡52、存储器53、处理器54和通信总线55;其中:
插卡槽位51,用于安装网卡;
第一目标网卡52,用于实现网口排序设备在计算机网络上进行通讯;
存储器53,用于存储可执行指令;
通信总线55,用于实现处理器54和存储器53之间的通信连接;
处理器54,用于执行存储器中存储的网口排序程序,以实现如图1~3对应的方法实施例中的交互过程,此处不再赘述。
基于前述实施例,本申请的实施例提供一种计算机可读存储介质,简称为存储介质,计算机可读存储介质存储有一个或者多个网口排序程序,一个或者多个网口排序程序可被一个或者多个处理器执行,以实现如图1~3对应的实施例提供的网口排序方法,此处不再赘述。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,……,空调器,或者网络通信链接设备等)执行本申请各个实施例所描述的方法。
本申请是参照根据本申请实施例的方法、设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上仅为本申请的优选实施例,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。
Claims (11)
1.一种网口排序方法,其特征在于,所述方法包括:
在目标操作***处于启动状态的情况下,若检测到包括参考网口排序顺序的第一目标文件,获取第二目标文件;其中,所述第二目标文件包括具有所述第一目标文件中对应的网口信息对应的网卡的***设备互连标准PCI/扩展***设备互联标准PCIe总线树信息,所述第一目标文件和所述第二目标文件预置于所述目标操作***的镜像文件中;
获取第一插卡槽位标识信息集合和第一网口标识信息集合;其中,所述第一插卡槽位标识信息集合包括所述目标操作***当前插有第一目标网卡的至少一个槽位标识信息,所述第一网口标识信息集合包括所述第一目标网卡包括的至少一个网口的网口标识信息;
基于所述第二目标文件、所述第一插卡槽位标识信息集合、所述第一网口标识信息集合和所述参考网口排序顺序,得到目标网口排序顺序;
写入所述目标网口排序顺序至所述第一目标文件中,以替换所述第一目标文件中的所述参考网口排序顺序;
其中,所述方法还包括:
获取所述第二目标文件中包括的参考插卡槽位标识信息集合和参考网口标识信息集合;
从所述参考插卡槽位标识信息集合中,确定所述第一插卡槽位标识信息集合不包括的插卡槽位标识信息,得到至少一个待删除插卡槽位标识信息;
从所述参考网口标识信息集合中,确定至少一个所述待删除插卡槽位标识信息对应的网口标识信息,得到至少一个待删除网口标识信息;
删除所述参考网口排序顺序中至少一个所述待删除网口标识信息,保留所述参考网口排序顺序中的排序序号,得到目标网口排序顺序。
2.根据权利要求1所述的方法,其特征在于,所述基于所述第二目标文件、所述第一插卡槽位标识信息集合、所述第一网口标识信息集合和所述参考网口排序顺序,得到目标网口排序顺序,包括:
基于所述第一插卡槽位标识信息集合和所述参考插卡槽位标识信息集合,确定新增插卡槽位标识信息集合;其中,所述新增插卡槽位标识信息集合包括新增的插卡槽位标识信息;
从所述第一网口标识信息集合中,确定与所述新增插卡槽位标识信息集合对应的网口标识信息,得到新增网口标识信息集合;
基于所述新增插卡槽位标识信息集合、所述新增网口标识信息集合和所述参考网口排序顺序,得到所述目标网口排序顺序。
3.根据权利要求2所述的方法,其特征在于,所述基于所述新增插卡槽位标识信息集合、所述新增网口标识信息集合和所述参考网口排序顺序,得到所述目标网口排序顺序,包括:
获取主板配置信息和网卡配置信息;
基于所述主板配置信息中包括物理位置序号,对所述新增插卡槽位标识信息集合中插卡槽位标识信息进行排序,得到第一排序顺序;
将所述新增网口标识信息集合中每一插卡槽位标识信息对应的网口标识信息,按照所述第一排序顺序排序至所述参考网口排序顺序后,得到第一排序结果;
将所述第一排序结果中每一插卡槽位标识信息对应的网口标识信息,按照所述主板配置信息中包括的卡槽方向和所述网卡配置信息中包括的网口加载顺序进行排序,得到所述目标网口排序顺序。
4.根据权利要求1至3任一项所述的方法,其特征在于,所述方法还包括:
确定所述参考插卡槽位标识信息集合与所述第一插卡槽位标识信息集合中相同的插卡槽位标识信息,得到至少一个待分析插卡槽位标识信息;
从所述第一网口标识信息集合中,确定每一所述待分析插卡槽位标识信息对应的第一网口标识信息子集合;
从所述参考网口标识信息集合中,确定每一所述待分析插卡槽位标识信息对应的第二网口标识信息子集合;
若确定所述第一网口标识信息子集合与对应的第二网口标识信息子集合不同,从所述参考网口排序顺序中,确定对应的所述待分析插卡槽位标识信息的第一目标网口名称和对应的第一目标排序序号;
确定所述目标排序顺序中每一所述待分析插卡槽位标识信息对应的网口名称为对应的所述第一目标网口名称,每一所述待分析插卡槽位标识信息对应的排序序号为所述第一目标排序序号。
5.根据权利要求1至3任一项所述的方法,其特征在于,所述方法还包括:
确定所述第一网口标识信息集合与所述参考网口标识信息集合中属于同一个网卡的网口标识信息,得到至少一个网口标识信息集合;
从所述第一插卡槽位标识信息集合中,确定每一网口标识信息集合对应的第一插卡槽位标识信息;
从所述参考插卡槽位标识信息集合中,确定每一网口标识信息集合对应的第二插卡槽位标识信息;
若确定所述第一插卡槽位标识信息与对应的第二插卡槽位标识信息不同,从所述参考网口排序顺序中,确定所述第二插卡槽位标识信息对应的第二目标网口名称和对应的第二目标排序序号;
在所述目标排序顺序中,保留所述第二插卡槽位标识信息对应的所述第二目标网口名称和对应的所述第二目标排序序号。
6.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在目标操作***处于启动状态的情况下,若未检测到包括参考网口排序顺序的第一目标文件,获取主板配置信息和网卡配置信息;
获取所述目标操作***当前插有第二目标网卡的第二插卡槽位标识信息集合和所述目标操作***包括的第二网口标识信息集合;
基于所述主板配置信息中包括的物理位置序号,对所述第二插卡槽位标识信息集合中插卡槽位标识信息进行排序,得到第二排序顺序;
将所述第二网口标识信息集合中每一插卡槽位标识信息对应的网口标识信息,按照所述第二排序顺序进行排序,得到第二排序结果;
将所述第二排序结果中每一插卡槽位标识信息对应的网口标识信息,按照所述主板配置信息中包括的卡槽方向和所述网卡配置信息中包括的网口加载顺序进行排序,得到所述参考网口排序顺序;
记录所述参考网口排序顺序至所述第一目标文件。
7.根据权利要求6所述的方法,其特征在于,所述在目标操作***处于启动状态的情况下,若未检测到包括参考网口排序顺序的第一目标文件,获取主板配置信息和网卡配置信息,包括:
在目标操作***处于启动状态的情况下,若未检测到包括参考网口排序顺序的第一目标文件,获取主板标识信息;
若所述主板标识信息属于预设标识信息,获取所述主板配置信息和所述网卡配置信息。
8.根据权利要求1或6所述的方法,其特征在于,所述方法还包括:
获取当前PCI/PCIe总线树信息;
更新所述第二目标文件中的PCI/PCIe总线树信息为所述当前PCI/PCIe总线树信息。
9.一种网口排序装置,其特征在于,该装置包括:第一获取单元、第二获取单元、得到单元和更新单元;其中:
所述第一获取单元,用于在目标操作***处于启动状态的情况下,若检测到包括参考网口排序顺序的第一目标文件,获取第二目标文件;其中,所述第二目标文件包括具有所述第一目标文件中对应的网口信息对应的网卡的***设备互连标准PCI/扩展***设备互联标准PCIe总线树信息;
所述第二获取单元,用于获取第一插卡槽位标识信息集合和第一网口标识信息集合;其中,所述第一插卡槽位标识信息集合包括所述目标操作***当前插有第一目标网卡的至少一个槽位标识信息,所述第一网口标识信息集合包括所述第一目标网卡包括的至少一个网口的网口标识信息;
所述得到单元,用于基于所述第二目标文件、所述第一插卡槽位标识信息集合、所述第一网口标识信息集合和所述参考网口排序顺序,得到目标网口排序顺序;
所述更新单元,用于写入所述目标网口排序顺序至所述第一目标文件中,以替换所述第一目标文件中的所述参考网口排序顺序;
所述得到单元包括:第一获取模块和得到模块;其中:
所述第一获取模块,用于获取第二目标文件中包括的参考插卡槽位标识信息集合和参考网口标识信息集合;
所述得到模块,还用于从所述参考插卡槽位标识信息集合中,确定第一插卡槽位标识信息集合不包括的插卡槽位标识信息,得到至少一个待删除插卡槽位标识信息;
所述得到模块,还用于从所述参考网口标识信息集合中,确定至少一个待删除插卡槽位标识信息对应的网口标识信息,得到至少一个待删除网口标识信息;
所述得到模块,还用于删除参考网口排序顺序中至少一个待删除网口标识信息,保留参考网口排序顺序中的排序序号,得到目标网口排序顺序。
10.一种网口排序设备,其特征在于,所述网口排序设备包括:插卡槽位、第一目标网卡、存储器、处理器和通信总线;其中:
所述插卡槽位,用于安装网卡;
所述第一目标网卡,用于实现网口排序设备在计算机网络上进行通讯;
所述存储器,用于存储可执行指令;
所述通信总线,用于实现所述处理器和所述存储器之间的通信连接;
所述处理器,用于执行所述存储器中存储的网口排序程序,实现如权利要求1至8中任一项所述的网口排序方法的步骤。
11.一种存储介质,其特征在于,所述存储介质上存储有网口排序程序,所述网口排序程序被处理器执行时实现如权利要求1至8中任一项所述的网口排序方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111616153.5A CN114416185B (zh) | 2021-12-27 | 2021-12-27 | 一种网口排序方法、装置、设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111616153.5A CN114416185B (zh) | 2021-12-27 | 2021-12-27 | 一种网口排序方法、装置、设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114416185A CN114416185A (zh) | 2022-04-29 |
CN114416185B true CN114416185B (zh) | 2024-04-09 |
Family
ID=81269200
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111616153.5A Active CN114416185B (zh) | 2021-12-27 | 2021-12-27 | 一种网口排序方法、装置、设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114416185B (zh) |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002374281A (ja) * | 2002-06-13 | 2002-12-26 | Fujitsu Ltd | 固定長セル分配装置 |
JP2011118663A (ja) * | 2009-12-03 | 2011-06-16 | Hitachi Ltd | Nic選択方法およびプログラム |
JP2012244581A (ja) * | 2011-05-24 | 2012-12-10 | Fujitsu Semiconductor Ltd | 通信装置、半導体装置、装置idの設定方法 |
CN108696394A (zh) * | 2018-05-18 | 2018-10-23 | 深圳市智微智能科技开发有限公司 | 一种linux***下多个PCIE网卡的通讯方法及设备 |
CN109117197A (zh) * | 2018-08-28 | 2019-01-01 | 郑州云海信息技术有限公司 | 一种解决集群网卡命名混乱的方法 |
CN109445872A (zh) * | 2018-10-22 | 2019-03-08 | 成都安恒信息技术有限公司 | 一种应用于多网口Linux服务器确定各网口物理位置的方法 |
CN110943859A (zh) * | 2019-11-21 | 2020-03-31 | 深信服科技股份有限公司 | 一种网口序列调整方法、装置、设备及存储介质 |
CN112671942A (zh) * | 2020-12-04 | 2021-04-16 | 浪潮电子信息产业股份有限公司 | 一种网口名称的设置方法、装置、设备及存储介质 |
WO2021237434A1 (zh) * | 2020-05-26 | 2021-12-02 | 西安诺瓦星云科技股份有限公司 | 显示屏配置方法、装置和***以及计算机可读存储介质 |
-
2021
- 2021-12-27 CN CN202111616153.5A patent/CN114416185B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002374281A (ja) * | 2002-06-13 | 2002-12-26 | Fujitsu Ltd | 固定長セル分配装置 |
JP2011118663A (ja) * | 2009-12-03 | 2011-06-16 | Hitachi Ltd | Nic選択方法およびプログラム |
JP2012244581A (ja) * | 2011-05-24 | 2012-12-10 | Fujitsu Semiconductor Ltd | 通信装置、半導体装置、装置idの設定方法 |
CN108696394A (zh) * | 2018-05-18 | 2018-10-23 | 深圳市智微智能科技开发有限公司 | 一种linux***下多个PCIE网卡的通讯方法及设备 |
CN109117197A (zh) * | 2018-08-28 | 2019-01-01 | 郑州云海信息技术有限公司 | 一种解决集群网卡命名混乱的方法 |
CN109445872A (zh) * | 2018-10-22 | 2019-03-08 | 成都安恒信息技术有限公司 | 一种应用于多网口Linux服务器确定各网口物理位置的方法 |
CN110943859A (zh) * | 2019-11-21 | 2020-03-31 | 深信服科技股份有限公司 | 一种网口序列调整方法、装置、设备及存储介质 |
WO2021237434A1 (zh) * | 2020-05-26 | 2021-12-02 | 西安诺瓦星云科技股份有限公司 | 显示屏配置方法、装置和***以及计算机可读存储介质 |
CN112671942A (zh) * | 2020-12-04 | 2021-04-16 | 浪潮电子信息产业股份有限公司 | 一种网口名称的设置方法、装置、设备及存储介质 |
Non-Patent Citations (1)
Title |
---|
基于物联网的信息安全传输***的研究与应用;凌晨;《中国优秀硕士论文 信息科技》;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN114416185A (zh) | 2022-04-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111443912B (zh) | 基于组件的页面渲染方法、装置、计算机设备和存储介质 | |
CN111078221B (zh) | 页面颜色主题的切换方法、装置、存储介质及电子设备 | |
CN107426041B (zh) | 一种解析命令的方法和装置 | |
CN111414391A (zh) | 一种访问多数据源的方法及*** | |
CN112579202A (zh) | Windows***的服务性程序编辑方法、装置、设备及存储介质 | |
CN115357262A (zh) | 一种驱动器固件批量升级的方法 | |
US20160011890A1 (en) | Compatibility method and apparatus | |
CN114416185B (zh) | 一种网口排序方法、装置、设备和存储介质 | |
CN112732556B (zh) | 分布式***的自动化测试方法、装置、设备及存储介质 | |
CN107885543B (zh) | 一种应用程序的功能管理方法、装置和智能终端 | |
CN111651397B (zh) | 一种访问PXIe外设模块的方法和设备 | |
CN111258950A (zh) | 原子访存方法、存储介质、计算机设备、装置和*** | |
US20230185464A1 (en) | Method for determining a hard disk connection slot connected to a hard disk and terminal device | |
CN116049000A (zh) | 环境参数配置方法、装置、设备、存储介质及产品 | |
CN113722045A (zh) | 集群的应用部署方法和装置 | |
CN113904930B (zh) | 一种网口排序方法、装置、设备和存储介质 | |
CN111241099A (zh) | 一种工业大数据存储方法及装置 | |
CN110716836A (zh) | 基于dos的ssd测试方法、装置、计算机设备及存储介质 | |
CN115904717B (zh) | 云平台中应用***部署方法、装置和计算机设备 | |
US11922233B2 (en) | Information creation device, information creation method, and information creation program | |
US12026393B2 (en) | Apparatus and method for selecting storage location based on data usage | |
CN117472458B (zh) | ***功能优化配置方法、装置、电子设备及存储介质 | |
CN115665335B (zh) | 图像处理方法、装置、图像形成设备及介质 | |
US8799616B2 (en) | Method and system for preferred CPU binding on virtual partitions | |
CN110851750B (zh) | 一种数据获取方法及装置 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |