IBM Developer

Tutorial

Enhance baseboard management controller (BMC) network management through Link Layer Discovery Protocol (LLDP)

Analyze LLDP packets for network insights

By Sridevi Ramesh, Sweta Potthuri, Prashanth Katti

Introduction

Neighbor discovery is very essential for allowing any two devices to communicate with each other. One of the commonly used neighbor discovery protocol is Link Layer Discovery Protocol (LLDP) which helps in network diagnostics and is a key customer requirement for baseboard management controller (BMC). Configuring LLDP allows network devices to advertise and discover information about themselves to other devices on the network by sending and receiving LLDP messages. LLDP can be thought of as a way for network devices to introduce themselves and share useful information about their configurations and network attributes.

LLDP enables BMC to be more visible to the peer networks. It benefits network administrators to perform network diagnostics and to troubleshoot and manage data. If two devices cannot communicate as expected, LLDP helps identify the devices involved, identify where the breakdown occurred, and provide diagnosis.

This tutorial provides the steps to configure LLDP on BMC with supported Ethernet interface level using the GUI and Redfish API. The tutorial also provides information about the LLDP packet attributes.

LLDP packet attributes

Using the LLDP protocol on BMC enables you to store information in the form of LLDP data units (LLDPDUs). LLDPDUs contain small packets with critical details such as device identity, port information, and capabilities. This information is stored in the form of Management Information Bases (MIBs) and can be retrieved through Simple Network Management Protocol (SNMP).

Packets must contain the following set of attributes expressed in the Type/Length/Value (TLV) format. The mandatory TLVs are:

  • Chassis ID
  • Port ID
  • Time to Live
  • End of LLDPU

And the optional TLVs are:

  • Port Description
  • System Name
  • System Description
  • System Capabilities

Configure LLDP on BMC

Perform the following steps to enable LLDP using the BMC GUI on eth0/eth1.

  1. Sign in to the BMC GUI with the username and password.
  2. In the navigation panel, click Settings > Network. Then click the eth0 or the eth1 tab as per your requirement.

  3. Ensure that LLDP is set to Enabled.

    Note: You can use the same toggle button to disable LLDP on eth0 and eth1.

  4. After enabling, you can capture the LLDP packets with a network packet analyzer.

Configure LLDP on BMC using the Redfish API

Perform the following steps to configure LLDP for BMC using Redfish API for the eth0 and eth1 interfaces:

  1. Run the following command to find the current LLDP enabled status on eth0.
    curl -k -H "X-Auth-Token: <bmc_token>" -H "Content-Type: application/json" -X GET https://<BMC_IP>/redfish/v1/Managers/bmc/DedicatedNetworkPorts/eth0
    
  2. Run the following command to set LLDPEnabled to true on eth0.

    Note: Set the LLDPEnabled property to true to enable LLDP else, by default, the value is set to false.

    curl -k -H "X-Auth-Token: <bmc_token>" -H "Content-Type: application/json" -X PATCH https://<BMC_IP>/redfish/v1/Managers/bmc/DedicatedNetworkPorts/eth0 -d '{"Ethernet":{"LLDPEnabled":true}}'
    
  3. Run the following command to find the current LLDPEnabled status on eth1.
    curl -k -H "X-Auth-Token: <bmc_token>" -H "Content-Type: application/json" -X GET https://<BMC_IP>/redfish/v1/Managers/bmc/DedicatedNetworkPorts/eth1
    
  4. Run the following command to set LLDPEnabled to true on eth1.

    Note: Set the LLDPEnabled property to true to enable LLDP else, by default, the value is set to false.

    curl -k -H "X-Auth-Token: <bmc_token>" -H "Content-Type: application/json" -X PATCH https://<BMC_IP>/redfish/v1/Managers/bmc/DedicatedNetworkPorts/eth1 -d '{"Ethernet":{"LLDPEnabled":true}}'
    

Summary

By following the procedure mentioned in this tutorial user can enable LLDP on BMC and make BMC more discoverable. This helps user to understand the network better, ensure devices are properly connected, and keep things running smoothly, all while maintaining interoperability across a wide range of network devices.

Reference

Link Layer Discovery Protocol and MIB