tsaad-dev / te

IETF TE Tunnels YANG models
16 stars 19 forks source link

Associated forward and reverse secondary paths #214

Closed italobusi closed 1 year ago

italobusi commented 1 year ago

While working on the examples in section 12.6, some questions about how to associated forward and reverse secondary paths have been raised:

  1. I am assuming that the candidate secondary reverse paths are listed in from the head end of the reverse path (which is the tail end of the forward path) to the tail end of the reverse path (which is the head end of the forward path): if this is the case, I am wondering whether the association between forward and reverse secondary paths should be in the reverse order (the first secondary-reverse path is associated with the last secondary path and not with the first secondary path).

  2. Looking at the example in Figure 2, I am wondering whether it is correct to define an order for the candidate secondary reverse paths. What about defining the co-routed for the secondary flag as a leaf-ref to the associated reverse path rather than as an empty leaf?

See: https://github.com/tsaad-dev/te/issues/56#issuecomment-1279400042

Discussion on this issue is pending resolution of issue #203

italobusi commented 1 year ago

2023-05-19 TE call

Agreed resolution (see slide 4 of tunnel-paths-05.zip):

    Candidate-Secondary-list (fwd)
      Secondary-1-ref (fwd)
         Secondary-4-ref (rev)
      Secondary-2-ref (fwd)
         Secondary-3-ref (rev)
italobusi commented 1 year ago

2023-05-26 TE Call

Agreed to add a secondary-reverse-path leafref to the secondary path:

     +--rw tunnels
     |  +--rw tunnel* [name]
     |     +--rw name                                    string
     |     +---rw bidirectional?      boolean
     |     +--rw primary-paths
     |     |  +--rw primary-path* [name]
     |     |  +--rw name                       string
     |     |  +--rw co-routed?                 boolean
     |     |     +--rw primary-reverse-path
     |     |     |  +--rw name?                      string
     |     |     |  +--rw candidate-secondary-reverse-paths
     |     |     |     +--rw candidate-secondary-reverse-path*
     |     |     |             [secondary-path]
     |     |     |        +--rw secondary-path    leafref
     |     |     +--rw candidate-secondary-paths
     |     |        +--rw candidate-secondary-path* [secondary-path]
     |     |           +--rw secondary-path    leafref
     |     |           +--ro active?           boolean
     |     +--rw secondary-paths
     |     |  +--rw secondary-path* [name]
     |     |     +--rw name                       string
     |     |     +--rw secondary-reverse-path?    leafref                // ADD
     |     +--rw secondary-reverse-paths
     |     |  +--rw secondary-reverse-path* [name]
     |     |     +--rw name                       string