ciena-mef-logical-port

This YANG module defines Ciena's management data definition for the management of a Logical Port.

  • Version: 2017-09-18

    ciena-mef-logical-port@2017-09-18


    
      module ciena-mef-logical-port {
    
        yang-version 1;
    
        namespace
          "urn:ciena:params:xml:ns:yang:ciena-pn::ciena-mef-logical-port";
    
        prefix mef-logical-port;
    
        import ietf-interfaces {
          prefix if;
        }
        import ietf-yang-types {
          prefix yt;
        }
        import ciena-mef-frame-to-cos-map {
          prefix ftc;
        }
        import ciena-mef-cos-to-frame-map {
          prefix ctf;
        }
        import ciena-mef-meter-profile {
          prefix meter;
        }
        import ciena-mef-flood-containment-profile {
          prefix mef-fc;
        }
    
        organization "Ciena Corporation";
    
        contact
          "Web URL: http://www.ciena.com/
    E-mail:  yang@ciena.com
    Postal:  7035 Ridge Road
    	 Hanover, Maryland 21076
    	 U.S.A.
    Phone:   +1 800-921-1144
    Fax:     +1 410-694-5750";
    
        description
          "This YANG module defines Ciena's management data definition for the
    management of a Logical Port.";
    
        revision "2017-09-18" {
          description
            "Added operational data for logical ports.
    Added description in containers, lists, leafs.";
          reference
            "RFC 6020: YANG - A Data Modeling Language for
            the Network Configuration Protocol (NETCONF).
            No specific reference; standard not available.";
    
        }
    
        revision "2014-10-02" {
          description "Initial Version.";
          reference
            "RFC 6020: YANG - A Data Modeling Language for
            the Network Configuration Protocol (NETCONF).
            No specific reference; standard not available.";
    
        }
    
    
        typedef logical-port-ref {
          type leafref {
            path "/mef-logical-port:logical-ports/mef-logical-port:logical-port/mef-logical-port:name";
          }
          description
            "This type is used by the data models that needs to reference
    configured logical ports.";
        }
    
        typedef lp-admin-state {
          type enumeration {
            enum "disable" {
              value 0;
              description
                "The logical port is enabled.";
            }
            enum "enable" {
              value 1;
              description
                "The logical port is disabled.";
            }
          }
          description
            "The admin state of logical port.";
        }
    
        typedef lp-oper-state {
          type enumeration {
            enum "up" {
              value 0;
              description
                "The logical port is up.";
            }
            enum "down" {
              value 1;
              description
                "The logical port is down.";
            }
          }
          description
            "The oper state of logical port.";
        }
    
        container logical-ports {
          description
            "Configuration data for Logical Ports.";
          list logical-port {
            key "name";
            description
              "This denotes list of Logical Ports.";
            leaf name {
              type string;
              description
                "This object indicates the identifier and is a
    text string that is used to identify a logical port.
    Unique string values are chosen to uniquely identify
    the port.
    Octet values of 0x00 through 0x1f are illegal.
    MEF 26.1 restricts the maximum size identifiers to
    45 octets.";
              reference
                "[MEF 7.2] 6.2.1.4";
    
            }
    
            leaf admin-state {
              type lp-admin-state;
              default "enable";
              description
                "Enable or disable this logical-port.";
            }
    
            leaf binding {
              type if:interface-ref;
              description
                "A Reference to an Interface.";
            }
    
            leaf mtu {
              type uint32 {
                range "64..9216";
              }
              default "1526";
              description
                "The size in bytes of the maximum transmission unit.";
            }
    
            leaf meter-profile {
              type meter:meter-ref;
              description
                "A reference to a Meter Profile.";
            }
    
            choice frame-to-cos-policy {
              description
                "Indicates Frame to CoS Policy.";
              case map {
                leaf policy {
                  type enumeration {
                    enum "outer-tag" {
                      value 0;
                      description
                        "If the policy is set to outer-tag then outer VLAN tag PCP/CFI
    value is mapped to the port resolved CoS mapping table to
    derive the R-CoS and R-Color.";
                    }
                    enum "inner-tag" {
                      value 1;
                      description
                        "If the policy is set to inner-tag then inner VLAN tag PCP/CFI
    value is mapped to the port resolved CoS mapping table to
    derive the R-CoS and R-Color.";
                    }
                    enum "dscp" {
                      value 2;
                      description
                        "If the policy is set to dscp then dscp value in IP header
    is mapped to the port resolved CoS mapping table to
    derive the R-CoS and R-Color.";
                    }
                    enum "outer-mpls-tc" {
                      value 3;
                      description
                        "If the policy is set to outer-mpls-tc then top MPLS label
    EXP value is mapped to the port resolved CoS mapping table to
    derive the R-CoS and R-Color.";
                    }
                  }
                  description
                    "Indicates the policy used to assign CoS values to incomming packets.";
                }
    
                leaf frame-to-cos-map {
                  type ftc:frame-to-cos-ref;
                  description
                    "Reference to a Frame to CoS Map.";
                }
              }  // case map
    
              case fixed {
                leaf cos {
                  type uint8 {
                    range "0..63";
                  }
                  description
                    "Fixed cos value assigned when the CoS policy is fixed.";
                }
    
                leaf color {
                  type enumeration {
                    enum "green" {
                      value 0;
                      description
                        "Sets color to Green.";
                    }
                    enum "yellow" {
                      value 1;
                      description
                        "Sets color to Yellow.";
                    }
                    enum "red" {
                      value 2;
                      description
                        "Sets color to Red.";
                    }
                  }
                  description
                    "Fixed color value assigned when the CoS policy is set to fixed.";
                }
              }  // case fixed
            }  // choice frame-to-cos-policy
    
            leaf cos-to-frame-map {
              type ctf:cos-to-frame-ref;
              description
                "Reference to a CoS to Frame Map.";
            }
    
            leaf flood-containment-profile {
              type mef-fc:flood-containment-profile-ref;
              description
                "Reference to a Flood Containment Profile.";
            }
    
            leaf description {
              type string;
              description
                "A more detailed description of a logical port.";
            }
    
            leaf-list outer-tpid {
              type enumeration {
                enum "tpid-8100" {
                  value 0;
                  description
                    "Indicates value of Outer VLAN Tag TPID to be 0x8100.";
                }
                enum "tpid-88a8" {
                  value 1;
                  description
                    "Indicates value of Outer VLAN Tag TPID to be 0x88a8.";
                }
                enum "tpid-9100" {
                  value 2;
                  description
                    "Indicates value of Outer VLAN Tag TPID to be 0x9100.";
                }
              }
              description
                "A list of valid outer-vlan-tag TPIDs for the logical port.";
            }
    
            leaf-list inner-tpid {
              type enumeration {
                enum "tpid-8100" {
                  value 0;
                  description
                    "Indicates value of Inner VLAN Tag TPID to be 0x8100.";
                }
                enum "tpid-88a8" {
                  value 1;
                  description
                    "Indicates value of Inner VLAN Tag TPID to be 0x88a8.";
                }
                enum "tpid-9100" {
                  value 2;
                  description
                    "Indicates value of Inner VLAN Tag TPID to be 0x9100.";
                }
              }
              description
                "A list of valid inner-vlan-tag TPIDs for the logical port.";
            }
    
            leaf egress-qos {
              type enumeration {
                enum "off" {
                  value 0;
                  description
                    "Indicates Egress QoS is off for the logical port.";
                }
                enum "on" {
                  value 1;
                  description
                    "Indicates Egress QoS is on for the logical port.";
                }
              }
              description
                "The Egress QoS state for the logical port.";
            }
          }  // list logical-port
        }  // container logical-ports
    
        container logical-port-oper-status {
          config false;
          description
            "Operational Data for logical ports.";
          list logical-port-status {
            key "name";
            description
              "List of all logical ports operational data.";
            leaf name {
              type string;
              description
                "A string that identifies the logical port.";
            }
    
            leaf index {
              type uint32;
              description
                "Index of this logical port.";
            }
    
            leaf mac-address {
              type yt:mac-address;
              description
                "MAC Address of this logical port.";
            }
    
            leaf oper-state {
              type lp-oper-state;
              description
                "Operational state of this logical port.";
            }
          }  // list logical-port-status
        }  // container logical-port-oper-status
      }  // module ciena-mef-logical-port
    

© 2023 YumaWorks, Inc. All rights reserved.