Split detection is a function to detect members split in a virtual chassis and make the detached member an inactive linecard. Once the detached member becomes an inactive linecard, all interfaces are downed. This function is enabled by default, unless adding no-split-detection.
The output below shows that FPC2 was detached from the VC and working as an inactive linecard. In this state, all interfaces are downed.
root@EX4200VC> show virtual-chassis
Virtual Chassis ID: 180a.3358.e265
Virtual Chassis Mode: Enabled
Mstr Mixed Route Neighbor List
Member ID Status Serial No Model prio Role Mode Mode ID Interface
0 (FPC 0) NotPrsnt AA0215999997 ex4200-48t
1 (FPC 1) NotPrsnt AA0215999998 ex4200-48t
2 (FPC 2) Inactive AA0215999999 ex4200-48t 128 Linecard* N VC
However, there are cases when split detection does not work and the linecard does not become inactive. During this time, traffic is black holed as the interfaces on the detached linecard are online.
The output shows that FPC2 was detached from the VC but working as an active linecard. In this state, interfaces remain online.
root@EX4200VC> show virtual-chassis
Preprovisioned Virtual Chassis
Virtual Chassis ID: 180a.3358.e265
Virtual Chassis Mode: Enabled
Mstr Mixed Route Neighbor List
Member ID Status Serial No Model prio Role Mode Mode ID Interface
0 (FPC 0) NotPrsnt AA0215999997 ex4200-48t
1 (FPC 1) NotPrsnt AA0215999998 ex4200-48t
2 (FPC 2) Prsnt AA0215999999 ex4200-48t 0 Linecard* N VC
Below are a couple cases where split detection does not work for the detached linecard; however, split detection will work for the detached primary or backup.
Case 1) Preprovisioned is enabled
set virtual-chassis preprovisioned
set virtual-chassis member 0 role routing-engine
set virtual-chassis member 0 serial-number AA0215999997
set virtual-chassis member 1 role routing-engine
set virtual-chassis member 1 serial-number AA0215999998
set virtual-chassis member 2 role line-card
set virtual-chassis member 2 serial-number AA0215999999
Case 2) Not using preprovisioned, but mastership-priority
parameter is 0
set virtual-chassis member 0 mastership-priority 255
set virtual-chassis member 1 mastership-priority 255
set virtual-chassis member 2 mastership-priority 0
The split detection feature avoids a dual primary scenario when a member is detached from the VC. If a detached linecard has no possibility of becoming primary, split detection will not work.
The FPC2 in Case 1) has an explicit setting for the linecard role. In this case, the linecard will never be the primary and so split detection will not work.
The FPC2 in Case 2) has a value of 0 for the mastership-priority
. In this case, primary election does not start for FPC2 and so split detection will not work.
To make sure split detection works for a detached linecard, disable preprovisioned
and have a mastership-priority
setting of 1 or greater value.
Important: ​Preprovisioned is a mandatory function when performing NSSU. So enable it, if needed.
2021-04-07: Updated the article terminology to align with Juniper's Inclusion & Diversity initiatives