aboutsummaryrefslogtreecommitdiffstats
path: root/sdnr/model/yang/ltp-path@2017-05-26.yang
blob: e9404d8cc6e907f2bfa7ccde6f93f55ff6688b82 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
module ltp-path {
  namespace "urn:onf:params:xml:ns:yang:ltp-path";
  prefix ltp-path;

  import core-model {
    prefix core-model;
  }

  organization
   "ONF (Open Networking Foundation) Open Transport Working Group -
    Wireless Transport Project";
  contact 
    "WG Web: <https://www.opennetworking.org/technical-communities/areas/
              specification/1931-optical-transport>
     WG List:  <mailto:wireless-transport@login.opennetworking.org>
     WG Chair: Lyndon Ong
               <mailto:lyong@ciena.com>
     WG Chair: Giorgio Cazzaniga
               <mailto:giorgio.cazzaniga@sm-optics.com>
     Editor:   Martin Skorupski
               <mailto:martin.skorupski@highstreet-technologies.com>";
  description 
    "This module contains a collection of YANG definitions describing a 
     telecommunication network path.";
 
  revision 2017-05-26 {
    description "Initial version";
    reference "ltp-path, ONF core-model 1.2";
  }

  typedef layer-protocol-name-enumeration {
    type enumeration {
      enum ETH {
        value 1;
        description
          "Identifying the layer of Ethernet.";
      }
      enum PTP {
        value 2;
        description
          "Identifying the layer or the Precision Time Protocol.";
       }
    }

    description
      "The propagation of the layer protocol name.";
  }

  container ltp-path {
    description
      "Listing all the path-identifiers, used by RESTCONF interfaces to
       address an entry in the ltp-path-list.";

    leaf-list path-identifier {
      type leafref {
        path '/ltp-path/ltp-path-list/path-id';
      }
      description 
        "List of reference values for existing path entries.";
    }

    list ltp-path-list {

      key "path-id";

      description
        "A list of path found in the network.";

      leaf path-id {
        type string;
        description
          "A unique identifier of a path. It migth be beneficial to use the 
           format as defined in RFC 4122 
           (https://www.ietf.org/rfc/rfc4122.txt).";
      }

      leaf path-name {
        type string;
        description
          "The human readable name of a path. It should include start 
           and end point.";
      }

      leaf forwarding-direction {
        type core-model:forwarding-direction;
        description
          "Defines the directionality of the path.";
      }

      leaf layer-protocol-name {
        type layer-protocol-name-enumeration;
        description
          "Defines the layer of the path. Please see ONF CoreModel for 
           further details.";
      }

      list logical-termination-point-list {

        key "ltp-index";
        min-elements 2;

        description
          "An ordered list of logical-termination points, defining the path.";

        leaf ltp-index {
          type string;
          description
            "The index of the LTP with in the list. The LTP with the highest
             index is the end-point of the path. The LTP with the lowest
             index is the start-point of the path.";
        }

        leaf ltp-reference {
          type leafref {
            path '/core-model:network-element/core-model:ltp/core-model:uuid';
          }
          description
            "The reference value of a network-elements LTP.";
        }

        leaf physical-port-reference {
          type string;
          description
            "A text label for the unmodelled physical port associated with 
             the LTP. In many cases there is no associated physical port.";
        }
    
        leaf node-reference {
          type leafref {
            path '/core-model:network-element/core-model:uuid';
          }
          description
            "A reference value identifying a network-element.";
        }
      }
   }
  }
}