netconfcentral logo

ieee802-ethernet-interface

HTML

ieee802-ethernet-interface@2017-02-23



  module ieee802-ethernet-interface {

    yang-version 1.1;

    namespace
      "urn:ieee:params:xml:ns:yang:ieee802-ethernet-interface";

    prefix eth-if;

    import ietf-yang-types {
      prefix yang;
    }
    import ietf-interfaces {
      prefix if;
    }
    import iana-if-type {
      prefix ianaift;
    }

    organization
      "Web URL: http://www.ieee802.org/3/

   Working Group Chair:
     David Law
     dlaw@hpe.com

   Working Group Vice-chair:
     Adam Healey
     adam.healey@broadcom.com

   Acting YANG Data Model Definitions Task Force Chair:
     Yan Zhuang
     zhuangyan.zhuang@huawei.com

   Editor:
     Robert Wilton
     rwilton@cisco.com";

    contact
      "Robert Wilton - rwilton@cisco.com";

    description
      "This module contains YANG definitions for configuring IEEE 802.3
   Ethernet Interfaces.

   In this YANG module, 'Ethernet interface' can be interpretted
   as referring to 'IEEE 802.3 standard compliant Ethernet
   interfaces'";

    reference
      "IEEE 802.3-2015, unless dated explicitly";


    revision "2017-02-23" {
      description
        "Initial revision of YANG model for IEEE 802.3 Ethernet
     interfaces.

     Changes from previous draft:
     - Changed speed to decimal64, in Gb/s to 3 decimal places.
     - Moved Ethernet stats under the Ethernet interface container,
       since someone retrieving the higher layer stats may not want
       to get Ethernet statistics at the same time because they
       are a lower layer.
     - Changed counters from uint64 to yang:counter64:
       - More consistent with the RFC 7223 and MIB counters.
     - Rejigged auto-neg, duplex, speed, fc, pfc to be more inline
       with how IETF NETMOD thinks that future models should look
       like.  Specifically to allow for an easy migrate to combined
       config and state trees.";
      reference
        "IEEE P802.3.2 (IEEE 802.3cf) YANG Data Model Definitions Task
        Force";

    }


    typedef eth-if-speed-type {
      type decimal64 {
        fraction-digits 3;
      }
      units "Gb/s";
      description
        "Used to represent the configured, negotiated, or actual speed
     of an Ethernet interface in Gigabits per second (Gb/s),
     accurate to 3 decimal places (i.e. accurate to 1 Mb/s)";
    }

    typedef duplex-type {
      type enumeration {
        enum "full" {
          value 0;
          description "Full duplex";
        }
        enum "half" {
          value 1;
          description "Half duplex";
        }
      }
      default 'full';
      description
        "The current duplex mode of operation of an Ethernet
     interface.";
      reference
        "IEEE Std 802.3, 30.3.1.1.32, aDuplexStatus";

    }

    typedef pause-fc-direction-type {
      type enumeration {
        enum "disabled" {
          value 0;
          description
            "Flow-control disabled in both ingress and egress
         directions. I.e. PAUSE frames are not transmitted and
         PAUSE frames received on ingress are discarded without
         processing";
        }
        enum "ingress-only" {
          value 1;
          description
            "Flow control is enabled in the ingress direction only.
        I.e. PAUSE frames may be transmitted to reduce the ingress
        traffic flow, but PAUSE frames received on ingress are
        dicarded without reducing the egress traffic rate.";
        }
        enum "egress-only" {
          value 2;
          description
            "Flow control is enabled in the egress direction only.
         I.e. PAUSE frames are not transmitted, but PAUSE frames
         received on ingress are processed to reduce the egress
         traffic rate.";
        }
        enum "bi-directional" {
          value 3;
          description
            "Flow control is enabled in both ingress and egress
        directions. I.e. PAUSE frames may be transmitted to reduce
        the ingress traffic flow, and PAUSE frames received on
        ingress are processed to reduce the egress traffic rate.";
        }
      }
      description
        "Enumerates the possible PAUSE frame based flow control
     settings that can be used in explicit configuration, or when
     reporting the operational state";
      reference
        "IEEE 802.3.1, dot3PauseAdminMode and dot3PauseOperMode";

    }

    feature ethernet-pfc {
      description
        "This device supports Ethernet priority flow-control";
    }

    augment /if:interfaces/if:interface {
      when
        "if:type = 'ianaift:ethernetCsmacd'" {
        description
          "Applies to all P2P Ethernet interfaces";
      }
      description
        "Augment interface model with IEEE 802.3 Ethernet interface
     specific configuration nodes";
      container ethernet {
        description
          "Contains all Ethernet interface related configuration";
        container auto-negotiation {
          description
            "Contains auto-negotiation transmission parameters

         XXX, reference the general interface configuration.
         Allows the advertised duplex value in the negotiation to
         be restricted.

         If not specified then the default behaviour is to
         negotiate all available values for the particular type of
         Ethernet PHY associated with the interface.

         If auto-negotiation is enabled, and flow control has not
         been explicitly configured, then the default flow control
         capabilities that are negotiated allows for bi-directional
         or egress-only flow control to be negotiated (depending on
         the peer device capabilities/configuration).

         If auto-negotiation is enabled, and flow control has been
         explicitly configured, then the configuration settings
         restrict the values that may be negotiated.  However, it
         should be noted that the protocol does not allow only
         egress flow control to be negotiated without also allowing
         bi-directional flow control.";
          reference
            "IEEE 802.3 section 28 and annexes 28A-D";

          leaf enable {
            type boolean;
            description
              "Controls whether auto-negotiation is enabled or
           disabled.

           For interface types that support auto-negotiation then
           it defaults to being enabled.  TODO - Or should the
           default just be left to vendor discretion?";
          }
        }  // container auto-negotiation

        leaf duplex {
          type duplex-type;
          default 'full';
          description
            "Force the Ethernet interface to run in full or half duplex
         mode (if supported).

         If auto-negotiation is enabled then explicitly configuring
         duplex restricts the duplex value that may be negotiated.
         If the peer device does not accept a configured duplex
         value then auto-negotiation will fail, and the link will
         not come up.

         Half duplex can only be negotiated for some interface
         types - as specified in 802.3, annex section 28B.3.";
          reference
            "IEEE 802.3, 30.3.1.1.32, aDuplexStatus";

        }

        leaf speed {
          type eth-if-speed-type;
          description
            "For PHY types that may operate at various speeds, this
         leaf allows the interface to be forced to operate at a
         particular speed.  Without any explicit configuration,
         Ethernet interfaces run at the maximum speed that they are
         capable of operating at

         Allows the advertised speed value (Gb/s) in the
         negotiation to be restricted. Speed is only negotiated for
         some PHYs, many higher speed PHYs operate at a fixed
         speed.  If this leaf is not set then the default behaviour
         is to negotiate all available speeds, generally choosing
         the fastest speed as per 802.3 Annex 28B.3.";
        }

        container flow-control {
          description
            "Holds the different types of Ethernet flow control that
         can be enabled";
          container pause {
            description
              "802.3 PAUSE frame based flow control";
            reference
              "IEEE 802.3, xxx";

            leaf direction {
              type pause-fc-direction-type;
              description
                "Indicates which direction flow control is enabled in,
             or whether it is disabled.  The default flow-control
             settings are vendor specific.

             If auto-negotiation is enabled, then PAUSE based
             flow-control is negoiated by default.";
            }
          }  // container pause

          container pfc {
            if-feature ethernet-pfc;
            description
              "802.3 Priority-based flow control";
            reference
              "IEEE 802.3, Annex 31 D";

            leaf enable {
              type boolean;
              description
                "True indicates that 802.3 priority-based flow control
             is enabled, false indicates that 802.3 priority-based
             flow control is disabled.

             For interfaces that have auto-negotiation, then
             priority-based flow control is negotiated by default.

             If explicitly configured, when auto-negotiated is
             enabled, then the configuration will restrict the
             priority flow control settings that can be negotiated.
             ";
            }
          }  // container pfc

          leaf force-flow-control {
            type boolean;
            default 'false';
            description
              "Explicitly force the local flow control settings
           regardless of what has been negotiated.

           Since the auto-negotiation of flow-control settings
           doesn't allow all sane combinations to be negotiated
           (e.g.  consider a device that is only capable of sending
           PAUSE frames connected to a peer device that is only
           capable of receiving and acting on PAUSE frames) and
           failing to agree on the flow-control settings doesn't
           cause the auto-negotation to fail completely, then it is
           sometimes useful to be able to explicitly enable
           particular flow control settings on the local device
           regardless of what is being advertised or negotiated";
            reference
              "IEEE 802.3 Table 28B-3-Pause resolution";

          }
        }  // container flow-control
      }  // container ethernet
    }

    augment /if:interfaces-state/if:interface {
      when
        "if:type = 'ianaift:ethernetCsmacd'" {
        description
          "Applies to all Ethernet interfaces";
      }
      description
        "Augments interfaces-state model with 802.3 Ethernet
     specific operational state nodes";
      container ethernet {
        description
          "Contains operational state for Ethernet interfaces";
        container auto-negotiation {
          description
            "Holds all operational state related to auto-negotiation.";
          leaf enable {
            type boolean;
            description
              "Indicates whether auto-negotiation is enabled or
           disabled.  If the interface is not capable of supporting
           auto-negotiation then this must be reported as false";
          }

          leaf negotiation-status {
            when "../enable = 'true'";
            type enumeration {
              enum "in-progress" {
                value 0;
                description
                  "The auto-negotiation protocol is running and
               negotiation is currently in-progress";
              }
              enum "complete" {
                value 1;
                description
                  "The auto-negotation protocol has completed
               successfully";
              }
              enum "failed" {
                value 2;
                description
                  "The auto-negotation protocol has failed.";
              }
              enum "unknown" {
                value 3;
                description
                  "The auto-negotiation status is not currently known,
               this could be because it is still negotiating or the
               protocol cannot run (e.g. if no medium is present)";
              }
            }
            description
              "The status of the auto-negotiation protocol";
            reference
              "IEEE 802.3, 30.6.1.1.4, aAutoNegAutoConfig";

          }
        }  // container auto-negotiation

        leaf duplex {
          type duplex-type;
          description
            "Operational duplex mode of the Ethernet interface.";
          reference
            "IEEE Std 802.3, 30.3.1.1.32, aDuplexStatus";

        }

        leaf speed {
          type eth-if-speed-type;
          units "Gb/s";
          description
            "Operational speed of the Ethernet interface";
        }

        container flow-control {
          description
            "Holds the different types of Ethernet flow control that
         can be enabled";
          container pause {
            description
              "802.3 PAUSE frame based flow control";
            reference
              "IEEE 802.3, xxx";

            leaf direction {
              type pause-fc-direction-type;
              description
                "Indicates which direction flow control is enabled in,
             or whether it is disabled.  The default flow-control
             settings are vendor specific.

             If auto-negotiation is enabled, then PAUSE based
             flow-control is negoiated by default.";
            }

            container statistics {
              description
                "Contains the number of PAUSE frames received or
             transmitted";
              leaf in-pkts-pause {
                type yang:counter64;
                units "frames";
                description
                  "A count of PAUSE MAC Control frames transmitted on
               this Ethernet interface.

               Discontinuities in the values of this counters in
               this container can occur at re-initialization of the
               management system, and at other times as indicated
               by the value of the 'discontinuity-time' leaf
               defined in the ietf-interfaces YANG module (RFC
               7223).";
                reference
                  "IEEE 802.3, 30.3.4.3, aPAUSEMACCtrlFramesReceived";

              }

              leaf out-pkts-pause {
                type yang:counter64;
                units "frames";
                description
                  "A count of PAUSE MAC Control frames transmitted on
               this Ethernet interface.

               Discontinuities in the values of this counters in
               this container can occur at re-initialization of the
               management system, and at other times as indicated
               by the value of the 'discontinuity-time' leaf
               defined in the ietf-interfaces YANG module (RFC
               7223).";
                reference
                  "IEEE 802.3, 30.3.4.2,
                  aPAUSEMACCtrlFramesTransmitted";

              }
            }  // container statistics
          }  // container pause

          container pfc {
            if-feature ethernet-pfc;
            description
              "802.3 Priority-based flow control";
            reference
              "IEEE 802.3, Annex 31 D";

            leaf enable {
              type boolean;
              description
                "True indicates that 802.3 priority-based flow control
             is enabled, false indicates that 802.3 priority-based
             flow control is disabled.

             For interfaces that have auto-negotiation, then
             priority-based flow control is negotiated by default.

             If explicitly configured, when auto-negotiated is
             enabled, then the configuration will restrict the
             priority flow control settings that can be
             negotiated.";
            }

            container statistics {
              description "TODO";
              leaf in-pkts-pfc {
                type yang:counter64;
                units "frames";
                description
                  "A count of PFC MAC Control frames received on this
               Ethernet interface.

               Discontinuities in the values of this counters in
               this container can occur at re-initialization of the
               management system, and at other times as indicated
               by the value of the 'discontinuity-time' leaf
               defined in the ietf-interfaces YANG module (RFC
               7223).";
                reference
                  "IEEE 802.3.1, dot3HCInPFCFrames";

              }

              leaf out-pkts-pfc {
                type yang:counter64;
                units "frames";
                description
                  "A count of PFC MAC Control frames transmitted on
               this interface.

               Discontinuities in the values of this counters in
               this container can occur at re-initialization of the
               management system, and at other times as indicated
               by the value of the 'discontinuity-time' leaf
               defined in the ietf-interfaces YANG module (RFC
               7223).";
                reference
                  "IEEE 802.3.1, dot3HCInPFCFrames";

              }
            }  // container statistics
          }  // container pfc

          leaf force-flow-control {
            type boolean;
            description
              "Explicitly force the local flow control settings
           regardless of what has been negotiated.

           Since the auto-negotiation of flow-control settings
           doesn't allow all sane combinations to be negotiated
           (e.g.  consider a device that is only capable of sending
           PAUSE frames connected to a peer device that is only
           capable of receiving and acting on PAUSE frames) and
           failing to agree on the flow-control settings doesn't
           cause the auto-negotation to fail completely, then it is
           sometimes useful to be able to explicitly enable
           particular flow control settings on the local device
           regardless of what is being advertised or negotiated";
            reference
              "IEEE 802.3 Table 28B-3-Pause resolution";

          }
        }  // container flow-control

        leaf max-frame-length {
          type uint16;
          units "octets";
          description
            "This indicates the MAC frame length (including FCS bytes)
         at which frames are dropped for being too long.";
          reference
            "IEEE 802.3, 30.3.1.1.25, aMaxFrameLength";

        }

        leaf macc-extension-control {
          type boolean;
          description
            "A value that identifies the current EXTENSION MAC Control
         function, as specified in IEEE Std 802.3, Annex 31C.";
          reference
            "IEEE Std 802.3, 30.3.8.3 aEXTENSIONMACCtrlStatus
            IEEE Std 802.3.1, dot3ExtensionMacCtrlStatus ";

        }

        leaf frame-limit-slow-protocol {
          type uint32;
          units "fps";
          default '10';
          description
            "The maximum number of Slow Protocol frames of a given
         subtype that can be transmitted in a one second interval.
         The default value is 10. ";
          reference
            "IEEE Std 802.3, 30.3.1.1.38, aSlowProtocolFrameLimit";

        }

        container capabilities {
          description
            "Container all Ethernet interface specific capabilties.";
          leaf auto-negotiation {
            type boolean;
            default 'false';
            description
              "Indicates whether auto-negotiation may be configured on
           this interface.";
          }
        }  // container capabilities

        container frame-statistics {
          description
            "Contains statistics specific to Ethernet interfaces

         All octet frame lengths include the 4 byte FCS.

         Error counters are only reported once ... The count
         represented by an instance of this object is incremented
         when the frameCheckError status is returned by the MAC
         service to the LLC (or other MAC user). Received frames
         for which multiple error conditions pertain are, according
         to the conventions of IEEE 802.3 Layer Management, counted
         exclusively according to the error status presented to the
         LLC.

         A frame that is counted by an instance of this object is
         also counted by the corresponding instance of 'in-errors'
         leaf defined in the ietf-interfaces YANG module (RFC
         7223).

         Discontinuities in the values of this counters in this
         container can occur at re-initialization of the management
         system, and at other times as indicated by the value of
         the 'discontinuity-time' leaf defined in the
         ietf-interfaces YANG module (RFC 7223).";
          leaf in-total-pkts {
            type yang:counter64;
            units "frames";
            description
              "The total number of frames (including bad frames)
           received on the Ethernet interface.

           This counter is calculated by summing the following
           802.3 clause 30 counters:
               aFramesReceivedOK +
               aFrameCheckSequenceErrors +
               aAlignmentErrors +
               aFrameTooLongErrors +
               aFrameTooShortErrors +
               aFramesLostDueToIntMACRcvError

           Also see the 'description' statement associated with the
           parent 'statistics' container for additional common
           semantics related to this counter.
           ";
            reference
              "IEEE 802.3, various clause 30 counters, as specified in
              the description above.";

          }

          leaf in-total-octets {
            type yang:counter64;
            units "octets";
            description
              "The total number of octets of data (including those in
           bad frames) received on the Ethernet interface.

           Includes the 4 byte FCS.

           Also see the 'description' statement associated with the
           parent 'statistics' container for additional common
           semantics related to this counter.";
            reference
              "(RMON MIB: etherStatsOctets) IEEE 802.3, TODO";

          }

          leaf in-pkts {
            type yang:counter64;
            units "frames";
            description
              "A count of frames (including unicast, multicast and
           broadcast) that have been successfully received on
           the Ethernet interface.

           This count does not include frames received with
           frame-too-long, FCS, length or alignment errors, or
           frames lost due to internal MAC sublayer error.

           Also see the 'description' statement associated with the
           parent 'statistics' container for additional common
           semantics related to this counter.";
            reference
              "IEEE 802.3, 30.3.1.1.5 aFramesReceivedOK";

          }

          leaf in-multicast-pkts {
            type yang:counter64;
            units "frames";
            description
              "A count of multicast frames that have been successfully
           received on the Ethernet interface.

           This counter represents a subset of the frames counted
           by in-pkts.

           This count does not include frames received with
           frame-too-long, FCS, length or alignment errors, or
           frames lost due to internal MAC sublayer error.

           Also see the 'description' statement associated with the
           parent 'statistics' container for additional common
           semantics related to this counter.";
            reference
              "IEEE 802.3, 30.3.1.1.21 aMulticastFramesReceivedOK";

          }

          leaf in-broadcast-pkts {
            type yang:counter64;
            units "frames";
            description
              "A count of broadcast frames that have been successfully
           received on the Ethernet interface.

           This counter represents a subset of the frames counted
           by in-pkts.

           This count does not include frames received with
           frame-too-long, FCS, length or alignment errors, or
           frames lost due to internal MAC sublayer error.

           Also see the 'description' statement associated with the
           parent 'statistics' container for additional common
           semantics related to this counter.";
            reference
              "IEEE 802.3, 30.3.1.1.22 aBroadcastFramesReceivedOK";

          }

          leaf in-error-fcs-pkts {
            type yang:counter64;
            units "frames";
            description
              "A count of receive frames that are of valid length, but
           do not pass the FCS check, regardless of whether or not
           the frames are an integral number of octets in length.

           This count effective comprises aFrameCheckSequenceErrors
           and aAlignmentErrors added together.

           Also see the 'description' statement associated with the
           parent 'statistics' container for additional common
           semantics related to this counter.";
            reference
              "IEEE 802.3, 30.3.1.1.6, aFrameCheckSequenceErrors;
              IEEE 802.3, 30.3.1.1.7, aAlignmentErrors";

          }

          leaf in-error-undersize-pkts {
            type yang:counter64;
            units "frames";
            description
              "A count of frames received on a particular Ethernet
           interface that are less than 64 bytes in length, and
           are discarded.

           This counter is incremented regardless of whether the
           frame passes the FCS check.
           Also see the 'description' statement associated with the
           parent 'statistics' container for additional common
           semantics related to this counter.";
            reference
              "IEEE 802.3, ";

          }

          leaf in-error-oversize-pkts {
            type yang:counter64;
            units "frames";
            description
              "A count of frames received on a particular Ethernet
           interface that exceed the maximum permitted frame size,
           that is specified in max-frame-length, and are
           discarded.

           This counter is incremented regardless of whether the
           frame passes the FCS check.

           Also see the 'description' statement associated with the
           parent 'statistics' container for additional common
           semantics related to this counter.";
            reference
              "IEEE 802.3, 30.3.1.1.25, aFrameTooLongErrors";

          }

          leaf in-error-mac-internal-pkts {
            type yang:counter64;
            units "frames";
            description
              "A count of frames for which reception on a particular
           Ethernet interface fails due to an internal MAC sublayer
           receive error.

           A frame is only counted by an instance of this object if
           it is not counted by the corresponding instance of
           either the in-error-fcs-pkts, in-error-undersize-pkts,
           or in-error-oversize-pkts.  The precise meaning of the
           count represented by an instance of this object is
           implementation-specific.

           In particular, an instance of this object may represent
           a count of receive errors on a particular Ethernet
           interface that are not otherwise counted.

           Also see the 'description' statement associated with the
           parent 'statistics' container for additional common
           semantics related to this counter.";
            reference
              "IEEE 802.3, 30.3.1.1.15,
              aFramesLostDueToIntMACRcvError";

          }

          leaf out-pkts {
            type yang:counter64;
            units "frames";
            description
              "A count of frames (including unicast, multicast and
           broadcast) that have been successfully transmitted on
           the Ethernet interface.

           Also see the 'description' statement associated with the
           parent 'statistics' container for additional common
           semantics related to this counter.";
            reference
              "IEEE 802.3, 30.3.1.1.2 aFramesTransmittedOK";

          }

          leaf out-multicast-pkts {
            type yang:counter64;
            units "frames";
            description
              "A count of multicast frames that have been successfully
           transmitted on the Ethernet interface.
           This counter represents a subset of the frames counted
           by out-pkts.

           Also see the 'description' statement associated with the
           parent 'statistics' container for additional common
           semantics related to this counter.";
            reference
              "IEEE 802.3, 30.3.1.1.18 aMulticastFramesXmittedOK";

          }

          leaf out-broadcast-pkts {
            type yang:counter64;
            units "frames";
            description
              "A count of broadcast frames that have been successfully
           transmitted on the Ethernet interface.

           This counter represents a subset of the frames counted
           by out-pkts.

           Also see the 'description' statement associated with the
           parent 'statistics' container for additional common
           semantics related to this counter.";
            reference
              "IEEE 802.3, 30.3.1.1.19 aBroadcastFramesXmittedOK";

          }

          leaf out-error-mac-internal-pkts {
            type yang:counter64;
            units "frames";
            description
              "A count of frames for which transmission on a particular
           Ethernet interface fails due to an internal MAC sublayer
           transmit error.

           The precise meaning of the count represented by an
           instance of this object is implementation-specific. In
           particular, an instance of this object may represent a
           count of transmission errors on a particular Ethernet
           interface that are not otherwise counted.

           Also see the 'description' statement associated with the
           parent 'statistics' container for additional common
           semantics related to this counter.";
            reference
              "IEEE Std 802.3, 30.3.1.1.12,
              aFramesLostDueToIntMACXmitError";

          }
        }  // container frame-statistics

        container phy-statistics {
          description
            "Ethernet statistics related to the PHY layer.

         Discontinuities in the values of this counters in this
         container can occur at re-initialization of the management
         system, and at other times as indicated by the value of
         the 'discontinuity-time' leaf defined in the
         ietf-interfaces YANG module (RFC 7223).";
          leaf in-error-symbol {
            type yang:counter64;
            units "errors";
            description
              "A count of the number of symbol errors that have
           occurred.

           For the precise definition of when the symbol error
           counter is incremented, please see the description text
           associated with aSymbolErrorDuringCarrier, specified in
           IEEE 802.3, section 30.3.2.1.5.

           Also see the 'description' statement associated with the
           parent 'phy-statistics' container for additional
           common semantics related to this counter.";
            reference
              "IEEE 802.3, 30.3.2.1.5, aSymbolErrorDuringCarrier";

          }

          container lpi {
            description
              "Physical Ethernet statistics for the energy efficiency
           related low power idle indications.";
            leaf in-lpi-transitions {
              type yang:counter64;
              units "transitions";
              description
                "A count of occurrences of the transition from DEASSERT
             to ASSERT of the LPI_INDICATE parameter. The
             indication reflects the state of the PHY according to
             the requirements of the RS (see IEEE 802.3 22.7, 35.4,
             and 46.4).
             Also see the 'description' statement associated with
             the parent 'phy-statistics' container for additional
             common semantics related to this counter.";
              reference
                "IEEE 802.3, 30.3.2.1.11 aReceiveLPITransitions";

            }

            leaf in-lpi-time {
              type decimal64 {
                fraction-digits 6;
              }
              units "seconds";
              description
                "A count reflecting the total amount of time (in
             seconds) that the LPI_REQUEST parameter has the value
             ASSERT.  The request is indicated to the PHY according
             to the requirements of the RS (see IEEE 802.3 22.7,
             35.4, and 46.4).

             Also see the 'description' statement associated with
             the parent 'phy-statistics' container for additional
             common semantics related to this counter.";
              reference
                "IEEE 802.3, 30.3.2.1.9 aReceiveLPIMicroseconds";

            }

            leaf out-lpi-transitions {
              type yang:counter64;
              units "transitions";
              description
                "A count of occurrences of the transition from state
             LPI_DEASSERTED to state LPI_ASSERTED of the LPI
             transmit state diagram is the RS. The state transition
             corresponds to the assertion of the LPI_REQUEST
             parameter. The request is indicated to the PHY
             according to the requirements of the RS (see IEEE
             802.3 22.7, 35.4, 46.4.)

             Also see the 'description' statement associated with
             the parent 'phy-statistics' container for additional
             common semantics related to this counter.";
              reference
                "IEEE 802.3, 30.3.2.1.10 aTransmitLPITransitions";

            }

            leaf out-lpi-time {
              type decimal64 {
                fraction-digits 6;
              }
              units "seconds";
              description
                "A count reflecting the total amount of time (in
             seconds) that the LPI_INDICATION parameter has the
             value ASSERT.  The request is indicated to the PHY
             according to the requirements of the RS (see IEEE
             802.3 22.7, 35.4, and 46.4).

             Also see the 'description' statement associated with
             the parent 'phy-statistics' container for additional
             common semantics related to this counter.";
              reference
                "IEEE 802.3, 30.3.2.1.8 aTransmitPIMicroseconds";

            }
          }  // container lpi
        }  // container phy-statistics

        container mac-control-statistics {
          description
            "Group of statistics specific to MAC Control operation of
         selected Ethernet interfaces.

         Discontinuities in the values of this counters in this
         container can occur at re-initialization of the management
         system, and at other times as indicated by the value of
         the 'discontinuity-time' leaf defined in the
         ietf-interfaces YANG module (RFC 7223).";
          reference
            "IEEE 802.3, IEEE 802.3.1, dot3ExtensionTable";

          leaf in-pkts-macc-unknown {
            type yang:counter64;
            units "frames";
            description
              "A count of MAC Control frames with an unsupported opcode
           received on this Ethernet interface.

           Frames counted against this counter are also counted
           against in-discards defined in the ietf-interfaces YANG
           module (RFC 7223).

           Also see the 'description' statement associated with the
           parent 'mac-control-statistics' container for additional
           semantics.";
            reference
              "IEEE 802.3, 30.3.3.5 aUnsupportedOpcodesReceived";

          }

          leaf in-pkts-macc-extension {
            type yang:counter64;
            units "frames";
            description
              "The count of Extension MAC Control frames received on
           this Ethernet interface.

           Also see the 'description' statement associated with the
           parent 'mac-control-statistics' container for additional
           semantics.";
            reference
              "IEEE 802.3, 30.3.8.2
                aEXTENSIONMACCtrlFramesReceived";

          }

          leaf out-pkts-macc-extension {
            type yang:counter64;
            units "frames";
            description
              "The count of Extension MAC Control frames transmitted on
           this Ethernet interface.

           Also see the 'description' statement associated with the
           parent 'mac-control-statistics' container for additional
           semantics.";
            reference
              "IEEE 802.3, 30.3.8.1
              aEXTENSIONMACCtrlFramesTransmitted";

          }
        }  // container mac-control-statistics
      }  // container ethernet
    }
  }  // module ieee802-ethernet-interface

Summary

  
ieee802-ethernet-interface  
  
Organization IEEE Std 802.3 Ethernet Working Group Web URL: http://www.ieee802.org/3/
  
Module ieee802-ethernet-interface
Version 2017-10-18
File ieee802-ethernet-interface.yang
  
Prefix eth-if
Namespace urn:ieee:std:802.3:yang:ieee802-ethernet-interface
Reference
IEEE Std 802.3-2015, unless dated explicitly
  
Cooked /cookedmodules/ieee802-ethernet-interface/2017-10-18
YANG /src/ieee802-ethernet-interface@2017-10-18.yang
XSD /xsd/ieee802-ethernet-interface@2017-10-18.xsd
  
Abstract This module contains YANG definitions for configuring IEEE Std 802.3 Ethernet Interfaces. In this YANG module, 'Ethernet int...
  
Contact
Web URL: http://www.ieee802.org/3/cf/
  
ieee802-ethernet-interface  
  
Organization Web URL: http://www.ieee802.org/3/ Working Group Chair: David Law dlaw@hpe.com Working Group Vice-chair: Adam Healey adam.healey@broadcom.com Acting YANG Data Model Definitions Task Force Chair: Yan Zhuang zhuangyan.zhuang@huawei.com Editor: Robert Wilton rwilton@cisco.com
  
Module ieee802-ethernet-interface
Version 2017-02-23
File ieee802-ethernet-interface@2017-02-23.yang
  
Prefix eth-if
Namespace urn:ieee:params:xml:ns:yang:ieee802-ethernet-interface
Reference
IEEE 802.3-2015, unless dated explicitly
  
Cooked /cookedmodules/ieee802-ethernet-interface/2017-02-23
YANG /src/ieee802-ethernet-interface@2017-02-23.yang
XSD /xsd/ieee802-ethernet-interface@2017-02-23.xsd
  
Abstract This module contains YANG definitions for configuring IEEE 802.3 Ethernet Interfaces. In this YANG module, 'Ethernet interface'...
  
Contact
Robert Wilton - rwilton@cisco.com

Description

 
ieee802-ethernet-interface
This module contains YANG definitions for configuring IEEE Std 802.3
Ethernet Interfaces.

In this YANG module, 'Ethernet interface' can be interpretted
as referring to 'IEEE Std 802.3  compliant Ethernet
interfaces'
 
ieee802-ethernet-interface
This module contains YANG definitions for configuring IEEE 802.3
Ethernet Interfaces.

In this YANG module, 'Ethernet interface' can be interpretted
as referring to 'IEEE 802.3 standard compliant Ethernet
interfaces'

Typedefs

Typedef Base type Abstract
duplex-type enumeration The current duplex mode of operation of an Ethernet interface.
duplex-type enumeration The current duplex mode of operation of an Ethernet interface.
eth-if-speed-type decimal64 Used to represent the configured, negotiated, or actual speed of an Ethernet interface in Gigabits per second (Gb/s), accurate to 3 decimal places (i.e. accurate to 1 Mb/s)
eth-if-speed-type decimal64 Used to represent the configured, negotiated, or actual speed of an Ethernet interface in Gigabits per second (Gb/s), accurate to 3 decimal places (i.e. accurate to 1 Mb/s)
pause-fc-direction-type enumeration Enumerates the possible PAUSE frame based flow control settings that can be used in explicit configuration, or when reporting the operational state
pause-fc-direction-type enumeration Enumerates the possible PAUSE frame based PAUSE frame based flow control settings that can be used in explicit configuration, or when reporting the operational state