CN115981776A - 位于服务器网络接口卡处的基板管理控制器 - Google Patents
位于服务器网络接口卡处的基板管理控制器 Download PDFInfo
- Publication number
- CN115981776A CN115981776A CN202210403941.4A CN202210403941A CN115981776A CN 115981776 A CN115981776 A CN 115981776A CN 202210403941 A CN202210403941 A CN 202210403941A CN 115981776 A CN115981776 A CN 115981776A
- Authority
- CN
- China
- Prior art keywords
- host
- management controller
- baseboard management
- computer platform
- connector
- 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 claims abstract description 23
- 238000012545 processing Methods 0.000 claims description 37
- 230000015654 memory Effects 0.000 claims description 34
- 238000004891 communication Methods 0.000 claims description 26
- 230000006870 function Effects 0.000 claims description 12
- 239000000758 substrate Substances 0.000 claims description 8
- 230000004044 response Effects 0.000 claims description 7
- 230000008569 process Effects 0.000 abstract description 18
- 230000009471 action Effects 0.000 description 17
- 230000011664 signaling Effects 0.000 description 11
- 238000010586 diagram Methods 0.000 description 10
- 238000012544 monitoring process Methods 0.000 description 10
- 239000004065 semiconductor Substances 0.000 description 8
- 230000002093 peripheral effect Effects 0.000 description 7
- 230000008901 benefit Effects 0.000 description 6
- 230000008859 change Effects 0.000 description 6
- 230000036541 health Effects 0.000 description 6
- 238000001816 cooling Methods 0.000 description 5
- 238000001152 differential interference contrast microscopy Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 239000004744 fabric Substances 0.000 description 4
- 238000002955 isolation Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 238000001514 detection method Methods 0.000 description 2
- 230000007613 environmental effect Effects 0.000 description 2
- 238000011084 recovery Methods 0.000 description 2
- 101100498818 Arabidopsis thaliana DDR4 gene Proteins 0.000 description 1
- XUIMIQQOPSSXEZ-UHFFFAOYSA-N Silicon Chemical compound [Si] XUIMIQQOPSSXEZ-UHFFFAOYSA-N 0.000 description 1
- 230000001133 acceleration Effects 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 229910052710 silicon Inorganic materials 0.000 description 1
- 239000010703 silicon Substances 0.000 description 1
- 238000012549 training Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
-
- 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
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/16—Constructional details or arrangements
- G06F1/20—Cooling means
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/16—Constructional details or arrangements
- G06F1/20—Cooling means
- G06F1/206—Cooling means comprising thermal management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3206—Monitoring of events, devices or parameters that trigger a change in power modality
- G06F1/3209—Monitoring remote activity, e.g. over telephone lines or network connections
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3206—Monitoring of events, devices or parameters that trigger a change in power modality
- G06F1/3215—Monitoring of peripheral devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/324—Power saving characterised by the action undertaken by lowering clock frequency
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/325—Power saving in peripheral device
- G06F1/3278—Power saving in modem or I/O interface
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/3287—Power saving characterised by the action undertaken by switching off individual functional units in the computer system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/3296—Power saving characterised by the action undertaken by lowering the supply or operating voltage
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- Stored Programmes (AREA)
Abstract
本公开提供一种位于服务器网络接口卡处的基板管理控制器。过程包括计算机平台的主机的应用层使用计算机平台的智能网络接口卡(NIC)来为应用层提供输入/输出(I/O)服务。I/O服务包括与云运营商域相关联的服务;智能NIC安装在连接器中;并且应用层与云租户域相关联。过程包括智能NIC的基板管理控制器管理计算机平台。管理计算机平台包括基板管理控制器管理主机;基板管理控制器管理智能NIC的除基板管理控制器之外的部件;并且管理主机包括基板管理控制器经由连接器与主机进行通信以控制计算机平台的系统电源状态。
Description
背景技术
出于与外部网络进行通信的目的,计算机平台可以具有为平台的部件提供网络连接的网络接口卡(NIC)(例如,快速外围部件互连(PCIe)总线卡)。计算机技术在不断发展,并且最近的计算机平台可以具有“智能NIC”。除了提供网络连接之外,智能NIC还可以卸载传统上由传统计算机平台的通用中央处理单元(CPU)执行的处理操作。
附图说明
图1A是根据示例实施方式的基于云的计算机系统的示意图。
图1B是根据示例实施方式的智能网络接口卡(NIC)的示意图,所述智能网络接口卡安装在图1A的计算机系统的计算机平台中,并且包括用于管理计算机平台的基板管理控制器(BMC)。
图1C是根据示例实施方式的智能NIC的虚拟BMC的图示。
图2是根据示例实施方式的智能NIC的硬件BMC的示意图。
图3是描绘了根据示例实施方式的位于智能NIC处的BMC管理计算机平台的过程的流程图。
图4是图示了根据示例实施方式的位于智能NIC处的BMC对计算机平台的主机的引导过程的管理的流程图。
图5是描绘了根据示例实施方式的位于智能NIC处的BMC对系统电源状态的管理的流程图。
图6是描绘了根据示例实施方式的位于智能NIC处的BMC对计算机平台的主机的引导路径的管理的流程图。
图7是描绘了根据示例实施方式的位于智能NIC处的BMC对计算机平台的热管理的流程图。
图8是描绘了根据示例实施方式的用于提供位于智能NIC处的BMC以管理计算机平台的过程的流程图。
图9是根据示例实施方式的包括主机、智能NIC和智能NIC的BMC的系统的示意图,所述智能NIC的BMC对系统进行管理。
图10是根据示例实施方式的存储在非暂态机器可读存储介质上的指令的图示,所述指令在由机器执行时使所述机器在智能NIC上提供虚拟BMC以管理包括智能NIC的系统和系统的主机。
具体实施方式
信息技术(IT)行业正日益变得以云为中心,并且服务器架构也在相应地转变以应对提供云服务时出现的挑战。为大量客户端或租户提供云服务的多租户云运营商可以依赖于联网的服务器(例如,刀片服务器),这些服务器可以位于一个或多个数据中心中。给定服务器可以为多个租户执行云原生软件;并且如此,服务器的某些资源可以被认为驻留在不可信的云租户域(或“客户端域”)中,因为所述域由一个以上的租户共享。租户软件的执行可以依赖于由云运营商提供的输入/输出(I/O)服务,并且这些I/O服务可以通过由服务器实施的安全限制而位于与客户端域分离的可信云运营商域中。
更具体地,给定服务器的一组资源可以被认为是“主机”的一部分。一般而言,主机传统上被认为是服务器的主要控制点,并且包括服务器的通用处理硬件(例如,通用中央处理单元(CPU)、存储器等)和软件,其为租户执行软件实例(应用实例、操作系统实例等)并且为软件实例提供基于虚拟化的租户隔离(例如,虚拟机和容器)。如此,主机的至少一部分可以被认为是客户端域的一部分。
由云运营商提供的I/O服务可以包括联网服务,如网络虚拟化服务(例如,覆盖网络服务、虚拟交换服务、虚拟路由服务和网络功能虚拟化服务);网络存储服务;联网监测服务;等等。I/O服务还可以包括存储加速服务(例如,基于快速非易失性存储器(NVMe)的服务)和安全服务(例如,加密服务和网络防火墙服务)。
为了应对日益增长的以云为中心的服务器处理性质,云原生服务器架构可以将传统上由传统服务器架构中的主CPU处理操作执行的处理操作卸载到服务器的一个或多个外围设备。在该上下文中,“外围设备”是指服务器中为服务器的主机提供一项或多项服务或功能的部件;并且具体地,根据示例实施方式,外围设备可以是为正在服务器上执行的租户应用实例提供一项或多项I/O服务的智能NIC。
在该上下文中,“智能NIC”通常指除了为服务器建立网络连接之外还提供隶属于云运营商(和云运营商域)的一项或多项I/O服务的NIC。此处,“I/O服务”是指包括使用一种或多种网络资源(例如,可经由外部网络访问服务器的资源)并且提供除了为服务器的部件提供网络连接之外的功能的服务。如上所述,I/O服务可以是以上提到的任何服务,如网络服务、存储服务或安全服务。
与主机充当所有服务器相关操作的主要控制点的传统服务器架构不同,作为云原生服务器架构的一部分,智能NIC可以充当服务器的控制点。智能NIC可以通过在服务器上提供以下两个双气隙安全管理和控制接口来在客户端域与云运营商域之间实施边界或隔离:与从租户域传输到云运营商域的事务(例如,通信、请求、响应等)相关的第一气隙安全管理和控制接口;以及用于从云运营商域传输到租户域的事务的第二气隙安全管理和控制接口。在该上下文中,“气隙接口”(如第一气隙安全管理或第二气隙安全管理和控制接口)是指通过软件和/或硬件与不安全网络隔离的通信接口。根据特定实施方式,气隙接口可以对应于或不对应于实际的物理隔离(例如,气隙接口可以包括或不包括通信路径中实际气隙的存在)。
服务器可以包括被称为“基板管理控制器”或“BMC”的专用服务处理器,所述专用服务处理器通常可以远程访问(例如,从位于与服务器不同地理位置的远程服务器访问,如位于包含服务器的数据中心外部的远程服务器)。一般而言,BMC充当可以响应于来自远程管理服务器的通信来管理服务器的操作和功能的代理。一般而言,这种管理独立于主机,并且BMC能够管理主机,即使主机上没有安装软件;并且根据示例实施方式,由于独立于主机向BMC供电的电源的缘故,BMC可以在主机断电时执行管理功能。在该上下文中,“管理主机”是指BMC执行与监测、维护、配置或控制主机相关的一个或多个动作。作为其在管理主机时的角色的示例,BMC可以为主机加电;使主机断电;监测传感器(例如,温度传感器、冷却风扇速度传感器);监测操作系统状态;监测电源状态;记录计算机系统事件;控制引导路径;控制虚拟介质的使用;控制安全检查;更新固件;验证软件;验证硬件;启用主机的引导功能;等等。此外,BMC可以在主机通电之前管理主机的操作;在主机的操作系统已引导之前管理操作;并且在操作系统或计算机系统故障后执行恢复操作。
尽管传统服务器可以包括单个BMC以用于管理主机,但是具有云原生架构的服务器可以具有多个BMC(例如,一个BMC用于主机,并且一个BMC用于服务器的每个智能NIC)。以这种方式,智能NIC可以包含BMC,以用于管理智能NIC上的操作和功能,如为智能NIC通电、配置智能NIC、引导智能NIC、控制智能NIC的健康、更新智能NIC的固件等等。但是,在服务器上使用多个BMC(如一个BMC用于主机而另一个BMC用于智能NIC)可能会带来挑战。例如,主机BMC可以负责服务器的整体管理。这意味着主机和智能NIC的管理动作可能需要智能NIC的BMC与主机BMC协调其管理动作,并可能反之亦然。作为示例,这种协调可以涉及将智能NIC BMC与主机BMC进行通信,以用于管理主机、智能NIC和/或服务器的加电和/或断电操作。作为BMC之间的协调的其他示例,智能NIC BMC可以与主机BMC进行通信以用于以下目的:确定主机是否加电;确定主机是否已经通过与主机加电相关联的故障检查;确定主机是否已经通过与主机加电相关联的安全检查;智能NIC BMC通知智能NIC BMC服务器正在断电;等等。作为BMC之间的协调的另一示例,主机BMC和智能NIC BMC可以就固件升级的兼容性或定时进行通信。作为又一个示例,主机BMC和智能NIC BMC可以就关于智能NIC的热问题进行通信,使得主机BMC可以调整冷却风扇速度。因此,一般而言,这两个BMC可以就与主机、智能NIC和整个服务器平台相关的许多管理问题相互协调。两个BMC之间的这种协调可能会导致服务器的整体复杂性和成本。
根据本文描述的示例实施方式,计算机平台(例如,服务器、刀片服务器等)包括主机和安装在计算机平台的扩展总线连接器(例如,PCIe总线连接器)中的智能NIC。根据示例实施方式,取代各自包含BMC的主机和智能NIC,单个BMC位于智能NIC上;并且该单个BMC管理智能NIC和主机两者。换句话说,根据示例实施方式,位于智能NIC处的BMC管理主机的操作(例如,通电、配置、引导、平台健康控制、固件更新等)并管理智能NIC的操作(例如,通电、配置、引导、平台健康控制、固件更新等)。在这种布置的可能优势中,服务器的成本和复杂性有所降低,因为消除了否则会与多个BMC之间的协调和协作相关联的开销。
参考图1A,作为更具体的示例,根据一些实施方式,隶属于特定云运营商的基于云的计算机系统99可以为多个客户端或租户提供多租户云服务。云服务可以是多种不同云服务中的任一种,如软件即服务(SaaS)、基础设施即服务(IaaS)、平台即服务(PaaS)等等。此外,根据特定实施方式,云服务可以隶属于若干个不同云基础设施之一,如通常通过公共网络对所有潜在用户可用的公共云;通过私有网络提供的有限访问私有云(例如,由现场数据中心提供的云服务);或公共云和私有云相结合的混合云。
租户可以经由云客户端128(例如,膝上型计算机、台式计算机、智能电话、平板计算机、可穿戴计算机等)访问系统99的云计算资源100(其提供云服务)。如图1A所描绘的,云计算资源100和客户端128可以通过网络结构159互连。一般而言,网络结构159可以与一种或多种类型的通信网络(比如(作为示例)光纤通道网络、Gen-Z结构、专用管理网络、局域网(LAN)、广域网(WAN)、全球网络(例如,因特网)、无线网络或其任何组合)相关联。
一般而言,云计算资源100是包括物理硬件资源(比如物理服务器(例如,服务器刀片)、网络部件、管理资源、物理存储设备、物理存储网络等)的共享资源池。图1A图示了可以提供云计算资源100的至少一部分的物理计算机平台100-1。在该上下文中,“计算机平台”是指包括机箱和安装到机箱的硬件的单元,其中,硬件能够执行机器可执行指令(或“软件”)。根据示例实施方式,刀片服务器是计算机平台100-1的示例。然而,根据进一步的实施方式,计算机平台100-1可以是除刀片服务器之外的平台,如机架式服务器、客户端、台式计算机、智能电话、膝上型计算机、平板计算机等。
对于计算机平台100-1是刀片服务器的示例实施方式,服务器可以具有框架或机箱;一个或多个母板可以安装到机箱;并且每个母板可以包含一个或多个多核中央处理单元(CPU)半导体封装(或“插座”或“芯片”)。根据示例实施方式,刀片服务器可以具有形状因子、(多个)机械锁扣以及对应的电连接器,从而使得服务器刀片将被安装在机架式刀片机箱中对应的服务器刀片开口或插槽中或从其中移除。
不论其具体形式如何,根据示例实施方式,计算机平台100-1可以具有云原生架构,在所述云原生架构中,计算机平台100-1的硬件资源和机器可执行指令资源(即,“软件资源”)被分成两个安全域:云租户域;以及云运营商域。在该上下文中,“租户域”是指计算机平台100-1中与执行租户软件和数据相关联的部分;并且根据示例实施方式,云运营商(提供云服务的实体)不能访问或至少有限地访问租户数据和软件。“云运营商域”是指计算机平台100-1中与针对正在执行的租户软件提供I/O服务相关联的部分。
更具体地,根据一些实施方式,计算机平台100-1包括与客户端域相关联的主机101。主机101包括应用层160,所述应用层160包含可以在任何特定时间与一个或多个租户相关联的应用实例。可以在计算机平台100-1上采用虚拟化技术,以用于在租户之间提供安全性和故障隔离。例如,特定租户的应用实例可以在一个或多个虚拟机(VM)170内执行,并且这些VM 170进而可以驻留在与所述租户相关联的给定容器172内部。以这种方式,根据一些实施方式,给定租户可以与一个或多个VM 170以及一个或多个容器172相关联。
在该上下文中,“虚拟机”或“VM”(也称为“客户虚拟机”、“虚拟机实例”或“客户虚拟机实例”)是指用作虚拟服务器或虚拟计算机系统的虚拟环境,所述虚拟环境具有其自己的物理资源(例如,CPU、系统存储器、(多个)网络接口和存储装置)。此外,VM可以对操作系统(如操作系统176)具有其自己的抽象;并且一般而言,VM是计算机平台100-1的硬件和软件资源的虚拟抽象。VM的生命周期(例如,部署和终止)可以由虚拟机监视器(VMM)或管理程序(如管理程序174)来管理。
如本文所使用的,“容器”(也称为“实例化容器”、“容器实例”或“软件容器”)通常是指用于一个或多个应用程序和/或应用程序模块的虚拟运行时间环境,并且该虚拟运行时间环境被构建为与操作系统内核进行接口。例如,给定应用程序的容器可以包含应用程序的可执行代码及其依赖项,如应用程序的系统工具、库、配置文件、可执行文件和二进制文件。根据示例实施方式,容器包含操作系统内核挂载接口,但不包括操作系统内核。如此,例如,给定的计算机平台可以包含多个容器,所述多个容器通过相应操作系统内核挂载接口来共享操作系统内核。Docker容器和rkt容器是软件容器的示例。
根据示例实施方式,主机101包括总线基础设施,所述总线基础设施包括一个或多个扩展总线连接器150(例如,快速外围部件互连(PCIe)总线连接器)。给定的扩展总线连接器150可以容纳智能NIC 140。此外,根据示例实施方式,智能NIC 140提供双气隙安全管理和控制接口以创建租户域和云运营商域的边界。如图1A所描绘的,根据示例实施方式,特定智能NIC 140包括BMC 129;并且根据示例实施方式,该单个BMC 129管理整个计算机平台100-1的操作,即BMC 129管理主机101,并且BMC 129还管理智能NIC 140。
如本文中所使用的,“BMC”或“基板管理控制器”是专用服务处理器,其使用传感器来监测服务器或其他硬件的物理状态并通过管理网络与管理系统进行通信。基板管理控制器还可以通过以下各项与在操作系统级别执行的应用程序进行通信:输入/输出控制器(IOCTL)接口驱动器、代表性状态转移(REST)应用程序接口(API)、或促进基板管理控制器与应用程序之间的通信的某种系统软件代理。基板管理控制器可以对位于包括系统存储器的服务器机箱中的硬件设备进行硬件级别访问。基板管理控制器可以能够直接修改硬件设备。基板管理控制器可以独立于其中设置有基板管理控制器的系统的操作系统进行操作。基板管理控制器可以位于服务器或要监测的其他设备的母板或主电路板上。基板管理控制器安装在受管理服务器/硬件的母板上或以其他方式连接或附接到受管理服务器/硬件的事实并不妨碍基板管理控制器被认为与服务器/硬件“分离”。如本文所使用的,基板管理控制器具有对计算设备的子系统的管理能力,并且与执行计算设备的操作系统的处理资源分离。基板管理控制器与在系统上执行高级别操作系统或管理程序的处理器(如中央处理单元)是分离的。
BMC 129可以被远程管理服务器197远程访问,该远程管理服务器197耦接到网络结构159。以这种方式,远程服务器197可以向BMC 129传送请求(例如,包含IPMI命令的智能平台管理接口(IPMI)消息),以便BMC 129管理并控制主机101和智能NIC140的功能;并且远程服务器197可以从BMC 129接收表示来自BMC 129的状态信息、健康信息、配置信息、配置选项、事件通知等的消息(例如,IPMI消息)。
根据示例实施方式,位于智能NIC处的BMC 129经由一个或多个带外通信信道109使用通过连接器150的信令接口152进行的通信来管理主机101。在该上下文中,连接器150的信令接口152是指连接器150的物理通信终端(例如,引脚、插座或终端)。在该上下文中,与智能NIC 140的“带外通信信道”是指使用与智能NIC 140的安全通信信道,而不是智能NIC的主要通信信道。例如,根据一些实施方式,智能NIC 140可以是具有主要PCIe总线通信信道的PCIe卡;并且对于这些实施方式,带外通信信道109可以是例如内部集成总线(I2C)总线、改进的内部集成(I3C)总线、串行外围接口(SPI)总线、增强型SPI(eSPI)总线、或与另一个标准相关联的总线。根据示例实施方式,信令接口152可以包括与到达/来自BMC 129的控制和/或遥测信号的通信相关联的通信信道。根据特定实施方式,信令接口152可以对应于连接器150的所有终端,或者可以对应于连接器150的所有终端的更小子集。
根据示例实施方式,智能NIC 140可以设置在具有卡边缘连接器的电路卡基板上,所述卡边缘连接器被构造成插入在连接器150中以机械地将智能NIC 140固定到连接器150并在主机与智能NIC 140之间形成电连接。例如,根据一些实施方式,连接器150是插槽连接器;并且智能NIC 140的电路卡基板可以具有设置在卡边缘上的导电迹线,所述卡边缘具有被构造成被容纳在连接器150内部的形状因子,使得当卡边缘被容纳在连接器中时,所述迹线接触并电连接到连接器150的终端(例如,弹簧终端)。
根据示例实施方式,连接器150可以具有这样的卡边缘引出线,该卡边缘引出线与由Open Compute Project[开放计算项目]版本1.0(2021年3月11日)发布的数据中心安全控制模块(DC-SCM)规范的数据中心就绪安全控制接口(DC-SCI)相对应。
如本文进一步描述的,根据一些实施方式,BMC 129可以包括专用硬件,所述专用硬件单独执行BMC相关的管理操作并且不与智能NIC 140的其他部件共享非管理相关的BMC操作。例如,根据一些实施方式,BMC 129可以包括包含有一个或多个半导体管芯的主半导体封装(或“芯片”)。更具体地,根据一些实施方式,BMC 129可以包括包含有一个或多个主硬件处理核(例如,CPU核、高级精简指令集计算机(RISC)机器(ARM)处理核等)的主半导体封装,所述一个或多个主硬件处理核执行机器可执行指令(或“软件”,如固件)以用于管理主机101和智能NIC 140的操作。图2(本文进一步描述)是根据示例实施方式的基于这种专用硬件的BMC的示意图。
结合图1A来参考图1C,根据进一步的示例实施方式,BMC 129可以是虚拟BMC,即智能NIC 140的实际硬件和软件的抽象。例如,根据一些实施方式,智能NIC 140可以提供一个或多个客户VM 149,该一个或多个客户VM 149提供BMC 129。客户VM149可以例如在虚拟化环境(如容器)内部执行。根据一些实施方式,如本文进一步描述的,智能NIC 140可以包含硬件处理器(例如,CPU、CPU处理核、ARM处理核等),所述硬件处理器执行机器可执行指令以用于为智能NIC 140提供一种或多种I/O服务。根据示例实施方式,智能NIC 140的这些(多个)硬件处理器中的一个或多个硬件处理器可以进一步执行指令以提供VM机器149和BMC129。
作为更具体的示例,根据一些实施方式,智能NIC 140的硬件处理器可以执行机器可执行指令以提供包含虚拟机149的容器,所述虚拟机149与BMC 129的管理平面相关联并且包含与BMC的管理堆栈相对应的一个或多个应用实例以用于管理计算机平台100-1;并且容器可以包含与BMC 129的安全平面相关联的另一个虚拟机149,并且包含为计算机平台100-1提供安全服务的一个或多个应用实例。下文结合图2讨论了硬件BMC129的安全平面230和管理平面210。
根据进一步的示例实施方式,BMC 129可以是虚拟BMC和硬件BMC的混合组合。例如,混合BMC 129可以包含用于提供混合BMC 129的某些管理和/或安全平面功能的专用硬件部件;智能NIC 140中的执行机器可执行指令以为智能NIC 140提供I/O服务的硬件处理器可以进一步执行机器可执行指令以提供混合BMC 129的管理和/或安全平面功能。
回到参考图1A,对于图1A中描绘的示例实施方式,主机101可以包括一个或多个通用硬件处理器102(例如,一个或多个CPU封装、一个或多个CPU处理核、一个或多个GPU核、一个或多个FPGA等等);系统存储器104;以及总线基础设施。根据示例实施方式,(多个)通用硬件处理器102执行主机101的机器可执行指令(即,“软件”)。例如,(多个)硬件处理器102可以执行与以下各项相关联的指令:VM 170的实例、容器172的实例、管理程序174、操作系统176、与应用层160相关联的应用实例、引导服务固件175等。根据示例实施方式,系统存储器104和本文讨论的其他存储器是非暂态存储介质,所述非暂态存储介质通常可以由如半导体存储设备、基于忆阻器的存储设备、磁存储设备、相变存储设备、这些存储技术中的一种或多种存储技术的设备的组合等的存储设备形成。系统存储器104可以表示易失性存储器设备和非易失性存储器设备两者的集合。引导服务固件175表示在计算机平台100-1通电或复位之后在计算机平台100-1的引导期间由计算机平台100-1执行的固件(例如,基本输入/输出操作系统(BIOS)固件和/或统一可扩展固件接口(UEFI)固件)。
根据示例实施方式,主机101的总线基础设施可以包括一个或多个桥106,所述一个或多个桥106可以耦接到系统存储器104和主机101的其他部件,如可信平台模块(TPM)177;一个或多个USB设备126;等等。(多个)桥106可以包括一个或多个PCIe端口,所述PCIe端口经由一个或多个对应的PCIe链路或总线108连接到一个或多个PCIe总线扩展卡150,如所描绘的容纳智能NIC 140的连接器150。一般而言,(多个)桥106可以包括与主机101的各种总线(如PCIe总线、SPI总线、增强型SPI(eSPI)总线、低引脚数(LPC)总线、I2C总线、I3C总线、以及与其他总线标准相关联的可能的总线)的接口。
根据一些实施方式,桥106可以包括北桥106和单独的南桥106。以这种方式,根据一些实施方式,通用硬件处理器102可以包括一个或多个半导体封装(或“芯片”),并且处理器102可以包括北桥106,所述北桥106包括存储器控制器和PCIe根端口。南桥106可以提供I/O端口,例如串行高级技术附件(SATA)端口、通用串行总线(USB)端口、LPC端口、SPI端口、eSPI端口等等。根据一些实施方式,北桥106可以不是硬件处理器102的一部分。根据进一步的实施方式,北桥和南桥可以组合成单个桥106;并且根据一些实施方式,该单个桥106可以是处理器102的一部分。
根据示例实施方式,在主机101的其他硬件部件中,主机101可以包括电源控制器180,所述电源控制器180可以通过操作系统176进行控制,以用于为计算机平台100-1设置特定的系统电源状态。以这种方式,根据示例实施方式,操作系统176可以与电源控制器180进行通信(例如,引起向电源控制器180的一个或多个信号的断言)以用于改变系统电源状态。在该上下文中,“系统电源状态”是指计算机平台100-1的所有部件的电源状态,除了计算机平台100-1中涉及平台管理的部件,如BMC 129。对于给定的系统电源状态,计算机平台100-1的一些部件可以以不同于其他部件的电平来加电(例如,对于给定的功耗状态,计算机平台100-1的一些部件可以出于节省电力的目的而被断电,而其他部件可以被加电到相对较高的功耗状态)。例如,操作系统176可以与电源控制器180进行通信以用于将计算机平台100-1转变为上电复位;将计算机平台100-1从较高功耗状态转变为较低功耗状态;将计算机平台100-1从较低功耗状态转变为较高功耗状态;使计算机平台100-1断电;等等。
根据示例实施方式,电源控制器180可以由除操作系统176之外的实体控制。例如,根据一些实施方式,引导服务固件175可以与电源控制器180进行通信以用于控制系统电源状态。此外,如本文进一步描述的,根据一些实施方式,BMC 129可以与适当的实体(例如,电源控制器180、引导服务固件175或操作系统176)进行通信,以用于改变系统电源状态。
还如图1A所描绘的,根据一些实施方式,计算机平台100-1可以包括一个或多个传感器105。根据示例实施方式,传感器105提供表示与计算机平台100-1的环境和/或健康相关的各种感测状况的信号或指示。以这种方式,根据示例实施方式,BMC 129可以监测由传感器105提供的信号以用于如下目的:监测计算机平台100-1的健康状况;监测计算机平台100-1的温度以用于执行热管理;针对篡改检测进行监测;等等。作为示例,传感器105可以是温度传感器;篡改指示传感器;过压传感器;欠压传感器;风扇速度传感器;等等。由传感器105提供的信号经由信令接口152被路由到BMC 129。
参考图1B,根据示例实施方式,智能NIC 140可以包括安装到一个或多个电路基板141的一个或多个硬件部件。此外,给定的电路基板141可以具有允许智能NIC 140安装在连接器150中的形状因子和对应的特征(电迹线等)。根据一些实施方式,电路基板141可以具有卡边缘,所述卡边缘具有根据DC-SCI布置在引出线中的导电迹线,并且根据进一步的实施方式,电路基板141可以具有卡边缘,所述卡边缘具有布置在不同于DC-SCI的或者除DC-SCI以外的引出线中的导电迹线。根据示例实施方式,智能NIC 140包括硬件部件,如一个或多个硬件处理器142(例如,CPU处理核,如ARM处理核、嵌入式处理核、ARM处理核等等);存储器144;一个或多个传感器154;网络接口(未示出);以及电源控制器156。
(多个)处理器142执行存储在存储器144中的机器可执行指令146。根据一些实施方式,(多个)处理器142执行指令146,以用于为主机101执行一个或多个基于云运营商域的I/O服务。以这种方式,根据示例实施方式,(多个)处理器142可以执行指令146,以用于执行应用层148的一个或多个应用实例,以及与虚拟机、容器等相关联的实例。
传感器154感测智能NIC 140的状况(例如,环境事件、故障事件和/或篡改事件),并且由传感器154提供的指示或信号可以由BMC 129监测。
如本文所述,根据一些实施方式,BMC 129可以由与智能NIC 140的其他部件分离的离散硬件部件形成,如独立半导体封装和可能相关联的存储器、专用集成电路(ASIC)等。此外,根据进一步的示例实施方式,BMC 129可以是由执行机器可执行指令的智能NIC 140的一个或多个处理器142形成的虚拟BMC;或者根据进一步的实施方式,BMC129可以是包含虚拟和实际硬件部件的混合BMC。
图2描绘了根据示例实施方式的由实际硬件部件形成的硬件BMC 129。结合图1A、图1B和图1C来参考图2,BMC 129包含管理平面210和与管理平面210隔离的安全平面230。根据示例实施方式,安全平面230包括安全包围区(secure enclave)240,所述安全包围区240是指BMC 129中为计算机平台100-1提供安全服务的部分。在该上下文中,“安全包围区”是指子系统,对于所述子系统,对进出所述子系统的访问进行严格控制。根据示例实施方式,管理平面210是BMC 129中执行管理固件堆栈257(本文称为“管理堆栈257”)以用于为计算机平台100-1提供管理服务(包括管理主机101和管理智能NIC 140)的部分。作为示例,管理堆栈257可以是2021年1月12日发布的开放式BMC固件堆栈版本2.9.0。根据进一步的实施方式,管理堆栈257可以是不同于开放式BMC堆栈和不同于开源堆栈的管理堆栈。
如图2所描绘的,根据示例实施方式,BMC 129可以耦接到一个或多个外部存储器(例如,在包含BMC 129的半导体封装的外部),如易失性存储器264和非易失性存储器268。作为示例,非易失性存储器268可以存储固件270(例如,固件映像),并且可以经由总线(例如,SPI总线)连接到BMC 129。如本文进一步描述的,根据一些实施方式,BMC 129可以在计算机平台100-1的引导时验证固件270。
根据示例实施方式,安全包围区240除其他特征之外还包括:安全处理器242(例如,嵌入式CPU处理核);易失性存储器251(例如,用于存储被加载到易失性存储器中并由安全处理器执行的固件的存储器);安全桥,所述安全桥用于控制到安全包围区中的访问并控制从安全包围区传出的通信;外围设备(例如,密码加速器、随机数发生器、篡改检测电路等);以及硬件信任根(RoT)引擎243(本文称为硅RoT引擎或“SRoT引擎243”)。根据示例实施方式,在SRoT引擎243将要由安全处理器242执行的固件加载到安全包围区的易失性存储器251中并允许安全处理器242执行所述固件之前,SRoT引擎243会对所述固件进行验证。
如本文所使用的,“信任根设备”(如SRoT引擎243)可以是以预期方式运行的设备。换句话说,SRoT设备243可以是本质上可信的软件、硬件或其某种组合。SRoT设备243可以包括计算引擎。计算引擎可以是使用SRoT设备243中的硬件进行操作的软件、SRoT设备243的硬件、或其某种组合。SRoT设备243可以包括验证信任根(RTV)。RTV对程序代码(例如,加载到安全包围区中的代码)执行完整性度量或数字签名,并针对预定的预期值或策略对代码进行验证。SRoT设备243可以包括存储信任根(RTS)。RTS可以是能够维护篡改明显值的准确汇总的计算引擎。例如,SRoT设备243可以包括存储参考散列或度量散列的寄存器。进一步地,SRoT设备243可以包括多个这样的寄存器。在另一示例中,SRoT设备243可以包括报告信任根(RTR)。RTR可以是能够向请求设备发送所请求信息的计算引擎。所述信息可以包括SRoT设备243的寄存器中的内容(或RTS的内容)以及由请求方指定的信息。SRoT设备243可以包括此处未描述的其他计算引擎,如用于度量指定值的计算引擎或用于进行认证的计算引擎。
如图2所描绘的,根据一些实施方式,BMC 129包括一个或多个带内通信接口205(例如,PCIe总线接口)以及一个或多个带外通信接口206(例如,DC-SCI)。此外,BMC 129包括一个或多个嵌入式硬件处理核254(例如,嵌入式CPU处理核,如ARM处理核),所述一个或多个嵌入式硬件处理核254执行存储在BMC 129的非易失性存储器255中的机器可执行指令256,以用于提供BMC的管理堆栈257。如图2所描绘的,根据一些实施方式,信令接口152可以包含与(多个)带外通信接口206进行通信的信号。根据进一步的实施方式,信令接口152还可以包括与(多个)带内通信接口204相关联的信号。
图3描绘了根据一些实施方式的BMC 129的示例管理平面过程300。结合图1A和图2来参考图3,根据一些实施方式,过程300包括BMC 129与远程服务器197进行通信(框304);BMC 129经由信号接口151与主机101的部件进行通信;并且BMC 129与智能NIC 140的部件进行通信。依照框308,响应于这些通信,BMC 129管理平台100-1,包括BMC 129经由信号接口151管理主机101以及BMC 129管理智能NIC 140。
作为BMC管理主机101的示例,根据一些实施方式,BMC 129可以管理主机101的引导,如图4的示例过程400所描绘的。结合图1A和图2来参考图4,根据一些实施方式,在通电或复位之后,BMC 129将其(多个)通用处理核254保持在复位状态,直到执行了某些动作,如图4的虚线框401所指示的。以这种方式,在计算机平台100-1的初始信任根安全检查以及其他检查(例如,硬件故障检查)通过(例如,没有安全检查或者硬件故障检查失败)之后,BMC129解除通用处理核254的复位。
根据示例实施方式,安全包围区240存储由SRoT引擎243使用以对机器可执行指令进行验证的不可变指纹。更具体地,根据示例实施方式,响应于BMC 129上电或复位,依照框404,SRoT引擎243对固件270的初始部分进行验证并将固件270的已验证部分加载到BMC129的非易失性存储器251中,使得该固件部分现在是可信的。依照框408,然后允许安全处理器242引导并执行所加载的固件指令。通过执行固件指令,依照框408,安全处理器242然后可以对固件270的与管理固件堆栈257的一部分相对应的另一部分进行验证;并且在对管理固件堆栈257的这一部分进行验证之后,安全处理器242然后可以将已验证部分加载到BMC 129的存储器255中。然后,可以由(多个)通用处理核254执行管理固件堆栈257的这一部分,从而使(多个)处理核254加载固件270的附加部分并将所加载的部分放置到存储器264中。对存储器264的访问可以涉及附加的训练和初始化步骤(例如,由DDR4规范提出的训练和初始化步骤)。这些指令可以从存储器255中的管理固件堆栈257的已验证部分执行。根据示例实施方式,安全包围区240可以锁定存储器255,以防止对存储在存储器255中的(多个)已验证部分的修改或篡改。
依照决策框412,BMC 129确定由BMC 129执行的安全和硬件故障检查是否已经通过。如果未通过,则根据示例实施方式,BMC 129可以终止或结束计算机平台100-1的引导。否则,BMC 129将解除(框416)通用处理核254的复位,以允许(多个)处理核254执行管理堆栈257来管理计算机平台100-1,包括管理智能NIC 140和主机101。
图5描绘了BMC 129的过程500,其用于控制计算机平台100-1的电源系统状态。结合图1A和图2来参考图5,根据示例实施方式,BMC 129从远程服务器197接收(框504)请求改变计算机平台100-1的系统电源状态的通信(例如,包含命令的消息)。例如,所述请求可以是以下请求:使计算机平台100-1断电的请求;将计算机平台100-1复位的请求;使计算机平台100-1处于休眠操作模式的请求;等等。依照过程500,BMC129确定(决策框508)系统电源状态的变化是否涉及与OS 176的通信。例如,计算机平台100-1可以完全引导;并且如此,对电源管理的控制可以使用OS 176来完成。相反,在预操作系统环境中,BMC 129可以与引导服务固件175(如BIOS或UEFI固件)进行通信。如图5所描绘的,依照决策框508,如果BMC 129确定涉及OS 176,则依照框512,BMC 129经由信令接口152与OS 176进行通信以根据请求改变系统电源状态。否则,依照框516,BMC 129依照框516经由信令接口152与电源控制器180或BIOS或UEFI进行通信以改变系统电源状态。
图6描绘了根据示例实施方式的BMC 129的另一个管理过程600。该示例过程600涉及BMC 129控制主机101的引导路径。以这种方式,“引导路径”是指加载操作系统引导加载程序、获取OS映像、获取OS相关文件等所采用的路径。结合图1A和图2来参考图6,依照框604,BMC 129基于特定的引导路径配置来选择引导路径。在这方面,远程服务器197可以例如与BMC 129进行通信以选择虚拟介质设备作为引导设备;选择预引导执行环境(PXE)网络引导,等等。依照框608,BMC 129经由信令接口152与引导服务固件75进行通信以实现操作系统176的加载和引导。
图7描绘了BMC 129的另一示例管理过程700。此处,过程700图示了热管理过程。结合图1A、图1B和图2来参考图7,依照过程700,BMC 129(经由信令接口152)监测(框704)来自主机101的冷却风扇传感器105和温度传感器105的信号,以及来自智能NIC 140的温度传感器154的信号,以用于评估主机101和/或智能NIC 140的热状态。例如,该评估可以涉及BMC129确定主机101或智能NIC 140的一个或多个温度在可接受的操作范围之外。然后,BMC129可以依照决策框708确定要采用校正动作。例如,校正动作可以包括:打开一个或多个冷却风扇;增加一个或多个冷却风扇的速度;使主机101或智能NIC 140的某些部件停电或断电,改变系统电源状态,等等。如果要采用热管理校正动作,则依照框712,BMC 129采取适当的校正动作。
根据示例实施方式,BMC 129可以执行智能NIC 140的管理功能,其类似于以上针对主机101描述的管理功能。例如,经由远程消息传递,BMC 129可以被远程控制以改变智能NIC 140的电源状态(例如,关闭智能NIC 140、将智能NIC 140复位、为智能NIC 140加电等等);选择用于引导和加载智能NIC 140的操作系统143的引导路径;选择和配置由智能NIC140使用的虚拟介质;更新智能NIC 140的固件;等等。此外,BMC129可以监测智能NIC的一个或多个传感器154;向远程服务器197报告从监测中得到的环境条件和事件;通过控制智能NIC 140的部件,基于传感器监测来执行校正动作;等等。根据示例实施方式,BMC 129可以对由智能NIC 140的(多个)处理器142执行的固件进行验证;检测智能NIC 140上的硬件故障;响应于智能NIC 140上的操作系统故障而执行恢复动作;等等。
因为单个BMC 129管理智能NIC 140和主机101两者,所以单个BMC 129可以对主机101的管理动作和智能NIC 140的管理动作进行协调和协作。因此,如本文所述,根据示例实施方式,单个BMC 129管理整个计算机平台100-1,包括管理主机101和管理智能NIC I40。从前面的描述中显而易见的是,由BMC 129执行的一些管理动作仅针对在主机101上执行的动作,一些管理动作仅针对在智能NIC 140上执行的动作,并且一些管理动作可以涉及主机101和智能NIC 140两者。
参考图8,根据示例实施方式,过程800包括计算机平台的主机的应用层使用(框804)计算机平台的智能网络接口卡(NIC)来为应用层提供输入/输出(I/O)服务。所述I/O服务包括与云运营商域相关联的服务;所述智能NIC安装在连接器中;并且所述应用层与云租户域相关联。过程800包括智能NIC的基板管理控制器管理(框808)计算机平台。管理所述计算机平台包括所述基板管理控制器管理所述主机;所述基板管理控制器管理所述智能NIC的除所述基板管理控制器之外的部件;并且管理所述主机包括所述基板管理控制器经由所述连接器与所述主机进行通信以控制所述计算机平台的系统电源状态。
参考图9,根据示例实施方式,系统900包括主机904;连接器916;以及待安装在连接器916中的智能网络接口卡(NIC)920。主机904包括中央处理单元(CPU)908和存储器912。智能NIC 920包括存储器924;至少一个硬件处理器932;以及基板管理控制器936。(多个)硬件处理器932执行存储在存储器924中的指令928以为主机904提供除网络通信之外的输入/输出(I/O)服务。I/O服务与云运营商域相关联。基板管理控制器936管理智能NIC 920的除基板管理控制器936之外的部件;并且管理主机904,包括经由连接器916与主机904进行通信以控制系统电源状态。
参考图10,根据示例实施方式,非暂态存储介质1000存储机器可读指令1010,所述机器可读指令1010在由机器执行时使所述机器经由智能网络接口卡(NIC)为计算机平台的主机提供输入/输出(I/O)服务。所述I/O服务包括与云运营商域相关联的服务;智能NIC被容纳在主机的母板的连接器中;并且主机包括与云租户域相关联的应用层。指令1010在由机器执行时进一步使机器在智能NIC上提供虚拟基板管理控制器以管理智能NIC的除基板管理控制器之外的部件;并且管理主机。管理主机包括经由连接器与主机进行通信以控制系统电源状态。
根据示例实施方式,管理平台包括智能NIC执行指令以提供虚拟基板管理控制器。特别的优点是不用为基板管理控制器使用专用硬件。
根据示例实施方式,使用智能NIC来提供I/O服务包括智能NIC的至少一个中央处理单元(CPU)执行指令以提供I/O服务;并且基板管理控制器管理计算机平台进一步包括智能NIC的除(多个)CPU之外的嵌入式硬件子系统管理计算机平台。特别的优点是单个基板管理控制器可以管理智能NIC和主机两者。
根据示例实施方式,智能NIC安装在计算机平台的连接器中;并且基板管理控制器管理计算机平台进一步包括基板管理控制器经由连接器与主机的部件进行遥测信号的通信。管理计算机平台进一步包括基板管理控制器经由连接器与主机的至少一个通用中央处理单元(CPU)进行通信;并且(多个)CPU与应用层相关联。特别的优点是单个基板管理控制器可以用于管理智能NIC和主机两者。
根据示例实施方式,主机可以包括与云租户域相关联的应用层;云租户域可以包括不可信域;云运营商域可以包括可信域;并且基板管理控制器可以与云运营商域相关联。特别的优点是,在以云为中心的应用中,单个基板管理控制器可以用于管理主机和智能NIC两者。
尽管已经关于有限数量的实施方式描述了本公开,但受益于本公开的本领域技术人员将了解本公开的许多修改和变化。所附权利要求旨在覆盖所有这样的修改和变化。
Claims (20)
1.一种方法,包括:
计算机平台的主机的应用层使用所述计算机平台的智能网络接口卡(NIC)来为所述应用层提供输入/输出(I/O)服务,其中,所述I/O服务包括与云运营商域相关联的服务,所述智能NIC安装在连接器中,并且所述应用层与云租户域相关联;以及
所述智能NIC的基板管理控制器管理所述计算机平台,其中,管理所述计算机平台包括所述基板管理控制器管理所述主机,所述基板管理控制器管理所述智能NIC的除所述基板管理控制器之外的部件,并且管理所述主机包括所述基板管理控制器经由所述连接器与所述主机进行通信以控制所述计算机平台的系统电源状态。
2.如权利要求1所述的方法,其中,所述基板管理控制器管理所述计算机平台包括所述智能NIC执行指令以提供虚拟基板管理控制器。
3.如权利要求1所述的方法,其中:
使用所述智能NIC来提供所述I/O服务包括所述智能NIC的至少一个中央处理单元(CPU)执行指令以提供所述I/O服务;以及
所述基板管理控制器管理所述计算机平台进一步包括所述智能NIC的除所述至少一个CPU之外的嵌入式硬件子系统管理所述计算机平台。
4.如权利要求1所述的方法,其中:
所述智能NIC安装在所述计算机平台的连接器中;
所述基板管理控制器管理所述计算机平台进一步包括所述基板管理控制器经由所述连接器与所述主机的部件进行遥测信号的通信;
所述基板管理控制器管理所述计算机平台进一步包括所述基板管理控制器经由所述连接器与所述主机的至少一个通用中央处理单元(CPU)进行通信;以及
所述至少一个通用CPU与所述应用层相关联。
5.一种系统,包括:
主机,所述主机包括中央处理单元(CPU)和存储器;
连接器;以及
被安装在所述连接器中的智能网络接口卡(NIC),其中,所述智能NIC包括:
存储器,所述存储器用于存储指令;
至少一个硬件处理器,所述至少一个硬件处理器用于执行所述指令以为所述主机提供除网络通信之外的输入/输出(I/O)服务,其中,所述I/O服务与云运营商域相关联;以及
基板管理控制器,所述基板管理控制器用于进行以下操作:
管理智能NIC的除所述基板管理控制器之外的部件;以及
管理所述主机,包括经由所述连接器与所述主机进行通信以控制系统电源状态。
6.如权利要求5所述的系统,其中,所述基板管理控制器包括虚拟基板管理控制器,并且所述至少一个硬件处理器用于进一步执行所述指令以提供所述虚拟基板管理控制器。
7.如权利要求5所述的系统,其中,所述基板管理控制器包括与所述至少一个硬件处理器分离的嵌入式硬件子系统,并且所述嵌入式硬件子系统包括用于执行指令以管理所述系统的嵌入式硬件处理器。
8.如权利要求5所述的系统,其中:
所述主机进一步包括与云租户域相关联的应用层;
所述云租户域包括不可信域;
所述云运营商域包括可信域;以及
所述基板管理控制器与所述云运营商域相关联。
9.如权利要求8所述的系统,其中,所述CPU至少一个硬件处理器用于进一步执行所述指令以响应于来自所述应用层的请求来执行所述I/O服务。
10.如权利要求5所述的系统,进一步包括:
与所述智能NIC分离的电路基板,其中,所述CPU和所述连接器安装到所述电路板基板。
11.如权利要求5所述的系统,其中,所述连接器包括数据中心就绪安全控制接口(DC-SCI)。
12.如权利要求5所述的系统,其中,所述至少一个硬件处理器用于进一步执行所述指令以经由所述连接器与所述主机的部件进行所述基板管理控制器的遥测信号的通信,并且经由所述连接器进行与所述基板管理控制器的主机接口相关联的信号的通信。
13.如权利要求5所述的系统,其中,所述基板管理控制器包括硬件信任根。
14.如权利要求5所述的系统,其中,所述至少一个硬件处理器用于执行所述指令以为所述主机提供虚拟化服务。
15.如权利要求5所述的系统,其中,所述至少一个硬件处理器用于执行所述指令以为所述主机提供虚拟化网络。
16.如权利要求5所述的系统,其中,所述至少一个硬件处理器用于执行所述指令以为所述主机提供网络功能虚拟化。
17.如权利要求5所述的系统,其中,所述至少一个硬件处理器用于执行所述指令以提供以下至少一项:针对所述主机的存储服务、针对所述主机的网络安全服务、或针对所述主机的网络控制平面服务。
18.一种非暂态存储介质,所述非暂态存储介质用于存储机器可读指令,所述机器可读指令在由机器执行时使所述机器进行以下操作:
经由智能网络接口卡(NIC)为计算机平台的主机提供输入/输出(I/O)服务,其中,所述I/O服务包括与云运营商域相关联的服务,所述智能NIC被容纳在所述主机的母板的连接器中,并且所述主机包括与云租户域相关联的应用层;以及
在所述智能NIC上提供虚拟基板管理控制器以管理所述智能NIC的除所述基板管理控制器之外的部件并管理所述主机,包括经由所述连接器与所述主机进行通信以控制系统电源状态。
19.如权利要求18所述的存储介质,其中,所述指令在由所述机器执行时进一步使所述机器提供以下至少一项:针对所述应用层的网络安全服务、针对所述应用层的网络存储服务、针对所述应用层的虚拟化功能、或针对所述应用层的虚拟网络。
20.如权利要求18所述的存储介质,其中,所述指令在由所述机器执行时进一步使所述机器进行以下操作:
使用所述连接器与所述母板的部件进行遥测信号的通信并进行通信;以及
使用所述连接器与所述母板的主机中央处理单元(CPU)进行总线接口请求和响应的通信。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17/450,860 US11927999B2 (en) | 2021-10-14 | 2021-10-14 | Server network interface card-located baseboard management controllers |
US17/450,860 | 2021-10-14 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115981776A true CN115981776A (zh) | 2023-04-18 |
Family
ID=85773222
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210403941.4A Pending CN115981776A (zh) | 2021-10-14 | 2022-04-18 | 位于服务器网络接口卡处的基板管理控制器 |
Country Status (3)
Country | Link |
---|---|
US (1) | US11927999B2 (zh) |
CN (1) | CN115981776A (zh) |
DE (1) | DE102022108436A1 (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116166327A (zh) * | 2021-11-25 | 2023-05-26 | 纬颖科技服务股份有限公司 | 系统开机方法及其相关电脑系统 |
US11922174B2 (en) * | 2022-04-08 | 2024-03-05 | Dell Products L.P. | Management controller requests in a UEFI pre-boot environment of an information handling system |
Family Cites Families (28)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7424419B1 (en) * | 2003-05-27 | 2008-09-09 | Qlogic, Corporation | Method and system for providing a virtual universal serial port interface and a virtual storage interface |
US20050160207A1 (en) * | 2004-01-16 | 2005-07-21 | Universal Scientific Industrial Co., Ltd. | Computing apparatus including a hardware management add-on card |
US8346912B2 (en) * | 2007-10-15 | 2013-01-01 | Dell Products, Lp | System and method of emulating a network controller within an information handling system |
US8879570B2 (en) * | 2009-09-04 | 2014-11-04 | Brocade Communications Systems, Inc. | Systems and methods for reconfiguring a network adapter in sleep mode |
US8275982B2 (en) * | 2009-10-19 | 2012-09-25 | Dell Products L.P. | System and method for a managed BIOS |
US9577875B2 (en) | 2012-10-15 | 2017-02-21 | International Business Machines Corporation | Performing value and context aware communications networking |
US9118584B2 (en) * | 2013-03-15 | 2015-08-25 | American Megatrends, Inc. | Dynamic scalable baseboard management controller stacks on single hardware structure |
WO2014150352A1 (en) * | 2013-03-21 | 2014-09-25 | Insyde Software Corp. | Network controller sharing between smm firmware and os drivers |
WO2014193369A1 (en) * | 2013-05-29 | 2014-12-04 | Hewlett-Packard Development Company, L.P. | Aux power controller |
TWI614613B (zh) * | 2014-09-11 | 2018-02-11 | 廣達電腦股份有限公司 | 伺服器系統與其相關的控制方法 |
US20180367870A1 (en) * | 2017-06-14 | 2018-12-20 | Quanta Computer Inc. | System for determining slot location in an equipment rack |
US10642773B2 (en) * | 2018-03-28 | 2020-05-05 | Lenovo Enterprise Solutions (Singapore) Pte. Ltd | BMC coupled to an M.2 slot |
US11388272B2 (en) * | 2018-03-30 | 2022-07-12 | Intel Corporation | Technologies for network packet processing between cloud and telecommunications networks |
US10873496B1 (en) * | 2018-09-10 | 2020-12-22 | Facebook, Inc. | Apparatuses, systems, and methods for link status detection and remediation of network attached devices |
US10831523B2 (en) | 2018-10-08 | 2020-11-10 | Microsoft Technology Licensing, Llc | RDMA with virtual address space |
US11044238B2 (en) | 2018-10-19 | 2021-06-22 | International Business Machines Corporation | Secure communications among tenant virtual machines in a cloud networking environment |
US10938640B2 (en) | 2018-10-25 | 2021-03-02 | Dell Products, L.P. | System and method of managing an intelligent peripheral |
US11048800B2 (en) | 2018-12-17 | 2021-06-29 | Intel Corporation | Composable trustworthy execution environments |
US11011876B2 (en) | 2018-12-24 | 2021-05-18 | Dell Products L.P. | System and method for remote management of network interface peripherals |
US10592447B1 (en) | 2018-12-28 | 2020-03-17 | EMC IP Holding Company LLC | Accelerated data handling in cloud data storage system |
US11038852B2 (en) | 2019-02-08 | 2021-06-15 | Alibaba Group Holding Limited | Method and system for preventing data leakage from trusted network to untrusted network |
EP3771180B1 (en) | 2019-07-25 | 2023-08-30 | INTEL Corporation | Offload of storage node scale-out management to a smart network interface controller |
US11438229B2 (en) * | 2020-01-16 | 2022-09-06 | Dell Products L.P. | Systems and methods for operating system deployment and lifecycle management of a smart network interface card |
US11941458B2 (en) | 2020-03-10 | 2024-03-26 | Sk Hynix Nand Product Solutions Corp. | Maintaining storage namespace identifiers for live virtualized execution environment migration |
US11736565B2 (en) * | 2020-09-28 | 2023-08-22 | Vmware, Inc. | Accessing an external storage through a NIC |
US11496595B2 (en) * | 2021-02-02 | 2022-11-08 | Dell Products L.P. | Proxy management controller system |
US11615048B2 (en) * | 2021-03-05 | 2023-03-28 | Aspeed Technology Inc. | Adaptive serial general-purpose input output interface and signal receiver thereof |
US11681455B2 (en) * | 2021-07-22 | 2023-06-20 | Dell Products L.P. | Shadow live migration over a smart network interface card |
-
2021
- 2021-10-14 US US17/450,860 patent/US11927999B2/en active Active
-
2022
- 2022-04-07 DE DE102022108436.1A patent/DE102022108436A1/de active Pending
- 2022-04-18 CN CN202210403941.4A patent/CN115981776A/zh active Pending
Also Published As
Publication number | Publication date |
---|---|
US20230119437A1 (en) | 2023-04-20 |
DE102022108436A1 (de) | 2023-04-20 |
US11927999B2 (en) | 2024-03-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20200257518A1 (en) | Device firmware update techniques | |
US11604741B2 (en) | Method for dynamically provisioning virtualized functions in a USB device by means of a virtual USB hub | |
CN109154849B (zh) | 包括核心层、用户接口和配备有基于容器的用户空间的服务层的超融合系统 | |
US10860305B1 (en) | Secure firmware deployment | |
KR101453266B1 (ko) | 서비스 프로세서 컴플렉스 내의 데이터 저장을 위한 요구 기반 usb 프록시 | |
US20200257521A1 (en) | Update of boot code handlers | |
US20210224061A1 (en) | Firmware update technologies | |
US10430589B2 (en) | Dynamic firmware module loader in a trusted execution environment container | |
US10489594B2 (en) | System and method for secure migration of virtual machines between host servers | |
US10902127B2 (en) | Method and apparatus for secure boot of embedded device | |
CN115981776A (zh) | 位于服务器网络接口卡处的基板管理控制器 | |
CN114035842B (zh) | 固件配置方法、计算系统配置方法、计算装置以及设备 | |
CN113312140B (zh) | 用于虚拟可信平台模块的系统、存储介质和方法 | |
US11593487B2 (en) | Custom baseboard management controller (BMC) firmware stack monitoring system and method | |
WO2023140933A1 (en) | Multi-phase secure zero touch provisioning of computing devices | |
US11416446B2 (en) | Systems and methods for remote management of non-standard devices | |
US11625338B1 (en) | Extending supervisory services into trusted cloud operator domains | |
WO2023061397A1 (zh) | 可信度量方法、装置、计算机设备和可读介质 | |
WO2023196074A2 (en) | Hosting dpu management operating system using dpu software stack | |
WO2022143429A1 (zh) | 计算机系统、可信功能组件及运行方法 | |
US11995452B2 (en) | Firmware memory map namespace for concurrent containers | |
US20240160431A1 (en) | Technologies to update firmware and microcode | |
US20230146526A1 (en) | Firmware memory map namespace for concurrent containers | |
US20230342446A1 (en) | Management controller-based verification of platform certificates | |
US11949583B2 (en) | Enforcing reference operating state compliance for cloud computing-based compute appliances |
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 |