第5章 管理接口命令集 - 页码98
深入分析 MCTP Transmission Unit Size (Configuration Identifier 03h)
MCTP Transmission Unit Size 配置项允许请求者为每个管理端点指定一个新的 MCTP 数据传输单元大小。这个配置是与每个端口相关的,适用于端口的 MCTP 数据包的传输大小。
命令操作流程
- 字段描述
- Port Identifier (PORTID):指定要更新的端口。
- Configuration Identifier (CID):指定要读取或设置的配置项。
-
MCTP Transmission Unit Size (MTUS):指定新的 MCTP 传输单元大小(以字节为单位),该大小将影响未来所有在该端口上执行的命令消息。
-
行为和约束
- 成功后执行: 一旦成功执行该命令,管理端点将在指定端口上更新 MCTP 传输单元的大小,用于未来的所有命令消息。
-
错误处理:
- 如果指定的传输单元大小不被支持,则管理端点将中止命令,并返回一个无效参数错误响应。
- 如果指定的端口标识符无效,则也会中止命令并返回错误。
-
额外限制:
- 在有命令未完成的情况下不应更改 MCTP 传输单元大小。如果更改发生时有其他请求消息仍未完成,可能导致未定义的行为。
- 如果改变传输单元大小后发起了回放控制原语(Replay Control Primitive),并且该回放的 MCTP 传输单元大小不同,也会导致未定义行为。
Asynchronous Event (AE) Configuration (Configuration Identifier 04h)
Asynchronous Event 配置项用于处理 异步事件(AE)和事件同步(AE Sync)。该配置包括两个关键的事件机制:
- AE Sync
- AEM Ack
AE Sync
- 触发条件: 当 Configuration Set 命令处理时,如果 AE Enable Data Structures 字段不为
0h
,且 AE Occurrence List Overflow bit 被清除为0
,则触发 AE 同步。 - 响应消息: AE 同步响应消息将包含所有启用的 AEs 当前状态,用于同步管理控制器和管理端点之间的 AEs 状态。
AEM Ack
- 触发条件: 当 Configuration Set 命令处理时,如果 AE Enable Data Structures 字段被清除为
0h
,且 AE Occurrence List Overflow bit 被清除为0
,则触发 AEM Ack。 -
在 AE Disarmed 状态下的行为: 如果在 AE Disarmed 状态下接收到 AEM Ack,并且在之前的 AE Armed 状态下发生了一个或多个 AE,则会丢弃这些 AE(即一旦管理控制器收到对应的 AEM,管理端点将不再重新传输这些 AE)。
-
响应消息: AEM Ack 的响应消息包含所有在 AE Disarmed 状态下发生的 AEs,用于重新同步管理控制器和管理端点之间的状态。
总结
- MCTP Transmission Unit Size 配置
- 管理端点可以通过该命令设置特定端口的 MCTP 传输单元大小,用于未来的命令消息传输。
-
需要注意在有其他请求未完成时不应更改传输单元大小,避免引发未定义的行为。
-
Asynchronous Event 配置
- AE Sync 和 AEM Ack 是两个异步事件机制,用于同步和确认异步事件的处理。
- AE Sync 用于同步所有启用的 AEs,而 AEM Ack 确认异步事件的接收,并清理在 AE Disarmed 状态下发生的 AEs。
如果您有任何其他问题,或希望进一步分析该规范的其他部分,请随时告诉我!