CN100342333C - 系统管理控制器协商协议 - Google Patents

系统管理控制器协商协议 Download PDF

Info

Publication number
CN100342333C
CN100342333C CNB038100061A CN03810006A CN100342333C CN 100342333 C CN100342333 C CN 100342333C CN B038100061 A CNB038100061 A CN B038100061A CN 03810006 A CN03810006 A CN 03810006A CN 100342333 C CN100342333 C CN 100342333C
Authority
CN
China
Prior art keywords
controller
management controller
system management
response
bmc
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.)
Expired - Fee Related
Application number
CNB038100061A
Other languages
English (en)
Other versions
CN1650265A (zh
Inventor
P·豪金斯
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.)
Intel Corp
Original Assignee
Intel Corp
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 Intel Corp filed Critical Intel Corp
Publication of CN1650265A publication Critical patent/CN1650265A/zh
Application granted granted Critical
Publication of CN100342333C publication Critical patent/CN100342333C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

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/4401Bootstrapping
    • G06F9/4411Configuring for operating with peripheral devices; Loading of device drivers

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)
  • Communication Control (AREA)
  • Small-Scale Networks (AREA)
  • Hardware Redundancy (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Computer And Data Communications (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

一种计算机系统模块包括一个系统管理控制器,以便与其它系统管理控制器协商以确定该控制器的初始操作模式。在实施例中,与其它系统管理控制器进行的协商至少部分基于控制器能力、用户配置的首选项、模块类型和地理地址之一。

Description

系统管理控制器协商协议
技术领域
本发明的实施例涉及系统管理。具体地说,本发明的实施例涉及用于确定系统管理控制器操作模式的协商协议。
背景技术
计算机和其它电子系统包含在系统使用期内可能发生故障的多种组件。为了减少和/或纠正此类故障,一些系统包括了内置特性,如监视和控制系统硬件“健康状态”或性能的能力。此类功能有时称为系统管理,也可以以其它名称引用,如管理、硬件管理、平台管理等等。系统管理特性可包括例如对诸如温度、压力、风扇、电源、总线错误、系统物理安全等要素的监控。另外,系统管理特性还可包括确定帮助识别故障硬件组件的信息及发出告警以指出组件有故障。可用于处理系统管理功能的组件之一是系统管理控制器(本文中也称为“控制器)。系统管理控制器可以是微处理器、微控制器、专用集成电路(ASIC)或控制系统管理任务的其它类型的处理单元。系统管理控制器可执行诸如接收系统管理信息,发送消息以控制系统性能,记录系统管理信息等任务。例如,管理控制器可从温度传感器接收表示系统温度在上升的指示,可发送命令以加快风扇速度,并可记录温度读数。
系统中的一个管理控制器可发挥中央系统管理控制器的作用,并执行诸如记录事件、收集现场可更换单元(FRU)存库信息、用户接口、主机CPU接口等中央管理功能。系统的中央管理控制器可称为系统的基板管理控制器(BMC)。其它非中央管理控制器可称为卫星管理控制器(SMC)。SMC可执行针对系统特殊部分或功能的系统管理。例如,计算机系统可包含由总线连接的多个电路板和其它组件,其中一块电路板包含了该系统的BMC,而其它电路板包含了执行其它系统管理功能的SMC。
一些系统管理控制器能够在BMC模式或SMC模式下操作(即,发挥BMC或SMC的作用)。在一些以前的系统中,连接到电路板的系统管理控制器可根据该板插入的插槽适配其功能。在此类系统中,系统机箱中的指定插槽可保留用于为该系统执行BMC功能的插板,并且可具有为驻留模块提供此类指示的引线。这种情况下,系统管理控制器可在重置时确定其是否在BMC插槽中,并且如果在BMC插槽中,则可将自身设为充当BMC(即,将自身设为BMC模式)。在此类系统中,组装系统或改换电路板的人员可能需要确定哪个插槽是BMC插槽,并确保具有所需BMC能力的插板放置在适当的BMC插槽中。
发明内容
本发明提供一种用于确定基板管理控制器模式的方法,所述方法包括:从计算机系统中的多个系统管理控制器发送模式请求到所述计算机系统中的其它系统管理控制器;以及根据不存在对所述系统管理控制器之一发送的模式请求的响应,确定该系统管理控制器为基板管理控制器,其中,所述方法还包括从所述系统管理控制器中的第一控制器发送对从所述系统管理控制器中的第二控制器收到的模式请求的响应,其中,所述第一管理控制器的所述响应至少部分基于所述第一系统管理控制器的协商协议状态,所述模式请求和响应作为符合智能平台管理接口规范的消息发送。
附图说明
图1是根据本发明实施例,带有用于执行模式协商协议的管理控制器的系统方框图;
图2是根据本发明实施例,带有在执行模式协商协议的管理控制器的系统方框图;
图3是根据本发明实施例,确定管理控制器初始操作模式的方法流程图;
图4是根据本发明实施例,响应控制器模式请求方法的流程图;
图5是根据本发明实施例的控制器模式请求和响应方框图;
图6是根据本发明实施例,说明管理控制器协商协议的状态和状态转换的状态图。
具体实施方式
根据本发明的实施例,系统管理控制器与其它系统管理控制器协商,以确定初始操作模式(例如,在重置或其它初始操作之后的模式)。此类协商例如可通过在系统管理控制器之间发送消息而实现。在一个实施例中,一个系统管理控制器在重置后根据不存在对该系统管理控制器发送的一个或多个控制器模式请求的响应,确定其初始操作模式为中央管理控制器模式(例如,BMC模式)。在另一实施例中,系统管理控制器的初始模式可基于由该系统管理控制器接收的响应内容。
本发明的实施例提供控制器模式协商协议。在一个实施例中,系统中的每个系统管理控制器用于执行协商协议。协商协议可针对诸如系统启动等事件执行,或者在单个系统管理控制器重置时执行。例如,在系统开机时,系统中的每个系统管理控制器可根据协商协议向其它系统管理控制器发送控制器模式请求,并且可根据对控制器模式请求的响应转换到初始模式。协商协议还可定义系统管理控制器响应其接收的模式请求的协议。在本发明的实施例中,控制器通过一系列协商状态切换状态,这些状态可包括:请求、等待、SMC、备用BMC和活动BMC。在实施例中,协商可至少部分基于诸如控制器能力、用户配置首选项、模块类型和地理(物理)地址等标准。
图1是根据本发明实施例,带有适于执行模式协商协议的管理控制器的系统方框图。图1显示的系统100可以是任何类型的电子系统,如通用计算机系统,特殊用途的计算机系统等。系统100包含四个模块110、120、130和140,它们可以是例如插入系统机箱插槽中的电路板。当然,在其它实施例中,系统可包含更多或更少的模块。每个模块110、120、130和140可以是电源、风扇架、CPU板或任何其它类型的组件。系统100中的各个控制器可通过输入/输出端口耦合到系统管理总线150,系统管理总线可以是承载管理信息的任何类型总线。系统管理总线150的示例有符合飞利浦半导体公司(Philips Semiconductor Corporation)开发的I2C总线规范的Inter-IC总线(I2C)、符合SBS实施者论坛(SBS Implementers Forum)的SMBus规范(2000年8月2.0版)的系统管理总线(SMBus)或符合智能平台管理总线通信协议规范(Intel公司等公司v1.0)的智能平台管理总线(IPMB)。系统管理总线可配置为任何类型的拓朴,如单总线、星形、双总线或混合拓朴。如果使用双总线拓朴,则系统管理控制器可具有第二输入/输出端口,以发送完全相同的一份系统管理消息到其它系统管理控制器。系统管理控制器可使用各种类型的消息格式与其它系统组件进行通信,这些消息格式如智能平台管理接口规范(Intel公司等公司,v1.5,rev.1,2001年2月21日)(本文称为IPMI)中定义的格式。
系统100中所示的每个模块包含系统管理控制器(113、123、133、143)和计算机可读介质(115、125、135、145)。每个系统管理控制器可以是能够执行如上所述系统管理功能的处理器。每个计算机可读介质可以是能够存储指令的任何类型的介质,如只读存储器(ROM)、可编程只读存储器(PROM)或可擦可编程只读存储器(EPROM)。在一个实施例中,计算机可读介质是非易失性存储器。图1中显示的每个计算机可读介质存储了模块协商协议指令(117、127、137、147)。模式协商协议指令可以是例如软件指令、固件指令、微码或任何其它类型的指令,这些指令可由关联的系统管理控制器执行,以便与其它系统管理控制器协商,从而确定系统管理控制器的初始操作模式。诸如执行系统管理功能的指令等其它指令也可存储在一个或多个计算机可读介质上,并且可由系统管理控制器执行。在其它实施例中,系统管理控制器和模块协商协议指令可实现为ASIC、可编程逻辑阵列(PLA)或执行系统管理功能的任何其它类型的处理装置。
在本发明实施例操作的一个示例中,系统管理控制器113可执行模式协商协议指令117以便与系统管理控制器123、133和143协商,从而确定一个或多个系统管理控制器113、123、133和143的初始系统管理模式。在一个实施例中,控制器的可能系统管理模式可以为活动BMC模式、备用BMC模式和SMC模式。在此实施例中,活动BMC可执行系统的BMC功能,而备用BMC可在当前活动BMC发生故障时变为活动BMC(例如,可与活动BMC一样接收并记录相同的管理信息)。在其它实施例中,可存在更多或更少的可能的管理模式。
在参照图2所述的最简单实施例中,除一个系统管理控制器以外,其它所有系统管理控制均已采用了一种操作模式。这种情况下,未初始化的管理控制器可根据协商协议发送模式请求,并且其它管理控制器可根据协商协议作出响应。在另一实施例中,整个系统进行了初始化或重置,并且所有系统管理控制器可在大致相同的时间向彼此发送模式请求。
图2是根据本发明实施例,带有在执行模式协商协议的管理控制器的计算机系统200方框图。计算机系统200显示为包括电路板210、电路板220、电源模块230、风扇架模块240及管理总线250,它们可以与图1中的模块110-140和管理总线150相同。在图2所示实施例中,电路板210包括基板管理控制器215,电路板220包括备用管理控制器225,并且电源模块230包含卫星管理控制器235。为便于说明,在此实施例中,管理控制器215、225和235已经采用了一种操作模式。例如,BMC 215可以是系统200的活动中央管理控制器,备用BMC 225已经准备在BMC 215发生故障时变为系统200的中央管理控制器,并且SMC 235可监视并控制电源模块230的操作。
如系统200中所示的那些管理控制器可以在BMC模式、备用BMC模式或SMC模式中的一种、一些或所有模式下操作。例如,BMC215可能还能够作为备用BMC或SMC操作,备用BMC 225可能还能够作为BMC或SMC操作,并且SMC 235可能只能够作为SMC操作。例如,在其它实施例中,SMC 225可能能够作为BMC操作,和/或BMC 215可能不能够作为SMC操作。
风扇架模块240显示为包括新的系统管理控制器245。为便于说明,此控制器标记为“新的”以显示一种情况,即一个系统管理控制器在进行初始化,而其它系统管理控制器已经采用了一种操作模式。例如,管理控制器可在整个系统开启或重置时,或者(在图2所示情况下)在包括管理控制器的特殊模块开启或重置时,进行初始化。例如,图2可说明这种情况,其中风扇架模块240作为热交换操作的一部分安装到了系统200中。
如图2所示,在重置期间或重置之后,新的系统管理控制器245可通过系统管理总线250向其它系统管理控制器215、225和235发送控制器模式请求260。控制器模式请求260可以是例如符合IPMI规范的命令。在此实施例中,活动BMC 215通过发送GoToSMC响应261来响应控制器模式请求;并且备用BMC 225通过发送等待响应予以响应。在一个实施例中,SMC 235不发送对控制器模式请求260的响应。在一个实施例中,如下所述,所发送的对模式请求消息的响应可由模式协商协议确定。例如,协议可规定,如果活动BMC收到来自具有相等或更低优先级的管理控制器的模式请求,则活动BMC将以GoToSMC响应作为响应。协议还可规定,如果备用BMC从具有更高优先级的管理控制器收到模式请求,则备用BMC的响应将为等待响应。另外,协议可规定,无论相对优先级如何,SMC不响应模式请求。如下所述,用于确定两个管理控制器相对优先级的因素可包括控制器能力、用户配置的首选项、模块类型和地理地址。
协商协议还可定义收到模式响应(或未能收到模式响应)时采取的动作。例如,协议可规定,在收到GoToSMC命令后控制器转换到SMC状态。又如参照图3所述,协议可规定,管理控制器如果发送了模式请求但未在超时期(即,门限时间量)内收到响应,则它转换到主BMC状态。
图3是根据本发明实施例确定管理控制器初始操作模式的方法流程图。此方法例如可在其它系统管理控制器重置或启动时由一个系统管理控制器(如图2的新系统管理控制器)执行。例如,新系统管理控制器245可将图3所示方法作为部分启动例程或其启动例程执行。在图3(和图6)所示实施例中,系统管理控制器具有除上述BMC、备用BMC和SMC外的多个非操作状态。具体地说,图3显示了进入请求状态(302)的控制器。在一个实施例中,图3所示方法是控制器模式协商协议的一部分,并且该方法例如可由图1所示的模式协商协议指令执行。
在图3所示实施例中,先对系统管理控制器进行了重置(301)。随后,系统进入请求状态(302)。例如,新系统管理控制器245可执行控制器启动例程,该例程以重置控制器开始,然后进入请求状态。在请求状态,控制器发送控制器模式请求消息(如图2的控制器模式请求260)(303)。在一个实施例中,请求状态的唯一特性可以是发送控制器模式请求。接着,控制器可等待模式请求的响应(304)。如果在超时期(例如,100毫秒)内收到响应,则控制器可进入响应中指定的状态(305)。例如,新系统管理控制器245可从系统中的另一管理控制器接收GoToSMC响应。在采用指定状态后,除执行所采用的操作模式功能外,系统管理控制器随后可处理其它控制器的请求(309)。
如果在超时期(例如,100毫秒)内未收到响应,则控制器可确定是否达到了重试限制(307)。如果尚未达到重试限制,则如上所述,控制器可转换回到请求状态,可发送另一控制器模式请求,以及可等待。在一个实施例中,重试限制为三次重试。当然,可使用其它超时期和重试限制。如果达到了重试限制,则控制器可将自身设为活动BMC模式(308)。在采用BMC模式后,除执行BMC功能外,控制器随后可处理其它控制器的请求(309)。因此,在此实施例中,如果控制器未收到对控制器模式请求的响应,则它可采用BMC模式。优先级可基于任何不同的因素,例如,如下参照图5所述的那些因素。在其它实施例中,控制器可能没有重置状态。另外,如上所述,状态的采用可不需要控制器采取任何肯定动作。
在上述示例中,除一个控制器外的所有其它控制器事先采用了一种操作模式。然而,图3所示的方法也适用于其它情况,如在整个系统重置且所有控制器在大致相同的时间初始化时。根据实施例,在所有控制器初始化时,它们可在大致相同的时间各自执行如图3所示的方法。因此,系统中的多个管理控制器各自可向其它管理控制器发送模式请求。这些控制器中的每个控制器随后可对收到的每个模式请求作出响应(或不响应),例如,通过发送响应消息到发送请求的控制器。在一个实施例中,根据不存在对控制器发送的模式请求的响应,确定控制器之一最初是系统的中央管理控制器。
在又一实施例中,如果控制器发送的请求数量超过极限值而未在超时期内收到响应,则不存在模式请求的响应。
图4是根据本发明实施例响应控制器模式请求的方法流程图。此方法例如可由系统管理控制器在收到控制器模式请求(如图2所示的控制器模式请求260或图5所示的控制器模式请求510)时执行。在一个实施例中,图4所示方法是控制器模式协商协议的一部分,并且该方法可通过例如图1所示的协商协议指令执行。该方法可在某个控制器发送模式请求之前或之后或者同时由该控制器执行(如图3方法所示)。
根据图4所示实施例,第一系统管理控制器(可称为接收器)从第二系统管理控制器(可称为请求者)接收控制器模式请求(401)。接收器随后可决定其当前协商协议状态(402)。例如,接收器可确定其当前处于SMC模式。接收器随后可确定模式协商协议是否规定了在这种情况下响应应基于相对优先级(403),并且倘若如此,则可确定请求者与接收器的相对优先级(404)。随后,接收器可确定模式协商协议是否规定了这种情况下应发送响应(405),并且倘若如此,则可将响应发送到第二系统管理控制器(406)。响应可指定第二系统管理控制器要进入的状态。如果不要发送响应,则接收器随后可确定模式协商协议是否规定了这种情况下接收器应转换到等待状态(407),并且倘若如此,则接收器自己切换为等待状态(408)。优先级可如下参照图5所述那样确定,并且图6和下表1中显示了针对不同情况的模式协商协议实施例示例。
因此,根据本发明的实施例,发送回控制器模式请求发送方的响应可至少部分基于接收器的当前状态。响应可至少部分基于接收器的控制器模式能力,并可至少部分基于用户配置的模式首选项。图3和图4中所示的方法可作为控制器启动过程的一部分执行。虽然按所示顺序讨论图3和图4所示的方法步骤,但在其它实施例中,可按不同顺序执行一些步骤。例如,系统管理控制器可发送控制器模式请求,并且在大致相同的时间响应收到的一个或多个请求。
图5是根据本发明实施例的控制器模式请求510和响应520的方框图。控制器模式请求510可以是例如图2的控制器模式请求260,并且响应520例如可以是图2的GoToSMC响应261或等待响应262。在一个实施例中,控制器模式请求510和响应520是符合IPMI规范的消息,在这种情况下,它们可称为命令。在一个实施例中,控制器模式请求510和响应520可使用IPMI规范中定义的组扩展网络函数(如网络函数=2Ch/2Dh)。如上所述,控制器模式请求510和响应520可用于模式协商。在一个实施例中,控制器可在处于请求状态时广播控制器模式请求510,并且可在发送控制器模式请求后等待接收响应。
如图5所示,控制器模式请求510包括首部511、能力512、用户首选项513、模块类型514和地理地址515字段。在一个实施例中,控制器模式请求510中的信息可用于确定相对控制器优先级。在一个实施例中,能力集是第一级优先检查。在又一实施例中,如果能力集相同,则将用户配置首选项用作第二级优先检查。在又一实施例中,如果能力集和用户首选项均相同,则模块类型用作第三级优先检查。在又一实施例中,在其它标准相同时,使用地理地址。当然,控制器模式请求510和响应520是唯一的可能格式示例。可为这些字段分配确定相对控制器优先级的其它优先级顺序,并且可使用其它字段。
在一个实施例中,能力字段512可指示发送控制器模式请求510的控制器的系统管理模式能力。在一个实施例中,可用的能力集为纯BMC(BMC-only)、BMC/SMC和纯SMC(SMC-only)。在又一实施例中,纯BMC具有最高优先级,并且纯SMC具有最低优先级。在一个实施例中,可以为纯BMC的唯一模块是专用于机箱中央管理代理的模块,它可称为“机箱管理模块”(CMM),设计用于星形或混合拓朴。在一个实施例中,具有BMC/SMC能力集的控制器(即,可充当BMC或SMC的控制器)可选择实施用户配置特性,以便用户指定首选项BMC、SMC,或无首选项。例如,用户可使用BIOS设置选项、软件设置、DIP开关、跳线设置或运行或加载软件输入此类首选项。此信息可包括在控制器模式请求510的用户首选项字段513中。在一个实施例中,包括纯BMC和纯SMC模块在内不实施用户配置首选项特性的模块可报告无首选项。在一个实施例中,纯BMC是最高优先级,无中间优先级首选项,并且纯SMC是最低优先级。由于不同的模块类型可具有不同的地理地址域,因此,在实施例中,模块类型可用于确定优先级。在一个实施例中,用于模块类型字段514的按从低到高优先级顺序的不同可用值为电源模块、其它机箱特定类型、风扇架、节点板、开关板和专用CMM。当然,可使用其它模块类型和其它顺序或优先级。
对于控制器为其组成部分的模块,地理地址字段515可包含其地理地址(例如,插槽地址)。在一个实施例中,其它标准比较的结果等同时,带有较低地理地址的控制器确定为具有更高的优先级。在又一实施例中,处于BMC状态的控制器还可使用地理地址来确定如何响应。例如,BMC可使用地理地址来确定哪些模块在初始上电后应为活动状态。
如上所述,接收控制器模式请求的控制器可根据其当前状态和请求者相对于自己的优先级作出响应。图5显示了包含首部字段521和数据字段523的响应520。在一个实施例中,首部520包含完成码。在一个实施例中,数据字段521可包含等待响应(该响应指示响应接收器应转到等待状态)或GoToSMC响应(该响应指示响应接收器应转到SMC状态)。在又一实施例中,数据字段还可包含诸如备用BMC等其它响应。当然,在其它实施例中,消息的类型和格式可不同于图5所示的类型。例如,其它消息也可由模式协商协议使用。
图6是根据本发明实施例,说明管理控制器协商协议的状态和状态转换的状态图。根据一个实施例,在执行协商协议的系统管理控制器可以处于如下图6所示的协商状态之一:请求620、等待630、SMC 640、备用SMC 650和活动BMC 660。在此实施例中,处于SMC状态的控制器可以处于SMC模式,处于备用BMC状态的控制器可以处于备用BMC模式,并且处于活动BMC状态的控制器可以处于活动BMC模式。在一个实施例中,一些控制器将支持所有这5种状态,而其它控制器可能只支持其中一部分状态。纯SMC状态可能是只可在纯SMC模式下操作的控制器唯一可用的状态;纯BMC状态可能是只可在纯BMC模式下操作的控制器唯一可用的状态,并且所有5种状态均可用于能够在SMC或BMC模式下操作的控制器。在图6中,重置610可指示控制器已经历了重置条件(即,控制器重置或启动的条件)。
在一个实施例中,控制器从重置中恢复时,进入请求状态620。在请求状态中,控制器可广播控制器模式请求并等待响应。接收控制器模式请求的其它控制器可根据其当前状态和相对于请求者的优先级作出响应。根据实施例,协商协议支持优先分级,因此,不能够充当SMC的模块与能够充当SMC的模块相比,可优先用作BMC。BMC优先级可基于能力、首选项设置、模块类型和地理地址。在一个实施例中,如果未收到控制器模式请求的响应(重试后),则请求者可将自身设为活动BMC模式。否则,请求者会经任一GoToSMC响应得知要运行的模式。在一个实施例中,控制器还可接收未经请求的消息,该消息不是为响应某个控制器模式请求而发送的,其请求控制器采用一定模式。此类未经请求的消息可称为设置模式命令。在一个实施例中,设置模式命令由BMC在系统操作期间发送,以便在采用初始模式后改变控制器模式。
下面将更详细地描述根据本发明实施例的各种状态转换。在处于请求状态的控制器广播控制器模式请求后,它可接收一个或多个响应,如GoToSMC响应(622)或等待响应(621)。如果收到GoToSMC响应,则控制器可转换为SMC状态(640)。如果收到等待响应,则控制器可转换为等待状态(630)。如果在超时和重试后仍未收到响应,则控制器可转换为活动BMC状态(624)。另外,处于请求状态的控制器可接收一个或多个设置模式命令,这些命令可指示控制器进入备用BMC模式(623)或者可指示控制器进入SMC模式(622)。
在所示实施例中,处于等待状态630的控制器可等待接收设置模式命令或GoToSMC响应。如果收到GoToSMC响应,则控制器转换为SMC状态(632)。如果收到设置模式命令,则控制器可转换为设置模式命令中指定的适当状态(例如,转换为备用BMC状态633或转换为SMC状态632)。在此实施例中,如果在超时期内未收到GoToSMC响应或设置模式命令,则控制器可转换回请求状态(631),在该状态它可重新广播控制器模式请求。
处于SMC状态的控制器可充当卫星管理控制器。如图6所示,如果处于SMC状态的控制器收到设置模式命令,则控制器可转换为设置模式命令中指定的适当状态(例如,转换为备用SMC状态641)。
处于备用BMC状态的控制器可充当备用BMC。如上所述,在一个实施例中,处于备用BMC状态的控制器可保持与活动BMC的同步状态信息,并可为活动BMC执行看门狗功能。在又一实施例中,如果活动BMC发生故障,则备用BMC将转换为活动BMC状态(652)。视管理拓朴和安装的模块而定,可在活动BMC发生故障时选择新的备用BMC。如图6所示,如果处于备用BMC状态的控制器收到设置模式命令,则控制器可转换为设置模式命令中指定的适当状态(例如,转换为SMC状态651或转换为活动BMC状态652)。
在活动BMC状态中,控制器可执行正常的BMC功能。在一个实施例中,活动BMC可选择适合于拓朴的备用BMC,并且可与备用BMC同步状态信息。在上述实施例中,BMC最后负责通知其它协商控制器进入SMC状态。例如,在一个实施例中,在使用双总线拓朴时,只有在建立备用BMC后BMC才会通知控制器进入SMC模式。在此实施例中,不允许控制器在建立备用BMC前进入SMC模式。如果活动BMC在建立备用BMC前将要发生故障并且所有其它控制器已进入SMC状态,则系统可不设BMC。在一个实施例中,为星形或混合拓朴专门设计的CMM可在建立备用BMC前通知其它非CMM模块进入SMC状态,这是因为只有另一星形或混合CMM才可作为备用BMC。在一个实施例中,如果热交换使用了比备用BMC优先级更高的控制器,或者由于其它原因,则活动BMC可在收到备用设置模式命令时转换为备用BMC状态(662),例如,这可在用户触发了从备用BMC切换到活动BMC模式(这可称为“故障转移(failover)”)时发生。
根据一个实施例,接收控制器模式请求的控制器(即接收器)可如下表1所示响应请求者(即发送请求的控制器)。此表显示了15种不同的情况。如下面所示,响应可基于接收器的状态和请求者的相对优先级。在一些情况下,响应要取决于请求者的相对地理优先级,而在一些情况下,响应要取决于是否已经建立了备用BMC。在表1中,标记“X”表示,对于此情况,响应内容不基于此标准。例如,如上参照图5所述,相对的控制器优先级可依据能力、用户首选项、模块类型和地理地址来确定。
  情况   接收器状态   请求者的优先级w/o GA   请求者的GA优先级   设立备用   响应
  1   活动BMC   更高   X   X   等待
  2   活动BMC   等于或更低   X   是   等待或GoToSMC
  3   活动BMC   等于或更低   X   否   等待(或GoToSMC)[1]
  4   备用BMC   更高   X   是   等待
  5   备用BMC   等同   X   是   等待或GoToSMC
  6   备用BMC   更低   X   是   GoToSMC
  7   SMC   X   X   X   无响应
  8   等待   更高   X   X   无响应
  9   等待   等同   更高   X   无响应
  10   等待   等同   更低   X   等待
  11   等待   更低   X   X   等待
  12   请求   更高   X   X   无响应并将自身设为等待
  13   请求   等同   更高   X   无响应并将自身设为等待
  14   请求   等同   更低   X   等待
  15   请求   更低   X   X   等待
                    表1
在表1的前三种情况中,控制器模式请求的接收器为活动BMC。如果请求者的优先级(无地理地址)高于接收器的优先级,则可发送等待响应。请求者可具有比活动BMC更高优先级的情形例如:请求者以热交换方式换入的情形,或者请求者花费较长时间从休息状态恢复的情形。具有比活动BMC更高优先级的请求者可进入等待状态而不是直接成为活动BMC,这样,它可在切换为活动BMC前实现同步。如果请求者的优先级(无地理地址)等于或低于接收器的优先级,并且已建立备用BMC,则可发送等待响应或GoToSMC响应。如果请求者要成为新的备用BMC,则可发出等待响应。如果尚未建立备用BMC,则在一个实施例中,如果活动BMC是专门为星形或混合拓朴设计的CMM,而请求者不是CMM,则接收器可只发出GoToSMC响应;否则,接收器可发出等待响应。
在表1的第4到第6种情况中,接收器处于备用BMC状态(根据定义这表示备用BMC已建立)。在所示实施例中,如果请求者的优先级(无地理地址)高于接收器的优先级,则可发送等待响应;如果请求者的优先级(无地理地址)低于接收器的优先级,则可发送GoToSMC响应。通常,如果请求者的优先级(无地理地址)等于接收器的优先级,则将发送GoToSMC响应;但在这种情况下,例如在决定要改变备用BMC时,可发送等待响应。
在表1中其余情况7-15中,响应不取决于是否建立了备用。在情况7中,接收器处于SMC状态,并且无论相对优先级如何均不发送响应。因此,在此实施例中,处于SMC状态的控制器不响应控制器模式请求。在情况8-11中,接收器处于等待状态,并且地理优先级用于打破平衡。在这些情况中,如果请求者具有更高的优先级,则不发送响应;如果请求者具有更低的优先级,则发送等待响应。最后,在情况12-15中,接收器处于请求状态,并且地理优先级用于打破平衡。在这些情况中,如果请求者具有更高的优先级,则不发送响应并且接收器将自身设为等待状态;如果接收器处于请求状态并且请求者具有更低的优先级,则发送等待响应。
表1只表示根据本发明实施例的协商协议的一个实施例。在其它实施例中,可能有其它接收器状态,并且在一种或多种情况下的响应可能不同。
在以上公开的实施例中,不接收针对控制器模式请求和重试的任何响应(并且不将自身设为等待状态)的控制器可将自身设为活动BMC状态。在所示实施例中,已建立备用BMC以防止控制器在可以建立备用BMC前进入SMC状态时,只可由BMC通知控制器进入SMC模式。如果活动BMC在建立备用BMC前将要发生故障,并且所有其它控制器已进入SMC状态,则系统可不建立BMC。使用本发明实施例中公开的模式协商协议可自动确定哪些控制器将作为活动和备用BMC,同时避免控制器之间的冲突。
本文具体示意和/或描述了本发明实施例的几个示例。然而,应理解,在不脱离本发明精神和预期范围的情况下对本发明所作的修改和变化由以上教导所涵盖,并且在所附权利要求书范围内。例如,用于响应请求的优先级确定和协议可与如上所示有所不同。又如,系统管理协商协议可用硬件或软件来实现。

Claims (9)

1.一种用于确定基板管理控制器模式的方法,所述方法包括:
从计算机系统中的多个系统管理控制器发送模式请求到所述计算机系统中的其它系统管理控制器;以及
根据不存在对所述系统管理控制器之一发送的模式请求的响应,确定该系统管理控制器为基板管理控制器,
其中,所述方法还包括从所述系统管理控制器中的第一控制器发送对从所述系统管理控制器中的第二控制器收到的模式请求的响应,其中,所述第一管理控制器的所述响应至少部分基于所述第一系统管理控制器的协商协议状态,
所述模式请求和响应作为符合智能平台管理接口规范的消息发送。
2.如权利要求1所述的方法,其特征在于:所述第一管理控制器的所述响应至少部分基于所述第一系统管理控制器的所述相对优先级。
3.如权利要求2所述的方法,其特征在于:所述优先级基于控制器模式能力、用户首选项、控制器的模块类型或控制器地理地址中的至少一项。
4.如权利要求3所述的方法,其特征在于:所述控制器地理地址是确定优先级中最后考虑的因素。
5.如权利要求1所述的方法,其特征在于:所述方法还包括至少部分基于所述响应内容确定所述第二系统管理控制器的所述模式。
6.如权利要求1所述的方法,其特征在于:所述方法作为控制器启动过程的一部分来执行。
7.如权利要求1所述的方法,其特征在于:如果所述控制器发送了极限数量的请求而未在超时期内收到响应,则不存在对模式请求的响应。
8.如权利要求7所述的方法,其特征在于:在确定所述系统管理控制器为所述基板管理控制器前,未在超时期内收到对控制器模式请求的响应的系统管理控制器至少重试所述请求一次。
9.如权利要求1所述的方法,其特征在于:所述模式请求包含与所述操作模式相关的信息,发送所述请求的所述控制器可以在所述模式下操作。
CNB038100061A 2002-03-08 2003-02-20 系统管理控制器协商协议 Expired - Fee Related CN100342333C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/092,793 2002-03-08
US10/092,793 US7058703B2 (en) 2002-03-08 2002-03-08 System management controller (SMC) negotiation protocol for determining the operational mode of SMCs

Publications (2)

Publication Number Publication Date
CN1650265A CN1650265A (zh) 2005-08-03
CN100342333C true CN100342333C (zh) 2007-10-10

Family

ID=27804181

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB038100061A Expired - Fee Related CN100342333C (zh) 2002-03-08 2003-02-20 系统管理控制器协商协议

Country Status (8)

Country Link
US (2) US7058703B2 (zh)
EP (1) EP1483668B1 (zh)
CN (1) CN100342333C (zh)
AT (1) ATE383610T1 (zh)
AU (1) AU2003222229A1 (zh)
DE (1) DE60318556T2 (zh)
TW (1) TWI227406B (zh)
WO (1) WO2003077116A2 (zh)

Families Citing this family (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7058703B2 (en) * 2002-03-08 2006-06-06 Intel Corporation System management controller (SMC) negotiation protocol for determining the operational mode of SMCs
JP2004038529A (ja) * 2002-07-03 2004-02-05 Nec Corp 情報処理装置
US7739536B2 (en) * 2004-04-02 2010-06-15 Hewlett-Packard Development Company, L.P. Intelligent frequency and voltage margining
US20060114923A1 (en) * 2004-11-29 2006-06-01 Overgaard Mark D Disaggregated star platform management bus architecture system
US20060149873A1 (en) * 2005-01-04 2006-07-06 Underwood Brad O Bus isolation apparatus and method
US7627774B2 (en) * 2005-02-25 2009-12-01 Hewlett-Packard Development Company, L.P. Redundant manager modules to perform management tasks with respect to an interconnect structure and power supplies
US7269534B2 (en) * 2005-03-11 2007-09-11 Dell Products L.P. Method to reduce IPMB traffic and improve performance for accessing sensor data
US8189599B2 (en) * 2005-08-23 2012-05-29 Rpx Corporation Omni-protocol engine for reconfigurable bit-stream processing in high-speed networks
US7827442B2 (en) * 2006-01-23 2010-11-02 Slt Logic Llc Shelf management controller with hardware/software implemented dual redundant configuration
WO2007112109A2 (en) * 2006-03-24 2007-10-04 Slt Logic Llc Modular chassis providing scalable mechanical, electrical and environmental functionality for microtca and advanced tca boards
US20080147858A1 (en) * 2006-12-13 2008-06-19 Ramkrishna Prakash Distributed Out-of-Band (OOB) OS-Independent Platform Management
WO2008127672A2 (en) * 2007-04-11 2008-10-23 Slt Logic Llc Modular blade for providing scalable mechanical, electrical and environmental functionality in the enterprise using advanced tca boards
CN101860459B (zh) * 2009-04-07 2012-08-29 鸿富锦精密工业(深圳)有限公司 网络装置及其连线状态侦测方法
TWI439856B (zh) 2010-06-30 2014-06-01 Ibm 具故障備援以管理共享資源之方法與多電腦系統
US9772912B2 (en) * 2012-03-28 2017-09-26 Intel Corporation Configurable and fault-tolerant baseboard management controller arrangement
CN102722461B (zh) * 2012-05-07 2016-03-30 加弘科技咨询(上海)有限公司 存储管理系统的数据通信系统及通信方法
JP6148039B2 (ja) * 2013-03-01 2017-06-14 Necプラットフォームズ株式会社 情報処理装置、bmc切り替え方法、bmc切り替えプログラム
US9313102B2 (en) 2013-05-20 2016-04-12 Brocade Communications Systems, Inc. Configuration validation in a mixed node topology
US9853889B2 (en) 2013-05-20 2017-12-26 Brocade Communications Systems, Inc. Broadcast and multicast traffic reduction in stacking systems
KR20140144520A (ko) * 2013-06-11 2014-12-19 삼성전자주식회사 프로세서 모듈, 마이크로 서버 및 프로세서 모듈의 제어 방법
US10284499B2 (en) 2013-08-22 2019-05-07 Arris Enterprises Llc Dedicated control path architecture for systems of devices
TWI505078B (zh) 2014-07-28 2015-10-21 Ibm 系統管理控制器、電腦系統、以及系統管理方法
US9804937B2 (en) * 2014-09-08 2017-10-31 Quanta Computer Inc. Backup backplane management control in a server rack system
US10091059B2 (en) * 2014-12-16 2018-10-02 Arris Enterprises Llc Handling connections between network devices that support multiple port communication modes
US9916270B2 (en) * 2015-03-27 2018-03-13 Intel Corporation Virtual intelligent platform management interface (IPMI) satellite controller and method
CN105516386B (zh) * 2015-12-07 2018-08-17 浪潮集团有限公司 一种服务器管理系统mac地址冲突检测和处理方法及系统
CN106383770B (zh) * 2016-09-26 2019-05-10 郑州云海信息技术有限公司 一种服务器监控管理的方法及服务器
US10664429B2 (en) * 2017-12-22 2020-05-26 Dell Products, L.P. Systems and methods for managing serial attached small computer system interface (SAS) traffic with storage monitoring
US10972335B2 (en) * 2018-01-24 2021-04-06 Hewlett Packard Enterprise Development Lp Designation of a standby node
US10642773B2 (en) * 2018-03-28 2020-05-05 Lenovo Enterprise Solutions (Singapore) Pte. Ltd BMC coupled to an M.2 slot
CN113886307A (zh) * 2021-09-30 2022-01-04 阿里巴巴(中国)有限公司 Bmc模块、服务器主板、bmc模块的热维护方法及系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4141066A (en) * 1977-09-13 1979-02-20 Honeywell Inc. Process control system with backup process controller
US5644700A (en) * 1994-10-05 1997-07-01 Unisys Corporation Method for operating redundant master I/O controllers
US6085333A (en) * 1997-12-19 2000-07-04 Lsi Logic Corporation Method and apparatus for synchronization of code in redundant controllers in a swappable environment

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5261092A (en) 1990-09-26 1993-11-09 Honeywell Inc. Synchronizing slave processors through eavesdrop by one on periodic sync-verify messages directed to another followed by comparison of individual status
US5524113A (en) * 1993-08-30 1996-06-04 Washington University ATM switch interface
US6067585A (en) * 1997-06-23 2000-05-23 Compaq Computer Corporation Adaptive interface controller that can operate with segments of different protocol and transmission rates in a single integrated device
FR2773935A1 (fr) * 1998-01-19 1999-07-23 Canon Kk Procedes de communication entre systemes informatiques et dispositifs les mettant en oeuvre
JP3439337B2 (ja) * 1998-03-04 2003-08-25 日本電気株式会社 ネットワーク管理システム
US6502203B2 (en) * 1999-04-16 2002-12-31 Compaq Information Technologies Group, L.P. Method and apparatus for cluster system operation
US6810418B1 (en) * 2000-06-29 2004-10-26 Intel Corporation Method and device for accessing service agents on non-subnet manager hosts in an infiniband subnet
US6934756B2 (en) * 2000-11-01 2005-08-23 International Business Machines Corporation Conversational networking via transport, coding and control conversational protocols
US6823397B2 (en) * 2000-12-18 2004-11-23 International Business Machines Corporation Simple liveness protocol using programmable network interface cards
US6920554B2 (en) * 2000-12-18 2005-07-19 International Business Machines Corporation Programming network interface cards to perform system and network management functions
US7051363B2 (en) * 2001-09-20 2006-05-23 Intel Corporation System and method for interfacing to different implementations of the intelligent platform management interface
US7058703B2 (en) * 2002-03-08 2006-06-06 Intel Corporation System management controller (SMC) negotiation protocol for determining the operational mode of SMCs
US6948008B2 (en) * 2002-03-12 2005-09-20 Intel Corporation System with redundant central management controllers
US7093033B2 (en) * 2003-05-20 2006-08-15 Intel Corporation Integrated circuit capable of communicating using different communication protocols

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4141066A (en) * 1977-09-13 1979-02-20 Honeywell Inc. Process control system with backup process controller
US5644700A (en) * 1994-10-05 1997-07-01 Unisys Corporation Method for operating redundant master I/O controllers
US6085333A (en) * 1997-12-19 2000-07-04 Lsi Logic Corporation Method and apparatus for synchronization of code in redundant controllers in a swappable environment

Also Published As

Publication number Publication date
DE60318556T2 (de) 2009-01-08
US7058703B2 (en) 2006-06-06
WO2003077116A2 (en) 2003-09-18
EP1483668A2 (en) 2004-12-08
AU2003222229A1 (en) 2003-09-22
EP1483668B1 (en) 2008-01-09
ATE383610T1 (de) 2008-01-15
US20030182483A1 (en) 2003-09-25
US20060224708A1 (en) 2006-10-05
WO2003077116A3 (en) 2004-03-25
TW200405165A (en) 2004-04-01
DE60318556D1 (de) 2008-02-21
AU2003222229A8 (en) 2003-09-22
CN1650265A (zh) 2005-08-03
TWI227406B (en) 2005-02-01

Similar Documents

Publication Publication Date Title
CN100342333C (zh) 系统管理控制器协商协议
CN101071392B (zh) 用于维护服务器固件的备份副本的方法和多服务器系统
US7623460B2 (en) Cluster system, load distribution method, optimization client program, and arbitration server program
US9189349B2 (en) Distributed blade server system, management server and switching method
US7194655B2 (en) Method and system for autonomously rebuilding a failed server and a computer system utilizing the same
US20050251591A1 (en) Systems and methods for chassis identification
US20090024764A1 (en) Tracking The Physical Location Of A Server In A Data Center
CN102546135B (zh) 主备服务器切换系统及方法
CN103324495A (zh) 数据中心服务器开机管理方法及系统
CN102244669B (zh) 一种堆叠设备中软件升级的方法和堆叠设备
CN110287151B (zh) 分布式存储系统、数据写入方法、装置和存储介质
WO2008025202A1 (fr) Procédé, système et dispositif pour obtenir des informations physiques d'une carte unique
CN102843259A (zh) 集群内中间件自管理热备方法及系统
EP2161647A1 (en) Power-on protection method, module and system
US20090144569A1 (en) Communication device, amc and method for supplying power to the amc
US20140129865A1 (en) System controller, power control method, and electronic system
CN111628944B (zh) 交换机及交换机系统
US20110145604A1 (en) Fault tolerant power sequencer
WO2010020137A1 (zh) 上电保护方法、模块及系统
JP2011060056A (ja) シェルフ管理装置及びデータ処理システム
TW201201013A (en) Method and multiple computer system with a failover support to manage shared resources
CN101141762B (zh) 在atca中启动设备管理系统的方法及设备管理系统
CN102193850A (zh) 一种多主机板服务器的时间更新系统
US7188202B1 (en) Techniques for accessing devices through a set of serial buses
CN111083003A (zh) 监控系统及方法、存储介质、处理器

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20071010

Termination date: 20210220

CF01 Termination of patent right due to non-payment of annual fee