This YANG module defines Ciena's configuration of the Private Forwarding Group Profile.
Version: 2017-10-23
module ciena-mef-pfg-profile { yang-version 1; namespace "urn:ciena:params:xml:ns:yang:ciena-pn::ciena-mef-pfg-profile"; prefix mef-pfg; organization "Ciena Corporation"; contact "Web URL: http://www.ciena.com/ E-mail: yang@ciena.com Postal: 7035 Ridge Road Hanover, Maryland 21076 U.S.A. Phone: +1 800-921-1144 Fax: +1 410-694-5750"; description "This YANG module defines Ciena's configuration of the Private Forwarding Group Profile."; revision "2017-10-23" { description "Added missing reference and description for container and list."; reference "RFC 6020: YANG - A Data Modeling Language for the Network Configuration Protocol (NETCONF). No specific reference; standard not available."; } revision "2016-05-19" { description "Initial revision."; reference "RFC 6020: YANG - A Data Modeling Language for the Network Configuration Protocol (NETCONF). No specific reference; standard not available."; } typedef pfg-profile-ref { type leafref { path "/mef-pfg:pfg-profiles/mef-pfg:pfg-profile/mef-pfg:name"; } description "This type is used by the data models that need to reference configured Private Forwarding Group Profiles."; } typedef PfgType { type enumeration { enum "pfg-groups" { value 0; description "This pfg-type allows for up to 4 PFG groups with configurable forwarding policies. Interfaces (e.g. flow points) in the domain (e.g forwarding-domain) will specify which PFG-group A,B,C or D that they belong to. This is the only PfgType which allows configuration of forwarding group policies."; } enum "spoke-and-mesh" { value 1; description "This pfg-type supports spoke and mesh with strict forwarding policy rules spoke => can forward to mesh and can forward to spoke. mesh => can forward to spoke but cannot forward to mesh. Interfaces (e.g. flow points) in the domain (e.g forwarding-domain) will specify which PFG-group Spoke or Mesh that they belong to."; } enum "leaf-and-root" { value 2; description "This pfg-type supports leaf and root with strict forwarding policy rules leaf => can forward to root but cannot forward to leaf. root => can forward to leaf and can forward to root. Interfaces (e.g. flow points) in the domain (e.g forwarding-domain) will specify which PFG-group Leaf or Root that they belong to."; } enum "spokemesh-and-leafroot" { value 3; description "This pfg-type supports leaf, root, spoke and mesh with strict forwarding policy rules leaf => can forward to root, can forward to mesh, can forward to spoke, but cannot forward to leaf. root => can forward to root, can forward to mesh, can forward to spoke, can forward to leaf. spoke => can forward to root, can forward to mesh, can forward to mesh, can forward to leaf. mesh => can forward to root, can forward to spoke, can forward to leaf, but cannot forward to mesh. Interfaces (e.g. flow points) in the domain (e.g forwarding-domain) will specify which PFG-group Spoke, Mesh, Leaf or Root that they belong to."; } } description "This represents different types of PFG Profiles."; } typedef group-policy { type bits { bit forward-to-a { position 0; description "can forward to PFG-group A."; } bit forward-to-b { position 1; description "can forward to PFG-group B."; } bit forward-to-c { position 2; description "can forward to PFG-group C."; } bit forward-to-d { position 3; description "can forward to PFG-group D."; } } description "When PfgType is pfg-groups the forwarding policies between the groups can be configured. Each PFG Group A,B,C or D can define the set of PFG-groups that it can forward to (including itself). If a forward-to-x bit is not set for a PFG-group, the PFG-group cannot forward to any interface e.g. flow-point) in that PFG-group. Each interface defines which PFG-group it belongs to."; } container pfg-profiles { description "Contains the list of PFG profiles currently present in the system."; list pfg-profile { key "name"; description "Represents configurational data for corresponding PFG profile."; leaf name { type string; description "An administratively assigned string, which may be used to identify the profile."; } leaf description { type string; description "This is a user-defined string used to describe the profile."; } leaf pfg-type { type PfgType; description "The type of PFG-profile which has configurable policies or strict forwarding policies."; } leaf pfg-group-count { type uint32; description "When the pfg-type is pfg-groups, this defines the number of PFG groups that are valid in this profile. 2 => PFG-Groups A and B 3 => PFG-Groups A, B and C 4 => PFG-Groups A,B,C and D."; } leaf group-A-policy { type group-policy; description "The set of forwarding rules for Group A."; } leaf group-B-policy { type group-policy; description "The set of forwarding rules for Group B."; } leaf group-C-policy { type group-policy; description "The set of forwarding rules for Group C."; } leaf group-D-policy { type group-policy; description "The set of forwarding rules for Group D."; } } // list pfg-profile } // container pfg-profiles } // module ciena-mef-pfg-profile
© 2023 YumaWorks, Inc. All rights reserved.