CN115629825A - 一种服务器及其资产信息获取方法、提供方法和装置 - Google Patents

一种服务器及其资产信息获取方法、提供方法和装置 Download PDF

Info

Publication number
CN115629825A
CN115629825A CN202211554107.1A CN202211554107A CN115629825A CN 115629825 A CN115629825 A CN 115629825A CN 202211554107 A CN202211554107 A CN 202211554107A CN 115629825 A CN115629825 A CN 115629825A
Authority
CN
China
Prior art keywords
pcie
physical topology
topology data
server
pcie physical
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.)
Granted
Application number
CN202211554107.1A
Other languages
English (en)
Other versions
CN115629825B (zh
Inventor
邱星萍
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Suzhou Inspur Intelligent Technology Co Ltd
Original Assignee
Suzhou Inspur Intelligent Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Suzhou Inspur Intelligent Technology Co Ltd filed Critical Suzhou Inspur Intelligent Technology Co Ltd
Priority to CN202211554107.1A priority Critical patent/CN115629825B/zh
Publication of CN115629825A publication Critical patent/CN115629825A/zh
Application granted granted Critical
Publication of CN115629825B publication Critical patent/CN115629825B/zh
Priority to PCT/CN2023/132737 priority patent/WO2024120169A1/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4282Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4411Configuring for operating with peripheral devices; Loading of device drivers
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE 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/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明公开了一种服务器的资产信息获取方法、提供方法、装置、基板管理控制器及服务器,涉及服务器技术领域,该获取方法包括:在基本输入输出***的启动过程中,向基板管理控制器发送PCIe物理拓扑获取请求;获取基板管理控制器返回的PCIe拓扑获取请求对应的PCIe物理拓扑数据;根据PCIe物理拓扑数据和PCIe设备逻辑信息,获取服务器的PCIe***拓扑;本发明通过将PCIe物理拓扑数据存储在服务器的BMC可访问的预设存储器中,能够在BIOS的启动过程中从BMC便捷地获取PCIe物理拓扑数据,以得到服务器的PCIe***拓扑,能够便捷地获取服务器的PCIe设备资产信息,从而方便服务器配置的展示。

Description

一种服务器及其资产信息获取方法、提供方法和装置
技术领域
本发明涉及服务器技术领域,特别涉及一种服务器的资产信息获取方法、提供方法、装置、基板管理控制器及服务器。
背景技术
随着服务器配置越来越丰富,如服务器配置的PCIe(peripheral componentinterconnect express,一种高速串行计算机扩展总线标准)设备的数量和种类越来越多,这就使得服务器难以便捷地获取自身的资产信息。
因此,如何能够便捷地获取服务器的资产信息,以展现服务器配置,是现今急需解决的问题。
发明内容
本发明的目的是提供一种服务器的资产信息获取方法、提供方法、装置、基板管理控制器及服务器,以便捷地获取服务器的PCIe设备资产信息,展现服务器配置。
为解决上述技术问题,本发明提供一种服务器的资产信息获取方法,包括:
在基本输入输出***的启动过程中,向基板管理控制器发送PCIe物理拓扑获取请求;
获取所述基板管理控制器返回的所述PCIe拓扑获取请求对应的PCIe物理拓扑数据;其中,所述PCIe物理拓扑数据存储在所述基板管理控制器可访问的预设存储器中;
根据所述PCIe物理拓扑数据和PCIe设备逻辑信息,获取服务器的PCIe***拓扑。
可选的,所述PCIe物理拓扑数据包括PCIe根节点信息、PCIe带宽信息、PCIe设备类型和PCIe设备编号中的至少一项;所述PCIe设备逻辑信息包括各PCIe设备各自对应的设备类型、根节点和总线设备功能信息中的至少一项。
可选的,所述获取所述基板管理控制器返回的所述PCIe拓扑获取请求对应的PCIe物理拓扑数据,包括:
获取所述基板管理控制器返回的所述PCIe拓扑获取请求对应的目标PCIe物理拓扑数据;其中,所述目标PCIe物理拓扑数据为目标套餐对应的PCIe物理拓扑数据,所述目标套餐为任一预设套餐,所述预设存储器中存储各预设套餐各自对应的PCIe物理拓扑数据。
可选的,所述向基板管理控制器发送PCIe拓扑获取请求之前,还包括:
从所述基板管理控制器获取所述目标PCIe物理拓扑数据对应的标头信息;
根据预设套餐标识和所述标头信息中的套餐标识,检测待获取的所述目标PCIe物理拓扑数据是否为正确;
若待获取的所述目标PCIe物理拓扑数据正确,则根据所述标头信息中的数据长度信息,生成所述PCIe拓扑获取请求,并执行所述向基板管理控制器发送PCIe拓扑获取请求的步骤。
可选的,所述根据所述PCIe物理拓扑数据和PCIe设备逻辑信息,获取服务器的PCIe***拓扑之后,还包括:
将所述PCIe设备逻辑信息发送到所述基板管理控制器,以使所述基板管理控制器根据所述PCIe物理拓扑数据和PCIe设备逻辑信息,得到所述服务器的PCIe***拓扑。
可选的,该获取方法还包括:
根据获取的PCIe物理拓扑调整指令,控制所述基板管理控制器更新所述预设存储器中存储的所述PCIe物理拓扑数据。
可选的,所述PCIe物理拓扑数据包括所述PCIe根节点信息;所述PCIe根节点信息包括CPU的各PCIe根节点各自对应的x2模式编号。
可选的,所述PCIe物理拓扑数据包括PCIe设备类型和PCIe设备编号;所述PCIe设备类型包括开源计算项目卡类型对应的“O”标识、非易失性内存主机控制器接口规范设备类型对应的“N”标识、图形处理器类型对应的“G”标识、转接扩展卡类型对应的“T”标识和/或其他PCIe设备类型对应的“P”标识;所述PCIe设备编号包括开源计算项目卡类型对应的0、非易失性内存主机控制器接口规范设备类型对应的十进制标签编号、图形处理器类型对应的十进制标签编号、转接扩展卡类型对应的十进制标签编号和/或其他PCIe设备类型对应的十进制标签编号。
可选的,所述获取所述基板管理控制器返回的所述PCIe拓扑获取请求对应的PCIe物理拓扑数据之后,还包括:
判断所述PCIe物理拓扑数据是否与备份存储器中的备份PCIe物理拓扑数据相同;
若相同,则执行所述根据所述PCIe物理拓扑数据和PCIe设备逻辑信息,获取服务器的PCIe***拓扑的步骤;
若不相同,则利用所述PCIe物理拓扑数据更新所述备份PCIe物理拓扑数据,并执行所述根据所述PCIe物理拓扑数据和PCIe设备逻辑信息,获取服务器的PCIe***拓扑的步骤。
可选的,所述判断所述PCIe物理拓扑数据是否与备份存储器中的备份PCIe物理拓扑数据相同之前,还包括:
对所述PCIe物理拓扑数据进行循环冗余校核,检测获取的所述PCIe物理拓扑数据是否正确;
若获取的所述目标PCIe物理拓扑数据正确,则执行所述判断所述PCIe物理拓扑数据是否与备份存储器中的备份PCIe物理拓扑数据相同的步骤;
若获取的所述目标PCIe物理拓扑数据不正确,则根据所述备份PCIe物理拓扑数据和PCIe设备逻辑信息,获取所述服务器的PCIe***拓扑。
本发明还提供了一种服务器的资产信息获取装置,包括:
物理请求模块,用于在启动过程中,向基板管理控制器发送PCIe物理拓扑获取请求;
物理获取模块,用于获取所述基板管理控制器返回的所述PCIe拓扑获取请求对应的PCIe物理拓扑数据;其中,所述PCIe物理拓扑数据存储在所述基板管理控制器可访问的预设存储器中;
资产获取模块,用于根据所述PCIe物理拓扑数据和PCIe设备逻辑信息,获取服务器的PCIe***拓扑。
本发明还提供了一种服务器,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如上述所述的服务器的资产信息获取方法的步骤。
本发明还提供了一种服务器的资产信息提供方法,包括:
基板管理控制器获取服务器的PCIe物理拓扑获取请求;
根据所述PCIe物理拓扑获取请求,从预设存储器中获取PCIe物理拓扑数据;
将所述PCIe物理拓扑数据发送到所述服务器,以使所述服务器根据所述PCIe物理拓扑数据和PCIe设备逻辑信息,获取所述服务器的PCIe***拓扑。
可选的,所述将所述PCIe物理拓扑数据发送到所述服务器之后,还包括:
接收所述服务器发送的PCIe设备逻辑信息;
根据所述PCIe物理拓扑数据和所述PCIe设备逻辑信息,获取所述服务器的PCIe***拓扑。
可选的,所述根据所述PCIe物理拓扑数据和所述PCIe设备逻辑信息,获取服务器的PCIe***拓扑之后,还包括:
将所述PCIe***拓扑发送到web页面展示。
可选的,所述根据所述PCIe物理拓扑数据和所述PCIe设备逻辑信息,获取服务器的PCIe***拓扑之后,还包括:
根据所述PCIe***拓扑和所述PCIe物理拓扑数据,检测所述服务器是否存在缺失PCIe设备;
若是,则展示所述PCIe物理拓扑数据中所述缺失PCIe设备对应的PCIe设备类型和/或PCIe设备编号。
可选的,该提供方法还包括:
根据所述服务器或远程终端发送的PCIe物理拓扑修改指令,更新所述预设存储器中存储的所述PCIe物理拓扑数据。
本发明还提供了一种服务器的资产信息提供装置,应用于基板管理控制器,包括:
请求获取模块,用于获取服务器的PCIe物理拓扑获取请求;
数据获取模块,用于根据所述PCIe物理拓扑获取请求,从预设存储器中获取PCIe物理拓扑数据;
数据发送模块,用于将所述PCIe物理拓扑数据发送到所述服务器,以使所述服务器根据所述PCIe物理拓扑数据和PCIe设备逻辑信息,获取所述服务器的PCIe***拓扑。
本发明还提供了一种基板管理控制器,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如上述所述的服务器的资产信息提供方法的步骤。
此外,本发明还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上述所述的服务器的资产信息获取方法或如上述所述的服务器的资产信息提供方法的步骤。
本发明所提供的一种服务器的资产信息获取方法,包括:在基本输入输出***的启动过程中,向基板管理控制器发送PCIe物理拓扑获取请求;获取基板管理控制器返回的PCIe拓扑获取请求对应的PCIe物理拓扑数据;其中,PCIe物理拓扑数据存储在基板管理控制器可访问的预设存储器中;根据PCIe物理拓扑数据和PCIe设备逻辑信息,获取服务器的PCIe***拓扑;
可见,本发明通过将PCIe物理拓扑数据存储在服务器的基板管理控制器(BMC,Baseboard Management Controller)可访问的预设存储器中,能够在基本输入输出***(BIOS,Basic Input Output System)的启动过程中从BMC便捷地获取PCIe物理拓扑数据,以利用PCIe物理拓扑数据和PCIe设备逻辑信息,获取服务器的PCIe***拓扑,能够便捷地获取服务器的PCIe设备资产信息,从而方便服务器配置的展示。此外,本发明还提供了一种服务器的资产信息获取装置、基本输入输出***、基板管理控制器及服务器,同样具有上述有益效果。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本发明实施例所提供的一种服务器的资产信息获取方法的流程图;
图2为本发明实施例所提供的另一种服务器的资产信息获取方法的方案实现示意图;
图3为本发明实施例所提供的另一种服务器的资产信息获取方法的x2模式编号的展示图;
图4为本发明实施例所提供的另一种服务器的资产信息获取方法的流程图;
图5为本发明实施例所提供的一种服务器的资产信息获取装置的结构框图;
图6为本发明实施例所提供的一种服务器的结构示意图;
图7为本发明实施例所提供的一种服务器的具体结构示意图;
图8为本发明实施例所提供的一种服务器的资产信息提供方法的流程图;
图9为本发明实施例所提供的一种服务器的资产信息提供装置的结构框图;
图10为本发明实施例所提供的一种基板管理控制器的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参考图1,图1为本发明实施例所提供的一种服务器的资产信息获取方法的流程图。该方法可以包括:
步骤101:在基本输入输出***的启动过程中,向基板管理控制器发送PCIe物理拓扑获取请求。
可以理解的是,本实施例中服务器的处理器可以在基本输入输出***(BIOS)的启动过程中,向基板管理控制器(BMC)发送PCIe物理拓扑获取请求(如图2中的PCIe拓扑请求),以通过BMC请求得到BMC可访问的预设存储器中存储的PCIe物理拓扑数据。
其中,对于本实施例中服务器从BMC获取PCIe物理拓扑数据的具体时间,可以由设计人员自行设置,如本步骤中服务器可以在BIOS启动的POST(自检)过程中,向BMC发送PCIe物理拓扑获取请求;例如,服务器的处理器可以在BIOS启动的POST过程中,通过ipmi(Intelligent Platform Management Interface,智能平台管理接口)向BMC发送PCIe物理拓扑获取请求,以通过ipmi从BMC获取PCIe物理拓扑数据。服务器也可以在BIOS启动的其他过程中,向BMC发送PCIe物理拓扑获取请求。只要服务器可以在BIOS的启动过程从BMC获取PCIe物理拓扑数据,以得到服务器的PCIe***拓扑,本实施例对此不做任何限制。
具体的,本步骤中的PCIe物理拓扑获取请求可以为请求得到预设存储器中存储的所需预设套餐(即服务器配置套餐)的PCIe物理拓扑数据的请求,如预设存储器中仅存储一个预设套餐的PCIe物理拓扑数据时,PCIe物理拓扑获取请求可以请求得到该预设套餐的PCIe物理拓扑数据;预设存储器中存储多个预设套餐的PCIe物理拓扑数据时,PCIe物理拓扑获取请求可以请求得到目标套餐的PCIe物理拓扑数据,目标套餐为预设存储器中存储的任一预设套餐。
对应的,本步骤之前服务器可以先从BMC获取目标PCIe物理拓扑数据对应的标头(header)信息;根据预设套餐标识和标头信息中的套餐标识,检测待获取的目标PCIe物理拓扑数据是否为正确,即PCIe物理拓扑数据是否为服务器支持的PCIe拓扑;若是,则根据标头信息中的数据长度信息,生成PCIe拓扑获取请求,并进入步骤101以从BMC得到目标PCIe物理拓扑数据;其中,目标PCIe物理拓扑数据可以为目标套餐的PCIe物理拓扑数据。也就是说,服务器可以在BIOS启动过程中通过待获取的目标PCIe物理拓扑数据对应的标头信息中的套餐标识(即目标套餐标识)与预设套餐标识的比较,确定待获取的目标PCIe物理拓扑数据是否正确,即是否是服务器所支持的PCIe拓扑。
相应的,预设套餐标识可以为预先设置的服务器所需要的PCIe物理拓扑数据的套餐标识,如预设套餐标识可以存储在BMC或服务器;例如,服务器可以从BMC获取目标PCIe物理拓扑数据对应的标头信息和预设套餐标识;服务器也可以利用自身存储的预设套餐标识和从BMC获取的标头信息中的套餐标识,检测待获取的目标PCIe物理拓扑数据是否为正确。本实施例对此不做任何限制。
步骤102:获取基板管理控制器返回的PCIe拓扑获取请求对应的PCIe物理拓扑数据;其中,PCIe物理拓扑数据存储在基板管理控制器可访问的预设存储器中。
可以理解的是,本步骤中服务器的处理器在BIOS的启动过程可以从BMC得到PCIe物理拓扑数据(如图2中的PCIe拓扑)。对于本步骤中处理器获取基板管理控制器返回的PCIe拓扑获取请求对应的PCIe物理拓扑数据的具体方式,可以由设计人员自行设置,如预设存储器中仅存储一个预设套餐的PCIe物理拓扑数据时,本步骤中服务器可以获取BMC返回的该PCIe物理拓扑数据;预设存储器中存储多个预设套餐的PCIe物理拓扑数据时,本步骤中服务器可以获取基板管理控制器返回的PCIe拓扑获取请求对应的目标PCIe物理拓扑数据;其中,目标PCIe物理拓扑数据为目标套餐对应的PCIe物理拓扑数据,目标套餐为任一预设套餐,预设存储器中存储各预设套餐各自对应的PCIe物理拓扑数据。本实施例对此不做任何限制。
相应的,本步骤之前,BMC可以根据PCIe物理拓扑获取请求,从预设存储器中获取PCIe物理拓扑数据,以发送给服务器中运行BIOS的处理器;例如,预设存储器中存储多个预设套餐的PCIe物理拓扑数据时,BMC可以根据PCIe物理拓扑获取请求,从预设存储器中获取预设套餐标识对应的目标PCIe物理拓扑数据,即目标套餐可以为预设套餐标识对应的预设套餐。
具体的,预设套餐标识可以存储在BMC,即BMC可以根据PCIe物理拓扑获取请求,利用自身存储的预设套餐标识,从预设存储器中获取目标PCIe物理拓扑数据。预设套餐标识也可以存储在服务器,即BMC可以根据PCIe物理拓扑获取请求,利用在BIOS启动过程中接收的预设套餐标识,从预设存储器中获取目标PCIe物理拓扑数据。
需要说明的是,本实施例中的预设存储器可以预先设置的存储有一个或多个预设套餐对应的PCIe物理拓扑数据的存储器。对于预设存储器的具体存储器类型,可以由设计人员根据实用场景和用户需求自行设置,如预设存储器可以为BMC能够读取和修改数据的存储器,如图2所示的EEPROM(Electrically Erasable Programmable read only memory,带电可擦可编程只读存储器),以使BMC能够修改更新预设存储器存储的PCIe物理拓扑数据。预设存储器也可以为BMC仅能够读取数据的存储器。本实施例对此不做任何限制。
具体的,本实施例中的预设存储器中存储的PCIe物理拓扑数据可以为预先设置的服务器配置套餐(即预设套餐)对应的PCIe***中的硬件物理信息(即硬件拓扑),如PCIe根节点(CPU)和各PCIe设备的物理信息。对于本实施例中PCIe物理拓扑数据的具体内容,可以由设计人员根据实用场景和用户需求自行设置,如PCIe物理拓扑数据可以包括PCIe根节点信息、PCIe带宽信息、PCIe设备类型和PCIe设备编号中的至少一项;例如PCIe物理拓扑数据可以包括配置的PCIE根节点的信息(即PCIe根节点信息)和配置的PCIE设备的设备类型(即PCIe设备类型)和设备编号(PCIe设备编号);PCIe物理拓扑数据还可以包括配置的PICe带宽的信息(即PCIe带宽信息)。本实施例对此不做任何限制。
如图2所示,服务器配置套餐的制定者可以将配置的PCIe***的硬件拓扑通过Excel表格的形式传递给厂商团队,厂商团队可以按照该硬件拓扑配置生成相应的配置文件,如json(JavaScript Object Notation,一种轻量级的数据交换格式)文件,在配置文件测试完成后产线可以将存储有PCIe物理拓扑数据的配置文件烧录/发送到BMC可访问的EEPROM中,如产线Diag(一种测试工具)调用BMC接口,通过BMC将配置文件发送到EEPROM中。
具体的,配置文件的数据格式定义可以采用EEPROM支持的数据格式定义,如“配置文件数据定义V0.2”。举例来说,采用“配置文件数据定义V0.2”的配置文件中PCIe物理拓扑数据中的PCIe根节点信息可以包括CPU的各PCIe根节点各自对应的x2模式编号;例如,EGS(Elastic GPU Service,弹性GPU服务)平台使用两颗Sapphire Rapids CPU(一种英特尔CPU),每颗CPU拥有5个PCIe Gen5(一种PCIe接口)的x16 Root port(根节点),每个Rootport可以分成x16、x8、x4和x2等多种组合配置,本实施例中可以采用最低的x2模式,即按照x2|x2|x2|x2|x2|x2|x2|x2进行如图3所示的编号,得到CPU的各PCIe根节点各自对应的x2模式编号(Port Index)。
相应的,采用“配置文件数据定义V0.2”的配置文件中PCIe物理拓扑数据中的PCIe带宽信息可以按照如下表中的定义进行配置,即x16带宽的PCIe带宽信息可以为“0x10”标识。
表1 PCIe带宽与配置文件数据的对应关系表
Figure 766151DEST_PATH_IMAGE002
相应的,采用“配置文件数据定义V0.2”的配置文件中PCIe物理拓扑数据中的PCIe设备类型和PCIe设备编号可以包括如下几类:OCP(Open Compute Project,开源计算项目)卡类型使用字符“O”简写,PCIe设备编号通常只有0,即仅配置一个OCP卡;NVMe(非易失性内存主机控制器接口规范)设备类型可以使用字符“N”简写,PCIe设备编号使用与机箱丝印/面板标签中的编号相同的十进制数字(即十进制标签编号);GPU(图形处理器)卡类型可以使用字符“G”简写,PCIe设备编号使用与机箱丝印/面板标签中的编号相同的十进制数字(即十进制标签编号),即面板丝印为GPU时,PCIe设备编号可以使用与机箱丝印/面板标签中的编号相同的十进制数字;Trimode(一种转接扩展卡)卡类型可以使用字符“T”简写,PCIe设备编号使用与机箱丝印/面板标签中的编号相同的十进制数字(即十进制标签编号),同时可以表示后续有扩展信息;其他PCIe设备可以使用字符“P”简写,PCIe设备编号使用十进制数字。也就是说,PCIe物理拓扑数据包括PCIe设备类型和PCIe设备编号时;PCIe设备类型可以包括开源计算项目卡类型对应的“O”标识、非易失性内存主机控制器接口规范设备类型对应的“N”标识、图形处理器类型对应的“G”标识、转接扩展卡类型对应的“T”标识和/或其他PCIe设备类型对应的“P”标识;PCIe设备编号可以包括开源计算项目卡类型对应的0、非易失性内存主机控制器接口规范设备类型对应的十进制标签编号、图形处理器类型对应的十进制标签编号、转接扩展卡类型对应的十进制标签编号和/或其他PCIe设备类型对应的十进制标签编号。
进一步的,本步骤之后处理器可以校验获取的PCIe物理拓扑数据是否正确,以利用正确的PCIe物理拓扑数据得到服务器的PCIe***拓扑。例如,处理器可以在BIOS启动过程中对PCIe物理拓扑数据进行循环冗余校核(CRC),检测获取的PCIe物理拓扑数据是否正确;若获取的目标PCIe物理拓扑数据正确,则进入步骤103或更新备份存储器中的备份PCIe物理拓扑数据后进入步骤103;若获取的目标PCIe物理拓扑数据不正确,则重新从BMC获取PCIe物理拓扑数据或者利用备份存储器中的备份PCIe物理拓扑数据和PCIe设备逻辑信息,获取服务器的PCIe***拓扑。
对应的,本步骤之后处理器可以判断PCIe物理拓扑数据是否与备份存储器中的备份PCIe物理拓扑数据相同;若相同,则进入步骤103;若不相同,则利用PCIe物理拓扑数据更新备份PCIe物理拓扑数据,并进入步骤103,以使备份存储器中存储的备份PCIe物理拓扑数据可以为最新且正确的PCIe物理拓扑数据,从而在无法从BMC获取正确的PCIe物理拓扑数据时,使用备份PCIe物理拓扑数据和PCIe设备逻辑信息,获取服务器的PCIe***拓扑。
步骤103:根据PCIe物理拓扑数据和PCIe设备逻辑信息,获取服务器的PCIe***拓扑。
具体的,本实施例中的PCIe设备逻辑信息可以为服务器的处理器在BIOS启动过程中检测获取的服务器实际配置的PCIe设备在PCIe***中的逻辑信息,如各PCIe设备各自对应的设备类型、根节点(RootPort)和BDF(Bus,Device,Function,总线设备功能)信息等。
对应的,对于本实施例中的PCIe设备逻辑信息的具体内容,可以由设计人员根据实用场景和用户需求自行设置,如PCIe设备逻辑信息可以包括服务器实际配置的各PCIe设备对应的设备类型、根节点和BDF信息中的至少一项。只要保证处理器可以利用PCIe设备逻辑信息和PCIe物理拓扑数据,得到服务器的PCIe***拓扑,本实施例对此不做任何限制。
可以理解的是,本步骤中服务器可以在BIOS启动过程中利用从BMC获取的PCIe物理拓扑数据和自行检测得到的PCIe设备逻辑信息,通过各PCIe设备各自对应的根节点,将设备逻辑地址与物理位置等信息相关联,得到服务器的PCIe***拓扑,得到实际的PCIe设备资产信息。
相应的,服务器可以在BIOS启动的POST过程中根据PCIe物理拓扑数据和PCIe设备逻辑信息,获取服务器的PCIe***拓扑;并根据得到的PCIe***拓扑,填写SMBIOS(SystemManagement BIOS,以标准格式显示产品管理信息所需遵循的统一规范)的***插槽数据表,如SMBIOS type9,以方便后续PCIe***拓扑在服务器端的展示;例如,服务器可以在BIOS启动的POST过程中根据得到的PCIe***拓扑,填写SMBIOS type9,之后继续进行后续POST过程,以完成BIOS的启动。
进一步的,本实施例中处理器可以将获取的PCIe设备逻辑信息发送给BMC,以使BMC能够根据PCIe物理拓扑数据和PCIe设备逻辑信息,得到服务器的PCIe***拓扑,从而使得BMC能够利用服务器实际配置的PCIe***拓扑,进行后续处理,如web页面展示、散热策略调整和/或PCIe物理拓扑数据校验等。例如,处理器可以在步骤103之后,将获取的PCIe设备逻辑信息发送给BMC。
进一步的,本实施例所提供的方法还可以包括:服务器的处理器根据获取的PCIe物理拓扑调整指令,控制基板管理控制器更新预设存储器中存储的PCIe物理拓扑数据。也就是说,服务器可以通过BMC更新调整预设存储器中存储的PCIe物理拓扑数据,以实现新的PCIe设备的PCIe拓扑的灵活更新,避免新增PCIe设备带来的PCIe设备的重新适配动作。
本实施例中,本发明实施例通过将PCIe物理拓扑数据存储在服务器的BMC可访问的预设存储器中,能够在BIOS的启动过程中从BMC便捷地获取PCIe物理拓扑数据,以利用PCIe物理拓扑数据和PCIe设备逻辑信息,获取服务器的PCIe***拓扑,能够便捷地获取服务器的PCIe设备资产信息,从而方便服务器配置的展示。
请参考图4,图4为本发明实施例所提供的另一种服务器的资产信息获取方法的流程图。该方法可以包括:
步骤201:在BIOS启动的自检过程中,从BMC获取目标PCIe物理拓扑数据对应的标头信息。
其中,目标PCIe物理拓扑数据为目标套餐对应的PCIe物理拓扑数据,目标套餐为任一预设套餐,预设存储器中存储各预设套餐各自对应的PCIe物理拓扑数据。
可以理解的是,本实施例中服务器中运行BIOS的处理器可以在BIOS启动的自检(POST)过程中,从已上电启动的BMC获取预设存储器的目标PCIe物理拓扑数据对应的标头(header)信息,如通过ipmi从BMC获取目标PCIe物理拓扑数据对应的标头信息,以利用标头信息检测目标PCIe物理拓扑数据对应的PCIe拓扑是否为服务器所支持的PCIe拓扑,避免错误的PCIe物理拓扑数据的传输。
具体的,本步骤中处理器在BIOS启动的自检过程中,可以向BMC发送PCIe拓扑标头获取请求;接收BMC返回的目标PCIe物理拓扑数据对应的标头信息。相应的,BMC可以在接收PCIe拓扑标头获取请求后,利用预设套餐标识,从预设存储器(如EEPROM)中查找获取预设套餐标识对应的PCIe物理拓扑数据(即目标PCIe物理拓扑数据)对应的标头信息,并将该标头信息发送给服务器,如将该标头信息和预设套餐标识一同发送给服务器。
步骤202:根据预设套餐标识和标头信息中的套餐标识,检测待获取的目标PCIe物理拓扑数据是否为正确;若是,则进入步骤203;若否,则进入步骤209。
其中,本步骤中处理器可以通过预设套餐标识和标头信息中的套餐标识的比较,确定待获取的目标PCIe物理拓扑数据是否正确,即待获取的目标PCIe物理拓扑数据对应的PCIe拓扑是否为服务器支持的PCIe拓扑,从而在预设套餐标识与标头信息中的套餐标识相同时,确定待获取的目标PCIe物理拓扑数据正确,可以继续获取目标PCIe物理拓扑数据;在预设套餐标识与标头信息中的套餐标识不相同时,确定待获取的目标PCIe物理拓扑数据不正确,可以利用备份存储器中存储的备份PCIe物理拓扑数据,获取服务器的PCIe***拓扑,保证BIOS的正常启动。
步骤203:根据标头信息中的数据长度信息,生成并向BMC发送PCIe拓扑获取请求。
其中,本步骤中处理器可以根据标头信息中的数据长度(Length)信息,生成PCIe拓扑获取请求,以方便后续BMC的数据查找。
步骤204:获取BMC返回的PCIe拓扑获取请求对应的目标PCIe物理拓扑数据。
步骤205:对目标PCIe物理拓扑数据进行循环冗余校核,检测获取的目标PCIe物理拓扑数据是否正确;若是,则进入步骤206;若否,则进入步骤209。
可以理解的是,本步骤中处理器通过对PCIe物理拓扑数据进行循环冗余校核(CRC),检测从BMC获取的目标PCIe物理拓扑数据是否正确,从而在获取的目标PCIe物理拓扑数据正确时,进入步骤206;在获取的目标PCIe物理拓扑数据不正确时,进入步骤209,利用备份存储器中存储的备份PCIe物理拓扑数据,获取服务器的PCIe***拓扑,保证BIOS的正常启动。
例如,本步骤中处理器可以通过对目标PCIe物理拓扑数据进行CRC32的计算,检测获取的目标PCIe物理拓扑数据是否正确;若是,则进入步骤206;若否,则进入步骤209。
步骤206:判断目标PCIe物理拓扑数据是否与备份存储器中的备份PCIe物理拓扑数据相同;若否,则进入步骤207;若是,则进入步骤208。
可以理解的是,本步骤中处理器通过检测获取的正确的PCIe物理拓扑数据(即目标PCIe物理拓扑数据)是否与备份存储器(如备份EEPROM)中的PCIe物理拓扑数据(即备份PCIe物理拓扑数据)相同,确定是否需要更新备份存储器中的备份PCIe物理拓扑数据;从而在数据不同时,进入步骤207,更新备份PCIe物理拓扑数据。
步骤207:利用目标PCIe物理拓扑数据更新备份PCIe物理拓扑数据。
步骤208:根据目标PCIe物理拓扑数据和PCIe设备逻辑信息,获取服务器的PCIe***拓扑。
其中,本步骤与步骤103相似,在此不再赘述。
步骤209:根据备份PCIe物理拓扑数据和PCIe设备逻辑信息,获取服务器的PCIe***拓扑。
可以理解的是,本步骤中处理器可以在已获取或未获取的目标PCIe物理拓扑数据不正确时,利用备份存储器中的备份PCIe物理拓扑数据,得到服务器的PCIe***拓扑,保证BIOS的正常启动,如正常填写SMBIOS type9。
相应的,本步骤中还可以包括报错过程,以及时告知用户服务器中存在的问题。例如,处理器可以在预设套餐标识与标头信息中的套餐标识不相同的情况下,输出套餐错误报错信息;在获取的目标PCIe物理拓扑数据不正确的情况下,输出数据错误报错信息。
本实施例中,本发明实施例通过根据预设套餐标识和标头信息中的套餐标识,检测待获取的目标PCIe物理拓扑数据是否为正确,避免错误的PCIe物理拓扑数据的获取和使用;通过备份存储器中备份PCIe物理拓扑数据的设置,可以保证BIOS的正常启动。
相应于上面的方法实施例,本发明实施例还提供了一种服务器的资产信息获取装置,下文描述的一种服务器的资产信息获取装置与上文描述的一种服务器的资产信息获取方法可相互对应参照。
请参考图5,图5为本发明实施例所提供的一种服务器的资产信息获取装置的结构框图。该装置可以包括:
物理请求模块10,用于在启动过程中,向基板管理控制器发送PCIe物理拓扑获取请求;
物理获取模块20,用于获取基板管理控制器返回的PCIe拓扑获取请求对应的PCIe物理拓扑数据;其中,PCIe物理拓扑数据存储在基板管理控制器可访问的预设存储器中;
资产获取模块30,用于根据PCIe物理拓扑数据和PCIe设备逻辑信息,获取服务器的PCIe***拓扑。
可选的,PCIe物理拓扑数据包括PCIe根节点信息、PCIe带宽信息、PCIe设备类型和PCIe设备编号中的至少一项;PCIe设备逻辑信息包括各PCIe设备各自对应的设备类型、根节点和总线设备功能信息中的至少一项。
可选的,物理获取模块20可以具体用于获取基板管理控制器返回的PCIe拓扑获取请求对应的目标PCIe物理拓扑数据;其中,目标PCIe物理拓扑数据为目标套餐对应的PCIe物理拓扑数据,目标套餐为任一预设套餐,预设存储器中存储各预设套餐各自对应的PCIe物理拓扑数据。
可选的,该装置还可以包括:
标头获取模块,用于从基板管理控制器获取目标PCIe物理拓扑数据对应的标头信息;
标头检测模块,用于根据预设套餐标识和标头信息中的套餐标识,检测待获取的目标PCIe物理拓扑数据是否为正确;
请求生成模块,用于若待获取的目标PCIe物理拓扑数据正确,则根据标头信息中的数据长度信息,生成PCIe拓扑获取请求,并向物理请求模块10发送启动信号。
可选的,该装置还可以包括:
资源推送模块,用于将PCIe设备逻辑信息发送到基板管理控制器,以使基板管理控制器根据PCIe物理拓扑数据和PCIe设备逻辑信息,得到服务器的PCIe***拓扑。
可选的,该装置还可以包括:
存储更新模块,用于根据获取的PCIe物理拓扑调整指令,控制基板管理控制器更新预设存储器中存储的PCIe物理拓扑数据。
可选的,PCIe物理拓扑数据包括PCIe根节点信息;PCIe根节点信息包括CPU的各PCIe根节点各自对应的x2模式编号。
可选的,PCIe物理拓扑数据包括PCIe设备类型和PCIe设备编号;PCIe设备类型包括开源计算项目卡类型对应的“O”标识、非易失性内存主机控制器接口规范设备类型对应的“N”标识、图形处理器类型对应的“G”标识、转接扩展卡类型对应的“T”标识和/或其他PCIe设备类型对应的“P”标识;PCIe设备编号包括开源计算项目卡类型对应的0、非易失性内存主机控制器接口规范设备类型对应的十进制标签编号、图形处理器类型对应的十进制标签编号、转接扩展卡类型对应的十进制标签编号和/或其他PCIe设备类型对应的十进制标签编号。
可选的,该装置还可以包括:
备份判断模块,用于判断PCIe物理拓扑数据是否与备份存储器中的备份PCIe物理拓扑数据相同;若相同,则向资产获取模块30发送启动信号;
备份更新模块,用于若不相同,则利用PCIe物理拓扑数据更新备份PCIe物理拓扑数据,并向资产获取模块30发送启动信号。
可选的,该装置还可以包括:
数据校核模块,用于对PCIe物理拓扑数据进行循环冗余校核,检测获取的PCIe物理拓扑数据是否正确;若获取的目标PCIe物理拓扑数据正确,则向备份判断模块发送启动信号;
备份获取模块30若获取的目标PCIe物理拓扑数据不正确,则根据备份PCIe物理拓扑数据和PCIe设备逻辑信息,获取服务器的PCIe***拓扑。
本实施例中,本发明实施例通过将PCIe物理拓扑数据存储在服务器的BMC可访问的预设存储器中,能够在BIOS的启动过程中从BMC便捷地获取PCIe物理拓扑数据,以通过资产获取模块30利用PCIe物理拓扑数据和PCIe设备逻辑信息,获取服务器的PCIe***拓扑,能够便捷地获取服务器的PCIe设备资产信息,从而方便服务器配置的展示。
相应于上面的方法实施例,本发明实施例还提供了一种服务器,下文描述的一种服务器与上文描述的一种服务器的资产信息获取方法可相互对应参照。
请参考图6,图6为本发明实施例所提供的一种服务器的结构示意图。该服务器可以包括:
存储器D1,用于存储计算机程序;
处理器D2,用于执行计算机程序时实现上述方法实施例所提供的服务器的资产信息获取方法的步骤。
具体的,请参考图7,图7为本发明实施例所提供的一种服务器的具体结构示意图,该服务器310可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(central processing units,CPU)322(例如,一个或一个以上处理器)和存储器332,一个或一个以上存储应用程序342或数据344的存储介质330(例如一个或一个以上海量存储设备)。其中,存储器332和存储介质330可以是短暂存储或持久存储。存储在存储介质330的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对数据处理设备中的一系列指令操作。更进一步地,中央处理器322可以设置为与存储介质330通信,在服务器310上执行存储介质330中的一系列指令操作。
服务器310还可以包括一个或一个以上电源326,一个或一个以上有线或无线网络接口350,一个或一个以上输入输出接口358,和/或,一个或一个以上操作***341。例如,Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM等。
上文所描述的服务器的资产信息获取方法中的步骤可以由服务器的结构实现。
相应于上面的方法实施例,本发明实施例还提供了一种服务器的资产信息提供方法,下文描述的一种服务器的资产信息提供方法与上文描述的一种服务器的资产信息获取方法可相互对应参照。
请参考图8,图8为本发明实施例所提供的一种服务器的资产信息提供方法的流程图。该方法可以包括:
步骤401:基板管理控制器获取服务器的PCIe物理拓扑获取请求。
可以理解的是,本步骤中已经上电运行的基板管理控制器(BMC)可以接收服务器中运行BIOS的处理器发送的PCIe物理拓扑获取请求,从而根据该请求,从预设存储器查找相应的PCIe物理拓扑数据。
对应的,本步骤之前BMC还可以向服务器发送PCIe物理拓扑数据对应的标头信息,以使运行BIOS的处理器能够利用标头信息检测所要获取的PCIe物理拓扑数据是否正确;例如BMC可以在接收服务器发送的PCIe拓扑标头获取请求后,利用预设套餐标识,从预设存储器(如EEPROM)中查找获取预设套餐标识对应的PCIe物理拓扑数据(即目标PCIe物理拓扑数据)对应的标头信息,并将该标头信息发送给服务器;相应的,BMC可以将该标头信息和预设套餐标识一同发送给服务器,以方便服务器的校验。
步骤402:根据PCIe物理拓扑获取请求,从预设存储器中获取PCIe物理拓扑数据。
可以理解的是,本步骤中BMC可以根据接收的PCIe物理拓扑获取请求,从预设存储器中查找获取相应的PCIe物理拓扑数据。例如,BMC可以在接收到PCIe物理拓扑获取请求后,利用预设套餐标识,从预设存储器中获取目标PCIe物理拓扑数据;其中,预设存储器中存储各预设套餐各自对应的PCIe物理拓扑数据,目标PCIe物理拓扑数据为目标套餐对应的PCIe物理拓扑数据,目标套餐为任一预设套餐,目标套餐可以为预设套餐标识对应的预设套餐。
具体的,对于预设存储器的具体类型和预设存储器中存储的PCIe物理拓扑数据的具体内容,可以参照上述服务器的资产信息获取方法的实施例中的设置对应进行设置,本实施例对此不做任何限制。
步骤403:将PCIe物理拓扑数据发送到服务器,以使服务器根据PCIe物理拓扑数据和PCIe设备逻辑信息,获取服务器的PCIe***拓扑。
具体的,本步骤中BMC可以将PCIe物理拓扑数据发送到服务器中运行BIOS的处理器,以使服务器在BIOS启动过程中能够得到PCIe***拓扑,即实际的PCIe设备资产信息,实现PCIe设备资产信息的提供。
进一步的,本实施例所提供的方法在步骤403之后,还可以包括BMC接收服务器发送的PCIe设备逻辑信息;根据PCIe物理拓扑数据和PCIe设备逻辑信息,获取服务器的PCIe***拓扑,使BMC能够得到服务器实际配置的PCIe设备资产信息。
对应的,本实施例中BMC还可以根据获取的服务器的PCIe***拓扑,调整散热策略,以保证散热策略与服务器实际配置相符。
进一步的,本实施例中BMC还可以根据PCIe***拓扑和PCIe物理拓扑数据,检测服务器是否存在缺失PCIe设备;若是,则展示PCIe物理拓扑数据中缺失PCIe设备对应的PCIe设备类型和/或PCIe设备编号,如将缺失PCIe设备对应的PCIe设备类型和PCIe设备编号在web页面展示,以方便用户及时了解服务器中配置的PCIe设备缺失的情况。
相应的,PCIe设备逻辑信息包括各PCIe设备各自对应的带宽信息时,本实施例中BMC还可以根据PCIe***拓扑和PCIe物理拓扑数据,检测服务器是否存在错误带宽;若是,则展示错误带宽对应的PCIe设备逻辑信息中的带宽信息(即实际带宽)和PCIe物理拓扑数据中的PCIe带宽信息(即配置带宽)。
进一步的,本实施例中BMC还可以将获取的服务器的PCIe***拓扑发送到web页面展示,以使用户能够通过远程终端在web页面查看服务器的PCIe***拓扑。
对应的,本实施例中BMC还可以根据服务器或远程终端发送的PCIe物理拓扑修改指令,更新预设存储器中存储的PCIe物理拓扑数据。也就是说,服务器中的BMC可以根据服务器中处理器发送的PCIe物理拓扑修改指令,或远程终端通过web页面配置发送的PCIe物理拓扑修改指令,更新预设存储器中存储的PCIe物理拓扑数据,以实现新的PCIe设备的PCIe拓扑的灵活更新,避免新增PCIe设备带来的PCIe设备的重新适配动作。
本实施例中,本发明实施例通过将PCIe物理拓扑数据存储在服务器的BMC可访问的预设存储器中,能够在BIOS的启动过程中从BMC便捷地获取PCIe物理拓扑数据,以通过将PCIe物理拓扑数据提供给服务器,使服务器能够在BIOS启动过程利用PCIe物理拓扑数据和PCIe设备逻辑信息,获取服务器的PCIe***拓扑,从而便捷地提供服务器的PCIe设备资产信息。
相应于上面的方法实施例,本发明实施例还提供了一种服务器的资产信息提供装置,下文描述的一种服务器的资产信息提供装置与上文描述的一种服务器的资产信息提供方法可相互对应参照。
请参考图9,图9为本发明实施例所提供的一种服务器的资产信息提供装置的结构框图。该装置应用于BMC,可以包括:
请求获取模块40,用于获取服务器的PCIe物理拓扑获取请求;
数据获取模块50,用于根据PCIe物理拓扑获取请求,从预设存储器中获取PCIe物理拓扑数据;
数据发送模块60,用于将PCIe物理拓扑数据发送到服务器,以使服务器根据PCIe物理拓扑数据和PCIe设备逻辑信息,获取服务器的PCIe***拓扑。
可选的,该装置还可以包括:
逻辑接收模块,用于接收所述服务器发送的PCIe设备逻辑信息;
资产生成模块,用于根据所述PCIe物理拓扑数据和所述PCIe设备逻辑信息,获取所述服务器的PCIe***拓扑。
可选的,该装置还可以包括:
资产展示模块,用于将PCIe***拓扑发送到web页面展示。
可选的,该装置还可以包括:
缺失检测模块,用于根据PCIe***拓扑和PCIe物理拓扑数据,检测服务器是否存在缺失PCIe设备;
缺失展示模块,用于若存在缺失PCIe设备,则展示PCIe物理拓扑数据中缺失PCIe设备对应的PCIe设备类型和/或PCIe设备编号。
可选的,该装置还可以包括:
存储更新模块,用于根据服务器或远程终端发送的PCIe物理拓扑修改指令,更新预设存储器中存储的PCIe物理拓扑数据。
本实施例中,本发明实施例通过将PCIe物理拓扑数据存储在服务器的BMC可访问的预设存储器中,能够在BIOS的启动过程中从BMC便捷地获取PCIe物理拓扑数据,以通过数据发送模块60将PCIe物理拓扑数据提供给服务器,使服务器能够在BIOS启动过程利用PCIe物理拓扑数据和PCIe设备逻辑信息,获取服务器的PCIe***拓扑,从而便捷地提供服务器的PCIe设备资产信息。
相应于上面的方法实施例,本发明实施例还提供了一种基板管理控制器,下文描述的一种基板管理控制器与上文描述的一种服务器的资产信息提供方法可相互对应参照。
请参考图10,图10为本发明实施例所提供的一种基板管理控制器的结构示意图。该BMC可以包括:
存储器D3,用于存储计算机程序;
处理器D4,用于执行计算机程序时实现上述方法实施例所提供的服务器的资产信息提供方法的步骤。
相应于上面的方法实施例,本发明实施例还提供了一种计算机可读存储介质,下文描述的一种计算机可读存储介质与上文描述的一种服务器的资产信息获取方法和服务器的资产信息提供方法可相互对应参照。
一种计算机可读存储介质,可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现上述方法实施例所提供的服务器的资产信息获取方法或服务器的资产信息提供方法的步骤。
该计算机可读存储介质具体可以为U盘、移动硬盘、只读存储器(Read-OnlyMemory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可存储程序代码的可读存储介质。
说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置、服务器、基板管理控制器和计算机可读存储介质而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
以上对本发明所提供的一种服务器的资产信息获取方法、提供方法、装置、基板管理控制器及服务器进行了详细介绍。本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。

Claims (20)

1.一种服务器的资产信息获取方法,其特征在于,包括:
在基本输入输出***的启动过程中,向基板管理控制器发送PCIe物理拓扑获取请求;
获取所述基板管理控制器返回的所述PCIe拓扑获取请求对应的PCIe物理拓扑数据;其中,所述PCIe物理拓扑数据存储在所述基板管理控制器可访问的预设存储器中;
根据所述PCIe物理拓扑数据和PCIe设备逻辑信息,获取服务器的PCIe***拓扑。
2.根据权利要求1所述的服务器的资产信息获取方法,其特征在于,所述PCIe物理拓扑数据包括PCIe根节点信息、PCIe带宽信息、PCIe设备类型和PCIe设备编号中的至少一项;所述PCIe设备逻辑信息包括各PCIe设备各自对应的设备类型、根节点和总线设备功能信息中的至少一项。
3.根据权利要求1所述的服务器的资产信息获取方法,其特征在于,所述获取所述基板管理控制器返回的所述PCIe拓扑获取请求对应的PCIe物理拓扑数据,包括:
获取所述基板管理控制器返回的所述PCIe拓扑获取请求对应的目标PCIe物理拓扑数据;其中,所述目标PCIe物理拓扑数据为目标套餐对应的PCIe物理拓扑数据,所述目标套餐为任一预设套餐,所述预设存储器中存储各预设套餐各自对应的PCIe物理拓扑数据。
4.根据权利要求3所述的服务器的资产信息获取方法,其特征在于,所述向基板管理控制器发送PCIe拓扑获取请求之前,还包括:
从所述基板管理控制器获取所述目标PCIe物理拓扑数据对应的标头信息;
根据预设套餐标识和所述标头信息中的套餐标识,检测待获取的所述目标PCIe物理拓扑数据是否为正确;
若待获取的所述目标PCIe物理拓扑数据正确,则根据所述标头信息中的数据长度信息,生成所述PCIe拓扑获取请求,并执行所述向基板管理控制器发送PCIe拓扑获取请求的步骤。
5.根据权利要求1所述的服务器的资产信息获取方法,其特征在于,所述根据所述PCIe物理拓扑数据和PCIe设备逻辑信息,获取服务器的PCIe***拓扑之后,还包括:
将所述PCIe设备逻辑信息发送到所述基板管理控制器,以使所述基板管理控制器根据所述PCIe物理拓扑数据和PCIe设备逻辑信息,得到所述服务器的PCIe***拓扑。
6.根据权利要求1所述的服务器的资产信息获取方法,其特征在于,还包括:
根据获取的PCIe物理拓扑调整指令,控制所述基板管理控制器更新所述预设存储器中存储的所述PCIe物理拓扑数据。
7.根据权利要求2所述的服务器的资产信息获取方法,其特征在于,所述PCIe物理拓扑数据包括所述PCIe根节点信息;所述PCIe根节点信息包括CPU的各PCIe根节点各自对应的x2模式编号。
8.根据权利要求2所述的服务器的资产信息获取方法,其特征在于,所述PCIe物理拓扑数据包括PCIe设备类型和PCIe设备编号;所述PCIe设备类型包括开源计算项目卡类型对应的“O”标识、非易失性内存主机控制器接口规范设备类型对应的“N”标识、图形处理器类型对应的“G”标识、转接扩展卡类型对应的“T”标识和/或其他PCIe设备类型对应的“P”标识;所述PCIe设备编号包括开源计算项目卡类型对应的0、非易失性内存主机控制器接口规范设备类型对应的十进制标签编号、图形处理器类型对应的十进制标签编号、转接扩展卡类型对应的十进制标签编号和/或其他PCIe设备类型对应的十进制标签编号。
9.根据权利要求1至8任一项所述的服务器的资产信息获取方法,其特征在于,所述获取所述基板管理控制器返回的所述PCIe拓扑获取请求对应的PCIe物理拓扑数据之后,还包括:
判断所述PCIe物理拓扑数据是否与备份存储器中的备份PCIe物理拓扑数据相同;
若相同,则执行所述根据所述PCIe物理拓扑数据和PCIe设备逻辑信息,获取服务器的PCIe***拓扑的步骤;
若不相同,则利用所述PCIe物理拓扑数据更新所述备份PCIe物理拓扑数据,并执行所述根据所述PCIe物理拓扑数据和PCIe设备逻辑信息,获取服务器的PCIe***拓扑的步骤。
10.根据权利要求9所述的服务器的资产信息获取方法,其特征在于,所述判断所述PCIe物理拓扑数据是否与备份存储器中的备份PCIe物理拓扑数据相同之前,还包括:
对所述PCIe物理拓扑数据进行循环冗余校核,检测获取的所述PCIe物理拓扑数据是否正确;
若获取的所述目标PCIe物理拓扑数据正确,则执行所述判断所述PCIe物理拓扑数据是否与备份存储器中的备份PCIe物理拓扑数据相同的步骤;
若获取的所述目标PCIe物理拓扑数据不正确,则根据所述备份PCIe物理拓扑数据和PCIe设备逻辑信息,获取所述服务器的PCIe***拓扑。
11.一种服务器的资产信息获取装置,其特征在于,包括:
物理请求模块,用于在启动过程中,向基板管理控制器发送PCIe物理拓扑获取请求;
物理获取模块,用于获取所述基板管理控制器返回的所述PCIe拓扑获取请求对应的PCIe物理拓扑数据;其中,所述PCIe物理拓扑数据存储在所述基板管理控制器可访问的预设存储器中;
资产获取模块,用于根据所述PCIe物理拓扑数据和PCIe设备逻辑信息,获取服务器的PCIe***拓扑。
12.一种服务器,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1至10任一项所述的服务器的资产信息获取方法的步骤。
13.一种服务器的资产信息提供方法,其特征在于,包括:
基板管理控制器获取服务器的PCIe物理拓扑获取请求;
根据所述PCIe物理拓扑获取请求,从预设存储器中获取PCIe物理拓扑数据;
将所述PCIe物理拓扑数据发送到所述服务器,以使所述服务器根据所述PCIe物理拓扑数据和PCIe设备逻辑信息,获取所述服务器的PCIe***拓扑。
14.根据权利要求13所述的服务器的资产信息提供方法,其特征在于,所述将所述PCIe物理拓扑数据发送到所述服务器之后,还包括:
接收所述服务器发送的PCIe设备逻辑信息;
根据所述PCIe物理拓扑数据和所述PCIe设备逻辑信息,获取所述服务器的PCIe***拓扑。
15.根据权利要求14所述的服务器的资产信息提供方法,其特征在于,所述根据所述PCIe物理拓扑数据和所述PCIe设备逻辑信息,获取服务器的PCIe***拓扑之后,还包括:
将所述PCIe***拓扑发送到web页面展示。
16.根据权利要求14所述的服务器的资产信息提供方法,其特征在于,所述根据所述PCIe物理拓扑数据和所述PCIe设备逻辑信息,获取服务器的PCIe***拓扑之后,还包括:
根据所述PCIe***拓扑和所述PCIe物理拓扑数据,检测所述服务器是否存在缺失PCIe设备;
若是,则展示所述PCIe物理拓扑数据中所述缺失PCIe设备对应的PCIe设备类型和/或PCIe设备编号。
17.根据权利要求13至16任一项所述的服务器的资产信息提供方法,其特征在于,还包括:
根据所述服务器或远程终端发送的PCIe物理拓扑修改指令,更新所述预设存储器中存储的所述PCIe物理拓扑数据。
18.一种服务器的资产信息提供装置,其特征在于,应用于基板管理控制器,包括:
请求获取模块,用于获取服务器的PCIe物理拓扑获取请求;
数据获取模块,用于根据所述PCIe物理拓扑获取请求,从预设存储器中获取PCIe物理拓扑数据;
数据发送模块,用于将所述PCIe物理拓扑数据发送到所述服务器,以使所述服务器根据所述PCIe物理拓扑数据和PCIe设备逻辑信息,获取所述服务器的PCIe***拓扑。
19.一种基板管理控制器,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求13至17任一项所述的服务器的资产信息提供方法的步骤。
20.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至10任一项所述的服务器的资产信息获取方法或如权利要求13至17中任一项所述的服务器的资产信息提供方法的步骤。
CN202211554107.1A 2022-12-06 2022-12-06 一种服务器及其资产信息获取方法、提供方法和装置 Active CN115629825B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202211554107.1A CN115629825B (zh) 2022-12-06 2022-12-06 一种服务器及其资产信息获取方法、提供方法和装置
PCT/CN2023/132737 WO2024120169A1 (zh) 2022-12-06 2023-11-20 一种服务器及其资产信息获取方法、提供方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211554107.1A CN115629825B (zh) 2022-12-06 2022-12-06 一种服务器及其资产信息获取方法、提供方法和装置

Publications (2)

Publication Number Publication Date
CN115629825A true CN115629825A (zh) 2023-01-20
CN115629825B CN115629825B (zh) 2023-03-10

Family

ID=84910990

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211554107.1A Active CN115629825B (zh) 2022-12-06 2022-12-06 一种服务器及其资产信息获取方法、提供方法和装置

Country Status (2)

Country Link
CN (1) CN115629825B (zh)
WO (1) WO2024120169A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024120169A1 (zh) * 2022-12-06 2024-06-13 苏州元脑智能科技有限公司 一种服务器及其资产信息获取方法、提供方法和装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112463238A (zh) * 2020-12-04 2021-03-09 苏州浪潮智能科技有限公司 Pcie设备的报错定位方法、装置、bios和bmc
CN112631647A (zh) * 2020-12-19 2021-04-09 苏州浪潮智能科技有限公司 一种固件配置方法及装置

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012216112A (ja) * 2011-04-01 2012-11-08 Nec Corp コンピュータシステムおよび周辺機器の情報取得方法
WO2012149756A1 (zh) * 2011-09-21 2012-11-08 华为技术有限公司 一种主板设备检测方法、装置和***
CN103645915A (zh) * 2013-11-29 2014-03-19 杭州华为数字技术有限公司 Ras配置的设置方法及装置
CN104202194B (zh) * 2014-09-10 2018-05-29 华为技术有限公司 PCIe拓扑的配置方法和装置
CN106126394B (zh) * 2016-08-22 2019-02-19 浪潮(北京)电子信息产业有限公司 带外监控管理获取pcie设备资产信息的方法及***
CN107562470B (zh) * 2017-08-21 2021-05-18 联想(北京)有限公司 一种电子设备启动的优化方法及装置
CN113238916A (zh) * 2021-05-14 2021-08-10 山东英信计算机技术有限公司 一种服务器资产管理方法、bmc、管理后台、终端
CN114297202B (zh) * 2021-12-31 2024-01-23 苏州浪潮智能科技有限公司 一种服务器实体信息交互方法、装置、设备以及存储介质
CN115629825B (zh) * 2022-12-06 2023-03-10 苏州浪潮智能科技有限公司 一种服务器及其资产信息获取方法、提供方法和装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112463238A (zh) * 2020-12-04 2021-03-09 苏州浪潮智能科技有限公司 Pcie设备的报错定位方法、装置、bios和bmc
CN112631647A (zh) * 2020-12-19 2021-04-09 苏州浪潮智能科技有限公司 一种固件配置方法及装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024120169A1 (zh) * 2022-12-06 2024-06-13 苏州元脑智能科技有限公司 一种服务器及其资产信息获取方法、提供方法和装置

Also Published As

Publication number Publication date
CN115629825B (zh) 2023-03-10
WO2024120169A1 (zh) 2024-06-13

Similar Documents

Publication Publication Date Title
US9916270B2 (en) Virtual intelligent platform management interface (IPMI) satellite controller and method
EP3542276B1 (en) Flow control in remote direct memory access data communications with mirroring of ring buffers
CN109388604B (zh) 一种基于PCIe的热插拔控制方法、装置及存储介质
CN111988196B (zh) 一种带宽检测方法、装置、电子设备和存储介质
CN115629825B (zh) 一种服务器及其资产信息获取方法、提供方法和装置
CN111159090B (zh) 一种信息处理方法、装置和电子设备
US10649950B2 (en) Disk access operation recovery techniques
CN116886670A (zh) 通信节点的地址标定方法、装置、电子设备及存储介质
CN115933591B (zh) 一种控制器诊断方法、装置、设备和存储介质
CN110474787B (zh) 一种节点故障检测方法和装置
CN115454896A (zh) 基于smbus的ssd mctp控制消息验证方法、装置、计算机设备及存储介质
CN116089139A (zh) 一种串口硬盘故障处理方法、装置、介质
TWI755184B (zh) 電子裝置及其開機方法
WO2020259286A1 (zh) 获取设备信息的方法、装置、存储介质及电子设备
CN111694587A (zh) 服务器pnor固件升级方法、装置、设备及存储介质
TWI715005B (zh) 用於監控基板管理控制器之常駐程序的方法
TWI789983B (zh) 電源管理方法及電源管理裝置
TWI777664B (zh) 嵌入式系統的開機方法
CN112084049B (zh) 用于监控基板管理控制器的常驻程序的方法
US11645156B1 (en) Updating error policy
TWI757606B (zh) 伺服器裝置及其基板管理控制器與可程式邏輯單元之間的通訊協定方法
CN107451035B (zh) 用于计算机装置的错误状态数据提供方法
CN118301030A (zh) 一种网卡设备故障的检测方法、装置及设备
CN112084049A (zh) 用于监控基板管理控制器的常驻程序的方法
CN118394564A (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