Networking, Hanging NIM Operations and AIX Quirks

Originally published by TechChannel February 16, 2023

Rob McNelly covers how to troubleshoot common NIM issues and AIX tips and tricks

I enjoyed this perspective on the Cisco Discovery Protocol (CDP) from IBM Champion Andrey Klyachkin:

“You know this eternal problem, don’t you? Datacenter guys laid the cable from an AIX server to some port on some network switch. Of course, everything was written on some sheet of paper many years ago. But years went after years, the paper was blown away by the wind and nobody knows anymore where the cable goes to.

“Fortunately Cisco sends CDP packets regularly and you can find the information about the connected port and switch there. I even know datacenters where it is still allowed and some where security guys asked to shut down CDP…

“If CDP is switched on, it sends a packet every 60 seconds with the information about the switch and port. You can get the packet and decode it to get the information. The only problem is to decode the information.

“One of the new features of IBM AIX 7.2 TL5 is CDP daemon. AIX understands and can decode CDP packets. In order to use it, you must have the packet bos.net.tcp.cdp installed…”

Read the entire post, which includes four screenshots, on Andrey’s LinkedIn feed. There’s also a caveat about running cdpctl show port enX to get the information you’re interested in. All in all, this seems much easier than the method I wrote about back in 2014.

While that was posted back in December, the conversation continues. Read this response via Twitter, along with this article on implementing the Link Layer Discovery Protocol (LLDP) on VIOS.

Finally, here’s a breakdown of the differences between LLDP and CDP:

“LLDP is a layer two discovery protocol, similar to Cisco’s CDP. The big difference between the two is that LLDP is a standard while CDP is a Cisco proprietary protocol.

“Cisco devices support the IEEE 802.1ab version of LLDP. This allows non-Cisco devices to advertise information about themselves to our network devices.”

Diagnosing Hanging NIM Operations

As a long-time NIM advocate, Chris Gibson’s tweet on troubleshooting hanging NIM mksysb caught my eye. You’ll find the details in this IBM Support document:

“Problem: In this document we go through a few of the most common causes for a hanging mksysb operation. We will dive into the internals during NIM backups and learn how to troubleshoot and fix those problems.

“Symptom: The mksysb displays 100% complete on your NIM, but prompt is never returned. The mksysb is hanging at a certain percent of the backup.

“Cause
1 The cause for a hang is usually a problem with the network. At the beginning of a NIM mksysb, the NIMSH daemon working on the client LPAR will open two TCP sessions, one on client port 3901 to > NIM 1023-513 and one on client port 3902 to > NIM 1023-513 where the second session is referred to as Auxiliary session and will be used to relay the mksysb command success/failure return code when the backup complete. If this session is dropped or interrupted, the NIM master will keep waiting for that return code even after the process is fully complete and successful.

2 During mksysb backup we use the ‘backbyname’ command to back up the data we need, if the command is unable to access/read a specific file or directory, the process may hang. Normally, this would be caused by a hung NFS mount point or one where the root used has no read permissions for. Additionally, this may be caused by a corrupt file system.”

AIX USB Device Quirks

Here’s yet another tip that came my way via Chris on Twitter. While one could make a strong case that AIX pros are quirky, this information from IBM’s AIX 7.3 document archive covers quirks:

“Starting from AIX 7.3 Technology Level 1, the AIX operating system provides quirks to support various third-party USB mass storage devices.

“The following quirks are supported starting from AIX 7.3 for USB mass storage devices:

delay_doorbell: If this quirk is set, the ringing of the adapter doorbell is delayed by 1 ms.

cbw_csw_order: If this quirk is set, the data packets are sent only in the order of command block wrapper (CBW), data, and command status wrapper (CSW). Most of the third-party devices, for example, Seagate and Western Digital, need this quirk to operate correctly with the AIX USB stack.”

Also explained: how to add quirk for USB devices, and how to create quirk entries for specific USB devices, be they from third parties or any specific vendor.