背景
redfish接口Ports资源当前仅实现部分标准属性,未实现历史NetworkPorts资源已实现的Oem属性。因此需要参照NetworkPorts接口,对相关Oem实现进行补齐,以供用户访问。
关联ISSUE
整体方案
-
Redfish资源Ports新增Oem属性(GET接口)PortType,PortMaxSpeed,PortName,InterfaceType,BDF,LldpService,FirmwarePackageVersion,DriverVersion,DriverName,OpticalModule,PortTechnology,FCId,LinkSpeedGbps,RelatedPort,StatisticInfo。除OpticalModule [{@odata.id}] 属性值改为redfish/v1/Chasis/:chassisid/Transceivers/OpticalModule_:opticalid外,其余Oem属性与NetworkPorts一致
-
Redfish资源Ports新增Oem属性LldpService.LldpEnabled (PATCH接口)
评审点
-
Redfish Ports资源新增Oem属性(GET接口)
资源Uri:/redfish/v1/Chassis/{chassisid}/NetworkAdapters/{networkadapterid}/Ports/{portid}
-
Redfish Ports资源新增Oem属性(PATCH接口)
资源Uri:/redfish/v1/Chassis/{chassisid}/NetworkAdapters/{networkadapterid}/Ports/{portid}
属性:LldpService. LldpEnabled
详细描述
评审点1 :Redfish Ports 资源新增Oem 属性(GET 接口)
资源Uri: /redfish/v1/Chassis/{chassisid}/NetworkAdapters/{networkadapterid}/Ports/{portid}
属性评审点
| 属性名 | 类型 | **示例/**取值约束 | readonly | 易变属性 | 实现 PATCH | 操作权限 | 描述 |
|---|---|---|---|---|---|---|---|
| Oem | object | / | / | / | / | / | 厂商自定义资源 |
| Links | object | / | / | / | / | / | / |
| openUBMC | object | / | / | / | / | / | 厂商标志 |
| PortType | string | 枚举值: OpticalPort , ElectricalPort | true | 否 | 否 | ReadOnly | 指定网络端口的网口类型 |
| PortMaxSpeed | string | 100GE | true | 否 | 否 | ReadOnly | 指定网络端口的最大速率 |
| PortName | string | eno1 | true | 否 | 否 | ReadOnly | 指定网络端口的名称 |
| InterfaceType | string | 枚举值: “Virtual”, “Physical” | true | 否 | 否 | ReadOnly | 指定网络端口的类型 |
| BDF | string | 0000:96:00.0 | true | 否 | 否 | ReadOnly | 指定网络端口的BDF |
| LldpService | object | / | / | / | / | / | 指定网络端口的网卡的Lldp服务,仅在部分PCIe网卡下返回网卡lldp使能状态和工作模式,其他网卡返回null |
| LldpEnabled | boolean | true/false | false | 否 | 是 | Read&Write | Lldp使能 |
| WorkMode | string | Tx | true | 否 | 否 | ReadOnly | 工作模式 |
| FirmwarePackageVersion | string | 100.0.1.3 | true | 否 | 否 | ReadOnly | 指定网络端口的固件版本。和网络适配器下的固件版本属性含义相同,但网卡有多芯片的情况下,同一张卡下的不同端口可能有不同固件版本,建议使用端口的固件版本 |
| DriverVersion | string | 6.6.0-98.0.0.103.oe2403sp2.aarc | true | 否 | 否 | ReadOnly | 指定网络端口的驱动版本 说明: 和网络适配器下的驱动版本属性含义相同,但网卡有多芯片的情况下,同一张卡下的不同端口可能有不同驱动版本,建议使用端口的驱动版本。 |
| DriverName | string | hns3 | true | 否 | 否 | ReadOnly | 指定网络端口的驱动名称 说明: 和网络适配器下的驱动名称属性含义相同,但网卡有多芯片的情况下,同一张卡下的不同端口可能有不同驱动名称,建议使用端口的驱动名称。 |
| OpticalModule | object | / | / | / | / | / | 指向该网口上接的光模块资源。如果网口不是OpticalPort或者没有接光模块,则不显示该属性 |
| @odata.id | string | redfish/v1/Chasis/:chassisid/Transceivers/OpticalModule_:opticalid | true | 否 | 否 | ReadOnly | Transceivers路径 |
| PortTechnology | string | 枚举值: Ethernet, FibreChannel, iSCSI, FcoE, OPA, IB | true | 否 | 否 | ReadOnly | 指定网络端口的网络协议 |
| FCId | string | - | true | 否 | 否 | ReadOnly | FC卡的ID,没有则null |
| LinkSpeedGbps | integer | 0 | true | 否 | 否 | ReadOnly | 指定网络端口的速率,仅支持FC卡 |
| RelatedPort | object | {odata.id} | true | 否 | 否 | ReadOnly | 指定网络端口关联的以太网口资源链接 |
| StatisticInfo | object | / | / | / | / | / | 指定HBA卡网络端口的统计信息,如果非HBA卡,则不显示 |
| TXRateGbps | integer | 0 | true | 否 | 否 | ReadOnly | |
| RXRateGbps | integer | 0 | true | 否 | 否 | ReadOnly | |
| RateNegotiationStage | string | Negotiating | true | 否 | 否 | ReadOnly | |
| OpticalModuleEnabled | boolean | True | true | 否 | 否 | ReadOnly | |
| WorkingRate | integer | null | true | 否 | 否 | ReadOnly | |
| WorkMode | string | loop | true | 否 | 否 | ReadOnly | |
| PeerDeviceCredit | string | 0 | true | 否 | 否 | ReadOnly | |
| LocalDeviceCredit | string | 0 | true | 否 | 否 | ReadOnly | |
| PortStatus | string | WaitSignal | true | 否 | 否 | ReadOnly |
Get 响应示例
"Links": {
"Oem": {
"OpenUBMC": {
"Processors": null,
"PortType": "OpticalPort",
"PortMaxSpeed": "100GE",
"PortName": "enp150s0f0",
"InterfaceType": null,
"BDF": "0000:96:00.0",
"LldpService": {
"LldpEnabled": true,
"WorkMode": "Tx"
},
"FirmwarePackageVersion": "100.0.1.3",
"DriverVersion": "100.0.1.2",
"DriverName": "hinic5",
"OpticalModule": {
"@odata.id": "/redfish/v1/Chassis/1/Transceivers/OpticalModule_PCIeCard6(SP235)Port1"
},
"PortTechnology": "Ethernet",
"FCId": null,
"LinkSpeedGbps": null,
"RelatedPort": {
"@odata.id": "/redfish/v1/Systems/1/EthernetInterfaces/PCIeCard6(SP235)Port1"
},
"StatisticInfo": {
"TXRateGbps": 0,
"RXRateGbps": 0,
"RateNegotiationStage": "Negotiating",
"OpticalModuleEnabled": true,
"WorkingRate": null,
"WorkMode": "loop",
"PeerDeviceCredit": 0,
"LocalDeviceCredit": 0,
"PortStatus": "WaitSignal"
}
}
}
}
评审点2: Redfish Ports 资源新增Oem 属性(PATCH 接口)
资源Uri: /redfish/v1/Chassis/{chassisid}/NetworkAdapters/{networkadapterid}/Ports/{portid}
属性评审点: LldpService. LldpEnabled
| 属性名 | 类型 | 示例/取值约束 | readonly | 易变属性 | 实现PATCH | 操作权限 | 描述 |
|---|---|---|---|---|---|---|---|
| LldpService. LldpEnabled | Boolean | true/false | false | 否 | 是 | Read&write | 指定网络端口的网卡的Lldp服务是否开启 |
PATCH 发送示例:
"Links":{
"Oem":{
"OpenUBMC": {
"LldpService": {
"LldpEnabled": true
}
}
}
}
响应结果:Oem中,LldpService. LldpEnabled 设置为true
是否准备好AI预审
是
评审结论
遗留问题闭环后通过
遗留问题
LldpService.LldpEnabled属性与Ports下标准属性重复,需删除。其他这种情况的属性,查到后也要对应删除