Subject: [Teas] IETF TE Topology YANG Model Design Meeting Notes - 2016-10-05

From: Xufeng Liu <[email-masked]>
Date: Mon, 10 Oct 2016 15:44:33 +0000

Attendees:
Igor, Xufeng, Dieter, Sergio, Anurag

- Reviewed counters/statistics.
  augment /nw:networks/nw:network/nw:node:
     +--rw te-node-id?   te-types:te-node-id
     +--rw te!
        +--rw config
        +--ro state
+      +--ro statistics
+      |  +--ro discontinuity-time           yang:date-and-time
+      |  +--ro node
+      |  |  +--ro disables?             yang:counter32
+      |  |  +--ro enables?              yang:counter32
+      |  |  +--ro maintenance-sets?     yang:counter32
+      |  |  +--ro maintenance-clears?   yang:counter32
+      |  |  +--ro modifies?             yang:counter32
+      |  +--ro connectivity-matrix-entry
+      |     +--ro creates?    yang:counter32
+      |     +--ro deletes?    yang:counter32
+      |     +--ro disables?   yang:counter32
+      |     +--ro enables?    yang:counter32
+      |     +--ro modifies?   yang:counter32
        +--rw tunnel-termination-point* [tunnel-tp-id]
           +--rw tunnel-tp-id    binary
           +--rw config
-         |  +--rw termination-capability* [link-tp]
-         |     +--rw link-tp                            leafref
+         |  +--rw local-link-connectivity* [link-tp-ref]
+         |     +--rw link-tp-ref                        leafref
           |     +--rw label-restriction* [inclusive-exclusive label-start]
           |     |  +--rw inclusive-exclusive    enumeration
           |     |  +--rw label-start            te-types:generalized-label
@@ -494,36 +508,54 @@ augment /nw:networks/nw:network/nw:node:
           |     +--rw te-srlgs
           |        +--rw value*   te-types:srlg
           +--ro state
+         +--ro statistics
+            +--ro discontinuity-time          yang:date-and-time
+            +--ro tunnel-termination-point
+            |  +--ro disables?             yang:counter32
+            |  +--ro enables?              yang:counter32
+            |  +--ro maintenance-clears?   yang:counter32
+            |  +--ro maintenance-sets?     yang:counter32
+            |  +--ro modifies?             yang:counter32
+            |  +--ro downs?                yang:counter32
+            |  +--ro ups?                  yang:counter32
+            |  +--ro in-service-clears?    yang:counter32
+            |  +--ro in-service-sets?      yang:counter32
+            +--ro local-link-connectivity
+               +--ro creates?    yang:counter32
+               +--ro deletes?    yang:counter32
+               +--ro disables?   yang:counter32
+               +--ro enables?    yang:counter32
+               +--ro modifies?   yang:counter32
 augment /nw:networks/nw:network/nt:link:
     +--rw te!
        +--rw config
@@ -636,163 +668,178 @@ augment /nw:networks/nw:network/nt:link:
        |     +--rw te-srlgs
        |        +--rw value*   te-types:srlg
        +--ro state
+      +--ro statistics
+         +--ro discontinuity-time      yang:date-and-time
+         +--ro disables?               yang:counter32
+         +--ro enables?                yang:counter32
+         +--ro maintenance-clears?     yang:counter32
+         +--ro maintenance-sets?       yang:counter32
+         +--ro modifies?               yang:counter32
+         +--ro downs?                  yang:counter32
+         +--ro ups?                    yang:counter32
+         +--ro fault-clears?           yang:counter32
+         +--ro fault-detects?          yang:counter32
+         +--ro protection-switches?    yang:counter32
+         +--ro protection-reverts?     yang:counter32
+         +--ro restoration-failures?              yang:counter32
+         +--ro restoration-starts?                yang:counter32
+         +--ro restoration-successes?             yang:counter32
+         +--ro restoration-reversion-failures?    yang:counter32
+         +--ro restoration-reversion-starts?      yang:counter32
+         +--ro restoration-reversion-successes?   yang:counter32

- Continued discussion on bandwidth modeling
  > The generic type will be a string containing a list of numbers
  separated by commas, with each of these number can be non-negative
  decimal, hex integer, or hex float:

  (dec | hex | float)[*(","(dec | hex | float))]

  > For packet, a float number is used, such as 0x1p10.
  > For OTN, a list of integers is used, such as "0,2,3,1"
    odu0: 2
    odu3: 1
  > For DWDM, a list of pairs of slot number and width, such as "0, 2, 3, 3"
    Frequency slot: 0, slot width: 2
    Frequency slot: 3, slot width: 3

  > The hex number format starts with prefix 0x.

    type string {
      pattern '0x([0-9a-fA-F]{2}([0-9a-fA-F]{2})*)?';
    }

  > The float number format uses ieee floating-point

    type string {
      pattern
        '0x(((0\.)0?)|1\.([0-9a-fA-F]{0,5}[02468aAcCeE]?)?'
      + '([pP](\+)?(0?[0-9]?[0-9]|1[01][0-9]|12[0-7])?)?)';

    }
    description
       "Bamdwidth in IEEE 754 floating point 32-bit binary format:
       (-1)**(S) * 2**(Exponent-127) * (1 + Fraction),
       where Exponent uses 8 bits, and Fraction uses 23 bits.
       The units are bytes per second.
       The encoding format is the external hexadecimal-significand
       character sequences specified in IEEE 754 and C99,
       restricted to be normalized, non-negtive, and non-fraction:
       0x1.hhhhhhp{+}d or 0X1.HHHHHHP{+}D
       where 'h' and 'H' are hexadecimal digits, 'd' and 'D' are
       integers in the range of [0..127].
       When six hexadecimal digits are used for 'hhhhhh' or 'HHHHHH',
       the least significant digit must be an even number.
       'x' and 'X' indicate hexadecimal; 'p' and 'P' indicate power
       of two.
       Some examples are: 0x0p0, 0x1p10, and 0x1.abcde2p+20";

Thanks,

- Xufeng

Note: Please drop me an email if you need an invite for joining the weekly call.