netconfcentral logo

openconfig-if-aggregate

HTML

openconfig-if-aggregate@2017-12-21



  module openconfig-if-aggregate {

    yang-version 1;

    namespace
      "http://openconfig.net/yang/interfaces/aggregate";

    prefix oc-lag;

    import openconfig-interfaces {
      prefix oc-if;
    }
    import openconfig-if-ethernet {
      prefix oc-eth;
    }
    import iana-if-type {
      prefix ift;
    }
    import openconfig-extensions {
      prefix oc-ext;
    }

    organization "OpenConfig working group";

    contact
      "OpenConfig working group
    netopenconfig@googlegroups.com";

    description
      "Model for managing aggregated (aka bundle, LAG) interfaces.";

    revision "2017-12-21" {
      description
        "Added IPv6 router advertisement configuration.";
      reference
        "2.1.0";

    }

    revision "2017-07-14" {
      description
        "Added Ethernet/IP state data; Add dhcp-client;
      migrate to OpenConfig types modules; Removed or
      renamed opstate values";
      reference
        "2.0.0";

    }

    revision "2016-12-22" {
      description
        "Fixes to Ethernet interfaces model";
      reference
        "1.1.0";

    }

    oc-ext:openconfig-version "2.1.0";

    typedef aggregation-type {
      type enumeration {
        enum "LACP" {
          value 0;
          description "LAG managed by LACP";
        }
        enum "STATIC" {
          value 1;
          description
            "Statically configured bundle / LAG";
        }
      }
      description
        "Type to define the lag-type, i.e., how the LAG is
      defined and managed";
    }

    grouping aggregation-logical-config {
      description
        "Configuration data for aggregate interfaces";
      leaf lag-type {
        type aggregation-type;
        description
          "Sets the type of LAG, i.e., how it is
        configured / maintained";
      }

      leaf min-links {
        type uint16;
        description
          "Specifies the mininum number of member
        interfaces that must be active for the aggregate interface
        to be available";
      }
    }  // grouping aggregation-logical-config

    grouping aggregation-logical-state {
      description
        "Operational state data for aggregate interfaces";
      leaf lag-speed {
        type uint32;
        units "Mbps";
        description
          "Reports effective speed of the aggregate interface,
        based on speed of active member interfaces";
      }

      leaf-list member {
        when "oc-lag:lag-type = 'STATIC'" {
          description
            "The simple list of member interfaces is active
          when the aggregate is statically configured";
        }
        type oc-if:base-interface-ref;
        description
          "List of current member interfaces for the aggregate,
        expressed as references to existing interfaces";
      }
    }  // grouping aggregation-logical-state

    grouping aggregation-logical-top {
      description
        "Top-level data definitions for LAGs";
      container aggregation {
        description
          "Options for logical interfaces representing
        aggregates";
        container config {
          description
            "Configuration variables for logical aggregate /
          LAG interfaces";
          uses aggregation-logical-config;
        }  // container config

        container state {
          config false;
          description
            "Operational state variables for logical
          aggregate / LAG interfaces";
          uses aggregation-logical-config;

          uses aggregation-logical-state;
        }  // container state
      }  // container aggregation
    }  // grouping aggregation-logical-top

    grouping ethernet-if-aggregation-config {
      description
        "Adds configuration items for Ethernet interfaces
      belonging to a logical aggregate / LAG";
      leaf aggregate-id {
        type leafref {
          path "/oc-if:interfaces/oc-if:interface/oc-if:name";
        }
        description
          "Specify the logical aggregate interface to which
        this interface belongs";
      }
    }  // grouping ethernet-if-aggregation-config

    augment /oc-if:interfaces/oc-if:interface {
      when
        "oc-if:type = 'ift:ieee8023adLag'" {
        description
          "active when the interface is set to type LAG";
      }
      description
        "Adds LAG configuration to the interface module";
      uses aggregation-logical-top;
    }

    augment /oc-if:interfaces/oc-if:interface/oc-eth:ethernet/oc-eth:config {
      when
        "oc-if:type = 'ift:ethernetCsmacd'" {
        description
          "active when the interface is Ethernet";
      }
      description
        "Adds LAG settings to individual Ethernet
    interfaces";
      uses ethernet-if-aggregation-config;
    }

    augment /oc-if:interfaces/oc-if:interface/oc-eth:ethernet/oc-eth:state {
      when
        "oc-if:type = 'ift:ethernetCsmacd'" {
        description
          "active when the interface is Ethernet";
      }
      description
        "Adds LAG settings to individual Ethernet
    interfaces";
      uses ethernet-if-aggregation-config;
    }
  }  // module openconfig-if-aggregate

Summary

  
  
Organization OpenConfig working group
  
Module openconfig-if-aggregate
Version 2017-12-21
File openconfig-if-aggregate.yang
  
Prefix oc-lag
Namespace http://openconfig.net/yang/interfaces/aggregate
  
Cooked /cookedmodules/openconfig-if-aggregate/2017-12-21
YANG /src/openconfig-if-aggregate@2017-12-21.yang
XSD /xsd/openconfig-if-aggregate@2017-12-21.xsd
  
Abstract Model for managing aggregated (aka bundle, LAG) interfaces.
  
Contact
OpenConfig working group
netopenconfig@googlegroups.com

Description

 
Model for managing aggregated (aka bundle, LAG) interfaces.

Typedefs

Typedef Base type Abstract
aggregation-type enumeration Type to define the lag-type, i.e., how the LAG is defined and managed

Groupings

Grouping Objects Abstract
aggregation-logical-config lag-type min-links Configuration data for aggregate interfaces
aggregation-logical-state lag-speed member Operational state data for aggregate interfaces
aggregation-logical-top aggregation Top-level data definitions for LAGs
ethernet-if-aggregation-config aggregate-id Adds configuration items for Ethernet interfaces belonging to a logical aggregate / LAG