huawei-net-slice

This YANG module defines the essential types for the management of Net-Slice for IGP.

  • Version: 2021-09-24

    huawei-net-slice@2021-09-24


    
      module huawei-net-slice {
    
        yang-version 1;
    
        namespace
          "urn:huawei:yang:huawei-net-slice";
    
        prefix net-slice;
    
        import huawei-ifm {
          prefix ifm;
        }
        import huawei-extension {
          prefix ext;
        }
        import huawei-ip {
          prefix ip;
        }
    
        organization
          "Huawei Technologies Co., Ltd.";
    
        contact
          "Huawei Industrial Base
    Bantian, Longgang
    Shenzhen 518129
    People's Republic of China
    Website: http://www.huawei.com
    Email: support@huawei.com";
    
        description
          "This YANG module defines the essential types for the management of Net-Slice for IGP.";
    
        revision "2021-09-24" {
          description
            "Add channelized-phy-port.";
          reference
            "Huawei private.";
    
        }
    
        revision "2021-08-18" {
          description
            "Modify slice-capability-type.";
          reference
            "Huawei private.";
    
        }
    
        revision "2021-02-08" {
          description
            "Modify container net-slices.";
          reference
            "Huawei private.";
    
        }
    
        revision "2021-02-03" {
          description "Initial revision.";
          reference
            "Huawei private.";
    
        }
    
        ext:task-name "netslicing";
    
        typedef net-af-type {
          type enumeration {
            enum "afipv4" {
              value 1;
              description "IPv4 address family.";
            }
            enum "afipv6" {
              value 2;
              description "IPv6 address family.";
            }
          }
          description
            "Net slice address family type.";
        }
    
        typedef slice-capability-type {
          type enumeration {
            enum "flex-phy-port" {
              value 0;
              description "Flex phy port type.";
            }
            enum "flexe-port" {
              value 1;
              description "FlexE port type.";
            }
            enum "channel-phy-port" {
              value 2;
              description
                "Channel phy port type.";
            }
            enum "channelized-phy-port" {
              value 3;
              description
                "Channelized phy port type.";
            }
          }
          description
            "Net slice capability type.";
        }
    
        typedef slice-service-class {
          type enumeration {
            enum "be" {
              value 1;
              description "BE service-class.";
            }
            enum "af1" {
              value 2;
              description "AF1 service-class.";
            }
            enum "af2" {
              value 3;
              description "AF2 service-class.";
            }
            enum "af3" {
              value 4;
              description "AF3 service-class.";
            }
            enum "af4" {
              value 5;
              description "AF4 service-class.";
            }
            enum "ef" {
              value 6;
              description "EF service-class.";
            }
            enum "cs6" {
              value 7;
              description "CS6 service-class.";
            }
            enum "cs7" {
              value 8;
              description "CS7 service-class.";
            }
          }
          description "Queue type.";
        }
    
        container net-slice {
          description
            "Configure net slice parameters.";
          container instances {
            description
              "List of net slice instance information.";
            list instance {
              key "id";
              description
                "Configure net slice instance.";
              leaf id {
                type uint32 {
                  range "0 .. 4294967295";
                }
                description
                  "Configure net slice instance identifier.";
              }
    
              leaf description {
                type string {
                  length "1..80";
                }
                description
                  "Net slice instance description.";
              }
            }  // list instance
          }  // container instances
    
          container global {
            description
              "Configure net slice global information.";
            leaf protocol-id {
              type uint8 {
                range "0|160..252";
              }
              default "0";
              description
                "Configure net slice protocol number.";
            }
          }  // container global
    
          container network-slice-color-mapping {
            presence
              "Enable network-slice-color-mapping.";
            description
              "Enable/disable network-slice color mapping.";
            container network-slice-color-maps {
              description
                "List of network-slice color map information.";
              list network-slice-color-map {
                key "color-index";
                description
                  "Configure network-slice color map.";
                leaf color-index {
                  type uint32 {
                    range "0..4294967295";
                  }
                  description "Color index.";
                }
    
                leaf network-slice-id {
                  type leafref {
                    path "/net-slice:net-slice/net-slice:instances/net-slice:instance/net-slice:id";
                  }
                  must "../network-slice-id!=0";
                  mandatory true;
                  description
                    "Network-slice instance Id.";
                }
              }  // list network-slice-color-map
            }  // container network-slice-color-maps
          }  // container network-slice-color-mapping
        }  // container net-slice
    
        rpc reset-flex-channel-statitic {
          ext:node-ref "/ifm:ifm/ifm:interfaces/ifm:interface/net-slice:net-slices/net-slice:net-slice/net-slice:flex-channel-statistics";
          description
            "Reset flex-channle statistic.";
          input {
            leaf slice-id {
              type uint32 {
                range "1 .. 4294967295";
              }
              description "Net-slice instance.";
            }
    
            leaf interface-name {
              type leafref {
                path "/ifm:ifm/ifm:interfaces/ifm:interface/ifm:name";
              }
              description "Interface name.";
            }
          }
        }  // rpc reset-flex-channel-statitic
      }  // module huawei-net-slice
    

© 2023 YumaWorks, Inc. All rights reserved.