Synchronization between the Label Distribution Protocol (LDP) and the underlying interior gateway protocol (IGP) ensures that LDP is fully established before the IGP path is used for forwarding trafficWhen synchronization is configured, LDP notifies the IGP to advertise the maximum cost for the link when one of the following triggering events takes place:
Even if LDP is not configured on the peer, with LDP-syncronization configuration present on the local device, it expects LDP to be up and because of which IGP will advertise highest metrics.
Refer to the document on Understanding LDP-IGP SynchronizationThe following scenario is where both ends would report a different LDP sync state with different reasons:
Initially, LDP-IGP sync is only configured on R1:
LDP-IGP sync is not yet configured on R2:
LDP and OSPF both are up between R1 and R2. 1. Initially, LDP-IGP is in sync on R1: regress@R1_RE> show ospf interface ae1.0 extensive Interface State Area DR ID BDR ID Nbrs ae1.0 PtToPt 0.0.0.0 0.0.0.0 0.0.0.0 1 Type: P2P, Address: 100.10.10.1, Mask: 255.255.255.252, MTU: 1500, Cost: 2000 Adj count: 1 Hello: 1, Dead: 4, ReXmit: 5, Not Stub Auth type: None Protection type: None Topology default (ID 0) -> Cost: 2000 LDP sync state: in sync, for: 00:00:38, reason: LDP session up config holdtime: infinity 2. At the same time, no LDP-IGP sync is configured on R2: regress@R2_RE> show ospf interface ae1.0 extensive Interface State Area DR ID BDR ID Nbrs ae1.0 PtToPt 0.0.0.0 0.0.0.0 0.0.0.0 1 Type: P2P, Address: 100.10.10.2, Mask: 255.255.255.252, MTU: 1500, Cost: 2000 Adj count: 1 Hello: 1, Dead: 4, ReXmit: 5, Not Stub Auth type: None Protection type: None Topology default (ID 0) -> Cost: 20003. Bringing down IGP interface on R1 and the state still remains in sync. The reason changes to 'reason: IGP interface down'. This is expected since the IGP adjacency itself has been detected down by R1. Per above documentation, OSPF is not supposed to advertise Max metric in this scenario. The state on R1 would still remain 'in-sync' since the IGP has went down and for this state, Max metric is never advertised. A Max metric is supposed to be advertised only when OSPF/IGP is up but LDP is down, which leads to state ‘hold-down’R2 remains unaffected for this output since LDP-IGP sync is not enabled on it root@R1_RE:/var/home/regress # ifconfig ge-0/0/1 down regress@R1_RE> show ospf interface ae1.0 extensive Interface State Area DR ID BDR ID Nbrs ae1.0 Down 0.0.0.0 0.0.0.0 0.0.0.0 0 Type: P2P, Address: 100.10.10.1, Mask: 255.255.255.252, MTU: 1500, Cost: 2000 Adj count: 0 Hello: 1, Dead: 4, ReXmit: 5, Not Stub Auth type: None Protection type: None Topology default (ID 0) -> Cost: 2000 LDP sync state: in sync, for: 00:01:51, reason: IGP interface down config holdtime: infinityStill LDP-IGP sync is not configured on R2 : regress@R2_RE> show ospf interface ae1.0 extensive Interface State Area DR ID BDR ID Nbrs ae1.0 Down 0.0.0.0 0.0.0.0 0.0.0.0 0 Type: P2P, Address: 100.10.10.2, Mask: 255.255.255.252, MTU: 1500, Cost: 2000 Adj count: 0 Hello: 1, Dead: 4, ReXmit: 5, Not Stub Auth type: None Protection type: None Topology default (ID 0) -> Cost: 2000 4. Enable LDP-IGP sync on R2. The state on R2 shows as 'hold-down' and the reason as 'LDP down during config' with cost of 65535. 'LDP down during config', which means LDP adjacency was down when the sync was configured for the 1st time. The reason for LDP adjacency staying down could be anything like a misconfiguration or the LDP interface is genuinely down regress@R2_RE# show |compare [edit protocols ospf area 0.0.0.0 interface ae1.0] + ldp-synchronization; regress@R2_RE> show ospf interface ae1.0 extensive Interface State Area DR ID BDR ID Nbrs ae1.0 Down 0.0.0.0 0.0.0.0 0.0.0.0 0 Type: P2P, Address: 100.10.10.2, Mask: 255.255.255.252, MTU: 1500, Cost: 65535 Adj count: 0 Hello: 1, Dead: 4, ReXmit: 5, Not Stub Auth type: None Protection type: None Topology default (ID 0) -> Cost: 2000 LDP sync state: in hold-down, for: 00:00:10, reason: LDP down during config config holdtime: infinity There is no state change on R1. It still shows the state as 'in sync' with reason as 'IGP interface down' the cost advertised is also normal - 2000. This is expected since in Step 4, the configuration was local to R2 and R1 does not have a way to detect what happened on R2 since the adjacency is totally down. Logically, there is no change for R1 and hence the state does not change and the metric still stays to 2000 regress@R1_RE> show ospf interface ae1.0 extensive Interface State Area DR ID BDR ID Nbrs ae1.0 Down 0.0.0.0 0.0.0.0 0.0.0.0 0 Type: P2P, Address: 100.10.10.1, Mask: 255.255.255.252, MTU: 1500, Cost: 2000 Adj count: 0 Hello: 1, Dead: 4, ReXmit: 5, Not Stub Auth type: None Protection type: None Topology default (ID 0) -> Cost: 2000 LDP sync state: in sync, for: 00:05:26, reason: IGP interface down config holdtime: infinity
2022-08-02: Initial publication.
2026-18-02: added one additional trigger