Subject: [mpls] Request for clarification on RFC 7552

From: Ramakrishna Rao Desetti <[email-masked]>
Date: Thu, 3 Jan 2019 13:03:27 +0530

Hi,

I request a clarification with regard to RFC 7552 (Updates to LDP for IPv6).

This is regarding how to determine active/passive roles in some scenarios.

Consider the following scenario (reproduced from RFC 7552):

                                   IPv4
                           R1=================R2
                                   IPv6

         Figure 2: LSRs Connected via Two Single-Stack Interfaces

In this case, R1 and R2 are dual-stack LSRs. Hence they intend to exchange
both IPv4 and IPv6 FEC label mappings.

Note that in the above setup, R1 and R2 are connected via two single-stack
interfaces. The transport-connection-preference is set to ipv4.

The IPv6 link is UP and R1 and R2 formed adjacency. The Dual-Stack capability
is set as IPv4. For some reason, the IPv4 adjacency is not getting established.

In this scenario, what do R1 and R2 do? Do they establish IPv6 based TCP
session? The reason I am asking is if they intend to do that how do they
determine which LSR will become active.

The RFC says:

"2. If the Dual-Stack capability TLV is present and the remote
      preference matches the local preference, then:

      a) If TR=0100 (LDPoIPv4), then determine the active/passive roles
         for the TCP connection using an IPv4 transport address as
         defined in Section 2.5.2 of RFC 5036.

      b) If TR=0110 (LDPoIPv6), then determine the active/passive roles
         for the TCP connection by using an IPv6 transport address as
         defined in Section 2.5.2 of RFC 5036."

Based on this criteria, it is not possible to determine active/passive because
IPv4 adjacency was not formed.

How do R1 and R2 proceed further? It appears the standard is not providing
guidance, although the intention seems to be to establish an IPv6
based TCP session.

Could you please let me know your comments?

Thanks and regards,
Ramakrishna DTV.