bbf-fast-line-spectrum-profile-body

This submodule contains a collection of YANG definitions for managing line spectrum profiles. Copyright (c) 2016-2022 Broadband...

  • Version: 2022-06-13

    bbf-fast-line-spectrum-profile-body@2022-06-13


    
      submodule bbf-fast-line-spectrum-profile-body {
    
        yang-version 1.1;
    
        belongs-to bbf-fast {
            prefix bbf-fast;
        }
    
        include bbf-fast-base;
    
        organization
          "Broadband Forum <https://www.broadband-forum.org>
    Common YANG Work Area";
    
        contact
          "Comments or questions about this Broadband Forum YANG module
    should be directed to <mailto:help@broadband-forum.org>.
    
    Editor:      Ken Kerpez, ASSIA, Inc.
    
    Editor:      Joey Boyd, Adtran
    
    PS Leader:   Joey Boyd, Adtran
    
    WA Director: Sven Ooghe, Nokia
    
    WA Director: Joey Boyd, Adtran";
    
        description
          "This submodule contains a collection of YANG definitions for
    managing line spectrum profiles.
    
    Copyright (c) 2016-2022 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-355a4c1; see
    the TR itself for full legal notices.";
    
        revision "2022-06-13" {
          description
            "Amendment 4 Corrigendum 1.
    * Approval Date:    2022-06-13
    * Publication Date: 2022-06-13.";
          reference
            "TR-355a4c1: YANG Modules for FTTdp Management
            	    <https://www.broadband-forum.org/download/
            		   TR-355_Amendment-4.pdf>";
    
        }
    
        revision "2022-05-23" {
          description
            "Amendment 4.
    * Approval Date:    2022-05-23
    * Publication Date: 2022-05-23.";
          reference
            "TR-355a4: YANG Modules for FTTdp Management
            	    <https://www.broadband-forum.org/download/
            		   TR-355_Amendment-4.pdf>";
    
        }
    
        revision "2020-10-13" {
          description
            "Amendment 3.
    * Approval Date:    2020-10-13
    * Publication Date: 2020-10-13.";
          reference
            "TR-355a3: YANG Modules for FTTdp Management
            	    <https://www.broadband-forum.org/download/
            		   TR-355_Amendment-3.pdf>";
    
        }
    
        revision "2020-01-17" {
          description
            "Amendment 2 Corrigendum 2.
    * Approval Date:    2020-01-17
    * Publication Date: 2020-01-17.";
          reference
            "TR-355a2c2: YANG Modules for FTTdp Management
            	    <https://www.broadband-forum.org/download/
            		   TR-355_Amendment-2.pdf>";
    
        }
    
        revision "2019-10-21" {
          description
            "Amendment 2 Corrigendum 1.
    * Approval Date:    2019-10-21
    * Publication Date: 2019-10-21.";
          reference
            "TR-355a2c1: YANG Modules for FTTdp Management
            	    <https://www.broadband-forum.org/download/
            		   TR-355_Amendment-2.pdf>";
    
        }
    
        revision "2019-06-11" {
          description
            "Amendment 2.
    * Approval Date:    2019-06-11
    * Publication Date: 2019-06-11.";
          reference
            "TR-355a2: YANG Modules for FTTdp Management
            	  <https://www.broadband-forum.org/technical/download/
            		 TR-355_Amendment-2.pdf>";
    
        }
    
        revision "2018-10-01" {
          description
            "Amendment 1.
    * Approval Date:    2018-10-01
    * Publication Date: 2018-10-01.";
          reference
            "TR-355a1: YANG Modules for FTTdp Management
            	  <https://www.broadband-forum.org/technical/download/
            		 TR-355_Amendment-1.pdf>";
    
        }
    
        revision "2017-03-13" {
          description
            "Corrigendum 1 (fixes to the initial revision).
    * Approval Date:    see revision date above.
    * Publication Date: 2017-04-12.";
          reference
            "TR-355c1: YANG Modules for FTTdp Management
            	  <https://www.broadband-forum.org/technical/download/
            		 TR-355_Corrigendum-1.pdf>";
    
        }
    
        revision "2016-07-18" {
          description
            "Initial revision.
    * Approval Date:    see revision date above.
    * Publication Date: 2016-08-05.";
          reference
            "TR-355: YANG Modules for FTTdp Management
            	<https://www.broadband-forum.org/technical/download/
            		 TR-355.pdf>";
    
        }
    
    
        typedef profiles {
          type bits {
            bit g.9701-profile-106a {
              position 0;
              description
                "ITU-T G.9701 profile 106a.";
            }
            bit g.9701-profile-106b {
              position 1;
              description
                "ITU-T G.9701 profile 106b.";
            }
            bit g.9701-profile-212a {
              position 2;
              description
                "ITU-T G.9701 profile 212a.";
            }
            bit g.9701-profile-106c {
              position 3;
              description
                "ITU-T G.9701 profile 106c.";
            }
            bit g.9701-profile-212c {
              position 4;
              description
                "ITU-T G.9701 profile 212c.";
            }
          }
          description
            "Identifies supported FAST profiles.";
          reference
            "ITU-T G.9701 clause 6";
    
        }
    
        typedef psd-level {
          type uint8 {
            range "0..255";
          }
          units "-0.5 dBm per Hz";
          description
            "Defines a Power Spectral Density (PSD) level in the range 0 to
    -127.5 dBm/Hz.";
        }
    
        typedef sub-carrier-index {
          type uint16 {
            range "0..4095";
          }
          description
            "Identifies a sub-carrier.";
        }
    
        typedef psd-level-sub-carrier-index {
          type uint32 {
            range "39..4096";
          }
          description
            "Identifies a sub-carrier used for Power Spectral Density (PSD)
    level configuration.";
        }
    
        grouping sub-carrier-range {
          description
            "Defines a sub-carrier band, i.e., a set of contiguous
    sub-carriers.";
          leaf start-index {
            type sub-carrier-index;
            description
              "The sub-carrier index identifying the start of a range of
    sub-carriers (inclusive).";
          }
    
          leaf stop-index {
            type sub-carrier-index;
            must ". >= ../start-index" {
              error-message
                "'stop-index' is less than the 'start-index'.";
              description
                "The stop index must be greater than or equal to the
    start index.";
            }
            mandatory true;
            description
              "The sub-carrier index identifying the stop of a range of
    sub-carriers (inclusive).";
          }
        }  // grouping sub-carrier-range
    
        grouping power-and-spectrum-usage-parameters {
          description
            "Power and spectrum usage configuration parameters.";
          reference
            "ITU-T G.997.2 clause 7.1.2";
    
          leaf maximum-aggregate-transmit-power {
            type int16 {
              range "-310..310";
            }
            units "0.1 dBm";
            default "40";
            description
              "Defines the maximum aggregate transmit power at the U-O2
    reference point during initialization and showtime
    (in dBm).";
            reference
              "ITU-T G.997.2 clauses 7.1.2.1 (MAXATPds) and 7.1.2.2
              (MAXATPus);
              ITU-T G.9701 clause 7.3.2";
    
          }
    
          list carmask {
            key "start-index";
            max-elements 32;
            description
              "This list defines the masked sub-carrier bands. All
    sub-carriers within the band, i.e., with indices higher than
    or equal to the start sub-carrier index and lower than or
    equal to the stop sub-carrier index, are masked, i.e., have
    a transmit power set to zero (linear scale).";
            reference
              "ITU-T G.997.2 clauses 7.1.2.3 (CARMASKds) and 7.1.2.4
              (CARMASKus);
              ITU-T G.9701 clause 7.3.1.3.";
    
            uses sub-carrier-range;
          }  // list carmask
    
          list rmccarmask {
            if-feature bbf-fast:rmccarmask;
            key "start-index";
            max-elements 2;
            description
              "Defines the Robust Management Channel (RMC) masked
    sub-carrier bands. All sub-carriers within the band, i.e.,
    with indices greater than or equal to the start sub-carrier
    index and less than or equal to the stop sub-carrier index,
    are masked.
    
    Masked sub-carriers for the Robust Management Channel (RMC)
    are not included in the sub-carrier set for the RMC (RTSds)
    nor in the backup sub-carrier set for the RMC (RTS-bds).";
            reference
              "ITU-T G.997.2 clauses 7.1.2.16 (RMCCARMASKds) and 7.1.2.17
              (RMCCARMASKus);
              ITU-T G.9701 clauses 12.3.3.2.1, 12.3.4.2.7, 13.2.1.3.1 and
              13.3.1.2.3";
    
            uses sub-carrier-range;
          }  // list rmccarmask
        }  // grouping power-and-spectrum-usage-parameters
    
        grouping line-spectrum-profile {
          description
            "Defines the parameters contained in a line spectrum
    profile.";
          leaf profiles {
            type union {
              type enumeration {
                enum "all" {
                  value 0;
                  description
                    "Used to indicate that all profiles are allowed.";
                }
              }
              type profiles;
            }
            default "all";
            description
              "Defines for each profile whether operation according to
    that profile is allowed or disallowed.";
            reference
              "ITU-T G.997.2 clause 7.1.0.1 (PROFILES);
              ITU-T G.9701 clause 6.";
    
          }
    
          leaf link-state-enabling {
            type enumeration {
              enum "l0-l3-enabled" {
                value 0;
                description
                  "L0 and L3 enabled (L2.1N, L2.1B, L2.2 disabled).";
              }
              enum "l0-l3-l2.1n-enabled" {
                value 1;
                description
                  "L0, L3 and L2.1N enabled (L2.1B, L2.2 disabled).";
              }
              enum "l0-l3-l2.1n-l2.1b-enabled" {
                value 2;
                description
                  "L0, L3, L2.1N and L2.1B enabled (L2.2 disabled).";
              }
              enum
                "l0-l3-l2.1n-l2.1b-l2.2-enabled" {
                value 3;
                description
                  "L0, L3, L2.1N, L2.1B and L2.2 enabled.";
              }
            }
            default
              "l0-l3-l2.1n-l2.1b-l2.2-enabled";
            description
              "Selects the set of allowed low power mode states.";
            reference
              "ITU-T G.997.2 clause 7.14.1.2 (LS-ENABLE);
              ITU-T G.9701 clause 12.1.1.7.2";
    
          }
    
          leaf maximum-psd-reduction-in-l2 {
            type uint8 {
              range "0..10 | 255";
            }
            units "dB";
            default "0";
            description
              "Defines the maximum Power Spectral Density (PSD) reduction
    allowed during the L2.1N, L2.2B and L2.2 link states for both
    the upstream and downstream direction. The special value,
    255, indicates there is no maximum bound for the PSD
    reduction (i.e., the maximum PSD reduction is infinite).";
            reference
              "ITU-T G.997.2 clause 7.1.10.3 (L2.1-MAXPSDR);
              ITU-T G.9701 clause 13.4.1.4.";
    
          }
    
          container downstream {
            description
              "Downstream specific line spectrum configuration
    parameters.";
            uses power-and-spectrum-usage-parameters;
    
            list mibpsdmask {
              must
                "count(../mibpsdmask)=0 or
    (count(../mibpsdmask[sub-carrier-index=39])=1 and not (
    (contains(../../profiles,'g.9701-profile-106a') and
    not(../mibpsdmask[sub-carrier-index=2048])) or
    (contains(../../profiles,'g.9701-profile-106b') and
    not(../mibpsdmask[sub-carrier-index=2048])) or
    (contains(../../profiles,'g.9701-profile-212a') and
    not(../mibpsdmask[sub-carrier-index=4096])) or
    (contains(../../profiles,'g.9701-profile-106c') and
    not(../mibpsdmask[sub-carrier-index=2048])) or
    (contains(../../profiles,'g.9701-profile-212c') and
    not(../mibpsdmask[sub-carrier-index=4096])) or
    (../../profiles='all' and
    (not(../mibpsdmask[sub-carrier-index=2048]) or
    not(../mibpsdmask[sub-carrier-index=4096])))))" {
                error-message
                  "The 'mibpsdmask' does not include sub-carrier 39 and/or the highest sub-carrier for the currently configured profile.";
                description
                  "If the MIBPSDMASK is configured, then the mask must
    include sub-carrier 39 as well as the highest
    sub-carrier for the profile.";
              }
              key "sub-carrier-index";
              max-elements 32;
              description
                "This list defines the Power Spectral Density (PSD) mask
    applicable at the U-O2 reference point. Each entry in the
    list defines a breakpoint of the PSD mask. Requirements for
    a valid Management Information Base (MIB) PSD mask are
    defined in G.9701 clauses 7.3.1.1.2.1 and 7.3.1.1.2.2.";
              reference
                "ITU-T G.997.2 clauses 7.1.2.5 (MIBPSDMASKds) and 7.1.2.6
                (MIBPSDMASKus);
                ITU-T G.9701 clauses 7.3.1.1.2.1 and 7.3.1.1.2.2.";
    
              leaf sub-carrier-index {
                type psd-level-sub-carrier-index;
                description
                  "Identifies the sub-carrier for which psd-level applies.";
              }
    
              leaf psd-level {
                type psd-level;
                mandatory true;
                description
                  "The Power Spectral Density (PSD) level of the referenced
    sub-carrier.";
              }
            }  // list mibpsdmask
    
            leaf classmask {
              if-feature bbf-fast:classmask;
              type enumeration {
                enum "classmask1" {
                  value 0;
                  description
                    "The limit mask for each profile is as defined in G.9701
    classmask1.";
                }
                enum "classmask2" {
                  value 1;
                  description
                    "The limit mask for each profile is as defined in G.9701
    classmask2.";
                }
              }
              default "classmask1";
              description
                "Defines, through a classmask selection, which limit mask
    shall be used with each profile in the downstream
    direction. The classmasks are defined in ITU-T G.9701.";
              reference
                "ITU-T G.997.2 clause 7.1.2.14 (CLASSMASKds);
                ITU-T G.9701 clause 7.3.1.5";
    
            }
          }  // container downstream
    
          container upstream {
            description
              "Upstream specific line spectrum configuration parameters.";
            uses power-and-spectrum-usage-parameters;
    
            list mibpsdmask {
              must
                "count(../mibpsdmask)=0 or
    (count(../mibpsdmask[sub-carrier-index=39])=1 and not (
    (contains(../../profiles,'g.9701-profile-106a') and
    not(../mibpsdmask[sub-carrier-index=2048])) or
    (contains(../../profiles,'g.9701-profile-106b') and
    not(../mibpsdmask[sub-carrier-index=2048])) or
    (contains(../../profiles,'g.9701-profile-212a') and
    not(../mibpsdmask[sub-carrier-index=4096])) or
    (contains(../../profiles,'g.9701-profile-106c') and
    not(../mibpsdmask[sub-carrier-index=2048])) or
    (contains(../../profiles,'g.9701-profile-212c') and
    not(../mibpsdmask[sub-carrier-index=4096])) or
    (../../profiles='all' and
    (not(../mibpsdmask[sub-carrier-index=2048]) or
    not(../mibpsdmask[sub-carrier-index=4096])))))" {
                error-message
                  "The 'mibpsdmask' does not include sub-carrier 39 and/or the highest sub-carrier for the currently configured profile.";
                description
                  "If the MIBPSDMASK is configured, then the mask must
    include sub-carrier 39 as well as the highest
    sub-carrier for the profile.";
              }
              key "sub-carrier-index";
              max-elements 32;
              description
                "This list defines the Power Spectral Density (PSD) mask
    applicable at the U-O2 reference point. Each entry in the
    list defines a breakpoint of the PSD mask.";
              reference
                "ITU-T G.997.2 clauses 7.1.2.5 (MIBPSDMASKds) and 7.1.2.6
                (MIBPSDMASKus);
                ITU-T G.9701 clauses 7.3.1.1.2.1 and 7.3.1.1.2.2.";
    
              leaf sub-carrier-index {
                type psd-level-sub-carrier-index;
                description
                  "Identifies the sub-carrier for which psd-level applies.";
              }
    
              leaf psd-level {
                type psd-level;
                mandatory true;
                description
                  "The Power Spectral Density (PSD) level of the referenced
    sub-carrier.";
              }
            }  // list mibpsdmask
    
            leaf classmask {
              if-feature bbf-fast:classmask;
              type enumeration {
                enum "classmask1" {
                  value 0;
                  description
                    "The limit mask for each profile is as defined in G.9701
    classmask1.";
                }
              }
              default "classmask1";
              description
                "Defines, through a classmask selection, which limit mask
    shall be used with each profile in the upstream direction.
    The classmasks are defined in ITU-T G.9701.";
              reference
                "ITU-T G.997.2 clause 7.1.2.15 (CLASSMASKus);
                ITU-T G.9701 clause 7.3.1.5";
    
            }
          }  // container upstream
        }  // grouping line-spectrum-profile
      }  // submodule bbf-fast-line-spectrum-profile-body
    

© 2023 YumaWorks, Inc. All rights reserved.