netconfcentral logo

bbf-pppoe-intermediate-agent@2017-05-08



  module bbf-pppoe-intermediate-agent {

    yang-version 1.1;

    namespace
      "urn:bbf:yang:bbf-pppoe-intermediate-agent";

    prefix bbf-pppoe-ia;

    import ietf-interfaces {
      prefix if;
    }
    import ietf-yang-types {
      prefix yang;
    }
    import bbf-yang-types {
      prefix bbf-yang;
    }
    import bbf-if-type {
      prefix bbfift;
    }
    import bbf-subscriber-types {
      prefix bbf-subtype;
    }

    organization
      "Broadband Forum <https://www.broadband-forum.org>
     Common YANG Project Stream";

    contact
      "Comments or questions about this Broadband Forum YANG module
     should be directed to <mailto:help@broadband-forum.org>.

     Editor:      Joey Boyd, ADTRAN
                  <mailto:joey.boyd@adtran.com>

     Editor:      Ludwig Pauwels, Nokia
                  <mailto:ludwig.pauwels@nokia.com>

     PS Leader:   Michael Shaffer, Nokia
                  <mailto:michael.shaffer@nokia.com>

     PS Leader:   William Lupton, Broadband Forum
                  <mailto:wlupton@broadband-forum.org>";

    description
      "This module contains a collection of YANG definitions for 
     supporting the Broadband Forum requirements on subscriber 
     management via the PPPoE protocol as applicable to access 
     network equipment. As such, this module is specific to access 
     network equipment (e.g., BBF-specified Access Nodes and FTTdp 
     DPUs).

     Copyright (c) 2017, 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-383; see
     the TR itself for full legal notices.";

    revision "2017-05-08" {
      description
        "Initial revision.
       * Approval Date:    see revision date above.
       * Publication Date: 2017-06-02.";
      reference
        "TR-383: Common YANG Modules
        	<https://www.broadband-forum.org/technical/download/
        		 TR-383.pdf>";

    }


    container pppoe-profiles {
      description
        "PPPoE Intermediate Agent configuration profile.";
      list pppoe-profile {
        key "name";
        description
          "List containing the parameters for PPPoE Intermediate Agent 
         configuration.";
        leaf name {
          type bbf-yang:string-ascii64;
          description "Name of the profile.";
        }

        container pppoe-vendor-specific-tag {
          description
            "Contains information that needs to be filled in the
           vendor-specific tag - 0x0105.";
          leaf-list subtag {
            type enumeration {
              enum "circuit-id" {
                value 0;
                description
                  "Add the sub-option Agent Circuit ID in the 
                 vendor-specific tag with sub-option number 0x01.

                 The value inserted is the value of the leaf 
                 circuit-id defined in the instance in the list 
                 subscriber-profiles/subscriber-profile that is 
                 associated with the interface, if any. If this leaf 
                 is unknown, then a sub-option 
                 Agent Circuit ID will be generated according to the 
                 syntax defined in the leaf 
                 default-circuit-id-syntax.";
                reference
                  "TR-101i2 - Section 8.3";

              }
              enum "remote-id" {
                value 1;
                description
                  "Add the sub-option Agent Remote ID in the 
                 vendor-specific tag with sub-option number 0x02.

                 The value inserted is the value of the leaf 
                 remote-id defined in the instance in the list 
                 subscriber-profiles/subscriber-profile that is 
                 associated with the interface, if any. If this leaf 
                 is unknown, then a sub-option 
                 Agent Remote ID will be generated according to the 
                 syntax defined in the leaf 
                 default-remote-id-syntax.";
                reference
                  "TR-101i2 - Section 8.3";

              }
              enum
                "access-loop-characteristics" {
                value 2;
                description
                  "Access loop characteristics to be added in the 
                 vendor-specific tag with sub-tag-numbers 0x81-0x8E 
                 and 0x90. 

                 The characteristics to be added to the sub-option are
                 controlled via the leaf access-loop-subtags";
                reference
                  "TR-101i2 - Section 8.4";

              }
            }
            min-elements 1;
            description
              "Identifies the sub-tags that should be part of the
             vendor-specific tag.";
          }

          leaf default-circuit-id-syntax {
            type bbf-yang:string-ascii63-or-empty;
            default "";
            description
              "To be used to generate a sub-option Agent Circuit ID when
             no circuit-id is provided for the VLAN sub-interface via
             a referenced subscriber-profiles/subscriber-profile.

             The syntax is a string of ASCII characters that 
             determines the actual value inserted in the sub-option.
             Parts of the syntax that are recognized as predefined
             keywords will be replaced by an actual value.";
            reference
              "TR-178 - R117";

          }

          leaf default-remote-id-syntax {
            type bbf-yang:string-ascii63-or-empty;
            default "";
            description
              "To be used to generate a sub-option Agent Remote ID when 
             no remote-id is provided for the VLAN sub-interface via a
             referenced subscriber-profiles/subscriber-profile.

             The syntax is a string of ASCII characters that 
             determines the actual value inserted in the sub-option. 
             Parts of the syntax that are recognized as predefined 
             keywords will be replaced by an actual value.";
            reference
              "TR-178 - R120";

          }

          leaf access-loop-subtags {
            type bbf-subtype:broadband-line-characteristics;
            default "";
            description
              "Access Loop sub-tags that are to be added in the
             vendor-specific tag.";
            reference
              "TR-178 - R123";

          }

          leaf start-numbering-from-zero {
            type boolean;
            default "false";
            description
              "In case the default-circuit-id-syntax or 
             default-remote-id-syntax indicates a Slot or a Port 
             identification shall be added to the sub-tag value, then
             this leaf determines if the slot/port numbering MUST 
             start from 0 or 1.";
            reference
              "TR-178 - R118";

          }

          leaf use-leading-zeroes {
            type boolean;
            default "false";
            description
              "In case the default-circuit-id-syntax or 
             default-remote-id-syntax indicates a Slot or a Port 
             identification shall be added to the sub-tag value, then
             this leaf determines if the slot/port numbering MUST use
             leading 0's or not, i.e. generate a fixed length string
              or a string with only meaningful digits.";
            reference
              "TR-178 - R119 and TR-101i2 - R153";

          }
        }  // container pppoe-vendor-specific-tag
      }  // list pppoe-profile
    }  // container pppoe-profiles
  }  // module bbf-pppoe-intermediate-agent