A computation priority is necessary to ensure that a single PCE
        will perform the computation for all the LSPs in an association group:
        this will allow for a more optimized LSP placement and will prevent
        computation loops.¶
All PCEs in the network that are handling LSPs in a common LSP
        association group SHOULD be aware of each other including the
        computation priority of each PCE. Note that there is no need for PCC
        to be aware of this. The computation priority is a number and the PCE
        having the highest priority MUST be responsible for the computation.
        If several PCEs have the same priority value, their IP address MUST
        be used as a tie-breaker to provide a rank: the highest IP address has
        more priority.¶
The computation priorities could be set through local configurations.
        The priority for local and remote PCEs could be set at the global level
        so the highest
        priority PCE will handle all path computations or more granular, so a
        PCE may have the highest priority for only a subset of LSPs or
        association groups. See Section 8.1 for more details.
        In future, PCEs could also advertise and discover these parameters via PCEP,
        those details are out
        of the scope of this document and left for future specification.¶
A PCEP Speaker receiving a PCRpt from a PCC with the D flag set
        that does not have the highest computation priority, SHOULD forward
        the PCRpt on all state-sync sessions (as per Section 3.3) and SHOULD set the D flag on the state-sync session
        towards the highest priority PCE, the D flag will be unset to all other
        state-sync sessions. This behavior is similar to the delegation
        behaviour handled at the PCC side and is called a sub-delegation (the
        PCE sub-delegates the control of the LSP to another PCE). When a PCEP
        Speaker sub-delegates an LSP to another PCE, it loses control of the
        LSP and cannot update it anymore by its own decision. When a PCE
        receives a PCRpt with the D flag set on a state-sync session, as a regular
        PCE, it is granted control over the LSP.¶
If the highest priority PCE is failing or if the state-sync session
        between the local PCE and the highest priority PCE failed, the operator
        MAY decide to instruct a switch-over to delegate the LSP to the next highest priority PCE or
        to take back control of the LSP. It is a local policy decision.¶
When a PCE has the delegation for an LSP and needs to update this
        LSP, it MUST send a Path Compute Update (PCUpd) message to all state-sync sessions and to
        the PCC session on which it received the delegation. The D-Flag would
        be unset in the PCUpd for state-sync sessions whereas the D-Flag would
        be set for the PCC. In the case of sub-delegation, the computing PCE
        will send the PCUpd only to all state-sync sessions (as it has no
        direct delegation from a PCC). The D-Flag would be set for the
        state-sync session to the PCE that sub-delegated this LSP and the
        D-Flag would be unset for other state-sync sessions.¶
The PCUpd sent over a state-sync session MUST contain the
        SPEAKER-ENTITY-ID TLV in the LSP Object (the value used must identify
        the target PCC). The PLSP-ID used is the original PLSP-ID generated by
        the PCC and learned from the forwarded PCRpt. If a PCE receives a
        PCUpd on a state-sync session without the SPEAKER-ENTITY-ID TLV, it
        MUST discard the PCUpd and MUST reply with a PCErr message using
        error-type=6 (Mandatory Object missing) and error-value=TBD1
        (SPEAKER-ENTITY-ID TLV missing).¶
When a PCE receives a valid PCUpd on a state-sync session, it
        SHOULD forward the PCUpd to the appropriate PCC (identified based on
        the SPEAKER-ENTITY-ID TLV value) that delegated the LSP originally and
        SHOULD remove the SPEAKER-ENTITY-ID TLV from the LSP Object. The
        acknowledgement of the PCUpd is done through a cascaded mechanism, and
        the PCC is only responsible for triggering the acknowledgement:
        when the PCC receives the PCUpd from the local PCE, it acknowledges it
        with a PCRpt as per [RFC8231]. When
        receiving the new PCRpt from the PCC, the local PCE uses the defined
        forwarding rules on the state-sync session so the acknowledgement is
        relayed to the computing PCE.¶
          
To ensure uniform information across all PCEs, each PCE needs to relay the information it receives from the PCCs in the Open message to other PCEs via the state-sync session. This includes various PCC capabilities and parameters such as Maximum Segment Identifier (SID) Depth (MSD).¶
As per [RFC5440], the PCEP Notification message (PCNtf) can be sent by a PCEP speaker to notify its peer of a specific event. A PCE should notify the other state-sync PCEs of the information it receives from the PCC's open message. Section 7.14 of [RFC5440] specifies the NOTIFICATION object. This document adds a new Notification-type=TBD6 (Inter-PCE State-sync) and two Notification-values (Notification-value=1 (Add PCC's Open Information) and Notification-value=2 (Remove PCC's Open Information)).¶
For Notification-type=TBD6, the NOTIFICATION object encodes the SPEAKER-ENTITY-ID TLV (with values that identify the PCC) and any other TLV that can be carried inside the OPEN object as a way to signal the PCC's information it received via the open message to other state-sync PCEs.¶
- Notification-value=1: Add PCC's Open Information. On session establishment with a PCC, a PCE with state-sync capability MUST send this notification to other state-sync PCEs with the SPEAKER-ENTITY-ID TLV with values that identify the PCC and any other TLVs encoded in the OPEN object received from the PCC. On session establishment with a state-sync PCE, the PCE MUST also exchange notifications for each of the PCCs it already has a session established.  The PCE MUST exchange this notification prior to the State Synchronization (described in Section 3.2). Note that the PCNtf can be used to carry multiple NOTIFICATION objects, one for each PCC. On receiving this notification, PCE adds the information to its database.¶
- Notification-value=2: Remove PCC's Open Information. On session down with a PCC, a PCE with state-sync capability MUST send this notification to other state-sync PCEs with the SPEAKER-ENTITY-ID TLV with values that identify the PCC to remove the information from the database.¶
A PCE may receive this Notification from multiple PCEs that a given PCC has a session and can use a similar mechanism as described in Section 3.4 to keep the freshest state. In case of the termination of a state-sync session, this information is also cleaned up alongside LSP-DB.¶
 
          
All LSPs belonging to the same association group SHOULD have the
          same computation priorities for the PCEs. A PCE SHOULD only compute
          a path using an association-group constraint if it has delegation for
          all of the LSPs in the association group. In this case, an implementation
          MAY use a local policy on PCE to decide if PCE does not compute a path
          at all for this set of LSP or if it can compute a path by relaxing
          the association-group constraint.¶