LLDP in Redfish
The Redfish chassis schema provides a structured and standardized way to represent essential information about the physical infrastructure of computing systems (the NVIDIA® BlueField® Platform for our purposes), offering valuable insights for system administrators, data center operators, and management software developers.
The LLDP schema provides the ability to enable/disable the LLDP in BMC and to get LLDP information from the BMC and from peer devices.
curl -k -u root:'<password>' -H 'Content-Type: application/json' -X GET https://<bmc_ip>/redfish/v1/Managers/Bluefield_BMC/DedicatedNetworkPorts/1
Output example:
{
"@odata.id": "/redfish/v1/Managers/Bluefield_BMC/DedicatedNetworkPorts/1",
"@odata.type": "#Port.v1_7_0.Port",
"Ethernet": {
"LLDPEnabled": true,
"LLDPReceive": {
"ChassisId": "MAC: 8c:85:c1:a2:ae:80",
"ChassisIdSubtype": 4,
"ManagementAddressIPv4": "10.60.7.238",
"ManagementVlanId": 95,
"PortId": "Ifname: 1/1/5",
"PortIdSubtype": 5,
"SystemCapabilities": [
"Bridge",
"Router"
],
"SystemDescription": "Aruba JL676A PL.10.13.0005",
"SystemName": "MTL-T-F0-LAB-ORMANCE-SW-7-238"
},
"LLDPTransmit": {
"ChassisId": "MAC: 94:6d:ae:5c:9d:cd",
"ChassisIdSubtype": 4,
"ManagementVlanId": 4095,
"PortId": "MAC: 94:6d:ae:5c:9d:cd",
"PortIdSubtype": 3,
"SystemCapabilities": [
"Station"
],
"SystemDescription": "Linux dpu-bmc 5.15.50-a838e3d #1 SMP Wed Mar 27 10:44:16 UTC 2024 armv7l",
"SystemName": "dpu-bmc"
}
},
"Id": "1",
"Links": {
"EthernetInterfaces": [
{
"@odata.id": "/redfish/v1/Managers/Bluefield_BMC/EthernetInterfaces/eth0"
}
]
},
"Name": "Manager Dedicated Network Port"
}
curl -k -u root:'<password>' -H 'Content-Type: application/json' -X PATCH https://<bmc_ip>/redfish/v1/Managers/Bluefield_BMC/DedicatedNetworkPorts/1 -d '{"LLDPEnabled":<true/false>}'
The IPMI stack in OpenBMC tries to workaround this IPMI spec implementation by creating a virtual interface for the VLAN ID specified by the user and then restricting IPMI to only access the newly created virtual interface. However, this solution has side effects like the LLDP tool being unable to obtain the VLAN interface ID because the LLDP tool works only with physical interfaces.