| 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; |
| } |
| } |