In deploying a number of Cisco 2960X Switch Stacks containing between 4 and 8 members I noticed many of them were logging the following message:
Failed to send hrpc non blocking message
The issue appeared after upgrading switches from 15.0(2)EX2 to 15.0(2)EX3 and persists through to at least 15.0(2)EX5. Following extensive troubleshooting both internally and with Cisco, the problem was narrowed down to the device classifier.
Whenever a switch learns a new MAC address the switch will create a new “device classifier session”. The device classifier collects information based on the MAC address vendor OUI, CDP and LLDP to identify the type of device connected to a port. Macros can then be created to perform actions based on the device type. This information is synchronised across all switches in stack. Unfortunately the switch stack cannot keep up with synchronising this information across all devices hence reports this error message.
This problem was introduced because Cisco enabled the device classifier by default in 15.0(2)EX3. There are two options to mitigate the issue:
- Upgrade the switch stack to 15.2(2)E where the device classifier is once more disabled by default
- Disable the device classifier with the “no macro auto monitor” command
Unfortunately Cisco seemed unwilling to create a bug ID for this issue. However if anyone else experiences the issue please get in touch and I’ll gladly share the Cisco TAC Case ID.