bbf-xpongemtcont

This module contains a collection of YANG definitions for supporting the Broadband Forum requirements on management of ITU-T Pas...

  • Version: 2020-10-13

    bbf-xpongemtcont@2020-10-13


    
      module bbf-xpongemtcont {
    
        yang-version 1.1;
    
        namespace
          "urn:bbf:yang:bbf-xpongemtcont";
    
        prefix bbf-xpongemtcont;
    
        include bbf-xpongemtcont-base;
        include bbf-xpongemtcont-traffic-descriptor-profile-body;
        include bbf-xpongemtcont-tcont-body;
        include bbf-xpongemtcont-gemport-body;
    
        organization
          "Broadband Forum <https://www.broadband-forum.org>
    Fiber Access Networks Work Area";
    
        contact
          "Comments or questions about this Broadband Forum YANG module
    should be directed to <mailto:info@broadband-forum.org>.
    
    Editor:      Joey Boyd, ADTRAN
    
    Editor:      Igor Ternovsky, Broadcom
    
    Editor:      Robert Peschi, Nokia
    
    WA Director: Marta Seda, Calix
    
    WA Director: Samuel Chen, Broadcom";
    
        description
          "This module contains a collection of YANG definitions for
    supporting the Broadband Forum requirements on management of
    ITU-T Passive Optical Network (PON) interfaces as defined in
    ITU-T G.984.x, G.987.x, ITU-T G.989.x and ITU-T G.9807.x. As
    such, this module is specific to access network equipment (e.g.,
    BBF-specified Access Nodes and FTTdp DPUs).
    
    Specifically, this module defines management of G-PON
    Encapsulation Method (GEM) ports, Transmission Containers
    (T-CONT) and traffic descriptors.
    
    Copyright (c) 2018-2020, 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-385i2; see
    the TR itself for full legal notices.";
    
        revision "2020-10-13" {
          description
            "Issue 2.
    * Approval Date:    2020-10-13.
    * Publication Date: 2020-10-13.";
          reference
            "TR-385i2: ITU-T PON YANG Modules
            	<https://www.broadband-forum.org/technical/download/
            		 TR-385_Issue-2.pdf>";
    
        }
    
        revision "2019-02-25" {
          description
            "Initial revision.
    * Approval Date:    2019-02-25.
    * Publication Date: 2019-02-25.";
          reference
            "TR-385: ITU-T PON YANG Modules
            	<https://www.broadband-forum.org/technical/download/
            		 TR-385.pdf>";
    
        }
    
    
        // features
    
        feature configurable-alloc-id {
          description
            "Indicates support for configuration of the Allocation
    Identifier (Alloc-ID).";
        }
    
        feature configurable-gemport-id {
          description
            "Indicates support for configuration of the G-PON Encapsulation
    Method (GEM) port ID.";
        }
    
        // typedefs
        typedef alloc-id {
          type uint16;
          description
            "Transmission Container (T-CONT) Allocation Identifier
    (Alloc-ID). For G-PON the value should be in [256..4095] and
    for XG-PON, XGS-PON and NG-PON2 it should be in
    [1024..16383].";
          reference
            "ITU-T G.984.3 clause 5.5.3
            ITU-T G.987.3 clause 6.4.3
            ITU-T G.9807.1 clause C.6.1.5.7
            ITU-T G.989.3 clause 6.1.5.7";
    
        }
    
        // objects
        container xpongemtcont {
          description
            "Configuration associated with xPON G-PON Encapsulation Method
    (GEM) ports, T-CONTs, and traffic descriptors.";
          container traffic-descriptor-profiles {
            description
              "Traffic descriptor profile configuration.";
            list traffic-descriptor-profile {
              key "name";
              description
                "List of traffic descriptor profiles.";
              leaf name {
                type string;
                description
                  "Traffic descriptor profile name.";
              }
    
              leaf fixed-bandwidth {
                type uint64;
                units "bits/second";
                default "0";
                description
                  "Represents the reserved portion of the link capacity that
    is allocated to the given traffic flow, regardless of its
    traffic demand and the overall traffic load conditions.";
                reference
                  "ITU-T G.984.3 clause 7.4.4.3";
    
              }
    
              leaf assured-bandwidth {
                type uint64;
                units "bits/second";
                default "0";
                description
                  "Represents a portion of the link capacity that is allocated
    to the given traffic flow as long as the flow has
    unsatisfied traffic demand, regardless of the overall
    traffic conditions.";
                reference
                  "ITU-T G.984.3 clause 7.4.4.3";
    
              }
    
              leaf maximum-bandwidth {
                type uint64;
                units "bits/second";
                must
                  "(boolean(../fixed-bandwidth) and
    boolean(../assured-bandwidth) and
    (. >= ../fixed-bandwidth + ../assured-bandwidth))
    or
    (boolean(../fixed-bandwidth) and
    not(boolean(../assured-bandwidth)) and
    (. >= ../fixed-bandwidth))
    or
    (not(boolean(../fixed-bandwidth)) and
    boolean(../assured-bandwidth) and
    (. >= ../assured-bandwidth))
    or
    (not(boolean(../fixed-bandwidth)) and
    not(boolean(../assured-bandwidth)))" {
                  error-message
                    "The maximum bandwidth must be greater than or equal to
    the sum of the configured fixed and assured bandwidth.";
                  description
                    "The maximum bandwidth must be greater than or equal
    to the sum of any configured fixed and assured
    bandwidth.";
                }
                mandatory true;
                description
                  "Represents the upper limit on the total bandwidth that can
    be allocated to the traffic flow under any traffic
    conditions.";
                reference
                  "ITU-T G.984.3 clause 7.4.4.3";
    
              }
    
              leaf priority {
                type uint8 {
                  range "1..8";
                }
                description
                  "Used for scheduling traffic on a Transmission Container
    (T-CONT).";
                reference
                  "ITU-T G.984.3 clause 7.4.5";
    
              }
    
              leaf weight {
                type uint8;
                description
                  "Used for scheduling traffic on a Transmission Container
    (T-CONT).";
                reference
                  "ITU-T G.984.3 clause 7.4.5";
    
              }
    
              leaf additional-bw-eligibility-indicator {
                type enumeration {
                  enum "non-assured-sharing" {
                    value 0;
                    description
                      "The Transmission Container (T-CONT) is eligible for
    non-assured bandwidth in addition to the bandwidth
    described by this traffic descriptor.";
                  }
                  enum "best-effort-sharing" {
                    value 1;
                    description
                      "The Transmission Container (T-CONT) is eligible for
    best effort bandwidth in addition to the bandwidth
    described by this traffic descriptor.";
                  }
                  enum "none" {
                    value 2;
                    description
                      "The Transmission Container (T-CONT) is not eligible for
    any additional bandwidth beyond the bandwidth described
    by this traffic descriptor.";
                  }
                }
                must
                  ". = 'non-assured-sharing' or
    . = 'best-effort-sharing' or
    (. = 'none' and
    ((boolean(../fixed-bandwidth) and
    boolean(../assured-bandwidth) and
    (../maximum-bandwidth = ../fixed-bandwidth +
    ../assured-bandwidth))
    or
    (boolean(../fixed-bandwidth) and
    not(boolean(../assured-bandwidth)) and
    (../maximum-bandwidth = ../fixed-bandwidth))
    or
    (not(boolean(../fixed-bandwidth)) and
    boolean(../assured-bandwidth) and
    (../maximum-bandwidth = ../assured-bandwidth))
    or
    (not(boolean(../fixed-bandwidth)) and
    not(boolean(../assured-bandwidth)) and
    ../maximum-bandwidth = 0)))";
                description
                  "In case of rate-proportional assignment of
    additional bandwidth, additional bandwidth
    eligibility can be provisioned to either value
    (non-assured-sharing, best-effort-sharing,
    or none). The additional bandwidth is described as:
    
    maximum-bandwidth - (fixed-bandwidth + assured-bandwidth)";
                reference
                  "ITU-T G.984.3 clause 7.4.4.3
                  ITU-T G.989.3 clause 7.3.5";
    
              }
            }  // list traffic-descriptor-profile
          }  // container traffic-descriptor-profiles
    
          container tconts {
            description
              "Transmission Container (T-CONT) configuration data.";
            list tcont {
              key "name";
              description
                "List of Transmission Containers (T-CONT).";
              leaf name {
                type bbf-yang:string-ascii64;
                description
                  "Name of the Transmission Container (T-CONT).";
              }
    
              leaf alloc-id {
                if-feature bbf-xpongemtcont:configurable-alloc-id;
                type alloc-id;
                description
                  "Transmission Container (T-CONT) Allocation Identifier
    (Alloc-ID). When configured this is the value which must
    actually be used between the Optical Line Termination (OLT)
    device and Optical Network Unit (ONU) device for this
    T-CONT. For G-PON the value should be in [256..4095] and
    for XG-PON, XGS-PON and NG-PON2 it should be in
    [1024..16383].";
                reference
                  "ITU-T G.984.3 clause 5.5.3
                  ITU-T G.987.3 clause 6.4.3
                  ITU-T G.9807.1 clause C.6.1.5.7
                  ITU-T G.989.3 clause 6.1.5.7";
    
              }
    
              leaf interface-reference {
                type if:interface-ref;
                must
                  "derived-from-or-self(/if:interfaces/if:interface[if:name=current()]/if:type,'bbf-xponift:v-ani') or derived-from-or-self(/if:interfaces/if:interface[if:name=current()]/if:type,'bbf-xponift:ani')" {
                  error-message
                    "Must reference an interface of type 'v-ani' or 'ani'.";
                }
                description
                  "Reference to 'v-ani' or 'ani' type interface.";
              }
    
              leaf traffic-descriptor-profile-ref {
                type leafref {
                  path "/bbf-xpongemtcont:xpongemtcont/bbf-xpongemtcont:traffic-descriptor-profiles/bbf-xpongemtcont:traffic-descriptor-profile/bbf-xpongemtcont:name";
                }
                description
                  "References an existing traffic descriptor profile.";
              }
    
              container tm-root {
                presence
                  "Indicates the interface supports queues, either directly or
    through a scheduling hierarchy. Interfaces that support
    queues are typically the lowest layer of an interface stack
    that is Ethernet frame aware.";
                description
                  "The attributes of the root in the scheduling tree.";
                choice children-type {
                  description
                    "Choice of children types of a scheduler node.";
                  case queues {
                    description
                      "In this mode the interface related to the tm-root can
    directly be selected by the forwarding process and has
    its own set of queues. Hence the scheduling of a frame
    from a forwarder to the egress queue takes place in a
    single stage.";
                    list queue {
                      key "local-queue-id";
                      description "A queue.";
                      leaf local-queue-id {
                        type queue-id;
                        description
                          "The identification of a queue within the context of this
    list.";
                      }
    
                      leaf bac-name {
                        type leafref {
                          path "/bbf-qos-tm:tm-profiles/bbf-qos-tm:bac-entry/bbf-qos-tm:name";
                        }
                        description
                          "The name of a referenced BAC entry.";
                      }
    
                      choice queue-scheduling-cfg-type {
                        description
                          "Choice of queue scheduling types.";
                        case inline {
                          description
                            "The queue parameters are directly configured here.";
                          leaf priority {
                            type scheduling-priority;
                            description
                              "The priority used to schedule frames from a queue or
    scheduler, relative to the priority assigned to other queues
    or schedulers that are defined in the same traffic scheduling
    context. For example the set of queues defined for a
    particular interface form the context for scheduling outgoing
    traffic to this interface.";
                          }
    
                          leaf weight {
                            type scheduling-weight;
                            description
                              "Queues or schedulers that are defined in a particular
    context, e.g. queues defined to schedule outgoing traffic to
    an interface, can have the same priority. The weight defines
    the portion of traffic that will be taken from this queue or
    scheduler by comparing the weight of this queue or scheduler
    against the sum of the weights of all queues or schedulers
    with the same scope and the same priority.";
                          }
    
                          leaf extended-weight {
                            if-feature bbf-qos-tm:extended-scheduling-weight;
                            type extended-scheduling-weight;
                            must
                              "not(boolean(../weight))" {
                              description
                                "Both weight and extended weight must not be configured at
    the same time.";
                            }
                            description
                              "Queues or schedulers that are defined in a particular
    context, e.g. queues defined to schedule outgoing traffic to
    an interface, can have the same priority. The weight defines
    the portion of traffic that will be taken from this queue or
    scheduler by comparing the weight of this queue or scheduler
    against the sum of the weights of all queues or schedulers
    with the same scope and the same priority.";
                          }
                        }  // case inline
    
                        case dual-rate-scheduling {
                          if-feature bbf-qos-tm:dual-rate-scheduling-from-queue;
                          description
                            "The queue parameters are directly configured here.";
                          container dual-rate-scheduling {
                            description
                              "Configuration which determines the separate processing
    of CIR and EIR traffic.";
                            container cir-traffic {
                              description
                                "Configuration for the CIR type of traffic from the
    child scheduler that is used by the parent
    scheduler.";
                              leaf priority {
                                type extended-scheduling-priority;
                                description
                                  "The priority used to schedule frames from a queue or
    scheduler, relative to the priority assigned to other queues
    or schedulers that are defined in the same traffic scheduling
    context. For example the set of queues defined for a
    particular interface form the context for scheduling outgoing
    traffic to this interface.";
                              }
    
                              leaf extended-weight {
                                type extended-scheduling-weight;
                                description
                                  "Queues or schedulers that are defined in a particular
    context, e.g. queues defined to schedule outgoing traffic to
    an interface, can have the same priority. The weight defines
    the portion of traffic that will be taken from this queue or
    scheduler by comparing the weight of this queue or scheduler
    against the sum of the weights of all queues or schedulers
    with the same scope and the same priority.";
                              }
                            }  // container cir-traffic
    
                            container eir-traffic {
                              description
                                "Configuration for the EIR type of traffic from the
    child scheduler that is used by the parent
    scheduler.";
                              leaf priority {
                                type extended-scheduling-priority;
                                description
                                  "The priority used to schedule frames from a queue or
    scheduler, relative to the priority assigned to other queues
    or schedulers that are defined in the same traffic scheduling
    context. For example the set of queues defined for a
    particular interface form the context for scheduling outgoing
    traffic to this interface.";
                              }
    
                              leaf extended-weight {
                                type extended-scheduling-weight;
                                description
                                  "Queues or schedulers that are defined in a particular
    context, e.g. queues defined to schedule outgoing traffic to
    an interface, can have the same priority. The weight defines
    the portion of traffic that will be taken from this queue or
    scheduler by comparing the weight of this queue or scheduler
    against the sum of the weights of all queues or schedulers
    with the same scope and the same priority.";
                              }
                            }  // container eir-traffic
                          }  // container dual-rate-scheduling
                        }  // case dual-rate-scheduling
                      }  // choice queue-scheduling-cfg-type
    
                      leaf pre-emption {
                        if-feature bbf-qos-tm:pre-emption;
                        type boolean;
                        description
                          "Indicates whether the transmission of a frames from this
    queue can be interrupted in favor of frames from a higher
    priority queue.";
                      }
                    }  // list queue
    
                    leaf queue-statistics-enable {
                      if-feature bbf-qos-tm:queue-statistics;
                      type boolean;
                      description
                        "If true, enable statistics collection per queue. When
    transitioning from false to true (disabled to enabled), any
    existing counts should be cleared.
    
    The leaf not existing has the same meaning as queue
    statistics being disabled.";
                    }
                  }  // case queues
                }  // choice children-type
    
                leaf tc-id-2-queue-id-mapping-profile-name {
                  if-feature bbf-qos-tm:tc-id-2-queue-id-mapping-config;
                  type leafref {
                    path "/bbf-qos-tm:tm-profiles/bbf-qos-tm:tc-id-2-queue-id-mapping-profile/bbf-qos-tm:name";
                  }
                  description
                    "The name of a referenced traffic-class-id to queue-id mapping
    profile.";
                }
              }  // container tm-root
            }  // list tcont
          }  // container tconts
    
          container gemports {
            description
              "G-PON Encapsulation Method (GEM) port configuration data.";
            list gemport {
              key "name";
              description
                "List of G-PON Encapsulation Method (GEM) ports.";
              leaf name {
                type bbf-yang:string-ascii64;
                description
                  "Name of G-PON Encapsulation Method (GEM) port.";
              }
    
              leaf gemport-id {
                if-feature bbf-xpongemtcont:configurable-gemport-id;
                type uint32;
                description
                  "ID of G-PON Encapsulation Method (GEM) port. When
    configured this is the value which must actually be used
    between the Optical Line Termination (OLT) device and
    Optical Network Unit (ONU) device for this GEM port. For
    G-PON the value should be in [0..4095] and not conflicting
    with the 'management-gemport-id', for XG-PON it should be
    in [1023..65534] and for XGS-PON and NG-PON2 it should be
    in [1021..65534].";
                reference
                  "ITU-T G.984.3 clause 5.5.5
                  ITU-T G.987.3 clause 6.4.4
                  ITU-T G.9807.1 clause C.6.1.5.8
                  ITU-T G.989.3 clause 6.1.5.8";
    
              }
    
              leaf interface {
                type if:interface-ref;
                description
                  "Points to an interface.";
              }
    
              leaf traffic-class {
                type uint8 {
                  range "0..7";
                }
                description
                  "Traffic Class value.";
              }
    
              leaf downstream-aes-indicator {
                type boolean;
                default "false";
                description
                  "Used to designate whether Advanced Encryption Standard
    (AES) should be enabled/disabled for this G-PON
    Encapsulation Method (GEM) port for the downstream
    direction.";
                reference
                  "ITU-T G.984.3 clause 12.1
                  ITU-T G.987.3 clause 15.5.1
                  ITU-T G.9807.1 clause C.15.5.1
                  ITU-T G.989.3 clause 15.5.1";
    
              }
    
              leaf upstream-aes-indicator {
                type boolean;
                default "false";
                description
                  "Used to designate whether Advanced Encryption Standard
    (AES) should be enabled/disabled for this G-PON
    Encapsulation Method (GEM) port for the upstream direction.
    
    This is not applicable for G-PON. Any configured value
    will be ignored.";
                reference
                  "ITU-T G.987.3 clause 15.5.1
                  ITU-T G.9807.1 clause C.15.5.1
                  ITU-T G.989.3 clause 15.5.1";
    
              }
    
              leaf tcont-ref {
                type leafref {
                  path "/bbf-xpongemtcont:xpongemtcont/bbf-xpongemtcont:tconts/bbf-xpongemtcont:tcont/bbf-xpongemtcont:name";
                }
                description
                  "For the purpose of upstream scheduling in the Optical
    Network Unit (ONU), a G-PON Encapsulation Method (GEM) port
    needs to refer to the Transmission Container (T-CONT) into
    which it feeds upstream traffic.";
              }
    
              container performance {
                description
                  "Performance parameters.";
                leaf enable {
                  type boolean;
                  default "false";
                  description
                    "If true, enables counting of performance statistics.
    Then performance statistics will be available in
    /xpongemtcont-state/gemports/gemport/performance.
    i.e. 15 minutes statistics and 24 hours statistics,
    and for both there are current statistics and history
    data.
    
    If false, then there are no performance statistics.";
                }
              }  // container performance
            }  // list gemport
          }  // container gemports
        }  // container xpongemtcont
    
        container xpongemtcont-state {
          config false;
          description
            "State data associated with xPON G-PON Encapsulation Method
    (GEM) ports, T-CONTs, and traffic descriptors.";
          container tconts {
            description
              "Transmission Container (T-CONT) state data.";
            list tcont {
              key "name";
              description
                "List of Transmission Containers (T-CONT).";
              leaf name {
                type bbf-yang:string-ascii64;
                description
                  "Name of the Transmission Container (T-CONT).";
              }
    
              leaf actual-alloc-id {
                type alloc-id;
                description
                  "Transmission Container (T-CONT) Allocation Identifier
    (Alloc-ID). This is the value which is actually used
    between the Optical Line Termination (OLT) device and
    Optical Network Unit (ONU) device for this T-CONT.";
                reference
                  "ITU-T G.984.3 clause 5.5.3
                  ITU-T G.987.3 clause 6.4.3
                  ITU-T G.9807.1 clause C.6.1.5.7
                  ITU-T G.989.3 clause 6.1.5.7";
    
              }
            }  // list tcont
          }  // container tconts
    
          container gemports {
            config false;
            description
              "G-PON Encapsulation Method (GEM) port state data.";
            list gemport {
              key "name";
              description
                "List of G-PON Encapsulation Method (GEM) ports.";
              leaf name {
                type bbf-yang:string-ascii64;
                description
                  "Name of G-PON Encapsulation Method (GEM) port.";
              }
    
              leaf actual-gemport-id {
                type uint32;
                mandatory true;
                description
                  "TC layer ID of the G-PON Encapsulation Method (GEM) port.
    This is the value which is actually used between the
    Optical Line Termination (OLT) device and Optical Network
    Unit (ONU) device for this GEM port.";
                reference
                  "ITU-T G.984.3 clause 5.5.5
                  ITU-T G.987.3 clause 6.4.4
                  ITU-T G.9807.1 clause C.6.1.5.8
                  ITU-T G.989.3 clause 6.1.5.8";
    
              }
    
              container performance {
                description
                  "Performance counters associated with G-PON Encapsulation
    Method (GEM) ports.";
                container intervals-15min {
                  description
                    "15 minute interval performance history.";
                  container current {
                    description
                      "Current 15 minute interval counters.";
                    container ani-side {
                      description
                        "Counters from the Optical Network Unit's (ONU) perspective.";
                      leaf out-frames {
                        type bbf-yang:performance-counter64;
                        description
                          "Total number of G-PON Encapsulation Method (GEM) frames
    transmitted.";
                        reference
                          "ITU-T G.987.3 (01/2014)
                          Table 14-1 Transmitted XGEM frames per XGEM port
                          
                          ITU-T G.989.3 (2015)/Amd.2 (11/2018)
                          Table 14-1 Transmitted XGEM frames per XGEM port
                          
                          ITU-T G.9807.1 (2016)/Amd.1 (10/2017)
                          Table C.14.1 Transmitted XGEM frames per XGEM port";
    
                      }
    
                      leaf in-frames {
                        type bbf-yang:performance-counter64;
                        description
                          "Total number of G-PON Encapsulation Method (GEM) frames
    received.";
                        reference
                          "ITU-T G.987.3 (01/2014)
                          Table 14-1 Received XGEM frames per XGEM port
                          
                          ITU-T G.989.3 (2015)/Amd.2 (11/2018)
                          Table 14-1 Received XGEM frames per XGEM port
                          
                          ITU-T G.9807.1 (2016)/Amd.1 (10/2017)
                          Table C.14.1 Received XGEM frames per XGEM port";
    
                      }
                    }  // container ani-side
    
                    container v-ani-side {
                      description
                        "Counters from the Optical Line Termination's (OLT)
    perspective.";
                      leaf out-frames {
                        type bbf-yang:performance-counter64;
                        description
                          "Total number of G-PON Encapsulation Method (GEM) frames
    transmitted.";
                        reference
                          "ITU-T G.987.3 (01/2014)
                          Table 14-1 Transmitted XGEM frames per XGEM port
                          
                          ITU-T G.989.3 (2015)/Amd.2 (11/2018)
                          Table 14-1 Transmitted XGEM frames per XGEM port
                          
                          ITU-T G.9807.1 (2016)/Amd.1 (10/2017)
                          Table C.14.1 Transmitted XGEM frames per XGEM port";
    
                      }
    
                      leaf in-frames {
                        type bbf-yang:performance-counter64;
                        description
                          "Total number of G-PON Encapsulation Method (GEM) frames
    received.";
                        reference
                          "ITU-T G.987.3 (01/2014)
                          Table 14-1 Received XGEM frames per XGEM port
                          
                          ITU-T G.989.3 (2015)/Amd.2 (11/2018)
                          Table 14-1 Received XGEM frames per XGEM port
                          
                          ITU-T G.9807.1 (2016)/Amd.1 (10/2017)
                          Table C.14.1 Received XGEM frames per XGEM port";
    
                      }
                    }  // container v-ani-side
                  }  // container current
    
                  leaf number-of-intervals {
                    type performance-15min-interval;
                    description
                      "The total number of 15-minute PM intervals for which data
    was collected.";
                  }
    
                  leaf non-valid-intervals {
                    type performance-15min-interval;
                    description
                      "The number of 15-minute PM intervals for which the data
    is considered to be invalid or incomplete.";
                  }
    
                  list history {
                    key "interval-number";
                    max-elements 96;
                    description
                      "A history of 15 minute intervals.";
                    leaf interval-number {
                      type bbf-if-pm:performance-15min-history-interval;
                      description
                        "The number of the interval relative to the current
    interval.";
                    }
    
                    leaf measured-time {
                      type uint32;
                      description
                        "Reports the amount of time, measured in seconds, that
    statistics for this interval have been counted.";
                    }
    
                    leaf invalid-data-flag {
                      type boolean;
                      description
                        "Reports the validity of the corresponding PM data.";
                    }
    
                    leaf time-stamp {
                      type yang:date-and-time;
                      description
                        "Reports the start date/time for this interval.";
                    }
    
                    container ani-side {
                      description
                        "Counters from the Optical Network Unit's (ONU) perspective.";
                      leaf out-frames {
                        type bbf-yang:performance-counter64;
                        description
                          "Total number of G-PON Encapsulation Method (GEM) frames
    transmitted.";
                        reference
                          "ITU-T G.987.3 (01/2014)
                          Table 14-1 Transmitted XGEM frames per XGEM port
                          
                          ITU-T G.989.3 (2015)/Amd.2 (11/2018)
                          Table 14-1 Transmitted XGEM frames per XGEM port
                          
                          ITU-T G.9807.1 (2016)/Amd.1 (10/2017)
                          Table C.14.1 Transmitted XGEM frames per XGEM port";
    
                      }
    
                      leaf in-frames {
                        type bbf-yang:performance-counter64;
                        description
                          "Total number of G-PON Encapsulation Method (GEM) frames
    received.";
                        reference
                          "ITU-T G.987.3 (01/2014)
                          Table 14-1 Received XGEM frames per XGEM port
                          
                          ITU-T G.989.3 (2015)/Amd.2 (11/2018)
                          Table 14-1 Received XGEM frames per XGEM port
                          
                          ITU-T G.9807.1 (2016)/Amd.1 (10/2017)
                          Table C.14.1 Received XGEM frames per XGEM port";
    
                      }
                    }  // container ani-side
    
                    container v-ani-side {
                      description
                        "Counters from the Optical Line Termination's (OLT)
    perspective.";
                      leaf out-frames {
                        type bbf-yang:performance-counter64;
                        description
                          "Total number of G-PON Encapsulation Method (GEM) frames
    transmitted.";
                        reference
                          "ITU-T G.987.3 (01/2014)
                          Table 14-1 Transmitted XGEM frames per XGEM port
                          
                          ITU-T G.989.3 (2015)/Amd.2 (11/2018)
                          Table 14-1 Transmitted XGEM frames per XGEM port
                          
                          ITU-T G.9807.1 (2016)/Amd.1 (10/2017)
                          Table C.14.1 Transmitted XGEM frames per XGEM port";
    
                      }
    
                      leaf in-frames {
                        type bbf-yang:performance-counter64;
                        description
                          "Total number of G-PON Encapsulation Method (GEM) frames
    received.";
                        reference
                          "ITU-T G.987.3 (01/2014)
                          Table 14-1 Received XGEM frames per XGEM port
                          
                          ITU-T G.989.3 (2015)/Amd.2 (11/2018)
                          Table 14-1 Received XGEM frames per XGEM port
                          
                          ITU-T G.9807.1 (2016)/Amd.1 (10/2017)
                          Table C.14.1 Received XGEM frames per XGEM port";
    
                      }
                    }  // container v-ani-side
                  }  // list history
                }  // container intervals-15min
    
                container intervals-24hr {
                  if-feature bbf-if-pm:performance-24hr;
                  description
                    "24 hour interval performance history.";
                  container current {
                    description
                      "Current 24 hour interval counters.";
                    container ani-side {
                      description
                        "Counters from the Optical Network Unit's (ONU) perspective.";
                      leaf out-frames {
                        type bbf-yang:performance-counter64;
                        description
                          "Total number of G-PON Encapsulation Method (GEM) frames
    transmitted.";
                        reference
                          "ITU-T G.987.3 (01/2014)
                          Table 14-1 Transmitted XGEM frames per XGEM port
                          
                          ITU-T G.989.3 (2015)/Amd.2 (11/2018)
                          Table 14-1 Transmitted XGEM frames per XGEM port
                          
                          ITU-T G.9807.1 (2016)/Amd.1 (10/2017)
                          Table C.14.1 Transmitted XGEM frames per XGEM port";
    
                      }
    
                      leaf in-frames {
                        type bbf-yang:performance-counter64;
                        description
                          "Total number of G-PON Encapsulation Method (GEM) frames
    received.";
                        reference
                          "ITU-T G.987.3 (01/2014)
                          Table 14-1 Received XGEM frames per XGEM port
                          
                          ITU-T G.989.3 (2015)/Amd.2 (11/2018)
                          Table 14-1 Received XGEM frames per XGEM port
                          
                          ITU-T G.9807.1 (2016)/Amd.1 (10/2017)
                          Table C.14.1 Received XGEM frames per XGEM port";
    
                      }
                    }  // container ani-side
    
                    container v-ani-side {
                      description
                        "Counters from the Optical Line Termination's (OLT)
    perspective.";
                      leaf out-frames {
                        type bbf-yang:performance-counter64;
                        description
                          "Total number of G-PON Encapsulation Method (GEM) frames
    transmitted.";
                        reference
                          "ITU-T G.987.3 (01/2014)
                          Table 14-1 Transmitted XGEM frames per XGEM port
                          
                          ITU-T G.989.3 (2015)/Amd.2 (11/2018)
                          Table 14-1 Transmitted XGEM frames per XGEM port
                          
                          ITU-T G.9807.1 (2016)/Amd.1 (10/2017)
                          Table C.14.1 Transmitted XGEM frames per XGEM port";
    
                      }
    
                      leaf in-frames {
                        type bbf-yang:performance-counter64;
                        description
                          "Total number of G-PON Encapsulation Method (GEM) frames
    received.";
                        reference
                          "ITU-T G.987.3 (01/2014)
                          Table 14-1 Received XGEM frames per XGEM port
                          
                          ITU-T G.989.3 (2015)/Amd.2 (11/2018)
                          Table 14-1 Received XGEM frames per XGEM port
                          
                          ITU-T G.9807.1 (2016)/Amd.1 (10/2017)
                          Table C.14.1 Received XGEM frames per XGEM port";
    
                      }
                    }  // container v-ani-side
                  }  // container current
    
                  leaf number-of-intervals {
                    type performance-24hr-interval;
                    description
                      "The total number of 24-hour PM intervals for which data
    was collected. ";
                  }
    
                  leaf non-valid-intervals {
                    type performance-24hr-interval;
                    description
                      "The number of 24-hour PM intervals for which the data
    is considered to be invalid or incomplete.";
                  }
    
                  list history {
                    key "interval-number";
                    max-elements 7;
                    description
                      "A history of 24 hour intervals.";
                    leaf interval-number {
                      type bbf-if-pm:performance-24hr-history-interval;
                      description
                        "The number of the interval relative to the current
    interval.";
                    }
    
                    leaf measured-time {
                      type uint32;
                      description
                        "Reports the amount of time, measured in seconds, that
    statistics for this interval have been counted.";
                    }
    
                    leaf invalid-data-flag {
                      type boolean;
                      description
                        "Reports the validity of the corresponding PM data.";
                    }
    
                    leaf time-stamp {
                      type yang:date-and-time;
                      description
                        "Reports the start date/time for this interval.";
                    }
    
                    container ani-side {
                      description
                        "Counters from the Optical Network Unit's (ONU) perspective.";
                      leaf out-frames {
                        type bbf-yang:performance-counter64;
                        description
                          "Total number of G-PON Encapsulation Method (GEM) frames
    transmitted.";
                        reference
                          "ITU-T G.987.3 (01/2014)
                          Table 14-1 Transmitted XGEM frames per XGEM port
                          
                          ITU-T G.989.3 (2015)/Amd.2 (11/2018)
                          Table 14-1 Transmitted XGEM frames per XGEM port
                          
                          ITU-T G.9807.1 (2016)/Amd.1 (10/2017)
                          Table C.14.1 Transmitted XGEM frames per XGEM port";
    
                      }
    
                      leaf in-frames {
                        type bbf-yang:performance-counter64;
                        description
                          "Total number of G-PON Encapsulation Method (GEM) frames
    received.";
                        reference
                          "ITU-T G.987.3 (01/2014)
                          Table 14-1 Received XGEM frames per XGEM port
                          
                          ITU-T G.989.3 (2015)/Amd.2 (11/2018)
                          Table 14-1 Received XGEM frames per XGEM port
                          
                          ITU-T G.9807.1 (2016)/Amd.1 (10/2017)
                          Table C.14.1 Received XGEM frames per XGEM port";
    
                      }
                    }  // container ani-side
    
                    container v-ani-side {
                      description
                        "Counters from the Optical Line Termination's (OLT)
    perspective.";
                      leaf out-frames {
                        type bbf-yang:performance-counter64;
                        description
                          "Total number of G-PON Encapsulation Method (GEM) frames
    transmitted.";
                        reference
                          "ITU-T G.987.3 (01/2014)
                          Table 14-1 Transmitted XGEM frames per XGEM port
                          
                          ITU-T G.989.3 (2015)/Amd.2 (11/2018)
                          Table 14-1 Transmitted XGEM frames per XGEM port
                          
                          ITU-T G.9807.1 (2016)/Amd.1 (10/2017)
                          Table C.14.1 Transmitted XGEM frames per XGEM port";
    
                      }
    
                      leaf in-frames {
                        type bbf-yang:performance-counter64;
                        description
                          "Total number of G-PON Encapsulation Method (GEM) frames
    received.";
                        reference
                          "ITU-T G.987.3 (01/2014)
                          Table 14-1 Received XGEM frames per XGEM port
                          
                          ITU-T G.989.3 (2015)/Amd.2 (11/2018)
                          Table 14-1 Received XGEM frames per XGEM port
                          
                          ITU-T G.9807.1 (2016)/Amd.1 (10/2017)
                          Table C.14.1 Received XGEM frames per XGEM port";
    
                      }
                    }  // container v-ani-side
                  }  // list history
                }  // container intervals-24hr
              }  // container performance
            }  // list gemport
          }  // container gemports
        }  // container xpongemtcont-state
      }  // module bbf-xpongemtcont
    

© 2023 YumaWorks, Inc. All rights reserved.