Inspect and Tune TIPC Links Safely with tipc link

A TIPC link that flaps between ACTIVE and STANDBY can take an application down with it, and tipc link is where you go to see why. This guide reads link state and counters, adjusts link properties when you need to, and confirms the result before you move on. The examples target the locally installed Ubuntu package iproute2 6.1.0-1ubuntu6.4, whose tipc-link(8) manual is dated 22 March 2019.

Allow 10 to 15 minutes if TIPC is already configured. You need a shell on the node and, for changes, root privileges or the equivalent network administration capability. A node with no TIPC kernel support will fail before it can show useful data.

1. Confirm the command and list the links

Check the installed command and ask it for its last valid command's help.

ip -V
tipc link --help

The first command reports the iproute2 release. The second may itself report an inability to obtain the TIPC netlink family when the kernel module or TIPC support is unavailable. Treat that as a host capability problem, not as evidence that there are simply no links.

Then list the links without changing anything:

tipc link list

Checkpoint: if this succeeds, keep the link identifier printed for the peer you need to investigate. If it fails, check that TIPC is enabled in the kernel and that the relevant bearer or media has been configured; this command does not create one.

2. Read state and counters

Read statistics for every link, or narrow the query to one link.

tipc link statistics show
tipc link statistics show link <LINK>

Replace <LINK> with the identifier from the listing. Statistics include state, MTU, packet and fragmentation information, congestion and queue data, plus message counters. An ACTIVE link serves traffic; a lower-priority link can be STANDBY and ready to take over.

Ask for individual properties when you need a small, script-friendly check.

tipc link get priority link <LINK>
tipc link get tolerance link <LINK>
tipc link get window link <LINK>
tipc link get broadcast

Priority is from 0 to 31. Tolerance is the maximum communication-problem interval in milliseconds before TIPC takes the link down; the documented default is 1500 milliseconds. Window controls how many unacknowledged messages an endpoint may queue before congestion control activates. The broadcast query reports the cluster-wide multicast selection mode.

Use JSON when another tool will consume the result.

tipc -j link list
tipc -j -p link statistics show link <LINK>

-j selects JSON and -p makes JSON easier to read. Keep the human-readable command beside a captured JSON result when diagnosing an incident, because the counters are live and can change between queries.

3. Change one link property

Changing priority, tolerance or window changes live link behaviour and can affect failover or congestion. Record the current value first. Do not guess a link identifier, and do not lower tolerance merely to hide an unstable network.

Set one property as root, using an explicit value.

sudo tipc link set priority <PRIORITY> link <LINK>
sudo tipc link set tolerance <MILLISECONDS> link <LINK>
sudo tipc link set window <MESSAGES> link <LINK>

The manual defines the valid priority range, but does not give a universal valid range for tolerance or window. Use values that match your TIPC design and the version's command validation. A successful command has exit status 0 and normally produces no output.

Read the property back immediately.

tipc link get priority link <LINK>
tipc link get tolerance link <LINK>
tipc link get window link <LINK>

Compare the result with the value you intended. If the change causes trouble, restore the value you recorded before the change with the matching tipc link set command. This is the undo path; there is no separate rollback command.

4. Choose multicast handling deliberately

TIPC can force multicast traffic through broadcast, force replicast, or select automatically. Automatic selection can use a destination ratio against cluster size.

sudo tipc link set broadcast BROADCAST
sudo tipc link set broadcast REPLICAST
sudo tipc link set broadcast AUTOSELECT ratio <PERCENT>
tipc link get broadcast

This is a cluster-wide behaviour choice rather than a cosmetic display setting. Make the change only with an understood traffic pattern and record the previous mode so it can be restored. The manual describes BROADCAST and REPLICAST as forced modes; AUTOSELECT switches according to cluster size and destination count.

5. Inspect link monitoring

Link monitoring reports how nodes are supervised. These commands are read-only:

tipc link monitor summary
tipc link monitor list media eth device <DEVICE>
tipc link monitor list media udp name <NAME>

The list can show cluster size, the supervision algorithm, node status and whether monitoring is direct or indirect. The documented default threshold is 32. Set it only when you understand the full-mesh versus overlapping-ring trade-off:

tipc link monitor get threshold
sudo tipc link monitor set <THRESHOLD>
tipc link monitor get threshold

6. Reset counters only after preserving evidence

Resetting statistics discards the counters you may need for diagnosis. Save the output first, then reset only the named link:

tipc link statistics show link <LINK> > tipc-link-before.txt
sudo tipc link statistics reset link <LINK>
tipc link statistics show link <LINK>

This reset is operationally reversible only in the sense that new counters will accumulate; old values cannot be reconstructed. Keep the saved file with the incident record.

Done means