【已评审】web新增UB接口卡端口和光模块信息

背景

新产品需要在web界面展示UB接口卡的端口和光模块以及它们的互联信息。

关联ISSUE

暂无

整体方案

新增或修改已有web rest接口

评审点

1、修改UB接口卡列表接口
2、新增UB接口卡详情接口
3、新增UB接口卡端口信息接口
4、新增UB接口卡光模块信息接口
5、新增UB接口卡端口映射关系接口

前置评审:

【已评审】NPU虚拟网卡北向接口优化 - Interface SIG / Interface评审 - openUBMC 论坛
【已评审】新增webrest接口支持web显示UB接口卡和端口信息 - Interface SIG / Interface评审 - openUBMC 论坛

详细描述

评审点1:修改UB接口卡列表接口

webrest 接口

webrest 接口 /UI/Rest/System/Boards/UBInterfaceCard
变化类型:修改已有接口
操作类型:GET
应用场景:获取UB接口卡列表

修改内容:

  1. 新增 Id 属性
  2. 删除 UBPorts 属性

属性列表:

属性 类型 示例 描述
Id String “1” UB接口卡ID

响应示例:

[
    {
        "Id": "1",
        ...
    }
]

评审点2:新增UB接口卡详情接口

webrest 接口

webrest 接口 /UI/Rest/System/Boards/UBInterfaceCard/:cardid
变化类型:新增URI
操作类型:GET
应用场景:获取指定UB接口卡的详细信息

属性列表:

一级属性 二级属性 三级属性 类型 示例 描述
UBPorts / / Array UBPort口信息集合
PortId / Number 1 UBPort口id
LinkStatus / String “nolink” UBPort口link状态 链路状态,取值:nolink;linkup;linkdown
CableConnection / Number 0 线缆连接状态,0:线缆检测正常,1:线缆连接错误
RelatedProcessorPorts / Array 关联处理器端口列表
ProcessorSilkText String “NPU1” 处理器丝印信息
PortId String “Port5” 处理器端口Id
IODieId Number 0 IO Die Id
TransceiverUrls / / Array [“…”] 光模块Url列表

响应示例:

{
    "UBPorts": [
        {
            "PortId": 1,
            "LinkStatus": "nolink",
            "CableConnection": 0,
            "RelatedProcessorPorts": [
                {
                    "ProcessorSilkText": "NPU1",
                    "PortId": "Port5",
                    "IODieId": 0
                },
                {
                    "ProcessorSilkText": "NPU1",
                    "PortId": "Port5",
                    "IODieId": 1
                }
            ]
        },
        {
            "PortId": 2,
            "LinkStatus": "Down",
            "CableConnection": 0,
            "RelatedProcessorPorts": [
                {
                    "ProcessorSilkText": "NPU2",
                    "PortId": "Port6",
                    "IODieId": 0
                }
            ]
        }
    ],
    "TransceiverUrls": [
        "/UI/Rest/System/Boards/UBInterfaceCard/1/Transceivers/1",
        "/UI/Rest/System/Boards/UBInterfaceCard/1/Transceivers/2"
    ]
}

评审点3:新增UB接口卡端口信息接口

webrest 接口

webrest 接口 /UI/Rest/System/Boards/UBInterfaceCard/:cardid/Ports/:portnum
变化类型:新增接口
操作类型:GET
应用场景:获取指定UB网卡的端口统计信息
属性列表:

属性 类型 示例 描述
TXFrames number 1000 发送帧数
RXFrames number 1000 接收帧数
RXFCSErrors number 0 接收帧校验错误数
RXDiscards number 0 接收丢包数
TXDiscards number 0 发送丢包数
RetransmitCount number 0 发送重传次数

响应示例:

{
    "TXFrames": 1000,
    "RXFrames": 1000,
    "RXFCSErrors": 0,
    "RXDiscards": 0,
    "TXDiscards": 0,
    "RetransmitCount": 0
}

评审点4:新增UB接口卡光模块信息接口

webrest 接口

webrest 接口 /UI/Rest/System/Boards/UBInterfaceCard/:cardid/Transceivers/:id
变化类型:新增接口
操作类型:GET
应用场景:获取指定UB网卡的光模块详细信息
属性列表:

一级属性 二级属性 类型 示例 描述
TransceiverType / Array [“QSFP28”] 设备类型
PackagingType / String “100G” 打包类型
TXBiasCurrent / Array - Tx偏置电流
UpperThresholdCritical Number 100 严重告警阈值(上限)
ReadingMilliAmperes Number 50 当前发送偏置电流
LowerThresholdCritical Number 10 严重告警阈值(下限)
RXPower / Array - 接收功率
ReadingMilliWatts Number 1.5 当前接收功率
UpperThresholdCritical Number 3.0 严重告警阈值(上限)
LowerThresholdCritical Number 0.5 严重告警阈值(下限)
SerialNumber / String “OM9A010F14” 序列号
Temperature / Object - 温度
ReadingCelsius Number 35 当前温度
UpperThresholdCritical Number 75 严重告警阈值(上限)
LowerThresholdCritical Number 0 严重告警阈值(下限)
Manufacturer / String “Huawei” 厂商
DeviceType / String “Optical” 设备类型
TXPower / Array - 发射功率
ReadingMilliWatts Number 1.2 当前发送功率
UpperThresholdCritical Number 2.5 严重告警阈值(上限)
LowerThresholdCritical Number 0.3 严重告警阈值(下限)
ProductionDate / String “2024-01-01” 生产日期
Voltage / Object - 电压
ReadingVolts Number 3.3 当前电压
UpperThresholdCritical Number 3.6 严重告警阈值(上限)
LowerThresholdCritical Number 3.0 严重告警阈值(下限)
PartNumber / String “HW-OPT-9” 部件名称
TxFaultState / Boolean false 发送错误状态
MediumMode / String “Monomode” 传输模式
TransferDistance / String “10km” 传输距离
WaveLengthNanometer / String “1310” 纳米波长
SupportedSpeedsMbps / Array [] 支持的传输速率
ConnectorType / String “LC” 设备连接类型
RxLosState / Boolean false 接收丢失状态
SilkText / String “PIC-9” 丝印信息
响应示例:
{
    "TransceiverType": ["QSFP28"],
    "PackagingType": "100G",
    "TXBiasCurrent": [
        {
            "UpperThresholdCritical": 100,
            "ReadingMilliAmperes": 50,
            "LowerThresholdCritical": 10
        }
    ],
    "RXPower": [
        {
            "ReadingMilliWatts": 1.5,
            "UpperThresholdCritical": 3.0,
            "LowerThresholdCritical": 0.5
        }
    ],
    "SerialNumber": "OM9A010F14",
    "Temperature": {
        "ReadingCelsius": 35,
        "UpperThresholdCritical": 75,
        "LowerThresholdCritical": 0
    },
    "Manufacturer": "Huawei",
    "DeviceType": "Optical",
    "TXPower": [
        {
            "ReadingMilliWatts": 1.2,
            "UpperThresholdCritical": 2.5,
            "LowerThresholdCritical": 0.3
        }
    ],
    "ProductionDate": "2024-01-01",
    "Voltage": {
        "ReadingVolts": 3.3,
        "UpperThresholdCritical": 3.6,
        "LowerThresholdCritical": 3.0
    },
    "PartNumber": "HW-OPT-9",
    "TxFaultState": false,
    "MediumMode": "Monomode",
    "TransferDistance": "10km",
    "WaveLengthNanometer": "1310",
    "SupportedSpeedsMbps": [100000, 400000],
    "ConnectorType": "LC",
    "RxLosState": false,
    "SilkText": "PIC-9"
}

评审点5:新增UB接口卡端口映射关系接口

webrest 接口

webrest 接口 /UI/Rest/System/Boards/UBInterfaceCard/:cardid/PortMappings
变化类型:新增接口
操作类型:GET
应用场景:获取UB网卡下的所有光模块通道和网口通道的关联关系
说明:此接口属性定义与 /UI/Rest/System/NetworkAdapter/:adapterid/PortMappings 完全一致

属性列表:

一级属性 二级属性 三级属性 四级属性 类型 示例 描述
PortMappings / / Array - 网口的关联关系
PortId / Number 1 网口Id
LaneMap / Array - 此网口的通道关联关系
PortLaneId Number 1 网口通道Id
Transceiver / Object - 该网口通道关联的光模块
SilkText String “OSFP-2” 光模块丝印信息
Id Number 1 光模块Id
LaneId Number 7 光模块通道Id

响应示例:

{
    "PortMappings": [
        {
            "PortId": 1,
            "LaneMap": [
                {
                    "PortLaneId": 1,
                    "Transceiver": {
                        "SilkText": "OSFP-2",
                        "LaneId": 7,
                        "Id": 1
                    }
                },
                {
                    "PortLaneId": 2,
                    "Transceiver": {
                        "SilkText": "OSFP-2",
                        "LaneId": 8,
                        "Id": 1
                    }
                }
            ]
        },
        {
            "PortId": 2,
            "LaneMap": [
                {
                    "PortLaneId": 1,
                    "Transceiver": {
                        "SilkText": "OSFP-3",
                        "LaneId": 7,
                        "Id": 2
                    }
                },
                {
                    "PortLaneId": 2,
                    "Transceiver": {
                        "SilkText": "OSFP-3",
                        "LaneId": 8,
                        "Id": 2
                    }
                }
            ]
        }
    ]
}

评审结论

评审点1:修改UB接口卡列表接口

通过

  1. 同意修改 webrest 接口 /UI/Rest/System/Boards/UBInterfaceCard
  2. 同意新增 Id 属性,类型为 String
  3. 同意删除 UBPorts 属性,该信息移至详情接口 /UI/Rest/System/Boards/UBInterfaceCard/:cardid

评审点2:新增UB接口卡详情接口

通过

  1. 同意新增 webrest 接口 /UI/Rest/System/Boards/UBInterfaceCard/:cardid
  2. 同意接口属性定义,包括 UBPorts 数组(含 PortId、LinkStatus、CableConnection、RelatedProcessorPorts)和 TransceiverUrls 数组
  3. LinkStatus 取值规范 nolink/linkup/linkdown 与现有网络适配器接口保持一致
  4. CableConnection 取值 0/1 与现有接口保持一致
  5. RelatedProcessorPorts 数组中包含 ProcessorSilkText、PortId、IODieId 属性

评审点3:新增UB接口卡端口信息接口

通过

  1. 同意新增 webrest 接口 /UI/Rest/System/Boards/UBInterfaceCard/:cardid/Ports/:portnum
  2. 同意接口属性定义,包含 TXFrames、RXFrames、RXFCSErrors、RXDiscards、TXDiscards、RetransmitCount
  3. 统计信息属性命名与现有 NetworkAdapter 端口统计接口保持一致

评审点4:新增UB接口卡光模块信息接口

通过

  1. 同意新增 webrest 接口 /UI/Rest/System/Boards/UBInterfaceCard/:cardid/Transceivers/:id
  2. 同意光模块属性定义,涵盖 TransceiverType、PackagingType、TXBiasCurrent、RXPower、SerialNumber、Temperature、Manufacturer、DeviceType、TXPower、ProductionDate、Voltage、PartNumber、TxFaultState、MediumMode、TransferDistance、WaveLengthNanometer、SupportedSpeedsMbps、ConnectorType、RxLosState、SilkText
  3. 各属性结构与现有光模块接口保持一致

评审点5:新增UB接口卡端口映射关系接口

通过

  1. 同意新增 webrest 接口 /UI/Rest/System/Boards/UBInterfaceCard/:cardid/PortMappings
  2. 同意此接口属性定义与 /UI/Rest/System/NetworkAdapter/:adapterid/PortMappings 保持一致
  3. PortMappings 数组包含 PortId 和 LaneMap,LaneMap 包含 PortLaneId 和 Transceiver(SilkText、Id、LaneId)

遗留问题