介绍
MCTP定义了一个通信模型,旨在促进以下之间的通信:
- 管理控制器和其他管理控制器
- 管理控制器和受管设备
通信模型包括消息格式、传输描述、消息交换模式以及配置和初始化消息。
MCTP 经过精心设计,可以潜在地用于许多总线类型。该协议旨在用于计算机系统中使用的平台管理子系统组件之间的相互通信,适用于移动、桌面、工作站和服务器平台。管理控制器(如基板管理控制器 (BMC))可以使用此协议进行彼此之间的通信,以及访问平台内的所管设备。
管理控制器可以使用此协议在访问受管设备和其他管理控制器的不同总线类型之间发送和接收 MCTP 格式的消息。系统中的受管设备需要提供消息格式的实现,以便于管理控制器执行操作。
旨在管理系统中不同类型的设备可能需要实现此协议定义的完整功能的不同部分。在相关的情况下,这在个别要求中有所说明。
管理组件传输协议 (MCTP) 基本规范
1范围
图1
MCTP 基本规范描述了用于平台上的离散管理控制器之间以及管理控制器与其管理的设备之间进行通信的传输协议的命令协议、要求和用例。
本文档旨在实现以下目标:
- 描述 MCTP 基本传输协议
- 描述 MCTP 控制消息协议
MCTP 指定传输协议格式。该协议独立于底层物理总线属性,以及总线上使用的“数据链路”层消息传递。跨给定介质的 MCTP 通信的物理层和数据链路层方法由配套的“传输绑定”规范定义,例如 DSP0238、基于 PCIe® 供应商定义的消息传递的 MCTP 和 DSP0237 基于 SMBus/I2C 的 MCTP。这种方法可以定义未来的传输绑定,以支持其他总线,如 USB、RMII 等,而不会影响基本的 MCTP 规范。
2 规范性引用文件
以下引用文件对于本文件的适用是必不可少的。对于注明日期的引用文件,仅适用引用的版本。对于未注明日期的引用文件,适用引用文件的最新版本(包括任何修订)。
2.1 批准的参考资料
- DMTF DSP4004, DMTF Release Process v2.7
- http://www.dmtf.org/standards/published_documents/DSP4004_2.7.pdf
- DMTF DSP2016, Management Component Transport Protocol (MCTP) Overview White Paper
- http://www.dmtf.org/standards/published_documents/DSP2016_1.0.pdf
- DMTF, DSP0239, Management Component Transport Protocol (MCTP) IDs and Codes
- http://www.dmtf.org/standards/published_documents/DSP0239_1.3.pdf
- DMTF DSP0237, Management Component Transport Protocol SMBus/I2C Transport Binding Specification
- http://www.dmtf.org/standards/published_documents/DSP0237_1.0.pdf
- DMTF DSP0238, Management Component Transport Protocol (MCTP) PCIe VDM Transport Binding Specification
- http://www.dmtf.org/standards/published_documents/DSP0238_1.0.pdf
2.2 其他参考资料
- Hewlett-Packard, Intel, Microsoft, Phoenix, and Toshiba, Advanced Configuration and Power Interface Specification v5.0, ACPI, December 6, 2011
- http://www.acpi.info/downloads/ACPIspec50.pdf
- IETF, RFC20, ASCII format for Network Interchange, October 16, 1969
- http://tools.ietf.org/html/rfc20
- IETF, RFC4122, A Universally Unique Identifier (UUID) URN Namespace, July 2005
- http://datatracker.ietf.org/doc/rfc4122/
- IETF, RFC2119, Key Words for use in RFCs to Indicate Requirement Levels, March 1997
- http://datatracker.ietf.org/doc/rfc2119/
- Intel, Hewlett-Packard, NEC, and Dell, Intelligent Platform Management Interface Specification: Second Generation v2.0, IPMI, 2004
- http://www.intel.com/design/servers/ipmi
- ISO/IEC Directives, Part 2, Rules for the structure and drafting of International Standards
- http://isotc.iso.org/livelink/livelink?func=ll&objId=4230456&objAction=browse&sort=subtype
- PCI-SIG, PCI Express™ Specifications
- http://www.pcisig.com/specifications/pciexpress/
- NXP Semiconductors, UM10204 I2C-bus specification and user manual, Rev. 5, October 9, 2012
- http://www.nxp.com/documents/user_manual/UM10204.pdf
- SMBus, System Management Bus (SMBus) Specification v2.0, SMBus, 2000
- http://www.smbus.org/specs/smbus20.pdf
3 术语和定义
在本文件中,某些术语具有超出正常英语含义的特定含义。这些术语在本条款中定义。
本文件中的术语“shall”(“required”)、“shall not”、“should”(“recommended”)、“should not”(“not recommended”)、“may”、“need not”(“not required”)、“can”和“cannot”应按照 ISO/IEC 指令第 2 部分第 7 条中的说明进行解释。括号内的术语是前一个术语的替代项,用于由于语言原因不能使用前一个术语的特殊情况。请注意,ISO/IEC 指令第 2 部分第 7 条指定了其他替代方案。此类额外替代方案的出现应按其正常的英文含义进行解释。
本文件中的术语“条款clause”、“子条款subclause”、“段落paragraph”和“附件annex”应按照 ISO/IEC 指令第 2 部分第 6 条中的描述进行解释。
本文件中的术语“标准性normative”和“信息性informative”应按照 ISO/IEC 指令第 2 部分第 3 条中的描述进行解释。在本文件中,标有“(informative)”的条款、子条款或附件不包含规范性内容。注释和示例始终是信息元素。
3.1 需求术语定义
本条款定义了本规范中表示需求级别的关键短语和单词。这些定义与RFC2119中定义的术语一致。
3.2 MCTP 术语定义
就本文档而言,以下术语和定义适用。
3.2.1 Address Resolution Protocol
地址解析协议 ARP:指用于动态确定共享通信介质上设备地址的程序。
3.2.2 baseline transmission unit
基线传输单元:MCTP数据包中承载的数据包有效载荷所需的传输单元的公分母大小。基线传输单元大小的数据包保证在 MCTP 网络内是可路由的。
3.2.3 baseboard management controller
基板管理控制器BMC:基于IPMI的平台管理子系统中,由IPMI规范创造的术语,用于主管理控制器。有时也用作主板驻留管理控制器的通用名称,该控制器为平台管理子系统提供特定于主板的硬件监视和控制功能。
3.2.4 binary-coded decimal
二进制编码的十进制BCD:表示对十进制数的一种特定的二进制编码,其中二进制数中的每四个位(半字节)用于表示单个十进制数字,二进制数的最低有效四位对应于最低有效十进制数字。二进制值 0000b 到 1001b 分别表示十进制值 0 到 9。例如,使用 BCD 编码时,字节可以表示两位数的十进制数,其中字节的最高有效半字节(位 7:4)包含最高有效十进制数字的编码,最低有效半字节(位 3:0)包含最低有效十进制数字的编码(例如,BCD 编码中的 0010_1001b对应于十进制数 29)。
3.2.5 bridge
桥接:一般是指将一个计算机总线连接到另一个计算机总线或内部连接的电路和逻辑,允许一个上的代理访问另一个。在本文档中,除非另有说明,否则术语“桥接”应指 MCTP 桥接。
3.2.6 burst
突发:发射端点发送的连续多个基线传输单元数据包,这些基线传输单元数据包之间的延迟最小。
3.2.7 bus
总线:在共享公共物理层地址空间的一个或多个平台组件之间共享的物理寻址域。
3.2.8 bus owner
总线所有者:负责管理总线上的地址分配(可以是逻辑地址或物理地址)的一方(例如,在 MCTP 中,总线所有者是负责管理给定总线的 EID 分配的一方)。总线所有者可能还承担其他特定于介质的职责,例如分配实际地址。
3.2.9 byte
字节:8 位字。也称为字节。注意:PMCI 规范应使用术语byte,而不是octet。
3.2.10 endpoint
端点:见MCTP 端点。
3.2.11 endpoint ID
端点ID(EID)见MCTP 端点ID。
3.2.12 Globally Unique Identifier
全局唯一标识符GUID:UUID
3.2.13 host interface
主机接口:一种硬件接口和关联协议,由在主机处理器本地运行的软件使用,用于访问受管系统中管理子系统的硬件。
3.2.14 Inter-Integrated Circuit
内部集成电路 I2C:一种多主机、两线制、串行总线,最初由飞利浦半导体开发;现在由NXP Semiconductors维护。
3.2.15 Intelligent Platform Management Bus
智能平台管理总线IPMB:I2C 总线的架构、协议和实现的名称,该总线在基于 IPMI 的系统中提供“管理控制器”之间的通信路径。
3.2.16 Intelligent Platform Management Interface
智能平台管理接口IPMI:一组规范,定义了最初由IPMI发起人组织(Intel、Dell、HP和NEC)为服务器平台管理开发的接口和协议。
3.2.17 managed entity
受管实体:通过管理参数进行管理的物理或逻辑实体。物理实体的示例包括风扇、处理器、电源、电路卡、机箱等。逻辑实体的示例包括虚拟处理器、冷却域、系统安全状态等。
3.2.18 Management Component Transport Protocol
管理组件传输协议MCTP:本规范中定义的协议。
3.2.19 management controller
管理控制器 :一种微控制器或处理器,它聚合来自一个或多个受管设备的管理参数,并通过一个或多个管理数据模型使本地或远程软件或其他管理控制器可以访问这些参数。管理控制器还可以解释和处理与管理相关的数据,并在受管设备上启动与管理相关的操作。虽然为 PMCI 定义了本机数据模型,但它旨在能够支持其他数据模型,例如 CIM、IPMI 和特定于供应商的数据模型。用作管理控制器的微控制器或处理器也可以包含管理设备的功能。
3.2.20 managed device
受管设备:在本规范中,受管设备是指通常使用微控制器实现并通过消息传递协议访问的设备,用于访问一个或多个管理参数。受管设备提供的管理参数访问通常是使用抽象的接口和数据模型来实现的,而不是通过直接的“寄存器级”访问来实现的。受管设备响应管理请求,但不启动或聚合管理操作,除非与管理控制器(即,它是一个或多个管理控制器的附属设备)结合使用。
3.2.21 management parameter
管理参数:表示与受管实体关联的特性、功能、状态或控制点的特定基准。管理参数示例包括温度、速度、电压、开/关、链路状态、不可纠正的错误计数、设备电源状态等。