背景
新增资源树接口管理交换芯片,增加对交换芯片的调试方法,增加FMEA告警能力和调试接口,以满足BMC对交换芯片的管控.
关联ISSUE
无
整体方案
- Debug目录下新增资源协作路径和接口,用于lsw_main组件实现对单板交换芯片的配置及查询,其中该方法具体实现细节由组件内部进行封装, 开发、测试可通过mdbctl命令完成LSWM相关功能测试。
- kepler目录下新增资源协作接口及路径专门用于lsw_main组件实现对单板交换芯片的配置及查询,其中该方法具体实现细节由组件内部进行封装,客户及现网维护可通过ipmc命令对单板交换芯片进行配置及查询。
评审点
- 新增资源协作接口
bmc.kepler.Debug.LswMain.TrunkMgmt,新增对交换芯片Trunk管理能力的调试方法; - 变更资源协作接口
bmc.kepler.Debug.LswMain.LswMainDebug,新增对交换芯片ACL规则管理的调试方法,变更IIC读写数据方法的请求参数类型; - 变更资源协作接口
bmc.kepler.Debug.LswMain.PortMgmt,新增查询/设置端口默认Vlan的调试方法; - 新增资源协作接口
bmc.kepler.Debug.LswMain.FmeaMgmt,新增对交换芯片故障管理的调试方法; - 新增资源协作接口
bmc.kepler.Switch.Event, 新增对交换芯片端口Link故障和芯片故障告警相关属性; - 新增资源协作接口
bmc.kepler.Switch.Fmea,新增对交换芯片故障检测项设置/查询的方法;
详细描述
评审点1:新增资源协作接口 bmc.kepler.Debug.LswMain.TrunkMgmt
接口描述:新增接口用于调试交换芯片的Trunk管理能力。
新增方法
| 方法名称 | 请求签名 | 请求参数描述 | 响应签名 | 响应参数描述 | 方法描述 | 访问权限 |
|---|---|---|---|---|---|---|
| CreateTrunk | y | TrunkId: Trunk端口ID | b | Result: 方法执行成功或失败 | 创建一个Trunk端口 | BasicSetting |
| DeleteTrunk | y | TrunkId: Trunk端口ID | b | Result: 方法执行成功或失败 | 删除一个Trunk端口 | BasicSetting |
| GetTrunk | - | - | ay | TrunkId: Trunk端口ID列表 | 查询已创建的Trunk端口ID | ReadOnly |
| GetTrunkPorts | y | TrunkId: Trunk端口ID | as | Ports: 端口列表 | 获取指定Trunk端口的成员端口列表 | ReadOnly |
| GetAllTrunkPorts | - | - | a{yas} | TrunkId: Trunk端口ID Ports: 端口列表 |
获取所有Trunk端口的成员端口列表 | ReadOnly |
| AddPorts2Trunk | yas | TrunkId: Trunk端口ID Ports: 端口列表 |
b | Result: 方法执行成功或失败 | 添加成员端口到Trunk | BasicSetting |
| DelPortsFromTrunk | yas | TrunkId: Trunk端口ID Ports: 端口列表 |
b | Result: 方法执行成功或失败 | 从Trunk删除成员端口 | BasicSetting |
| GetLoadBalanceMode | yy | TrunkId: Trunk端口ID PktType: 报文类型 |
u | Mode: 负载均衡模式 | 获取Trunk端口指定报文类型的负载均衡模式 | ReadOnly |
| SetLoadBalanceMode | yyu | TrunkId: Trunk端口ID PktType: 报文类型 Mode: 负载均衡模式 |
b | Result: 方法执行成功或失败 | 设置Trunk端口指定报文类型的负载均衡模式 | BasicSetting |
新增接口影响
| 路径 | 新增接口影响 | CSR配置影响 | 持久化影响 | 其他影响 |
|---|---|---|---|---|
| /bmc/kepler/Debug/LswMain | 新增对交换芯片Trunk管理的调试方法 | 不涉及重名属性,无影响 | 不涉及持久化,无影响 | 需实现新增方法,属性当前暂不实现,仅提供默认值 |
评审点2:变更资源协作接口 bmc.kepler.Debug.LswMain.LswMainDebug
变更描述:
- 接口承载了交换芯片pcie通道、phy等模块的调试功能,新增方法属于调试功能的一部分;
IICReadData和IICWriteData请求签名变更使寄存器地址参数的数据宽度有U32调整为U64,在保证原功能不受影响的基础上,具备更好的可扩展性;
接口链接:bmc.kepler.Debug.LswMain.LswMainDebug接口定义
变更方法
| 变更类型 | 方法名称 | 请求签名 | 请求参数描述 | 响应签名 | 响应参数描述 | 方法描述 | 访问权限 | 变更影响 |
|---|---|---|---|---|---|---|---|---|
| 新增 | DiagCmd | s | 维测命令行具体命令 | u | 命令行执行结果 | 执行维测命令 | BasicSetting | 新增方法,无影响 |
| 新增 | SetAclTable | uussuuss | AclNum:Acl编号 RuleId:Acl规则索引 SMac:源MAC DMac:目的MAC EthType:以太类型 VlanId:Vlan Id Port:端口名称 RuleAction:匹配动作 |
b | Result: 命令行执行结果 | 配置ACL规则 | BasicSetting | 新增方法,无影响 |
| 新增 | GetAclTable | s | AclNum:Acl编号 | s | AclTable: ACL表 | 获取ACL表 | ReadOnly | 新增方法,无影响 |
| 新增 | DelAclRule | uu | AclNum:Acl编号 RuleId:Acl规则索引 |
b | Result: 命令行执行结果 | 删除指定ACL规则 | BasicSetting | 新增方法,无影响 |
| 新增 | GetAclStatistics | s | AclNum:Acl编号 | s | Statistics:统计数 | 获取ACL规则统计 | ReadOnly | 新增方法,无影响 |
| 新增 | ClearAclStatistics | uu | AclNum:Acl编号 RuleId:Acl规则索引 |
b | Result: 命令行执行结果 | 清除ACL规则统计 | BasicSetting | 新增方法,无影响 |
| 新增 | GetModuleStatistics | ss | ModuleName:模块名称 SubId:模块内部索引 |
s | Statistics: 模块统计 | 获取指定模块统计 | ReadOnly | 新增方法,无影响 |
| 变更 | IICReadData | t | RegAddr: 寄存器地址 | u | 读取的寄存器的值 | 通过IIC读取寄存器 | BasicSetting | 请求参数签名由u改为t,无业务影响 |
| 变更 | IICWriteData | tu | RegAddr: 寄存器地址Value: 写入的值 | b | 写入是否成功 | 通过IIC写寄存器 | BasicSetting | 请求参数签名由u改为t,无业务影响 |
变更接口影响
| 路径 | 变更接口影响 | CSR配置影响 | 持久化影响 | 其他影响 |
|---|---|---|---|---|
| /bmc/kepler/Debug/LswMain | 1. 新增方法无影响2. 变更IICReadData和IICWriteData的请求签名,无业务影响 |
不涉及重名属性,无影响 | 不涉及新增和废弃主键,无兼容性问题 | 需实现新增方法,属性当前暂不实现,仅提供默认值 |
评审点3:变更资源协作接口 bmc.kepler.Debug.LswMain.PortMgmt
变更描述:接口承载了交换芯片端口管理的调试功能,新增方法属于调试功能的一部分;
接口链接:bmc.kepler.Debug.LswMain.PortMgmt接口定义
变更方法
| 变更类型 | 方法名称 | 请求签名 | 请求参数描述 | 响应签名 | 响应参数描述 | 方法描述 | 访问权限 | 变更影响 |
|---|---|---|---|---|---|---|---|---|
| 新增 | SetPortDefaultVlan | su | Port:端口名称 Pvid:端口默认PVID |
b | Result:命令执行结果 | 设置端口的PVID | BasicSetting | 新增方法,无影响 |
| 新增 | GetPortDefaultVlan | s | Port:端口名称 | s | Pvid: 端口默认PVID | 获取端口的PVID | ReadOnly | 新增方法,无影响 |
| 新增 | GetPortMtu | s | Port:端口名称 | s | Mtu: 端口MTU | 获取端口的MTU | ReadOnly | 新增方法,无影响 |
变更接口影响
| 路径 | 变更接口影响 | CSR配置影响 | 持久化影响 | 其他影响 |
|---|---|---|---|---|
| /bmc/kepler/Debug/LswMain | 1. 新增方法无影响 | 不涉及重名属性,无影响 | 不涉及新增和废弃主键,无兼容性问题 | 需实现新增方法,属性当前暂不实现,仅提供默认值 |
评审点4:新增资源协作接口 bmc.kepler.Debug.LswMain.FmeaMgmt
接口描述:新增接口用于调试交换芯片的故障管理能力。
新增方法
| 方法名称 | 请求签名 | 请求参数描述 | 响应签名 | 响应参数描述 | 方法描述 | 访问权限 |
|---|---|---|---|---|---|---|
| GetFemaTaskInfo | s | GroupId:检测项GroupId信息 | s | FemaTaskInfo: 检测项详细信息 | 获取检测项信息 | ReadOnly |
| SetFmeaTaskEnable | su | TaskName:检测项名字 Enable:检测项使能状态 |
b | Result: 方法执行成功或失败 | 设置检测项使能状态 | BasicSetting |
| GetFmeaGroupInfo | - | - | s | GroupInfo: 检测项GroupID信息 | 获取检测项GroupID列表 | ReadOnly |
| SetFmeaTaskPeriod | sd | TaskName:检测项名字 Time:检测项运行周期 |
b | Result: 方法执行成功或失败 | 设置检测项检测周期 | BasicSetting |
| SetFmeaTaskPara | suu | TaskName:检测项名字 Pos:检测项参数位置, Val: 检测项参数 |
b | Result: 方法执行成功或失败 | 设置检测项参数 | BasicSetting |
| SetFmeaTaskMock | su | TaskName:检测项名字 MockMode:检测项打桩信息 |
b | Result: 方法执行成功或失败 | 设置检测项打桩模式 | BasicSetting |
| SetFmeaAlarmThreshold | su | TaskName:检测项名字 Threshold:检测项告警上报门限 |
b | Result: 方法执行成功或失败 | 设置检测项告警上报门限 | BasicSetting |
| SetFmeaClearanceThreshold | su | TaskName:检测项名字 Threshold:检测项告警恢复门限 |
b | Result: 方法执行成功或失败 | 设置检测项告警恢复门限 | BasicSetting |
| SetFmeaHealThreshold | su | TaskName:检测项名字 Threshold:检测项告警自愈次数 |
b | Result: 方法执行成功或失败 | 设置检测项告警自愈次数 | BasicSetting |
| SetAlarmSuppressionPeriod | su | TaskName:检测项名字 Time:检测项告警抑制检测周期 |
b | Result: 方法执行成功或失败 | 设置检测项告警抑制检测周期 | BasicSetting |
| SetAlarmSuppressionRatio | su | TaskName:检测项名字 Threshold:检测项告警抑制倍率 |
b | Result: 方法执行成功或失败 | 设置检测项告警抑制倍率 | BasicSetting |
| SetAlarmSuppressionThreshold | su | TaskName:检测项名字 Threshold:检测项告警抑制门限 |
b | Result: 方法执行成功或失败 | 设置检测项告警抑制门限 | BasicSetting |
| SetAlarmClearMaxThreshold | su | TaskName:检测项名字 Threshold:检测项告警恢复最大门限 |
b | Result: 方法执行成功或失败 | 设置检测项告警恢复最大门限 | BasicSetting |
新增接口影响
| 路径 | 新增接口影响 | CSR配置影响 | 持久化影响 | 其他影响 |
|---|---|---|---|---|
| /bmc/kepler/Debug/LswMain | 新增接口用于调试交换芯片的故障管理能力 | 不涉及重名属性,无影响 | 不涉及持久化,无影响 | 需实现新增方法,属性当前暂不实现,仅提供默认值 |
评审点5:新增资源协作接口 bmc.kepler.Switch.Event
接口描述:新增接口用于支撑交换芯片故障事件上报的能力.
新增属性
| 属性名称 | 签名 | 只读 | 变化通知 | 属性描述 | | | 访问权限 | 属性来源 | 持久化类型 | 易变属性 |
|---|---|---|---|---|---|---|---|---|---|
| LswFault | u | False | false | 私有属性,用于LSWFAULT告警,默认值为0 | RW | CSR | 复位持久化 | false | |
| LswError | u | False | false | 私有属性,用于LSWERROR告警,默认值为0 | RW | CSR | 复位持久化 | false | |
| LswMgmtLink | u | False | false | 私有属性,用于LSW的MGMT端口LinkDown告警,默认值为0 | RW | CSR | 复位持久化 | false | |
| LswCas1Link | u | False | false | 私有属性,用于LSW的Cas_1端口LinkDown告警,默认值为0 | RW | CSR | 复位持久化 | false | |
| LswCas2Link | u | False | false | 私有属性,用于LSW的Cas_2端口LinkDown告警,默认值为0 | RW | CSR | 复位持久化 | false | |
| LswCas3Link | u | False | false | 私有属性,用于LSW的Cas_3端口LinkDown告警,默认值为0 | RW | CSR | 复位持久化 | false | |
| LswCas4Link | u | False | false | 私有属性,用于LSW的Cas_4端口LinkDown告警,默认值为0 | RW | CSR | 复位持久化 | false | |
| LswCas5Link | u | False | false | 私有属性,用于LSW的Cas_5端口LinkDown告警,默认值为0 | RW | CSR | 复位持久化 | false | |
| LswCas6Link | u | False | false | 私有属性,用于LSW的Cas_6端口LinkDown告警,默认值为0 | RW | CSR | 复位持久化 | false | |
| LswCas7Link | u | False | false | 私有属性,用于LSW的Cas_7端口LinkDown告警,默认值为0 | RW | CSR | 复位持久化 | false | |
| LswCas8Link | u | False | false | 私有属性,用于LSW的Cas_8端口LinkDown告警,默认值为0 | RW | CSR | 复位持久化 | false | |
| LswBMC1Link | u | False | false | 私有属性,用于LSW的BMC_1端口LinkDown告警,默认值为0 | RW | CSR | 复位持久化 | false | |
| LswBMC2Link | u | False | false | 私有属性,用于LSW的BMC_2端口LinkDown告警,默认值为0 | RW | CSR | 复位持久化 | false | |
| LswBMC3Link | u | False | false | 私有属性,用于LSW的BMC_3端口LinkDown告警,默认值为0 | RW | CSR | 复位持久化 | false | |
| LswBMC4Link | u | False | false | 私有属性,用于LSW的BMC_4端口LinkDown告警,默认值为0 | RW | CSR | 复位持久化 | false | |
| LswBMC5Link | u | False | false | 私有属性,用于LSW的BMC_5端口LinkDown告警,默认值为0 | RW | CSR | 复位持久化 | false | |
| LswBMC6Link | u | False | false | 私有属性,用于LSW的BMC_6端口LinkDown告警,默认值为0 | RW | CSR | 复位持久化 | false | |
| LswBMC7Link | u | False | false | 私有属性,用于LSW的BMC_7端口LinkDown告警,默认值为0 | RW | CSR | 复位持久化 | false | |
| LswBMC8Link | u | False | false | 私有属性,用于LSW的BMC_8端口LinkDown告警,默认值为0 | RW | CSR | 复位持久化 | false | |
| LswCport1Link | u | False | false | 私有属性,用于LSW的Cport_1端口LinkDown告警,默认值为0 | RW | CSR | 复位持久化 | false | |
| LswCport2Link | u | False | false | 私有属性,用于LSW的Cport_2端口LinkDown告警,默认值为0 | RW | CSR | 复位持久化 | false | |
| LswCport3Link | u | False | false | 私有属性,用于LSW的Cport_3端口LinkDown告警,默认值为0 | RW | CSR | 复位持久化 | false | |
| LswCport4Link | u | False | false | 私有属性,用于LSW的Cport_4端口LinkDown告警,默认值为0 | RW | CSR | 复位持久化 | false | |
| LswCport5Link | u | False | false | 私有属性,用于LSW的Cport_5端口LinkDown告警,默认值为0 | RW | CSR | 复位持久化 | false | |
| LswCport6Link | u | False | false | 私有属性,用于LSW的Cport_6端口LinkDown告警,默认值为0 | RW | CSR | 复位持久化 | false | |
| LswCport7Link | u | False | false | 私有属性,用于LSW的Cport_7端口LinkDown告警,默认值为0 | RW | CSR | 复位持久化 | false | |
| LswCport8Link | u | False | false | 私有属性,用于LSW的Cport_8端口LinkDown告警,默认值为0 | RW | CSR | 复位持久化 | false | |
| LswSW510GELink | u | False | false | 私有属性,用于LSW的SW5_10GE端口LinkDown告警,默认值为0 | RW | CSR | 复位持久化 | false | |
| LswSW410GELink | u | False | false | 私有属性,用于LSW的SW4_10GE端口LinkDown告警,默认值为0 | RW | CSR | 复位持久化 | false | |
| LswSW4CportLink | u | False | false | 私有属性,用于LSW的SW4_Cport端口LinkDown告警,默认值为0 | RW | CSR | 复位持久化 | false | |
| LswSW5CportLink | u | False | false | 私有属性,用于LSW的SW5_Cport端口LinkDown告警,默认值为0 | RW | CSR | 复位持久化 | false | |
| LswSMMOtherLink | u | False | false | 私有属性,用于LSW的SMM_Other端口LinkDown告警,默认值为0 | RW | CSR | 复位持久化 | false |
新增接口影响
| 路径 | 新增接口影响 | CSR配置影响 | 持久化影响 | 其他影响 |
|---|---|---|---|---|
| /bmc/kepler/Switch/:id | 新增接口用于交换芯片的故障事件信息上报 | 不涉及重名属性,无影响 | 复位持久化,无影响 | 无影响 |
评审点6:新增资源协作接口 bmc.kepler.Switch.Fmea
接口描述:新增接口用于交换芯片故障检测项设置/查询的能力
新增方法
| 方法名称 | 请求签名 | 请求参数描述 | 响应签名 | 响应参数描述 | 方法描述 | | | 访问权限 |
|---|---|---|---|---|---|---|---|
| GetFemaInfo | s | GroupId: 检测项GroupId信息 | s | Result: 检测项详细信息 | 获取检测项信息 | ReadOnly | |
| SetFmeaEnable | suu | TaskName: 检测项名字 Enable: 检测项使能状态 PersistType: 持久化类型 |
b | Result: 方法执行成功或失败 | 设置检测项使能状态 | BasicSetting |
新增接口影响
| 路径 | 新增接口影响 | CSR配置影响 | 持久化影响 | 其他影响 |
|---|---|---|---|---|
| /bmc/kepler/Switch/:id | 新增接口用于调试交换芯片的故障管理能力 | 不涉及重名属性,无影响 | 可选持久化类型,无影响 | 需实现新增方法,属性当前暂不实现,仅提供默认值 |
是否准备好AI预审
是