【已评审】Redfish资源Ports新增Oem属性评审

背景

redfish接口Ports资源当前仅实现部分标准属性,未实现历史NetworkPorts资源已实现的Oem属性。因此需要参照NetworkPorts接口,对相关Oem实现进行补齐,以供用户访问。

关联ISSUE

整体方案

  1. 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一致

  2. Redfish资源Ports新增Oem属性LldpService.LldpEnabled (PATCH接口)

评审点

  1. Redfish Ports资源新增Oem属性(GET接口)

    资源Uri:/redfish/v1/Chassis/{chassisid}/NetworkAdapters/{networkadapterid}/Ports/{portid}

  2. 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下标准属性重复,需删除。其他这种情况的属性,查到后也要对应删除

预审答案内容由AI生成,仅供参考:

帖子评审结论:【待评审】Redfish资源Ports新增Oem属性评审

帖子相关性:相关(Redfish 相关: 帖子内容包含 ‘redfish’ 关键字)

  • 总评审点数:2
  • Redfish 相关评审点:2
  • 其他评审点:0

总体结果:通过(2/2 个评审点通过)

评审点 1:Redfish Ports资源新增Oem属性(GET接口)【Redfish】

结果:通过

  • URI 示例生成:通过
  • Schema 验证:跳过(schema 定义文件缺失或仅含 JsonSchemaFile 指针)
    • Schema 来源:DMTF ✓,OEM ✗(实际参与校验:DMTF)
    • 入口 schema 文件:dmtf/Port.v1_5_0.json(DMTF 官方 schema(SchemaFiles/dmtf))
    • Schema 依据:静态校验直接依据:DMTF 官方 schema(SchemaFiles/dmtf)(dmtf/Port.v1_5_0.json)
  • 规则合规性检查:通过(18 项检查全部通过)

评审点 2:Redfish资源新增Oem属性(PATCH接口)【Redfish】

结果:通过

  • URI 示例生成:通过
  • Schema 验证:跳过(schema 定义文件缺失或仅含 JsonSchemaFile 指针)
    • Schema 来源:DMTF ✓,OEM ✗(实际参与校验:DMTF)
    • 入口 schema 文件:dmtf/Port.v1_5_0.json(DMTF 官方 schema(SchemaFiles/dmtf))
    • Schema 依据:静态校验直接依据:DMTF 官方 schema(SchemaFiles/dmtf)(dmtf/Port.v1_5_0.json)
  • 规则合规性检查:通过(18 项检查全部通过)