Description
RPD_BGP_NEIGHBOR_STATE_CHANGED missing and BFD detection was slow on peer device
Symptoms
BGP was flapping because underlying reachability was broken as we could see ping probes were failing.
probe PROBE {
test icmp {
probe-type icmp-ping;
target address a.b.c.d;
probe-count 10;
probe-interval 10;
test-interval 10;
data-size 64;
destination-interface xe-4/0/1.301;
}
}
Nov 16 11:18:20.467 RE0 rmopd[11899]: PING_PROBE_FAILED: pingCtlOwnerIndex = PROBE, pingCtlTestName = icmp
Nov 16 11:18:20.467 RE0 rmopd[11899]: PING_PROBE_FAILED: pingCtlOwnerIndex = PROBE, pingCtlTestName = icmp
Nov 16 11:18:30.477 RE0 rmopd[11899]: PING_PROBE_FAILED: pingCtlOwnerIndex = PROBE, pingCtlTestName = icmp
Nov 16 11:18:40.487 RE0 rmopd[11899]: PING_PROBE_FAILED: pingCtlOwnerIndex = PROBE, pingCtlTestName = icmp
Nov 16 11:18:50.489 RE0 rmopd[11899]: PING_PROBE_FAILED: pingCtlOwnerIndex = PROBE, pingCtlTestName = icmp
Nov 16 11:19:00.492 RE0 rmopd[11899]: PING_PROBE_FAILED: pingCtlOwnerIndex = PROBE, pingCtlTestName = icmp
Nov 16 11:19:10.502 RE0 rmopd[11899]: PING_PROBE_FAILED: pingCtlOwnerIndex = PROBE, pingCtlTestName = icmp
Nov 16 11:19:20.504 RE0 rmopd[11899]: PING_TEST_FAILED: pingCtlOwnerIndex = PROBE, pingCtlTestName = icmp
Nov 16 11:18:14.488 RE0 rpd[11895]: RPD_BGP_NEIGHBOR_STATE_CHANGED: BGP peer a.b.c.d (External AS 100) changed state from Established to Idle (event Stop) (instance MGMT)
Nov 16 11:30:04.669 RE0 rpd[11895]: RPD_BGP_NEIGHBOR_STATE_CHANGED: BGP peer a.b.c.d (External AS 100) changed state from EstabSync to Established (event RsyncAck) (instance MGMT)
The reason the BGP Neighbor was not logging transition change was because one neighbor was configured with log changes and other was not.
group ABC {
import IM;
export EX;
peer-as 100;
bfd-liveness-detection {
minimum-interval 500;
multiplier 3;
}
neighbor a.b.c.d;
}
group XYZ {
metric-out igp;
export EX;
peer-as 100;
bfd-liveness-detection {
minimum-interval 500;
multiplier 3;
}
neighbor e.f.g.h;
}
log-updown;
}
BFD session down seen from the log on Nov 16 11:18:14.488, but peer device doesn't detected, and it got holdtimer expired error after 1 min 15 sec.
Nov 16 11:18:14.488 RE0 bfdd[11141]: BFDD_STATE_UP_TO_DOWN: BFD Session a.b.c.d (IFL 515) state Up -> Down LD/RD(1474/1090519057) Up time:15:18:32 Local diag: AdminDown Remote diag: None Reason: Received Upstream Destroy Session.
Nov 16 11:18:14.490 RE0 bfdd[11141]: BFDD_STATE_UP_TO_DOWN: BFD Session e.f.g.h (IFL 514) state Up -> Down LD/RD(1475/1090519058) Up time:15:18:29 Local diag: AdminDown Remote diag: None Reason: Received Upstream Destroy Session.
Solution
Need to check the physical connectivity and ensure the connectivity is up without any issues.
BGP log up-down needs to be configured.
For BFD need to check the layer 1 connectivity problem and check if there is uni directional link failure.
Modification History
2024-01-21 : Article Created
RPD_BGP_NEIGHBOR_STATE_CHANGED missing and BFD detection was slow on peer device