X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=ntsimulator%2Fyang%2Fo-ran-mplane-int.yang;fp=ntsimulator%2Fyang%2Fo-ran-mplane-int.yang;h=80e1cab3b3fb9e0d089d8c1529ebecd2b1b1b571;hb=29ce368a8b49cb41f3a1640581ff9958ea50ad8c;hp=0000000000000000000000000000000000000000;hpb=1d6c03fcfde03df735f82913ea795a75cd3068d9;p=sim%2Fo1-interface.git diff --git a/ntsimulator/yang/o-ran-mplane-int.yang b/ntsimulator/yang/o-ran-mplane-int.yang new file mode 100644 index 0000000..80e1cab --- /dev/null +++ b/ntsimulator/yang/o-ran-mplane-int.yang @@ -0,0 +1,240 @@ +module o-ran-mplane-int { + yang-version 1.1; + namespace "urn:o-ran:mplane-interfaces:1.0"; + prefix "o-ran-mplane-int"; + + import ietf-inet-types { + prefix "inet"; + } + + import ietf-interfaces { + prefix "if"; + } + + import o-ran-interfaces { + prefix "o-ran-int"; + } + + organization "O-RAN Alliance"; + + contact + "www.o-ran.org"; + + description + "This module defines the YANG definitions for managng the O-RAN Radio Unit + management plane interface. + + Copyright 2019 the O-RAN Alliance. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 'AS IS' + AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE + LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + POSSIBILITY OF SUCH DAMAGE. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, + this list of conditions and the above disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the above disclaimer in the documentation + and/or other materials provided with the distribution. + * Neither the Members of the O-RAN Alliance nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission."; + + revision "2019-04-11" { + description + "version 1.0.2 + + 1) Changes for ERI-001 - enabling NETCONF clients to be configured. + 2) shifting new container to correct position."; + + reference "ORAN-WG4.M.0-v01.00"; + } + + revision "2019-03-07" { + description + "version 1.0.1 + + 1) backward compatible changes to introduce groupings."; + + reference "ORAN-WG4.M.0-v01.00"; + } + + revision "2019-02-04" { + description + "version 1.0.0 + + 1) imported model from xRAN + 2) changed namespace and reference from xran to o-ran"; + + reference "ORAN-WG4.M.0-v01.00"; + } + + + typedef vlan-id { + type uint16 { + range 1..4094; + } + description + "Type definition representing a single-tagged VLAN"; + } + + // Groupings + + grouping mplane-group { + container searchable-mplane-access-vlans-info { + description + "These parameters shall be stored by the equipment in reset persistant memory + to enable it to be re-used to optimize VALN discovery procerdures."; + leaf-list searchable-access-vlans { + type vlan-id; + description + "A list of access VLANs that may be operational on the transport + network. Can be used by the equipment to optimize its VLAN searching - for + M-plane operations."; + } + container vlan-range { + description "the range of VLAN IDs that may be configured for M-Plane"; + leaf lowest-vlan-id { + type vlan-id; + description + "Value of this parameter informs equipment about lowest VID to be used + in VLAN scan procedure"; + } + leaf highest-vlan-id { + type vlan-id; + description + "Value of this parameter informs about highest VID to be used + in VLAN scan procedure"; + } + } + } + + container m-plane-interfaces { + description "information concerning m-plane interfaces"; + list m-plane-sub-interfaces { + key "interface-name sub-interface"; + description "list of m-plane information"; + leaf interface-name { + type leafref { + path "/if:interfaces/if:interface/if:name"; + } + description "the name of the interface"; + } + leaf sub-interface { + type leafref { + path "/if:interfaces/if:interface[if:name = current()/../interface-name]/o-ran-int:vlan-id"; + } + description + "vlans used to communicate with management plane servers."; + } + container client-info { + config false; + description + "the NETCONF client information, discovered by DHCP or manually + configured during installation."; + list mplane-ipv4-info { + key mplane-ipv4; + description "list of IPv4 NETCONF clients"; + leaf mplane-ipv4 { + type inet:ipv4-address; + description "The IPv4 address of M-Plane client discovered by the O-RU + or manually configured."; + } + leaf port { + type inet:port-number; + description + "The call home port number discovered or manually configured."; + } + } + list mplane-ipv6-info { + key mplane-ipv6; + description "list of IPv6 NETCONF clients"; + leaf mplane-ipv6 { + type inet:ipv6-address; + description "The IPv6 address of M-Plane client discovered by the O-RU + or manually configured."; + } + leaf port { + type inet:port-number; + description + "The call home port number discovered or manually configured."; + } + } + leaf-list mplane-fqdn { + type inet:domain-name; + description "The discovered FQDN(s) of M-Plane client(s)."; + } + } + } + + container m-plane-ssh-ports { + description "leafs for managing SSH ports"; + leaf call-home-ssh-port { + type inet:port-number; + default 4334; + description "The configured call home server port number"; + } + leaf server-ssh-port { + type inet:port-number; + default 830; + description "The configured SSH server port number"; + } + } + } + container configured-client-info { + description + "the NETCONF client information that may be configured by another + NETCONF client. These clients are reported independently from clients + manually configured or discovered using DHCP."; + list mplane-ipv4-info { + key mplane-ipv4; + description "list of IPv4 NETCONF clients"; + leaf mplane-ipv4 { + type inet:ipv4-address; + description "The IPv4 address of configured M-Plane client."; + } + leaf port { + type inet:port-number; + description + "The configured call home port number."; + } + } + list mplane-ipv6-info { + key mplane-ipv6; + description "list of IPv6 NETCONF clients"; + leaf mplane-ipv6 { + type inet:ipv6-address; + description "The IPv6 address of configured M-Plane client.."; + } + leaf port { + type inet:port-number; + description + "The configured call home port number."; + } + } + leaf-list mplane-fqdn { + type inet:domain-name; + description "The configured FQDN(s) of M-Plane client(s)."; + } + } + } + + + // Top Level Container + + container mplane-info { + description "top level container for management plane information"; + + uses mplane-group; + } +}