Subject: [Teas] Multi-layer support in draft-ietf-teas-yang-te-topo

From: "Xufeng Liu" <[email-masked]>
Date: Fri, 29 Apr 2016 16:01:29 -0400

Authors and contributors are continuing discussions on multi-layer topology
modeling.

Approach 1: Transitional link was presented in IETF95. Model changes are
being proposed:
    Link TP: will need to have switch-layer
    Link attribute: add a flag for transitional.

Current:

node 1           link             node 2
 tp-1      ---- och        ---->  tp-2
 tp-1      <--- odu        -----  tp-2

augment /nw:networks/nw:network/nw:node/nt:termination-point:
   +--rw te!
      +--rw te-tp-id    te-tp-id
      +--rw config
      |  +--rw schedules
      |     +--rw schedule* [schedule-id]
      |        +--rw schedule-id          uint32
      |        +--rw start?               yang:date-and-time
      |        +--rw schedule-duration?   string
      |        +--rw repeat-interval?     string
      +--ro state
         +--ro schedules
            +--ro schedule* [schedule-id]
               +--ro schedule-id          uint32
               +--ro start?               yang:date-and-time
               +--ro schedule-duration?   string
               +--ro repeat-interval?     string

augment /nw:networks/nw:network/nt:link:
   +--rw te!
      +--rw config
      |     +--rw interface-switching-capability* [switching-capability]
      |     |  +--rw switching-capability               identityref
      |     |  +--rw encoding?                          identityref
      |     |  +--rw max-lsp-bandwidth* [priority]
      |     |  |  +--rw priority     uint8
      |     |  |  +--rw bandwidth?   decimal64
      |     |  +--rw time-division-multiplex-capable
      |     |  |  +--rw minimum-lsp-bandwidth?   decimal64
      |     |  |  +--rw indication?              enumeration
      |     |  +--rw interface-adjustment-capability* [upper-sc]
      |     |     +--rw upper-sc             identityref
      |     |     +--rw upper-encoding?      identityref
      |     |     +--rw max-lsp-bandwidth* [priority]
      |     |        +--rw priority     uint8
      |     |        +--rw bandwidth?   decimal64

To improve the model to handle uni-directional link, we suggest to add
switching-capability to TP:

node 1           link             node 2
 tp-1      ---- och        ---->  tp-2
 och                              odu

 tp-1      <--- odu        -----  tp-2

Model changes:

augment /nw:networks/nw:network/nw:node/nt:termination-point:
   +--rw te!
      +--rw te-tp-id    te-tp-id
      +--rw config
      |  +--rw schedules
      |  |  +--rw schedule* [schedule-id]
      |  |     +--rw schedule-id          uint32
      |  |     +--rw start?               yang:date-and-time
      |  |     +--rw schedule-duration?   string
      |  |     +--rw repeat-interval?     string
+      |  +--rw interface-switching-capability* [switching-capability]
+      |     +--rw switching-capability               identityref
+      |     +--rw encoding?                          identityref
+      |     +--rw max-lsp-bandwidth* [priority]
+      |     |  +--rw priority     uint8
+      |     |  +--rw bandwidth?   decimal64
+      |     +--rw time-division-multiplex-capable
+      |     |  +--rw minimum-lsp-bandwidth?   decimal64
+      |     |  +--rw indication?              enumeration
-      |     +--rw interface-adjustment-capability* [upper-sc]
-      |        +--rw upper-sc             identityref
-      |        +--rw upper-encoding?      identityref
-      |        +--rw max-lsp-bandwidth* [priority]
-      |           +--rw priority     uint8
-      |           +--rw bandwidth?   decimal64
      +--ro state
         +--ro schedules
         |  +--ro schedule* [schedule-id]
         |     +--ro schedule-id          uint32
         |     +--ro start?               yang:date-and-time
         |     +--ro schedule-duration?   string
         |     +--ro repeat-interval?     string
         +--ro interface-switching-capability* [switching-capability]
               ...

augment /nw:networks/nw:network/nt:link:
   +--rw te!
      +--rw config
      |     +--rw interface-switching-capability* [switching-capability]
      |     |  +--rw switching-capability               identityref
      |     |  +--rw encoding?                          identityref
      |     |  +--rw max-lsp-bandwidth* [priority]
      |     |  |  +--rw priority     uint8
      |     |  |  +--rw bandwidth?   decimal64
      |     |  +--rw time-division-multiplex-capable
      |     |  |  +--rw minimum-lsp-bandwidth?   decimal64
      |     |  |  +--rw indication?              enumeration
-      |     |  +--rw interface-adjustment-capability* [upper-sc]
-      |     |     +--rw upper-sc             identityref
-      |     |     +--rw upper-encoding?      identityref
-      |     |     +--rw max-lsp-bandwidth* [priority]
-      |     |        +--rw priority     uint8
-      |     |        +--rw bandwidth?   decimal64

augment /nw:networks/nw:network/nw:node:
   +--rw te!
      +--rw tunnel-termination-point* [tunnel-tp-id]
         +--rw tunnel-tp-id    binary
         +--rw config
         |  +--rw termination-capability* [link-tp]
         |     +--rw link-tp    leafref
         +--ro state
            +--ro termination-capability* [link-tp]
            |  +--ro link-tp    leafref
            +--ro switching-capability      identityref
            +--ro encoding                  identityref
+           +--rw max-lsp-bandwidth* [priority]
+              +--rw priority     uint8
+              +--rw bandwidth?   decimal64

Because IACD is already covered by the relations between
tunnel-termination-point and link termination-point. We will remove
the related section from link attributes. The max-lsp-bandwidth
section is to be added as above to complete all necessary attributes
for IACD.

Authors are preparing further detailed descriptions and use case
examples. The proposed text and illustrations will be provided.

Thanks,

- Xufeng