Description

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

 

Symptoms

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

 

Solution

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.

Modification History

2021-04-07: Updated the article terminology to align with Juniper's Inclusion & Diversity initiatives