背景
当前产业对BMC平台网络功能提出如下诉求:
- 支持设置网口自适应优先级(当前固定网口自适应优先级为
Dedicated>ExternalPCIe>Ocp>Ocp2,同类型网口无法指定网口优先级,需要提供接口能力); - 支持设置内网网段(BMC内网网段为默认配置,其配置网段与客户管理网口的网段可能存在网段冲突,导致客户无法使用对应网段IP,如果网络规划好的机房使用了对应的网段,需要客户整改网络部署,整改成本高,需要BMC支持内网网段的设置接口);
整体方案
- BMC通过CSR配置初始网口优先级,新增导入导出项配置网口优先级;
- BMC通过三大接口支持内网网段的设置:定制化、导入导出、redfish接口;
评审点一:新增网口自适应优先级配置导入导出项
| 项目 | 值 |
|---|---|
| 导出项 | EthernetPort |
| 导出子项 | AdaptivePriority |
| 取值类型 | number |
| 属性类型 | ImportAndExport |
| 取值范围 | 1~16 |
| 默认值 | 16 |
| 含义说明 | 当前网口在同类别网口下的自适应优先级,数字越小优先级越高 |
| 导出后是否可以直接导入 | 是 |
评审点二:新增内网网段的出厂定制化项定制项、导入导出项和redfish接口
新增定制项详情如下:
| 项目 | 值 |
|---|---|
| 定制化项名称 | BMCSet_ChassisLan_SubNet |
| 归属组件 | bmc_network |
| 类型 | string |
| 默认值 | “” |
| 处理逻辑 | if (BMCSet_ChassisLan_SubNet!= “”) 设置内网网段为BMCSet_ChassisLan_SubNet的值 else 恢复到CSR配置值 |
| 说明 | 设置专用口内网通信的网段: 1.如果配置空字符串则恢复到CSR配置值 2.如果配置内网网段,网段范围不能和已有的IP地址冲突 |
新增配置导入导出项详情如下:
| 项目 | 值 |
|---|---|
| 导出项 | ChassisLan |
| 导出子项 | SubNet |
| 取值类型 | string |
| 属性类型 | ImportAndExport |
| 取值范围 | IP地址 |
| 默认值 | 无 |
| 含义说明 | 当前内网网口的网段 |
| 导出后是否可以直接导入 | 是 |
-
场景3:redfish接口
/redfish/v1/Managers/{ManagerId}/EthernetInterfaces/{EthernetInterfaceId}下新增OEM属性ChassisLanSubNet:
详细描述:
URI:/redfish/v1/Managers/{ManagerId}/EthernetInterfaces/{EthernetInterfaceId}
操作类型: GET/PATCH
新增属性:ChassisLanSubNet,类型为 string,用以指定本机内网网段
操作权限: Readonly/BasicSetting
属性详细说明:属性 类型 属性说明 ChassisLanSubNet string 指定本机内网网段 -
场景4:资源协作接口
bmc.kepler.Managers.EthernetInterfaces下新增方法SetChassisLanSubNet,用以设置内网网段
详细描述:
资源path:/bmc/kepler/Managers/${ManagerId}/EthernetInterfaces
资源interface:bmc.kepler.Managers.EthernetInterfaces
变化类型: 新增资源协作接口方法
应用场景:方法名称 变化类型 请求签名 请求参数说明 响应签名 响应参数说明 访问权限 SetChassisLanSubNet 新增方法 s:ChassisLanSubNet 用于机框内网通信的网段 无 无 BasicSetting
评审结论
通过,具体结论如下:
- 同意导入导出项
EthernetPort下新增导出子项AdaptivePriority,取值类型为number,属性类型为ImportAndExport,用以指定通类型网口下不同网口的自适应优先级; - 同意新增定制化项
BMCSet_ChassisLan_SubNet,类型为string,用以设置BMC内网网段; - 同意新增导入导出项
ChassisLan和导入导出子项SubNet,取值类型为string,属性类型为ImportAndExport,用以设置BMC内网网段; - 同意 redfish接口
/redfish/v1/Managers/{ManagerId}/EthernetInterfaces/{EthernetInterfaceId}下新增OEM属性ChassisLanSubNet,类型为 string,设置权限为BasicSetting,用以指定本机内网网段; - 同意在资源协作接口
bmc.kepler.Managers.EthernetInterfaces下新增方法SetChassisLanSubNet,用以设置内网网段,权限为BasicSetting,请求参数为ChassisLanSubNet,签名s