For the most part, PoE (Power over Ethernet) works perfectly with LLDP (Link Layer Discovery Protocol). I recently ran into a bizarre issue with a UniFi AP and an HPE Aruba switch where the AP would reboot under load.
In this post, I will cover how I fixed it and everything I learned in this rabbit hole.
The Setup
In my setup, I have an HPE Aruba 2930F switch, specifically the JL256A version. I also have a UniFi U7 Pro Max AP. The UniFi AP is plugged directly into the Aruba switch.
Initially, everything seemed to work fine. I could configure the UniFi AP and everything, but when I was testing the speed of the UniFi AP, I noticed that the AP would reboot, which is strange. I thought at first that maybe I had a faulty AP and would need to RMA it. However, the problem could be with my switch. To rule out the switch, I moved the AP to a PoE injector, and everything worked. I was now able to put the AP under load without it rebooting.
I started digging into my Aruba switch logs and noticed that I was getting PD over current errors on the port that the UniFi AP is plugged into, port 47. The log entry I saw was 00562 ports: port 47 PD Over Current indication.
I double-checked to make sure everything was fully compatible with each other. The power delivery method for the UniFi U7 Pro Max AP is PoE+, with a maximum power consumption of 25 watts. The Aruba 2930F has a PoE budget of 370 watts and is capable of PoE+, and I have room in the PoE budget to power the UniFi AP.
I started thinking that maybe the Aruba switch didn’t want to give the AP enough power for some reason. So I started down the rabbit hole of how PoE works and discovered that much of the magic is LLDP, specifically LLDP-MED (Link Layer Discovery Protocol – Media Endpoint Discovery).
LLDP and LLDP-MED
LLDP is similar to Cisco’s CDP (Cisco Discovery Protocol). The main difference between LLDP and CDP is that LLDP is vendor-neutral. LLDP is used by networking devices to provide information about themselves, such as port description, management address, system name, system capabilities, and system description.
LLDP-MED is an extension of LLDP and is commonly used by devices such as APs, VoIP phones, computers, and others. A very common use of LLDP-MED is to detect VoIP phones and place them on a voice VLAN because this lets you configure an access port with a data VLAN for computers and a voice VLAN for VoIP phones.
The LLDP information is transferred in an LLDPDU (Link Layer Discovery Protocol Data Unit). Inside the LLDPDU is a TLV (type-length-value). The TLV holds most of the information about the device.
PoE
With PoE, there are PSE (Power Sourcing Equipment) devices, which are basically your switches or PoE injectors, and then there are PD (Powered Device) devices, which are the devices that need PoE power, like a VoIP phone or an AP.
When a PoE device is plugged into a PoE switch, the PoE device uses LLDP-MED to communicate with the PoE switch to tell it what kind of power it needs, and the switch provides that. This is done using TLV in the LLDPDU and PoE types and classes.
PoE Types
There are a few types of PoE. The PoE type dictates their name and available power. Below is a chart of the PoE types.
Types | Common Name | Maximum Power |
Type 1 | PoE aka 802.3af | 15.4 Watts |
Type 2 | PoE+ aka 802.3at | 30 Watts |
Type 3 | PoE++ aka 802.3bt | 60 Watts |
Type 4 | PoE++ aka 802.3bt | 90 Watts |
PoE Classes
In addition to PoE types, there are a few PoE classes. Classes dictate the PoE type they need and how much power could be required. Below is a chart of the PoE classes.
Classes | PoE Types | Maximum Power |
Class 0 | Type 1 aka PoE aka 802.3af | 15.4 Watts |
Class 1 | Type 1 aka PoE aka 802.3af | 4 Watts |
Class 2 | Type 1 aka PoE aka 802.3af | 7 Watts |
Class 3 | Type 1 aka PoE aka 802.3af | 15.4 Watts |
Class 4 | Type 2 aka PoE+ aka 802.3at | 30 Watts |
Class 5 | Type 3 aka PoE++ aka 802.3bt | 45 Watts |
Class 6 | Type 3 aka PoE++ aka 802.3bt | 60 Watts |
Class 7 | Type 4 aka PoE++ aka 802.3bt | 75 Watts |
Class 8 | Type 4 aka PoE++ aka 802.3bt | 90 Watts |
PoE Allocation
With PoE, you can allocate the power based on the device’s usage or class. Typically, the default is based on usage, and then LLDP will communicate if the device needs more power.
I tried changing between usage and class, and neither setting resolved my issue.
…