This module contains a collection of YANG definitions for supporting the Broadband Forum requirements on the management of Quali...
Version: 2023-03-07
module bbf-qos-policer-envelope-profiles { yang-version 1.1; namespace "urn:bbf:yang:bbf-qos-policer-envelope-profiles"; prefix bbf-qos-plc-ep; import bbf-qos-classifiers { prefix bbf-qos-cls; } import bbf-yang-types { prefix bbf-yang; } import bbf-qos-policing-types { prefix bbf-qos-plc-tp; } import bbf-qos-policing { prefix bbf-qos-plc; } 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: Nick Hancock, Adtran Editor: Ludwig Pauwels, Nokia PS Leader: Joey Boyd, Adtran WA Director: Joey Boyd, Adtran WA Director: Sven Ooghe, Nokia"; description "This module contains a collection of YANG definitions for supporting the Broadband Forum requirements on the management of Quality of Service (QoS) 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). Specifically, this module augments classifiers to add management of envelope policing as described in MEF 10.3. Copyright (c) 2017-2023, 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-383a6; see the TR itself for full legal notices."; revision "2023-03-07" { description "Amendment 6. * Approval Date: 2023-03-07. * Publication Date: 2023-03-07."; reference "TR-383a6: Common YANG Modules <https://www.broadband-forum.org/technical/download/ TR-383_Amendment-6.pdf>"; } revision "2021-06-02" { description "Amendment 4. * Approval Date: 2021-06-02. * Publication Date: 2021-06-02."; reference "TR-383a4: Common YANG Modules <https://www.broadband-forum.org/technical/download/ TR-383_Amendment-4.pdf>"; } revision "2020-10-13" { description "Amendment 3. * Approval Date: 2020-10-13. * Publication Date: 2020-10-13."; reference "TR-383a3: Common YANG Modules <https://www.broadband-forum.org/technical/download/ TR-383_Amendment-3.pdf>"; } revision "2018-07-13" { description "Amendment 1. * Approval Date: 2018-06-04. * Publication Date: see revision date above."; reference "TR-383: Common YANG Modules <https://www.broadband-forum.org/technical/download/ TR-383_Amendment-1.pdf>"; } feature policing-action-in-envelope-policer { description "Indicates support for policing actions inline in the envelope policer profile."; } identity envelope-policing { base bbf-qos-cls:action-type; description "The action-type identity indicating the system will assign a policer flow as the classifier action."; } typedef flow-rank { type uint32 { range "1..max"; } description "The rank of a flow with respect to all other flows in the range of 1 to n where 1 represents the lowest rank and n is the total number of flows."; } container envelope-profiles { description "Reusable configuration for policer envelopes. A policer (also known as an Bandwidth Profile) is a characterization of the lengths and arrival times for Service Frames at a reference point. A policer is specified using the concepts of a flow and envelope."; list envelope-profile { key "name"; description "An envelope profile."; leaf name { type bbf-yang:string-ascii64; description "The name of the profile."; } leaf scope { type identityref { base bbf-qos-cls:action-scope; } description "The scope over which this profile is applied."; } leaf coupling-flag { type bbf-qos-plc-tp:coupling-flag; must "count(../flows/flow)>1 or (count(../flows/flow)=1 and .=0)" { error-message "If there is only one flow mapped to an envelope, the " + "envelope coupling flag must be 0."; description "If there is only one flow mapped to an envelope, the envelope coupling flag must be 0."; } description "The coupling flag (CF) used for the envelope."; } container flows { description "A policer flow is a set of Service Frames that meet a specific set of criteria."; reference "MEF 10.3"; list flow { key "rank"; min-elements 1; description "A flow associated with an envelope."; leaf rank { type flow-rank; description "The rank of this flow with respect to all other flows in the range of 1 to n where 1 represents the lowest rank and n is the total number of flows."; } leaf cir { type bbf-qos-plc-tp:information-rate; description "The Committed Information Rate (CIR) limits the average rate in bits per second of Service Frames that will be declared Green by the bandwidth profile."; reference "MEF 10.3, Section 12.1"; } leaf cir-max { type bbf-qos-plc-tp:information-rate; description "The Maximum Committed Information Rate (CIRmax) limits the rate of tokens added to the committed token bucket."; reference "MEF 10.3, Section 12.1"; } leaf cbs { type bbf-qos-plc-tp:burst-size; description "The Committed Burst Size (CBS) limits the maximum number of bytes available for a burst of Service Frames sent at ingress line speed that will be declared Green by the policer."; reference "MEF 10.3, Section 12.1"; } leaf eir { type bbf-qos-plc-tp:information-rate; description "The Excess Information Rate (EIR) limits the average rate of in bits per second of Service Frames which will be declared yellow by the policer."; reference "MEF 10.3, Section 12.1"; } leaf eir-max { type bbf-qos-plc-tp:information-rate; description "The Maximum Excess Information Rate (EIRmax) limits the rate of tokens added to the excess token bucket."; reference "MEF 10.3, Section 12.1"; } leaf ebs { type bbf-qos-plc-tp:burst-size; description "The Excess Burst Size (EBS) limits the maximum number of bytes available for a burst of Service Frames at ingress line speed that will be declared yellow by the policer."; reference "MEF 10.3, Section 12.1"; } leaf coupling-flag { type bbf-qos-plc-tp:coupling-flag; must "../../../coupling-flag = 0 or (../../../coupling-flag = 1 and . = 0)" { error-message "When the envelope coupling flag is equal to a 1, " + "all flow coupling flags must be equal to 0."; description "When the envelope coupling flag is equal to a 1, all flow coupling flags must be equal to 0."; } description "The coupling flag (CF) used for the flow."; reference "MEF 10.3, Section 12.1"; } leaf color-mode { type bbf-qos-plc-tp:color-mode; description "The Color Mode (CM) indicates the type of color awareness which is employed by the policer."; reference "MEF 10.3, Section 12.1"; } } // list flow } // container flows leaf policing-action-profile { if-feature bbf-qos-plc:policing-action-profiles; if-feature policing-action-in-envelope-policer; type leafref { path "/bbf-qos-plc:policing-action-profiles/bbf-qos-plc:policing-action-profile/bbf-qos-plc:name"; } description "The name of the referenced policing action profile."; } } // list envelope-profile } // container envelope-profiles } // module bbf-qos-policer-envelope-profiles
© 2023 YumaWorks, Inc. All rights reserved.