The IDNet communication to the devices normally operates from the B+ and B- terminals. The A+ and A- connection monitors the voltage on the return side of the loop. The voltage on the A terminals is compared with the circuit source voltage. If the voltage across the A+ and A- terminals falls to a certain point the circuit turns on a relay. That relay connects B+ to A+ and B- to A- so the communications continues to both sides of an open loop. This also causes the Class A trouble to be generated. The relay is turned off at system reset or restart to test if the circuit is repaired.
My best guess is that something is loading the IDNet circuit causing the voltage across the SLC loop to fall to the level that causes the Class A circuit to trip. That loading is also causing the data to be garbled which can cause the XTRA trouble. That indicates a device is connected to the IDNet which is not in the program.