bbf-network-map

This module contains a collection of YANG definitions for ensemble of the nodes with geographical and topological information as...

  • Version: 2021-07-06

    bbf-network-map@2021-07-06


    
      module bbf-network-map {
    
        yang-version 1.1;
    
        namespace "urn:bbf:yang:bbf-network-map";
    
        prefix bbf-nm;
    
        import ietf-network {
          prefix nw;
        }
        import ietf-network-topology {
          prefix nt;
        }
        import bbf-location-types {
          prefix bbf-loct;
        }
        import bbf-network-types {
          prefix bbf-ntwrkt;
        }
        import bbf-node-types {
          prefix bbf-nodet;
        }
        import bbf-location {
          prefix bbf-loc;
        }
        import bbf-device {
          prefix bbf-dvc;
        }
        import bbf-contact {
          prefix bbf-contact;
        }
        import bbf-end-user {
          prefix bbf-eu;
        }
        import bbf-equipment-inventory {
          prefix bbf-inv;
        }
    
        organization
          "Broadband Forum <https://www.broadband-forum.org>
         SDN/NFV Work Area";
    
        contact
          "Comments or questions about this Broadband Forum YANG module
         should be directed to <mailto:info@broadband-forum.org>.
    
         Editor:      Wenle Yang, Huawei
    
         Editor:      Jie Chen, CAICT
    
         PS Leader:   Yves Hertoghs, VMWare
    
         WA Director: George Dobrowski, Morris Creek Consulting
    
         WA Director: Bruno Cornaglia, Vodafone";
    
        description
          "This module contains a collection of YANG definitions for
         ensemble of the nodes with geographical and topological
         information as applicable to the BAA layer and the CloudCO
         SDN Management and Control function.
    
         Copyright (c) 2019-2021, Broadband Forum
    
         Redistribution and use in source and binary forms, with or
         without modification, are permitted provided that the following
         conditions are met:
    
         1. Redistributions of source code must retain the above copyright
            notice, this list of conditions and the following disclaimer.
    
         2. Redistributions in binary form must reproduce the above
            copyright notice, this list of conditions and the following
            disclaimer in the documentation and/or other materials
            provided with the distribution.
    
         3. Neither the name of the copyright holder nor the names of its
            contributors may be used to endorse or promote products
            derived from this software without specific prior written
            permission.
    
         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.
    
         The above license is used as a license under copyright only.
         Please reference the Forum IPR Policy for patent licensing terms
         <https://www.broadband-forum.org/ipr-policy>.
    
         Any moral rights which are necessary to exercise under the above
         license grant are also deemed granted under this license.
    
         This version of this YANG module is part of TR-454; see
         the TR itself for full legal notices.";
    
        revision "2021-07-06" {
          description
            "Issue 1.
           * Approval Date:    2021-07-06.
           * Publication Date: 2021-07-06.";
          reference
            "TR-454: YANG Modules for Access Network Map & Equipment
            	Inventory <https://www.broadband-forum.org/technical/
            			   download/TR-454_Issue-1.pdf>";
    
        }
    
    
        feature reports-network-map {
          description
            "Indicates the support for the network map feature.";
        }
    
        augment /nw:networks/nw:network {
          if-feature bbf-nm:reports-network-map;
          description
            "Augment the network instance with specific
           information that includes the tenant
           and network connectivity attributes.";
          leaf tenant-id {
            type string;
            description
              "The tenant identifier for the network";
          }
        }
    
        augment /nw:networks/nw:network/nw:node {
          if-feature bbf-nm:reports-network-map;
          description
            "Augment the network node with
           network metadata.";
          leaf node-type {
            type identityref {
              base bbf-nodet:node-type;
            }
            description "The type of node.";
          }
    
          container network-device-properties {
            when
              "derived-from-or-self
                (../node-type, 'bbf-nodet:network-device')" {
              description
                "Network device properties are used for network
               device types.";
            }
            description
              "The properties associated with a device for topology
             management.";
            uses bbf-dvc:device-alias;
    
            leaf device-ref {
              if-feature bbf-inv:reports-equipment-inventory;
              if-feature bbf-inv:reports-device-inventory;
              type leafref {
                path "/bbf-inv:equipment-inventory/bbf-inv:device-inventory/bbf-inv:device/bbf-inv:device-id";
                require-instance false;
              }
              description
                "References the associated device in the equipment
               inventory.";
            }
          }  // container network-device-properties
    
          container enduser-device-properties {
            when
              "derived-from-or-self
                (../node-type, 'bbf-nodet:enduser-device')" {
              description
                "End user device properties are used for end user
               device (EUD) types.";
            }
            description
              "The properties associated with an end user device
             for topology management.";
            container end-users {
              description
                "End user information for the customer(s)
               associated with the EUD.";
              uses bbf-eu:end-users;
            }  // container end-users
    
            leaf device-ref {
              if-feature bbf-inv:reports-equipment-inventory;
              if-feature bbf-inv:reports-end-user-device-inventory;
              type leafref {
                path "/bbf-inv:equipment-inventory/bbf-inv:eud-inventory/bbf-inv:eud-equipment/bbf-inv:eud-id";
                require-instance false;
              }
              description
                "References the associated EUD in the equipment
               inventory.";
            }
          }  // container enduser-device-properties
    
          container geographic-location {
            description
              "The geographic location of the node.";
            uses bbf-loc:geographic-location-information;
          }  // container geographic-location
    
          container responsible-party-contact {
            description
              "Contact information of the party responsible for the node.";
            uses bbf-contact:contact-information;
          }  // container responsible-party-contact
    
          container site {
            description
              "Site information of where the node is hosted";
            leaf site-type {
              type identityref {
                base bbf-loct:site-type;
              }
              description
                "The type of site where the node is hosted";
            }
    
            leaf plant-type {
              type identityref {
                base bbf-loct:plant-type;
              }
              description
                "The type of plant where the node is hosted";
            }
    
            uses bbf-loc:site-information;
          }  // container site
    
          container deployment-topology {
            description
              "Represents the deployment connectivity between
             this node and other nodes in the network map.";
            leaf deployment-type {
              type identityref {
                base bbf-ntwrkt:deployment-type;
              }
              description
                "Type of network deployment.";
            }
    
            list connected-node {
              key "network-ref node-ref";
              description
                "Represents another node that is in this or another
               network map to which this node connects.";
              leaf network-ref {
                type leafref {
                  path
                    "/nw:networks/nw:network"
                      + "/nw:supporting-network/nw:network-ref";
                  require-instance false;
                }
                description
                  "References the network map instance which the
                 node is a part.";
              }
    
              leaf node-ref {
                type leafref {
                  path
                    "/nw:networks/nw:network/nw:node/nw:node-id";
                  require-instance false;
                }
                description
                  "References the node itself within the network map
                 instance.";
              }
            }  // list connected-node
          }  // container deployment-topology
        }
    
        augment /nw:networks/nw:network/nw:node/nt:termination-point {
          if-feature bbf-nm:reports-network-map;
          description
            "Augment the network termination point with metadata about the
           termination point.";
          leaf distribution-frame-type {
            type identityref {
              base bbf-ntwrkt:distribution-frame-type;
            }
            description
              "The type of distribution frame associated
             with the termination point.";
          }
    
          container geographic-location {
            description
              "The geographic location of the termination point.";
            uses bbf-loc:geographic-location-information;
          }  // container geographic-location
        }
      }  // module bbf-network-map
    

© 2023 YumaWorks, Inc. All rights reserved.