【已评审】WEB支持NPU虚拟网卡光模块信息显示

背景

新机型NPU虚拟网卡的网口和光模块在数量和连接关系等方面跟旧机型存在较大差异,原有的北向接口无法满足新的相关信息显示

关联ISSUE

BMC支持获取并显示网口及其光模块拓扑关系信息

整体方案

新增北向接口

评审点

1、web新增相关光模块界面

2、web新增网口Lane与光模块Lane的关联关系

3、web新增网口关联处理器、redfish网口资源新增关联处理器端口

4、redfish光模块资源新增光模块Lane与网口Lane的关联关系

详细描述

场景1:web新增相关光模块界面

光模块如果按照普通网卡的方式(跟随端口信息)呈现,会造成光模块信息冗余。

(1)web界面
NPU虚拟网卡的光模块作为单独的界面呈现

页签点开后,单个光模块的信息保持与原接口一致

(2)webrest

URL:/UI/Rest/System/NetworkAdapter/:adapterId

变化类型:新增属性

操作类型:GET

应用场景:获取网络适配器关联的光模块列表

字段 字段说明 类型
TransceiverUrls 光模块Url列表 Array

响应示例:

{
    "TransceiverUrls": [
        "/UI/Rest/System/NetworkAdapter/PCIeCard6(SP680)/Transceivers/1",
        "/UI/Rest/System/NetworkAdapter/PCIeCard6(SP680)/Transceivers/2",
        "/UI/Rest/System/NetworkAdapter/PCIeCard6(SP680)/Transceivers/3",
        "/UI/Rest/System/NetworkAdapter/PCIeCard6(SP680)/Transceivers/4"
    ]
}

URL:/UI/Rest/System/NetworkAdapter/:adapterId/Transceivers/:Id

变化类型:新增接口

操作类型:GET

应用场景:获取光模块信息

字段 字段说明 类型
Manufacturer 厂商 String
PartNumber 部件名称 String
SerialNumber 序列号 String
ProductionDate 生产日期 String
TransceiverType 设备类型 String
PackagingType 打包类型 String
MediumMode 传输模式 String
WaveLengthNanometer 纳米波长 Number
SupportedSpeedsMbps 支持的传输速率 Array
Indentifier 标识 String
DeviceType 设备类型 String
ConnectorType 设备连接类型 String
TransferDistance 传输距离 Number
RxLosState 接收丢失状态 Boolean
TxFaultState 发送错误状态 Boolean
Temperature.ReadingCelsius 当前温度 Number
Temperature.LowerThresholdCritical 严重告警阈值(下限) Number
Temperature.UpperThresholdCritical 严重告警阈值(上限) Number
Voltage.ReadingVolts 当前电压 Number
Voltage.LowerThresholdCritical 严重告警阈值(下限) Number
Voltage.UpperThresholdCritical 严重告警阈值(上限) Number
TXBiasCurrent.ReadingMilliAmperes 当前发送偏置电流 Array
TXBiasCurrent.LowerThresholdCritical 严重告警阈值(下限) Number
TXBiasCurrent.UpperThresholdCritical 严重告警阈值(上限) Number
RXPower.ReadingMilliWatts 当前接收功率 Array
RXPower.UpperThresholdCritical 严重告警阈值(下限) Number
RXPower.LowerThresholdCritical 严重告警阈值(上限) Number
TXPower.ReadingMilliWatts 当前发送功率 Array
TXPower.LowerThresholdCritical 严重告警阈值(下限) Number
TXPower.UpperThresholdCritical 严重告警阈值(上限) Number

(3)资源协作接口

path:/bmc/kepler/Systems/:SystemID/NetworkAdapters/:ID/Ports/:ID/OpticalModule

interface:bmc.kepler.Systems.OpticalModule

变化类型:新增属性

属性名称 变化类型 签名 读写权限 变化通知 属性说明 备注
Id 新增属性 y 只读 R:ReadOnly 该光模块在当前网卡下的逻辑ID,从0开始
SilkText 新增属性 s 只读 R:ReadOnly 光模块丝印信息

场景2:web新增网口Lane与光模块Lane的关联关系

普通网卡的端口属性仍然保持完整光模块信息,NPU虚拟网卡端口属性的光模块信息只保留端口Lane与光模块Lane的关联关系

(1)web界面

(2)webrest接口

URL:/UI/Rest/System/NetworkAdapter/:adapterId/NetworkPorts/:portid

变化类型:新增属性

操作类型:GET

应用场景:获取网口Lane关联的光模块Lane信息

字段 字段说明 类型
LaneMappings 网口通道的映射关系 Array
    LaneId 网口通道Id Number
        RelatedTransceiverLane 该网口通道关联的光模块通道 object
            TransceiverSilkText 该网口通道关联的光模块丝印信息 String
            TransceiverLaneId 该网口通道关联的光模块通道Id Number

响应示例

{
    "LaneMappings": [
        {
            "LaneId": 1,
            "RelatedTransceiverLane": {
                "TransceiverSilkText": "QSFP 1",
                "TransceiverLaneId": 1
            }
        },
        {
            "LaneId": 2,
            "RelatedTransceiverLane": {
                "TransceiverSilkText": "QSFP 2",
                "TransceiverLaneId": 1
            }
        }
    ]
}

(3)资源协作接口

path:/bmc/kepler/Systems/:SystemID/NetworkAdapters/:ID/Ports/:ID

interface:bmc.kepler.Systems.NetworkPort.RelatedItems

变化类型:新增属性

属性名称 变化类型 签名 读写权限 变化通知 属性说明 备注
TransceiverLanes 新增属性 a(sy) 只读 R:ReadOnly 该网口关联的光模块丝印信息及其通道ID。数组元素的第1个参数表示光模块丝印信息,第2个参数表示光模块通道ID。举例:[(OSFP1,1),(OSFP1,2),(OSFP2,3),(OSFP2,4)]表示该网口关联当前网卡下OSFP1的通道1/2、OSFP2的通道3/4

场景3:web新增网口关联处理器、redfish网口资源新增关联处理器端口

(1)web界面

(2)webrest

URL:/UI/Rest/System/NetworkAdapter/:adapterId

变化类型:新增属性

操作类型:GET

应用场景:获取关联处理器

字段 字段说明 类型
RelatedProcessorPorts 关联处理器端口列表 Array
    ProcessorSilkText 处理器丝印信息 String
    PortId 处理器端口的硬件定义标识符 String
    IODieId 处理器端口归属的IO DieId Number

响应示例

{
    "PortProperties": [
        {
            "PhysicalPortNumber": 1,
            "LinkStatus": "Disconnected",
            "MediaType": "Optical",
            "InterfaceType": "Physical",
            ...
            "RelatedProcessorPorts": [
                {
                    "ProcessorSilkText": "NPU1",
                    "PortId": "Port5",
                    "IODieId": 0
                },
                {
                    "ProcessorSilkText": "NPU1",
                    "PortId": "Port5",
                    "IODieId": 1
                }
            ]
        }
    ]
}

(3)资源协作接口

1、path:/bmc/kepler/Systems/:SystemID/NetworkAdapters/:ID/Ports/:ID

interface:bmc.kepler.Systems.NetworkPort.RelatedItems

变化类型:新增接口、属性

属性名称 变化类型 签名 读写权限 变化通知 属性说明 备注
ProcessorPorts 新增属性 a(sy) 只读 R:ReadOnly 该网口关联的处理器及其端口。数组元素的第1个参数表示处理器丝印,第2个参数表示处理器端口的逻辑ID。举例:[(“NPU1”, 0),(“NPU1”, 1)]表示该网口关联NPU1的第0、1个端口

2、path:/bmc/kepler/Systems/:SystemID/Processors/NPU/:ID/Ports/:ID

interface:bmc.kepler.Systems.Processor.Port

变化类型:新增path/interface

属性名称 变化类型 签名 读写权限 变化通知 属性说明 备注
Id 新增属性 y 只读 R:ReadOnly 处理器端口逻辑ID,从0开始
PortId 新增属性 s 只读 R:ReadOnly 端口硬件定义标识符
IODieId 新增属性 y 只读 R:ReadOnly 此端口归属的IO DieId

场景4:redfish光模块资源新增光模块Lane与网口Lane的关联关系

(1)资源协作接口

path:/bmc/kepler/Systems/:SystemID/NetworkAdapters/:ID/Ports/:ID/OpticalModule

interface:bmc.kepler.Systems.OpticalModule.RelatedItems

变化类型:新增属性

属性名称 变化类型 签名 读写权限 变化通知 属性说明 备注
NetworkPortLanes 新增属性 a(yy) 只读 R:ReadOnly 该光模块关联网口的ID以及关联网口的通道ID。数组元素的第1个参数表示网口逻辑ID,第2个参数表示网口通道ID。举例:[(1,1),(2,2),(1,3),(2,4)]表示该光模块关联当前网卡下第1个网口的通道1/3、第2个网口的通道2/4

评审结论

场景1:web新增光模块界面
1、对于NPU虚拟网卡,同意web新增光模块界面。其他普通网卡保持现状

2、同意在URL:/UI/Rest/System/NetworkAdapter/:adapterId新增以下属性
操作类型:GET

字段 字段说明 类型
TransceiverUrls 光模块Url列表 Array

3、同意新增URL:/UI/Rest/System/NetworkAdapter/:adapterId/Transceivers/:Id
操作类型:GET

字段 字段说明 类型
Manufacturer 厂商 String
PartNumber 部件名称 String
SerialNumber 序列号 String
ProductionDate 生产日期 String
TransceiverType 设备类型 String
PackagingType 打包类型 String
MediumMode 传输模式 String
WaveLengthNanometer 纳米波长 Number
SupportedSpeedsMbps 支持的传输速率 Array
Indentifier 标识 String
DeviceType 设备类型 String
ConnectorType 设备连接类型 String
TransferDistance 传输距离 Number
RxLosState 接收丢失状态 Boolean
TxFaultState 发送错误状态 Boolean
Temperature.ReadingCelsius 当前温度 Number
Temperature.LowerThresholdCritical 严重告警阈值(下限) Number
Temperature.UpperThresholdCritical 严重告警阈值(上限) Number
Voltage.ReadingVolts 当前电压 Number
Voltage.LowerThresholdCritical 严重告警阈值(下限) Number
Voltage.UpperThresholdCritical 严重告警阈值(上限) Number
TXBiasCurrent.ReadingMilliAmperes 当前发送偏置电流 Array
TXBiasCurrent.LowerThresholdCritical 严重告警阈值(下限) Number
TXBiasCurrent.UpperThresholdCritical 严重告警阈值(上限) Number
RXPower.ReadingMilliWatts 当前接收功率 Array
RXPower.UpperThresholdCritical 严重告警阈值(下限) Number
RXPower.LowerThresholdCritical 严重告警阈值(上限) Number
TXPower.ReadingMilliWatts 当前发送功率 Array
TXPower.LowerThresholdCritical 严重告警阈值(下限) Number
TXPower.UpperThresholdCritical 严重告警阈值(上限) Number

4、同意新增以下属性
path:/bmc/kepler/Systems/:SystemID/NetworkAdapters/:ID/Ports/:ID/OpticalModule
interface:bmc.kepler.Systems.OpticalModule

属性名称 变化类型 签名 读写权限 变化通知 属性说明 备注
Id 新增属性 y 只读 R:ReadOnly 该光模块在当前网卡下的逻辑ID,从0开始
SilkText 新增属性 s 只读 R:ReadOnly 光模块丝印信息

场景2:web新增网口Lane与光模块Lane的关联关系
1、同意web新增网口Lane与光模块Lane的关联关系。在网卡详情中新增关联拓扑页签,点击可查看网口和光模块详情

2、同意在URL:/UI/Rest/System/NetworkAdapter/:adapterId/NetworkPorts/:portid 新增以下属性
操作类型:GET

字段 字段说明 类型
LaneMappings 网口通道的映射关系 Array
    LaneId 网口通道Id Number
        RelatedTransceiverLane 该网口通道关联的光模块通道 object
            TransceiverSilkText 该网口通道关联的光模块丝印信息 String
            TransceiverLaneId 该网口通道关联的光模块通道Id Number

3、同意新增以下资源协作接口
path:/bmc/kepler/Systems/:SystemID/NetworkAdapters/:ID/Ports/:ID(已有)
interface:bmc.kepler.Systems.NetworkPort.RelatedItems
变化类型:新增接口、属性

属性名称 变化类型 签名 读写权限 变化通知 属性说明 备注
TransceiverLanes 新增属性 a(sy) 只读 R:ReadOnly 该网口关联的光模块丝印信息及其通道ID。数组元素的第1个参数表示光模块丝印信息,第2个参数表示光模块通道ID。举例:[(OSFP1,1),(OSFP1,2),(OSFP2,3),(OSFP2,4)]表示该网口关联当前网卡下OSFP1的通道1/2、OSFP2的通道3/4

场景3:web新增网口关联处理器、redfish网口资源新增关联处理器端口
1、同意web新增网口关联处理器显示,显示效果如下

2、同意在URL:/UI/Rest/System/NetworkAdapter/:adapterId的PortProperties数组属性下新增以下属性
操作类型:GET

字段 字段说明 类型
RelatedProcessorPorts 关联处理器端口列表 Array
    ProcessorSilkText 处理器丝印信息 String
    PortId 处理器端口的硬件定义标识符 String
    IODieId 处理器端口归属的IO DieId Number

3、同意新增以下资源协作接口
path:/bmc/kepler/Systems/:SystemID/NetworkAdapters/:ID/Ports/:ID(已有)
interface:bmc.kepler.Systems.NetworkPort.RelatedItems
变化类型:新增接口、属性

属性名称 变化类型 签名 读写权限 变化通知 属性说明 备注
ProcessorPorts 新增属性 a(sy) 只读 R:ReadOnly 该网口关联的处理器及其端口。数组元素的第1个参数表示处理器丝印,第2个参数表示处理器端口的逻辑ID。举例:[(“NPU1”, 0),(“NPU1”, 1)]表示该网口关联NPU1的第0、1个端口

4、同意新增以下资源协作接口
path:/bmc/kepler/Systems/:SystemID/Processors/NPU/:ID/Ports/:ID
interface:bmc.kepler.Systems.Processor.Port
变化类型:新增path/interface

属性名称 变化类型 签名 读写权限 变化通知 属性说明 备注
Id 新增属性 y 只读 R:ReadOnly 处理器端口逻辑ID,从0开始
PortId 新增属性 s 只读 R:ReadOnly 端口硬件定义标识符
IODieId 新增属性 y 只读 R:ReadOnly 此端口归属的IO DieId

场景4:redfish光模块资源新增光模块Lane与网口Lane的关联关系
1、同意新增以下资源协作接口
path:/bmc/kepler/Systems/:SystemID/NetworkAdapters/:ID/Ports/:ID/OpticalModule(已有)
interface:bmc.kepler.Systems.OpticalModule.RelatedItems
变化类型:新增接口、属性

属性名称 变化类型 签名 读写权限 变化通知 属性说明 备注
NetworkPortLanes 新增属性 a(yy) 只读 R:ReadOnly 该光模块关联网口的ID以及关联网口的通道ID。数组元素的第1个参数表示网口逻辑ID,第2个参数表示网口通道ID。举例:[(1,1),(2,2),(1,3),(2,4)]表示该光模块关联当前网卡下第1个网口的通道1/3、第2个网口的通道2/4

遗留问题

1、/UI/Rest/System/NetworkAdapter/:adapterId不返回光模块Id,而是返回URL
— 已修改为返回URL
2、光模块界面考虑画图或者增加气泡
— 已增加
3、避免在rackmount通过资源协作接口来索引光模块信息,要提升接口访问效率
— 已修改,资源协作接口直接体现部件丝印信息
4、关联关系的属性通过新增interface的方式承载
— 通过后缀添加.RelatedItems新增接口
5、确认是否使用Related还是Connected
— 与产品确认,统一使用Related表述
6、采用ControllerId而不是使用DieId
— 两者范围不同,并且与产品对齐建议采用IO DieId字样

1 个赞