netconfcentral logo

ietf-l2vpn-svc

HTML

ietf-l2vpn-svc@2017-10-13



  module ietf-l2vpn-svc {

    yang-version 1.1;

    namespace
      "urn:ietf:params:xml:ns:yang:ietf-l2vpn-svc";

    prefix l2vpn-svc;

    import ietf-inet-types {
      prefix inet;
    }
    import ietf-yang-types {
      prefix yang;
    }
    import ietf-netconf-acm {
      prefix nacm;
    }

    organization "IETF L2SM Working Group.";

    contact
      "WG List: l2sm@ietf.org
Editor: giuseppe.fioccola@telecomitalia.it";

    description
      "The YANG module defines a generic service configuration
model for Layer 2 VPN services common across all of the
vendor implementations.";

    revision "2017-10-13" {
      description
        "Initial revision -03 version";
      reference
        "draft-ietf-l2sm-l2vpn-service-model-03.txt
        A YANG Data Model for L2VPN Service Delivery.";

    }


    feature multicast-like {
      description
        "Enables multicast-like capabilities support in a L2VPN.";
    }

    feature extranet-vpn {
      description
        "Enable the Support of Extranet VPN.";
    }

    feature L2CP-control {
      description
        "Enable the Support of L2CP control.";
    }

    feature input-bw {
      description
        "Enable the suppport of Input Bandwidth in a VPN.";
    }

    feature output-bw {
      description
        "Enable the support of Output Bandwidth in a VPN";
    }

    feature uni-list {
      description
        "Enable the support of UNI list in a VPN.";
    }

    feature cloud-access {
      description
        "Allow VPN to connect to a Cloud Service
provider.";
    }

    feature oam-3ah {
      description
        "Enables the support of OAM 802.3ah.";
    }

    feature micro-bfd {
      description
        "Enables the support of Micro-BFD.";
    }

    feature bfd {
      description
        "Enables the support of BFD.";
    }

    feature signaling-options {
      description
        "Enable the support of signalling option.";
    }

    feature site-diversity {
      description
        "Enables the support of site diversity constraints in a VPN.";
    }

    feature encryption {
      description
        "Enables support of encryption.";
    }

    feature always-on {
      description
        "Enables support for always-on access
constraint.";
    }

    feature requested-type {
      description
        "Enables support for requested-type access
constraint.";
    }

    feature bearer-reference {
      description
        "Enables support for bearer-reference access
constraint.";
    }

    feature qos {
      description
        "Enables support of Class of Services.";
    }

    feature qos-custom {
      description
        "Enables support of custom qos profile.";
    }

    feature lag-interface {
      description "Enable lag-interface.";
    }

    feature vlan {
      description
        "Enable the support of VLAN.";
    }

    feature dot1q {
      description
        "Enable the support of Dot1Q.";
    }

    feature sub-inf {
      description
        "Enable the support of Sub Interface.";
    }

    feature qinq {
      description
        "Enable the support of QinQ.";
    }

    feature qinany {
      description
        "Enable the support of QinAny.";
    }

    feature atm {
      description
        "Enable the support of ATM.";
    }

    feature vxlan {
      description
        "Enable the support of VxLAN.";
    }

    feature ipv4 {
      description
        "Enables IPv4 support in a VPN.";
    }

    feature ipv6 {
      description
        "Enables IPv6 support in a VPN.";
    }

    feature lan-tag {
      description
        "Enables LAN Tag support in a VPN.";
    }

    typedef svc-id {
      type string;
      description
        "Defines a type of service component identifier.";
    }

    typedef ccm-priority-type {
      type uint8 {
        range "0..7";
      }
      description
        "A 3 bit priority value to be used in the VLAN tag,
if present in the transmitted frame.";
    }

    typedef control-mode {
      type enumeration {
        enum "peer" {
          value 0;
          description
            "Peer mode,i.e.,participate in the protocol towards the CE.
Peering is common for LACP  and E-LMI and occasionally for LLDP.
For virtual private services the Subscriber can also request that
the Service Provider peer spanning tree.";
        }
        enum "tunnel" {
          value 1;
          description
            "Tunnel mode,i.e.,pass to the egress or destination site.
For EPL, the expectation is that L2CP frames are tunneled.";
        }
        enum "discard" {
          value 2;
          description
            "Discard mode,i.e.,discard the frame.";
        }
      }
      description
        "Defining a type of the control mode on L2CP protocols.";
    }

    typedef neg-mode {
      type enumeration {
        enum "full-duplex" {
          value 0;
          description
            "Defining Full duplex mode";
        }
        enum "auto-neg" {
          value 1;
          description
            "Defining Auto negotiation mode";
        }
      }
      description
        "Defining a type of the negotiation mode";
    }

    identity multicast-tree-type {
      base 
      description
        "Base identity for multicast tree type.";
    }

    identity ssm-tree-type {
      base multicast-tree-type;
      description
        "Identity for SSM tree type.";
    }

    identity asm-tree-type {
      base multicast-tree-type;
      description
        "Identity for ASM tree type.";
    }

    identity bidir-tree-type {
      base multicast-tree-type;
      description
        "Identity for bidirectional tree type.";
    }

    identity mapping-type {
      base 
      description "Identity mapping-type";
    }

    identity static-mapping {
      base mapping-type;
      description
        "Identity for static mapping, i.e.,attach the interface
to the Multicast group as static member";
    }

    identity dynamic-mapping {
      base mapping-type;
      description
        "Identity for dynamic mapping, i.e.,interface was added
to the Multicast group as a result of snooping";
    }

    identity tf-type {
      base 
      description "Identity traffic-type";
    }

    identity multicast-traffic {
      base tf-type;
      description
        "Identity for multicast traffic";
    }

    identity broadcast-traffic {
      base tf-type;
      description
        "Identity for broadcast traffic";
    }

    identity unknown-unicast-traffic {
      base tf-type;
      description
        "Identity for unknown unicast traffic";
    }

    identity pwe-encapsulation-type {
      base 
      description
        "Identity pwe-encapsulation-type";
    }

    identity ethernet-over-mpls {
      base pwe-encapsulation-type;
      description
        "Identity for ethernet over mpls";
    }

    identity ethernet-tagged-mpls {
      base pwe-encapsulation-type;
      description
        "Identity for ethernet tagged over mpls";
    }

    identity l2tp-pw-type {
      base 
      description
        "Identity for L2TP PW type";
    }

    identity encapsulation-type {
      base 
      description
        "Identity for encapsulation type";
    }

    identity ethernet-type {
      base encapsulation-type;
      description
        "Identity for encapsulation type";
    }

    identity vlan-type {
      base encapsulation-type;
      description
        "Identity for encapsulation type";
    }

    identity protection-mode {
      base 
      description
        "Identity of protection mode";
    }

    identity oneplusone {
      base protection-mode;
      description
        "In this scheme, the primary circuit will be
protected by a backup circuit, typically meeting certain
diverse path/fiber/site/node criteria.  Both primary and
protection circuits are provisioned to be in the active forwarding
state.  The subscriber may choose to send the same service frames
across both circuits simultaneously.";
    }

    identity one2one {
      base protection-mode;
      description
        "In this scheme, a backup circuit to the primary
circuit is provisioned.  Depending on the implementation
agreement, the protection circuits may either always be in active
forwarding state, or may only become active when a faulty state is
detected on the primary circuit.";
    }

    identity eth-inf-type {
      base 
      description
        "Identity of Ethernet Interface Type";
    }

    identity phy-inf {
      base eth-inf-type;
      description
        "Identity of Physical Interface type";
    }

    identity lag-inf {
      base eth-inf-type;
      description
        "Identity of LAG Interface type";
    }

    identity bw-type {
      base 
      description "Identity of bandwidth";
    }

    identity bw-per-cos {
      base bw-type;
      description "Bandwidth is per cos";
    }

    identity bw-per-port {
      base bw-type;
      description
        "Bandwidth is per site network access";
    }

    identity opaque {
      base bw-type;
      description "Opaque";
    }

    identity site-type {
      base 
      description "Identity of site type.";
    }

    identity uni {
      base site-type;
      description
        "Identity of User Network Interface ";
    }

    identity enni {
      base site-type;
      description
        "Identity of External Network to Network Interface";
    }

    identity service-type {
      base 
      description
        "Base Identity of service type.";
    }

    identity vpws {
      base service-type;
      description
        " point-to-point Virtual Private Wire Services(VPWS) type.";
    }

    identity pwe3 {
      base service-type;
      description
        " Pseudo-Wire Emulation Edge to
Edge(PWE3)Service type. .";
    }

    identity ldp-l2tp-vpls {
      base service-type;
      description
        "LDP based or L2TP based multipoint Virtual Private LAN services (VPLS) Service Type.
This VPLS uses LDP-signaled Pseudowires or L2TP signaled Pseudowires.";
    }

    identity bgp-vpls {
      base service-type;
      description
        "BGP based multipoint Virtual Private LAN services (VPLS) Service Type.
This VPLS uses a Border Gateway Protocol (BGP) control plane as
described in RFC4761 and RFC6624.";
    }

    identity vpws-evpn {
      base service-type;
      description
        "VPWS Service Type using Ethernet VPN(EVPN) specified in RFC 7432.";
    }

    identity pbb-evpn {
      base service-type;
      description
        "PBB Service Type using Ethernet VPN(EVPN) specified in RFC 7432.";
    }

    identity bundling-type {
      base 
      description
        "This is base identity for Bundling type. It supports
multiple CE-VLAN associated with L2VPN service or all CE-VLANs
associated with L2VPN service.";
    }

    identity multi-svc-bundling {
      base bundling-type;
      description
        "Identity for multiple service bundling,i.e.,
multiple CE-VLAN IDs can be associated with an
L2VPN Service at site.";
    }

    identity one2one-bundling {
      base bundling-type;
      description
        "Identity for one to one service bundling,i.e.,
Each L2VPN can be associated with only one CE-VLAN IDs
at site.";
    }

    identity all2one-Bundling {
      base bundling-type;
      description
        "Identity for all to one bundling,i.e.,all CE-VLAN IDs
are mapped to one L2VPN Service";
    }

    identity color-id {
      base 
      description
        "base identity of color id";
    }

    identity color-id--cvlan {
      base color-id;
      description
        "Identity of color id base on  CVLAN ";
    }

    identity cos-id {
      base 
      description
        "Identity of class of service id";
    }

    identity cos-id-pcp {
      base cos-id;
      description
        "Identity of cos id based on  PCP";
    }

    identity cos-id--dscp {
      base cos-id;
      description
        "Identity of cos id based on  DSCP";
    }

    identity color-type {
      base 
      description "Identity of color types";
    }

    identity green {
      base color-type;
      description "Identity of green type";
    }

    identity yellow {
      base color-type;
      description "Identity of yellow type";
    }

    identity red {
      base color-type;
      description "Identity of red type";
    }

    identity perf-tier-opt {
      base 
      description
        "Identity of performance tier option.";
    }

    identity metro {
      base perf-tier-opt;
      description "Identity of metro";
    }

    identity regional {
      base perf-tier-opt;
      description "Identity of regional";
    }

    identity continental {
      base perf-tier-opt;
      description "Identity of continental";
    }

    identity global {
      base perf-tier-opt;
      description "Identity of global";
    }

    identity policing {
      base 
      description
        "Identity of policing type";
    }

    identity one-rate-two-color {
      base policing;
      description
        "Identity of one-rate, two-color (1R2C)";
    }

    identity two-rate-three-color {
      base policing;
      description
        "Identity of two-rate, three-color (2R3C)";
    }

    identity bum-type {
      base 
      description "Identity of BUM type";
    }

    identity broadcast {
      base bum-type;
      description "Identity of broadcast";
    }

    identity unicast {
      base bum-type;
      description "Identity of unicast";
    }

    identity multicast {
      base bum-type;
      description "Identity of multicast";
    }

    identity loop-prevention-type {
      base 
      description
        "Identity of loop prevention";
    }

    identity shut {
      base loop-prevention-type;
      description
        "Identity of shut protection";
    }

    identity trap {
      base loop-prevention-type;
      description
        "Identity of trap protection";
    }

    identity lacp-state {
      base 
      description "Identity of LACP state";
    }

    identity lacp-on {
      base lacp-state;
      description "Identity of LCAP on";
    }

    identity lacp-off {
      base lacp-state;
      description "Identity of LACP off";
    }

    identity lacp-mode {
      base 
      description "Identity of LACP mode";
    }

    identity lacp-passive {
      base lacp-mode;
      description "Identity of LACP passive";
    }

    identity lacp-active {
      base lacp-mode;
      description "Identity of LACP active";
    }

    identity lacp-speed {
      base 
      description "Identity of LACP speed";
    }

    identity lacp-fast {
      base lacp-speed;
      description "Identity of LACP fast";
    }

    identity lacp-slow {
      base lacp-speed;
      description "Identity of LACP slow";
    }

    identity vpn-signaling-type {
      base 
      description
        "Identity of VPN signaling types";
    }

    identity l2vpn-bgp {
      base vpn-signaling-type;
      description "Identity of l2vpn-bgp";
    }

    identity evpn-bgp {
      base vpn-signaling-type;
      description "Identity of evpn-bgp";
    }

    identity t-ldp {
      base vpn-signaling-type;
      description "Identity of t-ldp.";
    }

    identity l2tp {
      base vpn-signaling-type;
      description "Identity of l2tp.";
    }

    identity t-ldp-pwe-type {
      base 
      description
        "Identity for t-ldp-pwe-type.";
    }

    identity vpws-type {
      base t-ldp-pwe-type;
      description "Identity for VPWS";
    }

    identity vpls-type {
      base t-ldp-pwe-type;
      description "Identity for vpls";
    }

    identity h-vpls {
      base t-ldp-pwe-type;
      description "Identity for h-vpls";
    }

    identity l2vpn-type {
      base 
      description "Layer 2 VPN types";
    }

    identity l2vpn-vpws {
      base l2vpn-type;
      description "VPWS L2VPN type.";
    }

    identity l2vpn-vpls {
      base l2vpn-type;
      description "VPLS L2VPN type.";
    }

    identity distribute-vpls {
      base l2vpn-type;
      description
        "distribute VPLS L2VPN type.";
    }

    identity evpn-type {
      base 
      description "Ethernet VPN types";
    }

    identity evpn-vpws {
      base evpn-type;
      description "VPWS support in EVPN.";
    }

    identity evpn-pbb {
      base evpn-type;
      description
        " Provider Backbone Bridging Support in EVPN.";
    }

    identity management {
      base 
      description
        "Base identity for site management scheme.";
    }

    identity co-managed {
      base management;
      description
        "Base identity for co-managed site.";
    }

    identity customer-managed {
      base management;
      description
        "Base identity for customer managed site.";
    }

    identity provider-managed {
      base management;
      description
        "Base identity for provider managed site.";
    }

    identity address-family {
      base 
      description
        "Base identity for an address family.";
    }

    identity ipv4 {
      base address-family;
      description
        "Identity for IPv4 address family.";
    }

    identity ipv6 {
      base address-family;
      description
        "Identity for IPv6 address family.";
    }

    identity vpn-topology {
      base 
      description
        "Base identity for VPN topology.";
    }

    identity any-to-any {
      base vpn-topology;
      description
        "Identity for any to any VPN topology.";
    }

    identity hub-spoke {
      base vpn-topology;
      description
        "Identity for Hub'n'Spoke VPN topology.";
    }

    identity hub-spoke-disjoint {
      base vpn-topology;
      description
        "Identity for Hub'n'Spoke VPN topology
where Hubs cannot talk between each other.";
    }

    identity site-role {
      base 
      description
        "Base identity for site type.";
    }

    identity any-to-any-role {
      base site-role;
      description
        "Site in an any to any IPVPN.";
    }

    identity spoke-role {
      base site-role;
      description
        "Spoke Site in a Hub & Spoke IPVPN.";
    }

    identity hub-role {
      base site-role;
      description
        "Hub Site in a Hub &amp Spoke IPVPN.";
    }

    identity pm-type {
      base 
      description "Performance monitor type";
    }

    identity loss {
      base pm-type;
      description "Loss measurement";
    }

    identity delay {
      base pm-type;
      description "Delay measurement";
    }

    identity fault-alarm-defect-type {
      base 
      description
        "Indicating the alarm priority defect";
    }

    identity remote-rdi {
      base fault-alarm-defect-type;
      description
        "Indicates the aggregate health of the remote MEPs.";
    }

    identity remote-mac-error {
      base fault-alarm-defect-type;
      description
        "Indicates that one or more of the remote MEPs is
reporting a failure in its Port Status TLV or
Interface Status TLV.";
    }

    identity remote-invalid-ccm {
      base fault-alarm-defect-type;
      description
        "Indicates that at least one of the Remote MEP
state machines is not receiving valid CCMs
from its remote MEP.";
    }

    identity invalid-ccm {
      base fault-alarm-defect-type;
      description
        "Indicates that one or more invalid CCMs has been
received and that 3.5 times that CCMs transmission
interval has not yet expired.";
    }

    identity cross-connect-ccm {
      base fault-alarm-defect-type;
      description
        "Indicates that one or more cross connect CCMs has been
received and that 3.5 times of at least one of those
CCMs transmission interval has not yet expired.";
    }

    identity frame-delivery-mode {
      base 
      description "Delivery types";
    }

    identity discard {
      base frame-delivery-mode;
      description
        "Service Frames are discarded.";
    }

    identity unconditional {
      base frame-delivery-mode;
      description
        "Service Frames are unconditionally
delivered to the destination site.";
    }

    identity unknown-discard {
      base frame-delivery-mode;
      description
        "Service Frame are conditionally
delivered to the destination site and
the packet with unknown destination address
will be discarded.";
    }

    identity pw-topo-type {
      base 
      description
        "base identity for pw topology Type";
    }

    identity point-to-point {
      base pw-topo-type;
      description
        "identity for Point to Point.";
    }

    identity multipoint-to-point {
      base pw-topo-type;
      description
        "identity for Multipoint to point.";
    }

    identity point-to-multipoint {
      base pw-topo-type;
      description
        "Identity for point to Multipoint.";
    }

    identity placement-diversity {
      base 
      description
        "Base identity for site placement
constraints";
    }

    identity bearer-diverse {
      base placement-diversity;
      description
        "Identity for bearer diversity.
The bearers should not use common elements.";
    }

    identity pe-diverse {
      base placement-diversity;
      description
        "Identity for PE diversity";
    }

    identity pop-diverse {
      base placement-diversity;
      description
        "Identity for POP diversity";
    }

    identity linecard-diverse {
      base placement-diversity;
      description
        "Identity for linecard diversity";
    }

    identity same-pe {
      base placement-diversity;
      description
        "Identity for having sites connected
on the same PE";
    }

    identity same-bearer {
      base placement-diversity;
      description
        "Identity for having sites connected
using the same bearer";
    }

    identity l2-access-type {
      base 
      description
        "This identify the access type
of the vpn acccess interface";
    }

    identity untag {
      base l2-access-type;
      description "Untag";
    }

    identity port {
      base l2-access-type;
      description "Port";
    }

    identity dot1q {
      base l2-access-type;
      description "Qot1q";
    }

    identity qinq {
      base l2-access-type;
      description "QinQ";
    }

    identity sub-interface {
      base l2-access-type;
      description
        "Create a default sub-interface and keep vlan.";
    }

    identity atm {
      base l2-access-type;
      description "ATM Cell.";
    }

    identity vxlan {
      base l2-access-type;
      description
        "Vxlan access into the vpn";
    }

    identity provision-model {
      base 
      description
        "base identity for provision model.";
    }

    identity single-side-provision {
      base 
      description
        "Identity for single side provisioning with discovery.";
    }

    identity doubled-side-provision {
      base 
      description
        "Identity for double signle provisioning.";
    }

    identity mac-learning-mode {
      base 
      description "MAC learning mode";
    }

    identity data-plane {
      base mac-learning-mode;
      description
        "User MAC addresses are learned through ARP broadcast.";
    }

    identity control-plane {
      base mac-learning-mode;
      description
        "User MAC addresses are advertised through EVPN-BGP";
    }

    identity vpn-policy-filter-type {
      base 
      description
        "Base identity for filter type.";
    }

    identity lan {
      base vpn-policy-filter-type;
      description
        "Identity for lan tag filter type.";
    }

    identity mac-action {
      base 
      description
        "Base identity for MAC action.";
    }

    identity drop {
      base mac-action;
      description
        "Identity for packet drop.";
    }

    identity flood {
      base mac-action;
      description
        "Identity for packet flooding.";
    }

    identity warning {
      base mac-action;
      description
        "Identity for sending a warning log message.";
    }

    identity load-balance-method {
      base 
      description
        "Base identity for load balance method.";
    }

    identity fat-pw {
      base load-balance-method;
      description
        "Identity for Fat PW. Fat label is
   applied to Pseudowires across MPLS
   network.";
    }

    identity entropy-label {
      base load-balance-method;
      description
        "Identity for entropy label.Entropy label
   is applied to IP forwarding,
   L2VPN or L3VPN across MPLS network";
    }

    identity vxlan-source-port {
      base load-balance-method;
      description
        "Identity for vxlan source port.VxLAN
   Source Port is one load balancing method.";
    }

    identity qos-profile-direction {
      base 
      description
        "Base identity for qos profile direction.";
    }

    identity site-to-wan {
      base qos-profile-direction;
      description
        "Identity for Site to WAN direction.";
    }

    identity wan-to-site {
      base qos-profile-direction;
      description
        "Identity for WAN to Site direction.";
    }

    identity bidirection {
      base qos-profile-direction;
      description
        "Identity for both WAN to Site direction and Site to WAN direction.";
    }

    identity vxlan-peer-mode {
      base 
      description
        "Base identity for vxlan peer mode.";
    }

    identity static-mode {
      base vxlan-peer-mode;
      description
        "Identity for the vxlan access in static mode.";
    }

    identity bgp-mode {
      base vxlan-peer-mode;
      description
        "Identity for the vxlan access by bgp evpn learning.";
    }

    identity customer-application {
      base 
      description
        "Base identity for customer application.";
    }

    identity web {
      base customer-application;
      description
        "Identity for Web application (e.g., HTTP, HTTPS).";
    }

    identity mail {
      base customer-application;
      description
        "Identity for mail application.";
    }

    identity file-transfer {
      base customer-application;
      description
        "Identity for file transfer application (e.g., FTP, SFTP).";
    }

    identity database {
      base customer-application;
      description
        "Identity for database application.";
    }

    identity social {
      base customer-application;
      description
        "Identity for social-network application.";
    }

    identity games {
      base customer-application;
      description
        "Identity for gaming application.";
    }

    identity p2p {
      base customer-application;
      description
        "Identity for peer-to-peer application.";
    }

    identity network-management {
      base customer-application;
      description
        "Identity for management application
    (e.g., Telnet, syslog, SNMP).";
    }

    identity voice {
      base customer-application;
      description
        "Identity for voice application.";
    }

    identity video {
      base customer-application;
      description
        "Identity for video conference application.";
    }

    identity embb {
      base customer-application;
      description
        "Identity for enhanced Mobile Broadband(eMBB)
  application. Note that eMBB application demands
  the network performance with wide variety of
  characteristics such as data rate, latency,
  loss rate, reliability and many other parameters.";
    }

    identity urllc {
      base customer-application;
      description
        "Identity for Ultra-Reliable and Low Latency
  Communications (URLLC) application. Note that
  URLLC application demands the network performance
  with wide variety of characteristics such as latency,
  reliability and many other parameters.";
    }

    identity mmtc {
      base customer-application;
      description
        "Identity for massive Machine Type
   Communications (mMTC) application. Note that
   mMTC application demands the network performance
   with wide variety of characteristics such as data
   rate, latency, loss rate, reliability and many
   other parameters.";
    }

    grouping vpn-service-cloud-access {
      description
        "Grouping for vpn cloud definition";
      container cloud-accesses {
        if-feature cloud-access;
        description
          "Container for cloud access configurations";
        list cloud-access {
          key "cloud-identifier";
          description
            "Cloud access configuration.";
          leaf cloud-identifier {
            type string;
            description
              "Identification of cloud service. Local
   admin meaning.";
          }

          choice list-flavor {
            description
              "Choice for cloud access policy.";
            leaf permit-any {
              type empty;
              description "Allow all sites.";
            }
            leaf-list permit-site {
              type leafref {
                path
                  "/l2vpn-svc/sites/site/site-id";
              }
              description
                "Site ID to be authorized.";
            }
            leaf-list deny-site {
              type leafref {
                path
                  "/l2vpn-svc/sites/site/site-id";
              }
              description
                "Site ID to be denied.";
            }
          }  // choice list-flavor

          container authorized-sites {
            description
              "Configuration of authorized sites.";
            list authorized-site {
              key "site-id";
              description
                "List of authorized sites.";
              leaf site-id {
                type leafref {
                  path
                    "/l2vpn-svc/sites/site/site-id";
                }
                description "Site ID.";
              }
            }  // list authorized-site
          }  // container authorized-sites

          container denied-sites {
            description
              "Configuration of denied sites.";
            list denied-site {
              key "site-id";
              description
                "List of denied sites.";
              leaf site-id {
                type leafref {
                  path
                    "/l2vpn-svc/sites/site/site-id";
                }
                description "Site ID.";
              }
            }  // list denied-site
          }  // container denied-sites
        }  // list cloud-access
      }  // container cloud-accesses
    }  // grouping vpn-service-cloud-access

    grouping site-device {
      description
        "Device parameters for the site.";
      container device {
        description "Devices configuration";
        list devices {
          key "device-id";
          description "List of devices";
          leaf device-id {
            type string;
            description "Device ID";
          }

          leaf location {
            type leafref {
              path
                "/l2vpn-svc/sites/site/locations/location/location-id";
            }
            description "Site name";
          }

          container management {
            description
              "Container for management";
            leaf address {
              type inet:ip-address;
              description "Address";
            }

            leaf management-transport {
              type identityref {
                base address-family;
              }
              description
                "Transport protocol used for management.";
            }
          }  // container management
        }  // list devices
      }  // container device
    }  // grouping site-device

    grouping site-management {
      description "Grouping for management";
      container management {
        description
          "Container for management";
        leaf type {
          type identityref {
            base management;
          }
          description
            "Management type of the connection.";
        }
      }  // container management
    }  // grouping site-management

    grouping site-vpn-policy {
      description
        "VPN policy parameters for the site.";
      container vpn-policies {
        description "VPN policy.";
        list vpn-policy {
          key "vpn-policy-id";
          description
            "List of VPN policies.";
          leaf vpn-policy-id {
            type string;
            description
              "Unique identifier for the VPN policy.";
          }

          list entries {
            key "id";
            description
              "List of entries for export policy.";
            leaf id {
              type string;
              description
                "Unique identifier for the policy entry.";
            }

            container filters {
              description
                "If a more-granular VPN attachment is necessary, filtering can
be used. If used, it permits the splitting of site LANs among
multiple VPNs.The Site LAN can be split based on either LAN-tag
or LAN prefix. If no filter is used, all the LANs will be
part of the same VPNs with the same role.";
              list filter {
                key "type";
                ordered-by user;
                description
                  "List of filters used on the site. This list can
 be augmented.";
                leaf type {
                  type identityref {
                    base vpn-policy-filter-type;
                  }
                  description
                    "Type of VPN Policy filter.";
                }

                leaf-list lan-tag {
                  when
                    "derived-from-or-self(../type, 'l2vpn-svc:lan')" {
                    description
                      "Only applies when VPN Policy filter is LAN Tag filter.";
                  }
                  if-feature lan-tag;
                  type uint32;
                  description
                    "List of Ethernet LAN Tag to be matched. Ethernet LAN Tag
   identifies a particular broadcast domain in a VPN. ";
                }
              }  // list filter
            }  // container filters

            list vpn {
              key "vpn-id";
              description
                "List of VPNs the LAN is associated with.";
              leaf vpn-id {
                type leafref {
                  path
                    "/l2vpn-svc/vpn-services/"
                      + "vpn-svc/vpn-id";
                }
                mandatory true;
                description
                  "Reference to an IP VPN.";
              }

              leaf site-role {
                type identityref {
                  base site-role;
                }
                default 'any-to-any-role';
                description
                  "Role of the site in the IP VPN.";
              }
            }  // list vpn
          }  // list entries
        }  // list vpn-policy
      }  // container vpn-policies
    }  // grouping site-vpn-policy

    grouping bum-frame-delivery {
      description
        "Grouping for unicast, mulitcast, broadcast frame delivery";
      container bum-frame-delivery-modes {
        description
          "Define frame delivery type and mode.";
        list bum-frame-delivery {
          key "traffic-type";
          description
            "List of frame delivery type and mode.";
          leaf traffic-type {
            type identityref {
              base tf-type;
            }
            description
              "Type of frame delivery. It support unicast
 frame delivery, multicast frame delivery
 and broadcast frame delivery.";
          }

          leaf delivery-mode {
            type identityref {
              base frame-delivery-mode;
            }
            description
              " Define Frame Delivery Mode
(unconditional[default], conditional, or discard).";
          }
        }  // list bum-frame-delivery
      }  // container bum-frame-delivery-modes
    }  // grouping bum-frame-delivery

    grouping cvlan-svc-map-grouping {
      description
        "Grouping for cvlan to L2VPN service mapping";
      list cvlan-id-to-svc-map {
        key "svc-id";
        description
          "List for cvlan-id to L2VPn Service map configurations";
        leaf svc-id {
          type leafref {
            path
              "/l2vpn-svc/vpn-services/vpn-svc/vpn-id";
          }
          description
            "VPN Service identifier";
        }

        list cvlan-id {
          key "vid";
          description
            "List of CVLAN-ID to SVC Map configurations";
          leaf vid {
            type uint32;
            description "CVLAN ID";
          }
        }  // list cvlan-id
      }  // list cvlan-id-to-svc-map
    }  // grouping cvlan-svc-map-grouping

    grouping customer-location-info {
      description
        "This grouping defines customer location parameters";
      container locations {
        description "Location of the site.";
        list location {
          key "location-id";
          description "List for location";
          leaf location-id {
            type string;
            description "Location ID";
          }

          leaf address {
            type string;
            description
              "Address (number and street) of the site.";
          }

          leaf zip-code {
            type string;
            description
              "ZIP code of the site.";
          }

          leaf state {
            type string;
            description
              "State of the site. This leaf can also be used to
  describe a region for country who does not have
  states.";
          }

          leaf city {
            type string;
            description "City of the site.";
          }

          leaf country-code {
            type string;
            description
              "Country of the site.";
          }
        }  // list location
      }  // container locations
    }  // grouping customer-location-info

    grouping site-diversity {
      description
        "This grouping defines site diversity parameters";
      container site-diversity {
        if-feature site-diversity;
        description
          "Diversity constraint type.";
        container groups {
          description
            "Groups the site is belonging to.
   All site network accesses will inherit those group
   values.";
          list group {
            key "group-id";
            description "List of group-id";
            leaf group-id {
              type string;
              description
                "Group-id the site is belonging to";
            }
          }  // list group
        }  // container groups
      }  // container site-diversity
    }  // grouping site-diversity

    grouping site-service {
      description
        "This grouping defines site service parameters";
    }  // grouping site-service

    grouping vpn-service-multicast {
      description
        "Grouping for multicast VPN definition.";
      container multicast-like {
        if-feature multicast-like;
        description
          "Multicast global parameters for the VPN service.";
        leaf enabled {
          type boolean;
          default 'false';
          description "Enables multicast.";
        }

        container customer-tree-flavors {
          description
            "Type of trees used by customer.";
          leaf-list tree-flavor {
            type identityref {
              base multicast-tree-type;
            }
            description
              "Type of tree to be used.";
          }
        }  // container customer-tree-flavors

        uses bum-frame-delivery;

        leaf multicast-gp-port-mapping {
          type identityref {
            base mapping-type;
          }
          description
            "Describe the way in which each interface is associated with the Multicast group";
        }
      }  // container multicast-like
    }  // grouping vpn-service-multicast

    grouping vpn-extranet {
      description
        "Grouping for extranet VPN configuration.
This provides an easy way to interconnect
all sites from two VPNs.";
      container extranet-vpns {
        if-feature extranet-vpn;
        description
          "Container for extranet VPN configuration.";
        list extranet-vpn {
          key "vpn-id";
          description
            "List of extranet VPNs the local VPN is attached to.";
          leaf vpn-id {
            type svc-id;
            description
              "Identifies the target VPN.";
          }

          leaf local-sites-role {
            type identityref {
              base site-role;
            }
            default 'any-to-any-role';
            description
              "This describes the role of the
local sites in the target VPN topology.";
          }
        }  // list extranet-vpn
      }  // container extranet-vpns
    }  // grouping vpn-extranet

    grouping signaling-options-grouping {
      description
        "Grouping for signaling option";
      list signaling-options {
        key "type";
        description
          "List of VPN Signaling Option.";
        leaf type {
          type identityref {
            base vpn-signaling-type;
          }
          description "VPN signaling types";
        }

        container l2vpn-bgp {
          when "../type = 'l2vpn-bgp'" {
            description
              "Only applies when vpn signaling type is l2vpn BGP protocol.";
          }
          description
            "Container for MP BGP L2VPN";
          leaf vpn-id {
            type leafref {
              path
                "/l2vpn-svc/vpn-services/vpn-svc/vpn-id";
            }
            description
              "Identifies the target VPN";
          }

          leaf type {
            type identityref {
              base l2vpn-type;
            }
            description "L2VPN types";
          }

          leaf pwe-encapsulation-type {
            type identityref {
              base pwe-encapsulation-type;
            }
            description
              "PWE Encapsulation Type";
          }

          container pwe-mtu {
            description
              "Container of PWE MTU configurations";
            leaf allow-mtu-mismatch {
              type boolean;
              description
                "Allow MTU mismatch";
            }
          }  // container pwe-mtu

          leaf address-family {
            type identityref {
              base address-family;
            }
            description
              "Address family used for management.";
          }
        }  // container l2vpn-bgp

        container evpn-bgp {
          when "../type = 'evpn-bgp'" {
            description
              "Only applies when vpn signaling type is EVPN BGP protocol.";
          }
          description
            "Container for MP BGP L2VPN";
          leaf vpn-id {
            type leafref {
              path
                "/l2vpn-svc/vpn-services/vpn-svc/vpn-id";
            }
            description
              "Identifies the target EVPN";
          }

          leaf type {
            type identityref {
              base evpn-type;
            }
            description "L2VPN types";
          }

          leaf address-family {
            type identityref {
              base address-family;
            }
            description
              "Address family used for management.";
          }

          leaf mac-learning-mode {
            type identityref {
              base mac-learning-mode;
            }
            description
              "Indicates through which plane MAC addresses are
  advertised.";
          }

          leaf arp-suppress {
            type boolean;
            default 'false';
            description
              "Indicates whether to suppress ARP broadcast.";
          }
        }  // container evpn-bgp

        container t-ldp-pwe {
          when "../type = 't-ldp'" {
            description
              "Only applies when vpn signaling type is Target LDP.";
          }
          description
            "Container of T-LDP PWE configurations";
          leaf type {
            type identityref {
              base t-ldp-pwe-type;
            }
            description "T-LDP PWE type";
          }

          leaf pwe-encapsulation-type {
            type identityref {
              base pwe-encapsulation-type;
            }
            description
              "PWE Encapsulation Type.";
          }

          leaf control-word {
            type boolean;
            description
              "Control word configurations";
          }

          container pwe-mtu {
            description
              "Container of PWE MTU configurations";
            leaf allow-mtu-mismatch {
              type boolean;
              description
                "Allow MTU mismatch";
            }
          }  // container pwe-mtu

          leaf provision-mode {
            type identityref {
              base provision-model;
            }
            description
              "provision-models. It support Double-Sided Provisioning
 model or single-side provisioning model.";
          }

          list ac-pw-list {
            key "peer-addr vc-id";
            description
              "List of AC and PW bindings.";
            leaf peer-addr {
              type inet:ip-address;
              description "Peer IP address.";
            }

            leaf vc-id {
              type string;
              description
                "VC lable used to identify PW.";
            }

            leaf pw-type {
              type identityref {
                base pw-topo-type;
              }
              description "PW topology type";
            }

            leaf pw-priority {
              type uint32;
              description
                "Defines the priority for the PW.
   The higher the pw-priority value,
   the higher the preference of the PW will be.";
            }
          }  // list ac-pw-list

          container qinq {
            when "../type = 'h-vpls'" {
              description
                "Only applies when t-ldp pwe type is h-vpls.";
            }
            description "Container for QinQ";
            leaf s-tag {
              type uint32;
              description "S-TAG";
            }

            leaf c-tag {
              type uint32;
              description "C-TAG";
            }
          }  // container qinq
        }  // container t-ldp-pwe

        container l2tp-pwe {
          when "../type = 'l2tp'" {
            description
              "Only applies when vpn signaling type is L2TP protocol.";
          }
          description
            "Container for l2tp pw";
          leaf type {
            type identityref {
              base t-ldp-pwe-type;
            }
            description "T-LDP PWE type";
          }

          leaf encapsulation-type {
            type identityref {
              base encapsulation-type;
            }
            description "Encapsulation type";
          }

          leaf control-word {
            type boolean;
            description
              "Control word configurations";
          }

          list ac-pw-list {
            key "peer-addr vc-id";
            description
              "List of AC and PW bindings.";
            leaf peer-addr {
              type inet:ip-address;
              description "Peer IP address.";
            }

            leaf vc-id {
              type string;
              description
                "VC lable used to identify PW.";
            }

            leaf pw-type {
              type identityref {
                base pw-topo-type;
              }
              description "PW topology type";
            }

            leaf pw-priority {
              type uint32;
              description "PW priority";
            }
          }  // list ac-pw-list
        }  // container l2tp-pwe
      }  // list signaling-options
    }  // grouping signaling-options-grouping

    grouping operational-requirements-ops {
      description
        "This grouping defines some operational parameters
parameters";
      leaf actual-site-start {
        type yang:date-and-time;
        config false;
        description
          "Optional leaf indicating actual date
and time when the service at a particular
site actually started";
      }

      leaf actual-site-stop {
        type yang:date-and-time;
        config false;
        description
          "Optional leaf indicating actual date
and time when the service at a particular
site actually stopped";
      }

      leaf bundling-type {
        type identityref {
          base bundling-type;
        }
        description "Bundling type";
      }

      leaf default-ce-vlan-id {
        type uint32;
        description
          "Default CE VLAN ID set at site level.";
      }
    }  // grouping operational-requirements-ops

    grouping cfm-802-grouping {
      description
        "Grouping for 802.1ag CFM attribute";
      leaf maid {
        type string;
        description "MA ID";
      }

      leaf mep-id {
        type uint32;
        description "Local MEP ID";
      }

      leaf mep-level {
        type uint32;
        description "MEP level";
      }

      leaf mep-up-down {
        type enumeration {
          enum "up" {
            value 0;
            description "MEP up";
          }
          enum "down" {
            value 1;
            description "MEP down";
          }
        }
        description "MEP up/down";
      }

      leaf remote-mep-id {
        type uint32;
        description "Remote MEP ID";
      }

      leaf cos-for-cfm-pdus {
        type uint32;
        description "COS for CFM PDUs";
      }

      leaf ccm-interval {
        type uint32;
        description "CCM interval";
      }

      leaf ccm-holdtime {
        type uint32;
        description "CCM hold time";
      }

      leaf alarm-priority-defect {
        type identityref {
          base fault-alarm-defect-type;
        }
        description
          "The lowest priority defect that is
allowed to generate a Fault Alarm.
The non-existence of this leaf means
that no defects are to be reported";
      }

      leaf ccm-p-bits-pri {
        type ccm-priority-type;
        description
          "The priority parameter for CCMs transmitted by the MEP";
      }
    }  // grouping cfm-802-grouping

    grouping y-1731 {
      description "Grouping for y.1731";
      list y-1731 {
        key "maid";
        description "List for y-1731.";
        leaf maid {
          type string;
          description "MA ID ";
        }

        leaf mep-id {
          type uint32;
          description "Local MEP ID";
        }

        leaf type {
          type identityref {
            base pm-type;
          }
          description
            "Performance monitor types";
        }

        leaf remote-mep-id {
          type uint32;
          description "Remote MEP ID";
        }

        leaf message-period {
          type uint32;
          description
            "Defines the interval between OAM messages. The message
  period is expressed in milliseconds";
        }

        leaf measurement-interval {
          type uint32;
          description
            "Specifies the measurement interval for statistics. The
  measurement interval is expressed in seconds";
        }

        leaf cos {
          type uint32;
          description "Class of service";
        }

        leaf loss-measurement {
          type boolean;
          description
            "Whether enable loss measurement";
        }

        leaf synthethic-loss-measurement {
          type boolean;
          description
            "Indicate whether enable synthetic loss measurement";
        }

        container delay-measurement {
          description
            "Container for delay measurement";
          leaf enable-dm {
            type boolean;
            description
              "Whether to enable delay measurement";
          }

          leaf two-way {
            type boolean;
            description
              "Whether delay measurement is two-way (true) of one-
   way (false)";
          }
        }  // container delay-measurement

        leaf frame-size {
          type uint32;
          description "Frame size";
        }

        leaf session-type {
          type enumeration {
            enum "proactive" {
              value 0;
              description "Proactive mode";
            }
            enum "on-demand" {
              value 1;
              description "On demand mode";
            }
          }
          description "Session type";
        }
      }  // list y-1731
    }  // grouping y-1731

    grouping enni-site-info-grouping {
      description
        "Grouping for site information";
      container site-info {
        description
          "Container of site info configurations";
        leaf site-name {
          type string;
          description "Site name";
        }

        leaf address {
          type inet:ip-address;
          description "Address";
        }

        leaf Edge-Gateway-Device-Info {
          type string;
          description
            "Edge Gateway Device Info ";
        }
      }  // container site-info
    }  // grouping enni-site-info-grouping

    grouping acl-grouping {
      description
        "This grouping defines Access Control List.";
      container access-control-list {
        description
          "Container for access control List.";
        list mac {
          key "mac-address";
          description "List for MAC.";
          leaf mac-address {
            type yang:mac-address;
            description "MAC address.";
          }
        }  // list mac
      }  // container access-control-list
    }  // grouping acl-grouping

    grouping lacp-grouping {
      description "Grouping for lacp";
      container lacp {
        description "LACP";
        leaf lacp-state {
          type boolean;
          description "LACP on/off";
        }

        leaf lacp-mode {
          type boolean;
          description "LACP mode";
        }

        leaf lacp-speed {
          type boolean;
          description "LACP speed";
        }

        leaf mini-link {
          type uint32;
          description
            "The minimum aggregate bandwidth for a LAG";
        }

        leaf system-priority {
          type uint16;
          description
            "Indicates the LACP priority for the system.
  The range is from 0 to 65535.
  The default is 32768.";
        }

        container micro-bfd {
          if-feature micro-bfd;
          description
            "Container of Micro-BFD configurations";
          leaf micro-bfd-on-off {
            type enumeration {
              enum "on" {
                value 0;
                description "Micro-bfd on";
              }
              enum "off" {
                value 1;
                description "Micro-bfd off";
              }
            }
            description "Micro BFD ON/OFF";
          }

          leaf bfd-interval {
            type uint32;
            description "BFD interval";
          }

          leaf bfd-hold-timer {
            type uint32;
            description "BFD hold timer";
          }
        }  // container micro-bfd

        container bfd {
          if-feature bfd;
          description "Container for BFD.";
          leaf bfd-enabled {
            type boolean;
            description "BFD activation";
          }

          choice holdtime {
            description
              "Choice for hold time flavor.";
            case profile {
              description
                "Service provider well known profile.";
              leaf profile-name {
                type string;
                description
                  "Service provider well known profile.";
              }
            }  // case profile
            leaf fixed-value {
              type uint32;
              units "msec";
              description
                "Expected hold time expressed in msec.";
            }
          }  // choice holdtime
        }  // container bfd

        container member-link-list {
          description
            "Container of Member link list";
          list member-link {
            key "name";
            description "Member link";
            leaf name {
              type string;
              description "Member link name";
            }

            leaf port-speed {
              type uint32;
              description "Port speed";
            }

            leaf mode {
              type neg-mode;
              description "Negotiation mode";
            }

            leaf link-mtu {
              type uint32;
              description "Link MTU size.";
            }

            container oam-802.3ah-link {
              if-feature oam-3ah;
              description
                "Container for oam 802.3 ah link.";
              leaf enable {
                type boolean;
                description
                  "Indicate whether support oam 802.3 ah link";
              }
            }  // container oam-802.3ah-link
          }  // list member-link
        }  // container member-link-list

        leaf flow-control {
          type string;
          description "Flow control";
        }

        leaf lldp {
          type boolean;
          description "LLDP";
        }
      }  // container lacp
    }  // grouping lacp-grouping

    grouping phy-interface-grouping {
      description
        "Grouping for phy interface.";
      container phy-interface {
        description
          "Container of PHY Interface Attributes configurations";
        leaf port-number {
          type uint32;
          description "Port number";
        }

        leaf port-speed {
          type uint32;
          description "Port speed";
        }

        leaf mode {
          type neg-mode;
          description "Negotiation mode";
        }

        leaf phy-mtu {
          type uint32;
          description "PHY MTU";
        }

        leaf flow-control {
          type string;
          description "Flow control";
        }

        leaf physical-if {
          type string;
          description "Physical interface";
        }

        leaf circuit-id {
          type string;
          description "Circuit ID";
        }

        leaf lldp {
          type boolean;
          description "LLDP";
        }

        container oam-802.3ah-link {
          if-feature oam-3ah;
          description
            "Container for oam 802.3 ah link.";
          leaf enable {
            type boolean;
            description
              "Indicate whether support oam 802.3 ah link";
          }
        }  // container oam-802.3ah-link

        leaf uni-loop-prevention {
          type boolean;
          description
            "If this leaf set to truth that the port automatically
  goes down when a physical loopback is detect.";
        }
      }  // container phy-interface
    }  // grouping phy-interface-grouping

    grouping lag-interface-grouping {
      description
        "Grouping for LAG interface";
      container lag-interface {
        if-feature lag-interface;
        description
          "Container of LAG interface attributes configuration";
        list lag-interface {
          key "lag-interface-number";
          description
            "List of LAG interfaces";
          leaf lag-interface-number {
            type uint32;
            description
              "LAG interface number";
          }

          uses lacp-grouping;
        }  // list lag-interface
      }  // container lag-interface
    }  // grouping lag-interface-grouping

    grouping dot1q-interface-grouping {
      description
        "Grouping for Layer2 access";
      container dot1q-interface {
        description
          "Container for dot1Q Interface";
        leaf l2-access-type {
          type identityref {
            base l2-access-type;
          }
          description
            "L2 Access Encapsulation Type";
        }

        container dot1q {
          when "'../l2-access-type'='dot1q'";
          if-feature dot1q;
          description "Qot1q";
          leaf physical-inf {
            type string;
            description "Physical Interface";
          }

          leaf c-vlan-id {
            type uint32;
            description "VLAN identifier";
          }
        }  // container dot1q

        container sub-inf {
          when
            "'../l2-access-type'='sub-interface'";
          if-feature sub-inf;
          description "sub interface";
          leaf interface-description {
            type string;
            description
              "Interface description";
          }

          leaf sub-if-id {
            type uint32;
            description "Sub interface ID";
          }
        }  // container sub-inf

        container qinq {
          when "'../l2-access-type'='qinq'";
          if-feature qinq;
          description "QinQ";
          leaf s-vlan-id {
            type uint32;
            description "S-VLAN Identifier";
          }

          leaf c-vlan-id {
            type uint32;
            description "C-VLAN Identifier";
          }
        }  // container qinq

        container qinany {
          if-feature qinany;
          description
            "Container for Q in Any";
          leaf s-vlan-id {
            type uint32;
            description "S-Vlan ID";
          }
        }  // container qinany

        container atm {
          when "'../l2-access-type'='atm'";
          if-feature atm;
          description "ATM Cell.";
          leaf vpi {
            type uint32;
            description "VPI Identifier";
          }

          leaf vci {
            type uint32;
            description "VCI Identifier";
          }
        }  // container atm

        container vxlan {
          when "'../l2-access-type'='vxlan'";
          if-feature vxlan;
          description "QinQ";
          leaf vni-id {
            type uint32;
            description "VNI Identifier";
          }

          leaf peer-mode {
            type identityref {
              base vxlan-peer-mode;
            }
            description
              "specify the vxlan access mode";
          }

          list peer-list {
            key "peer-ip";
            description "List for peer IP";
            leaf peer-ip {
              type inet:ip-address;
              description "Peer IP";
            }
          }  // list peer-list
        }  // container vxlan
      }  // container dot1q-interface
    }  // grouping dot1q-interface-grouping

    grouping ethernet-connection-grouping {
      description "Grouping for bearer.";
      container connection {
        description "Container for bearer";
        leaf encapsulation-type {
          type identityref {
            base encapsulation-type;
          }
          description "Encapsulation Type";
        }

        leaf-list eth-inf-type {
          type identityref {
            base eth-inf-type;
          }
          description
            "Ethernet Interface Type";
        }

        uses dot1q-interface-grouping;

        uses phy-interface-grouping;

        uses lag-interface-grouping;

        uses cvlan-svc-map-grouping;

        uses l2cp-grouping;
      }  // container connection
    }  // grouping ethernet-connection-grouping

    grouping svc-mtu-grouping {
      description
        "Grouping for service mtu.";
      leaf svc-mtu {
        type uint32;
        description
          "SVC MTU, it is also known as the maximum transmission unit or
maximum frame size,When a frame is larger than the MTU, it is
broken down, or fragmented, into smaller pieces by the network protocol
to accommodate the MTU of the network";
      }
    }  // grouping svc-mtu-grouping

    grouping svc-preservation-grouping {
      description
        "Grouping for service preservation.";
      leaf ce-vlan-preservation {
        type boolean;
        description
          "Preserve the CE-VLAN ID from ingress to egress,i.e.,
CE-VLAN tag of the egress frame are identical to
those of the ingress frame that yielded this
egress service frame. If All-to-One bundling within a site
is Enabled, then preservation applies to all Ingress service
frames. If All-to-One bundling is Disabled , then preservation
applies to tagged Ingress service frames having CE-VLAN ID 1
through 4094.";
      }

      leaf ce-vlan-cos-perservation {
        type boolean;
        description
          "CE vlan CoS preservation. PCP bits in the CE-VLAN tag of the egress
frame are identical to those of the ingress frame that yielded this
egress service frame.

";
      }
    }  // grouping svc-preservation-grouping

    grouping mac-addr-limit-grouping {
      description
        "Grouping for mac address limit";
      container mac-addr-limit {
        description
          "Container of MAC-Addr limit configurations";
        leaf mac-num-limit {
          type uint16;
          description
            "maximum number of MAC addresses learned from
the subscriber for a single service instance.";
        }

        leaf time-interval {
          type uint32;
          units "milliseconds";
          description
            "The aging time of the mac address.";
        }

        leaf action {
          type identityref {
            base mac-action;
          }
          description
            "specify the action when the upper limit is
exceeded: drop the packet, flood the
packet, or simply send a warning log message.";
        }
      }  // container mac-addr-limit
    }  // grouping mac-addr-limit-grouping

    grouping availability-grouping {
      description
        "Grouping for availability";
      container availability {
        description
          "Container of availability optional configurations";
        leaf access-priority {
          type uint32;
          description "Access priority";
        }

        choice redundancy-mode {
          description
            "Redundancy mode choice";
          case single-active {
            description "Single active case";
            leaf single-active {
              type boolean;
              description "Single active";
            }
          }  // case single-active

          case all-active {
            description "All active case";
            leaf all-active {
              type boolean;
              description "All active";
            }
          }  // case all-active
        }  // choice redundancy-mode
      }  // container availability
    }  // grouping availability-grouping

    grouping l2cp-grouping {
      description
        "Grouping for l2cp control";
      container l2cp-control {
        if-feature L2CP-control;
        description
          "Container of L2CP control configurations";
        leaf stp-rstp-mstp {
          type control-mode;
          description
            "STP/RSTP/MSTP protocol type applicable to all UNIs";
        }

        leaf pause {
          type control-mode;
          description
            "Pause protocol type applicable to all UNIs";
        }

        leaf lacp-lamp {
          type control-mode;
          description "LACP/LAMP  ";
        }

        leaf link-oam {
          type control-mode;
          description "Link OAM";
        }

        leaf esmc {
          type control-mode;
          description "ESMC";
        }

        leaf l2cp-802.1x {
          type control-mode;
          description "802.x";
        }

        leaf e-lmi {
          type control-mode;
          description "E-LMI";
        }

        leaf lldp {
          type boolean;
          description
            "LLDP protocol type applicable to all UNIs";
        }

        leaf ptp-peer-delay {
          type control-mode;
          description "PTP peer delay";
        }

        leaf garp-mrp {
          type control-mode;
          description "GARP/MRP";
        }
      }  // container l2cp-control
    }  // grouping l2cp-grouping

    grouping B-U-M-grouping {
      description
        "Grouping for broadcast, unknown unicast, and multicast ";
      container broadcast-unknown-unicast-multicast {
        description
          "Container of broadcast, unknown unicast, and multicast configurations";
        leaf multicast-site-type {
          type enumeration {
            enum "receiver-only" {
              value 0;
              description
                "The site only has receivers.";
            }
            enum "source-only" {
              value 1;
              description
                "The site only has sources.";
            }
            enum "source-receiver" {
              value 2;
              description
                "The site has both sources and receivers.";
            }
          }
          default "source-receiver";
          description
            "Type of multicast site.";
        }

        list multicast-gp-address-mapping {
          key "id";
          description
            "List of Port to group mappings.";
          leaf id {
            type uint16;
            description
              "Unique identifier for the mapping.";
          }

          leaf vlan-id {
            type uint32;
            description
              "the VLAN ID of the Multicast group";
          }

          leaf mac-gp-address {
            type yang:mac-address;
            description
              "the MAC address of the Multicast group";
          }

          leaf port-lag-number {
            type uint32;
            description
              "the ports/LAGs belonging to the Multicast group";
          }
        }  // list multicast-gp-address-mapping

        leaf bum-overall-rate {
          type uint32;
          description "overall rate for BUM";
        }

        list bum-rate-per-type {
          key "type";
          description
            "List of rate per type";
          leaf type {
            type identityref {
              base bum-type;
            }
            description "BUM type";
          }

          leaf rate {
            type uint32;
            description "rate for BUM";
          }
        }  // list bum-rate-per-type
      }  // container broadcast-unknown-unicast-multicast
    }  // grouping B-U-M-grouping

    grouping mac-loop-prevention-grouping {
      description
        "Grouping for MAC loop prevention";
      container mac-loop-prevention {
        description
          "Container of MAC loop prevention.";
        leaf frequency {
          type uint32;
          description "Frequency";
        }

        leaf protection-type {
          type identityref {
            base loop-prevention-type;
          }
          description "Protection type";
        }

        leaf number-retries {
          type uint32;
          description "Number of retries";
        }
      }  // container mac-loop-prevention
    }  // grouping mac-loop-prevention-grouping

    grouping ethernet-svc-oam-grouping {
      description
        "Grouping for Ethernet service OAM.";
      container ethernet-service-oam {
        description
          "Container for Ethernet service OAM.";
        leaf md-name {
          type string;
          description
            "Maintenance domain name";
        }

        leaf md-level {
          type uint8;
          description
            "Maintenance domain level";
        }

        container cfm-802.1-ag {
          description
            "Container of 802.1ag CFM configurations.";
          list n2-uni-c {
            key "maid";
            description
              "List of UNI-N to UNI-C";
            uses cfm-802-grouping;
          }  // list n2-uni-c

          list n2-uni-n {
            key "maid";
            description
              "List of UNI-N to UNI-N";
            uses cfm-802-grouping;
          }  // list n2-uni-n
        }  // container cfm-802.1-ag

        uses y-1731;
      }  // container ethernet-service-oam
    }  // grouping ethernet-svc-oam-grouping

    grouping fate-sharing-group {
      description
        "Grouping for Fate sharing group.";
      container groups {
        description
          "Groups the fate sharing group member
is belonging to";
        leaf fate-sharing-group-size {
          type uint16;
          description
            "Fate sharing group size.";
        }

        leaf group-color {
          type string;
          description
            "Group color associated with a particular VPN.";
        }

        list group {
          key "group-id";
          description "List of group-id";
          leaf group-id {
            type string;
            description
              "Group-id the site network access
   is belonging to";
          }
        }  // list group
      }  // container groups
    }  // grouping fate-sharing-group

    grouping site-group {
      description
        "Grouping definition to assign
group-ids to site or site-network-access";
      container groups {
        description
          "Groups the site or site-network-access
is belonging to.";
        list group {
          key "group-id";
          description "List of group-id";
          leaf group-id {
            type string;
            description
              "Group-id the site is belonging to";
          }
        }  // list group
      }  // container groups
    }  // grouping site-group

    grouping access-diversity {
      description
        "This grouping defines access diversity
parameters";
      container access-diversity {
        if-feature site-diversity;
        description "Diversity parameters.";
        uses fate-sharing-group;

        container constraints {
          description
            "Constraints for placing this site
   network access";
          list constraint {
            key "constraint-type";
            description
              "List of constraints";
            leaf constraint-type {
              type identityref {
                base placement-diversity;
              }
              description
                "Diversity constraint type.";
            }

            container target {
              description
                "The constraint will apply against
  this list of groups";
              choice target-flavor {
                description
                  "Choice for the group definition";
                list group {
                  key "group-id";
                  description
                    "List of groups";
                  leaf group-id {
                    type string;
                    description
                      "The constraint will apply
     against this particular
     group-id";
                  }
                }  // list group
                leaf all-other-accesses {
                  type empty;
                  description
                    "The constraint will apply
  against all other site network
  access of this site";
                }
                leaf all-other-groups {
                  type empty;
                  description
                    "The constraint will apply
   against all other groups the
   customer is managing";
                }
              }  // choice target-flavor
            }  // container target
          }  // list constraint
        }  // container constraints
      }  // container access-diversity
    }  // grouping access-diversity

    grouping request-type-profile-grouping {
      description
        "Grouping for request type profile";
      container request-type-profile {
        description
          "Container for request type profile.";
        choice request-type-choice {
          description
            "Choice for request type";
          case dot1q-case {
            description "Case for dot1q";
            container dot1q {
              description
                "Container for dot1q.";
              leaf physical-if {
                type string;
                description
                  "Physical interface";
              }

              leaf vlan-id {
                type uint16;
                description "VLAN ID";
              }
            }  // container dot1q
          }  // case dot1q-case

          case physical-case {
            description "Physical case";
            leaf physical-if {
              type string;
              description
                "Physical interface";
            }

            leaf circuit-id {
              type string;
              description "Circuit ID";
            }
          }  // case physical-case
        }  // choice request-type-choice
      }  // container request-type-profile
    }  // grouping request-type-profile-grouping

    grouping site-attachment-bearer {
      description
        "Grouping to define physical properties of
a site attachment.";
      container bearer {
        description
          "Bearer specific parameters.
To be augmented.";
        container requested-type {
          if-feature requested-type;
          description
            "Container for requested type.";
          leaf requested-type {
            type string;
            description
              "Type of requested bearer Ethernet, ATM, Frame
   Relay, IP Layer 2 Transport, Frame Relay DLCI,
   SONET/SDH,PPP.";
          }

          leaf strict {
            type boolean;
            default 'false';
            description
              "Define if the requested-type is a preference
   or a strict requirement.";
          }
        }  // container requested-type

        leaf always-on {
          if-feature always-on;
          type boolean;
          default 'true';
          description
            "Request for an always on access type.
  This means no Dial access type for
  example.";
        }

        leaf bearer-reference {
          if-feature bearer-reference;
          type string;
          description
            "This is an internal reference for the
  service provider.";
        }
      }  // container bearer
    }  // grouping site-attachment-bearer

    grouping vpn-attachment-grouping {
      description
        "Grouping for access attachment";
      container vpn-attachment {
        description
          "Defines VPN attachment of a site.";
        leaf device-id {
          type string;
          description "Device ID";
        }

        container management {
          description
            "Management configuration..";
          leaf address-family {
            type identityref {
              base address-family;
            }
            description
              "Address family used for management.";
          }

          leaf address {
            type inet:ip-address;
            description "Management address";
          }
        }  // container management

        choice attachment-flavor {
          mandatory true;
          description
            "Choice for VPN attachment flavor.";
          list vpn-flavor {
            key "vpn-id";
            description
              "List of IPVPNs attached by the Site Network Access";
            leaf vpn-id {
              type leafref {
                path
                  "/l2vpn-svc/vpn-services"
                    + "/vpn-svc/vpn-id";
              }
              description
                "Reference to a VPN.";
            }

            leaf site-role {
              type identityref {
                base site-role;
              }
              default 'any-to-any-role';
              description
                "Role of the site in the IPVPN.";
            }
          }  // list vpn-flavor
          leaf vpn-policy-id {
            type leafref {
              path
                "/l2vpn-svc/sites/site/vpn-policies/vpn-policy/vpn-policy-id";
            }
            description
              "Reference to a vpn policy";
          }
        }  // choice attachment-flavor
      }  // container vpn-attachment
    }  // grouping vpn-attachment-grouping

    grouping site-service-basic {
      description
        "Grouping for site service";
      container svc-input-bandwidth {
        if-feature input-bw;
        description
          "From the PE perspective, the service input
bandwidth of the connection.";
        list input-bandwidth {
          key "type";
          description
            "List for input bandwidth";
          leaf type {
            type identityref {
              base bw-type;
            }
            description "Bandwidth Type";
          }

          leaf cos-id {
            type uint8;
            description
              "Identifier of Class of Service
 , indicated by DSCP or a CE-CLAN
 CoS(802.1p)value in the service frame.";
          }

          leaf vpn-id {
            type svc-id;
            description
              "Identifies the target VPN.";
          }

          leaf cir {
            type uint64;
            description
              "Committed Information Rate. The maximum number of
  bits that a port can receive or send during
  one-second over an interface.";
          }

          leaf cbs {
            type uint64;
            description
              "Committed Burst Size.CBS controls the bursty nature
 of the traffic. Traffic that does not use the configured
 CIR accumulates credits until the credits reach the
 configured CBS.";
          }

          leaf eir {
            type uint64;
            description
              "Excess Information Rate,i.e.,Excess frame delivery
   allowed not subject to SLA.The traffic rate can be
   limited by eir.";
          }

          leaf ebs {
            type uint64;
            description
              "Excess Burst Size. The bandwidth available for burst
  traffic from the EBS is subject to the amount of bandwidth
  that is accumulated during periods when traffic allocated
  by the EIR policy is not used.";
          }

          leaf pir {
            type uint64;
            description
              "Peak Information Rate, i.e., maixmum frame delivery allowed.
   It is equal to or less than sum of cir and eir.";
          }

          leaf pbs {
            type uint64;
            description
              "Peak Burst Size. It is measured in bytes per second.";
          }
        }  // list input-bandwidth
      }  // container svc-input-bandwidth

      container svc-output-bandwidth {
        if-feature output-bw;
        description
          "From the PE perspective, the service output
bandwidth of the connection.";
        list output-bandwidth {
          key "type";
          description
            "List for output bandwidth";
          leaf type {
            type identityref {
              base bw-type;
            }
            description "Bandwidth Type";
          }

          leaf cos-id {
            type uint8;
            description
              "Identifier of Class of Service
 , indicated by DSCP or a CE-CLAN
 CoS(802.1p)value in the service frame.";
          }

          leaf vpn-id {
            type svc-id;
            description
              "Identifies the target VPN.";
          }

          leaf cir {
            type uint64;
            description
              "Committed Information Rate. The maximum number of
  bits that a port can receive or send during
  one-second over an interface.";
          }

          leaf cbs {
            type uint64;
            description
              "Committed Burst Size.CBS controls the bursty nature
 of the traffic. Traffic that does not use the configured
 CIR accumulates credits until the credits reach the
 configured CBS.";
          }

          leaf eir {
            type uint64;
            description
              "Excess Information Rate,i.e.,Excess frame delivery
   allowed not subject to SLA.The traffic rate can be
   limited by eir.";
          }

          leaf ebs {
            type uint64;
            description
              "Excess Burst Size. The bandwidth available for burst
  traffic from the EBS is subject to the amount of bandwidth
  that is accumulated during periods when traffic allocated
  by the EIR policy is not used.";
          }

          leaf pir {
            type uint64;
            description
              "Peak Information Rate, i.e., maixmum frame delivery allowed.
   It is equal to or less than sum of cir and eir.";
          }

          leaf pbs {
            type uint64;
            description
              "Peak Burst Size. It is measured in bytes per second.";
          }
        }  // list output-bandwidth
      }  // container svc-output-bandwidth
    }  // grouping site-service-basic

    grouping flow-definition {
      description
        "Flow definition based on criteria.";
      container match-flow {
        description
          "Describe flow matching criteria.";
        leaf dscp {
          type inet:dscp;
          description "DSCP value.";
        }

        leaf dot1q {
          type uint32;
          description
            "802.1q matching. It is VLAN Tag added into frame.";
        }

        leaf pcp {
          type uint8 {
            range "0 .. 7";
          }
          description "PCP value";
        }

        leaf src-mac {
          type yang:mac-address;
          description "Source MAC";
        }

        leaf dst-mac {
          type yang:mac-address;
          description "Destination MAC";
        }

        leaf color-type {
          type identityref {
            base color-type;
          }
          description "Color Types";
        }

        leaf-list target-sites {
          type svc-id;
          description
            "Identify a site as traffic destination.";
        }

        leaf any {
          type empty;
          description "Allow all.";
        }

        leaf vpn-id {
          type svc-id;
          description
            "Reference to the target VPN.";
        }
      }  // container match-flow
    }  // grouping flow-definition

    grouping site-service-qos-profile {
      description
        "This grouping defines QoS parameters
for a site";
      container qos {
        if-feature qos;
        description "QoS configuration.";
        container qos-classification-policy {
          description
            "Need to express marking rules ...";
          list rule {
            key "id";
            ordered-by user;
            description
              "List of marking rules.";
            leaf id {
              type uint16;
              description "ID of the rule.";
            }

            choice match-type {
              description
                "Choice for classification";
              case match-flow {
                uses flow-definition;
              }  // case match-flow
              leaf match-phy-port {
                type uint16;
                description
                  "Defines the physical port
   to match.";
              }
              leaf match-application {
                type identityref {
                  base customer-application;
                }
                description
                  "Defines the application to match.";
              }
            }  // choice match-type

            leaf target-class-id {
              type string;
              description
                "Identification of the class of service.
   This identifier is internal to the
   administration.";
            }
          }  // list rule
        }  // container qos-classification-policy

        container qos-profile {
          description
            "Qos profile configuration.";
          choice qos-profile {
            description
              "Choice for QoS profile.
   Can be standard profile or custom.";
            leaf profile {
              type string;
              description
                "QoS Profile to be used";
            }
            container classes {
              if-feature qos-custom;
              description
                "Container for list of class of services.";
              list class {
                key "class-id";
                description
                  "List of class of services.";
                leaf class-id {
                  type string;
                  description
                    "Identification of the class of
   service. This identifier is internal
   to the administration.";
                }

                leaf direction {
                  type identityref {
                    base qos-profile-direction;
                  }
                  default 'bidirection';
                  description
                    "The direction which QoS profile is applied to";
                }

                leaf policing {
                  type identityref {
                    base policing;
                  }
                  description
                    "The policing can be either one-rate,
  two-color (1R2C) or two-rate, three-color
  (2R3C)";
                }

                leaf byte-offset {
                  type uint16;
                  description
                    "For not including extra VLAN tags in the QoS
  calculation";
                }

                container frame-delay {
                  description
                    "Delay constraint on the traffic
  class";
                  choice flavor {
                    description
                      "Delay constraint on the traffic
   class";
                    leaf use-low-del {
                      type empty;
                      description
                        "The traffic class should use
   the lowest delay path";
                    }
                    leaf delay-bound {
                      type uint16;
                      units "msec";
                      description
                        "The traffic class should use
   a path with a defined maximum
   delay.";
                    }
                  }  // choice flavor
                }  // container frame-delay

                container frame-jitter {
                  description
                    "Jitter constraint on the traffic
   class";
                  choice flavor {
                    description
                      "Jitter constraint on the traffic
    class";
                    leaf use-low-jit {
                      type empty;
                      description
                        "The traffic class should use
    the lowest jitter path";
                    }
                    leaf delay-bound {
                      type uint32;
                      units "usec";
                      description
                        "The traffic class should use
   a path with a defined maximum
   jitter.";
                    }
                  }  // choice flavor
                }  // container frame-jitter

                container frame-loss {
                  description
                    "Container for frame loss";
                  leaf fr-loss-rate {
                    type decimal64 {
                      fraction-digits 2;
                    }
                    description
                      "Loss constraint on the traffic class";
                  }
                }  // container frame-loss

                container bandwidth {
                  description
                    "Bandwidth constraint on the traffic class.";
                  leaf guaranteed-bw-percent {
                    type uint8;
                    units "percent";
                    description
                      "To be used to define the guaranteed bandwidth

  as a percentage of the available service
  bandwidth.";
                  }

                  leaf end-to-end {
                    type empty;
                    description
                      "Used if the bandwidth reservation
    must be done on the MPLS network too.";
                  }
                }  // container bandwidth
              }  // list class
            }  // container classes
          }  // choice qos-profile
        }  // container qos-profile
      }  // container qos
    }  // grouping site-service-qos-profile

    grouping services-grouping {
      description "Grouping for Services";
      container service {
        description "Container for service";
        uses site-service-qos-profile;
      }  // container service
    }  // grouping services-grouping

    grouping service-grouping {
      description "Grouping for service.";
      container service {
        description "Container for service";
        uses site-service-basic;

        uses site-service-qos-profile;
      }  // container service
    }  // grouping service-grouping

    grouping vpn-profile-cfg {
      description
        "Grouping for VPN Profile configuration.";
      container valid-provider-identifiers {
        nacm:default-deny-write;
        description
          "Container for Valid Provider Identifies.";
        list cloud-identifier {
          if-feature cloud-access;
          key "id";
          description
            "List for Cloud Identifiers.";
          leaf id {
            type string;
            description
              "Identification of cloud service.
   Local administration meaning.";
          }
        }  // list cloud-identifier

        list qos-profile-identifier {
          key "id";
          description
            "List for QoS Profile Identifiers.";
          leaf id {
            type string;
            description
              "Identification of the QoS Profile to be used.
   Local administration meaning.";
          }
        }  // list qos-profile-identifier
      }  // container valid-provider-identifiers
    }  // grouping vpn-profile-cfg

    container l2vpn-svc {
      description
        "Container for L2VPN service";
      container vpn-profiles {
        description
          "Container for VPN Profiles.";
        uses vpn-profile-cfg;
      }  // container vpn-profiles

      container vpn-services {
        description
          "Container for VPN services.";
        list vpn-svc {
          key "vpn-id";
          description "List of vpn-svc";
          leaf vpn-id {
            type svc-id;
            description
              "Defining a service id.";
          }

          leaf vpn-svc-type {
            type identityref {
              base service-type;
            }
            description "Service type";
          }

          leaf customer-name {
            type string;
            description "Customer name";
          }

          leaf svc-topo {
            type identityref {
              base vpn-topology;
            }
            description
              "Defining service topology, such as
 any-to-any,hub-spoke, etc.";
          }

          uses vpn-service-cloud-access;

          uses site-service;

          uses vpn-service-multicast;

          uses vpn-extranet;

          uses svc-mtu-grouping;

          uses svc-preservation-grouping;
        }  // list vpn-svc
      }  // container vpn-services

      container sites {
        description
          "Container of site configurations";
        list site {
          key "site-id site-type";
          description "List of sites";
          leaf site-id {
            type string;
            description "Site id";
          }

          leaf site-type {
            type identityref {
              base site-type;
            }
            description "Site type";
          }

          uses site-device;

          uses customer-location-info;

          uses site-management;

          uses site-diversity;

          uses site-vpn-policy;

          container signaling-options {
            if-feature signaling-options;
            description
              "Container for signaling option";
            uses signaling-options-grouping;
          }  // container signaling-options

          uses services-grouping;

          uses B-U-M-grouping;

          uses mac-loop-prevention-grouping;

          uses acl-grouping;

          uses operational-requirements-ops;

          container site-network-accesses {
            description
              "Container of port configurations";
            list site-network-access {
              key "network-access-id";
              description
                "List of Site Network Accesses.";
              leaf network-access-id {
                type string;
                description
                  "Identifier of network access";
              }

              leaf remote-carrier-name {
                when
                  "'../site-type' = 'enni'" {
                  description
                    "Site type = enni";
                }
                type string;
                description
                  "Remote carrier name";
              }

              uses access-diversity;

              uses site-attachment-bearer;

              uses ethernet-connection-grouping;

              uses availability-grouping;

              uses vpn-attachment-grouping;

              uses service-grouping;

              uses B-U-M-grouping;

              uses ethernet-svc-oam-grouping;

              uses mac-loop-prevention-grouping;

              uses acl-grouping;

              uses mac-addr-limit-grouping;
            }  // list site-network-access
          }  // container site-network-accesses
        }  // list site
      }  // container sites
    }  // container l2vpn-svc
  }  // module ietf-l2vpn-svc

Summary

  
  
Organization IETF L2SM Working Group.
  
Module ietf-l2vpn-svc
Version 2017-10-13
File ietf-l2vpn-svc@2017-10-13.yang
  
Prefix l2vpn-svc
Namespace urn:ietf:params:xml:ns:yang:ietf-l2vpn-svc
  
Cooked /cookedmodules/ietf-l2vpn-svc/2017-10-13
YANG /src/ietf-l2vpn-svc@2017-10-13.yang
XSD /xsd/ietf-l2vpn-svc@2017-10-13.xsd
  
Abstract The YANG module defines a generic service configuration model for Layer 2 VPN services common across all of the vendor implement...
  
Contact
WG List: l2sm@ietf.org
Editor: giuseppe.fioccola@telecomitalia.it

Description

 
The YANG module defines a generic service configuration
model for Layer 2 VPN services common across all of the
vendor implementations.

Typedefs

Typedef Base type Abstract
ccm-priority-type uint8 A 3 bit priority value to be used in the VLAN tag, if present in the transmitted frame.
control-mode enumeration Defining a type of the control mode on L2CP protocols.
neg-mode enumeration Defining a type of the negotiation mode
svc-id string Defines a type of service component identifier.

Groupings

Grouping Objects Abstract
access-diversity access-diversity This grouping defines access diversity parameters
acl-grouping access-control-list This grouping defines Access Control List.
availability-grouping availability Grouping for availability
B-U-M-grouping broadcast-unknown-unicast-multicast Grouping for broadcast, unknown unicast, and multicast
bum-frame-delivery bum-frame-delivery-modes Grouping for unicast, mulitcast, broadcast frame delivery
cfm-802-grouping maid mep-id mep-level mep-up-down remote-mep-id cos-for-cfm-pdus ccm-interval ccm-holdtime alarm-priority-defect ccm-p-bits-pri Grouping for 802.1ag CFM attribute
customer-location-info locations This grouping defines customer location parameters
cvlan-svc-map-grouping cvlan-id-to-svc-map Grouping for cvlan to L2VPN service mapping
dot1q-interface-grouping dot1q-interface Grouping for Layer2 access
enni-site-info-grouping site-info Grouping for site information
ethernet-connection-grouping connection Grouping for bearer.
ethernet-svc-oam-grouping ethernet-service-oam Grouping for Ethernet service OAM.
fate-sharing-group groups Grouping for Fate sharing group.
flow-definition match-flow Flow definition based on criteria.
l2cp-grouping l2cp-control Grouping for l2cp control
lacp-grouping lacp Grouping for lacp
lag-interface-grouping lag-interface Grouping for LAG interface
mac-addr-limit-grouping mac-addr-limit Grouping for mac address limit
mac-loop-prevention-grouping mac-loop-prevention Grouping for MAC loop prevention
operational-requirements-ops actual-site-start actual-site-stop bundling-type default-ce-vlan-id This grouping defines some operational parameters parameters
phy-interface-grouping phy-interface Grouping for phy interface.
request-type-profile-grouping request-type-profile Grouping for request type profile
service-grouping service Grouping for service.
services-grouping service Grouping for Services
signaling-options-grouping signaling-options Grouping for signaling option
site-attachment-bearer bearer Grouping to define physical properties of a site attachment.
site-device device Device parameters for the site.
site-diversity site-diversity This grouping defines site diversity parameters
site-group groups Grouping definition to assign group-ids to site or site-network-access
site-management management Grouping for management
site-service This grouping defines site service parameters
site-service-basic svc-input-bandwidth svc-output-bandwidth Grouping for site service
site-service-qos-profile qos This grouping defines QoS parameters for a site
site-vpn-policy vpn-policies VPN policy parameters for the site.
svc-mtu-grouping svc-mtu Grouping for service mtu.
svc-preservation-grouping ce-vlan-preservation ce-vlan-cos-perservation Grouping for service preservation.
vpn-attachment-grouping vpn-attachment Grouping for access attachment
vpn-extranet extranet-vpns Grouping for extranet VPN configuration. This provides an easy way to interconnect all sites from two VPNs.
vpn-profile-cfg valid-provider-identifiers Grouping for VPN Profile configuration.
vpn-service-cloud-access cloud-accesses Grouping for vpn cloud definition
vpn-service-multicast multicast-like Grouping for multicast VPN definition.
y-1731 y-1731 Grouping for y.1731

Objects

Type Key
Mandatory config
Optional config
Not config
Object Type Abstract
l2vpn-svc container Container for L2VPN service
   sites container Container of site configurations
      site list List of sites
         access-control-list container Container for access control List.
            mac list List for MAC.
               mac-address leaf MAC address.
         actual-site-start leaf Optional leaf indicating actual date and time when the service at a particular site actually started
         actual-site-stop leaf Optional leaf indicating actual date and time when the service at a particular site actually stopped
         broadcast-unknown-unicast-multicast container Container of broadcast, unknown unicast, and multicast configurations
            bum-overall-rate leaf overall rate for BUM
            bum-rate-per-type list List of rate per type
               rate leaf rate for BUM
               type leaf BUM type
            multicast-gp-address-mapping list List of Port to group mappings.
               id leaf Unique identifier for the mapping.
               mac-gp-address leaf the MAC address of the Multicast group
               port-lag-number leaf the ports/LAGs belonging to the Multicast group
               vlan-id leaf the VLAN ID of the Multicast group
            multicast-site-type leaf Type of multicast site.
         bundling-type leaf Bundling type
         default-ce-vlan-id leaf Default CE VLAN ID set at site level.
         device container Devices configuration
            devices list List of devices
               device-id leaf Device ID
               location leaf Site name
               management container Container for management
                  address leaf Address
                  management-transport leaf Transport protocol used for management.
         locations container Location of the site.
            location list List for location
               address leaf Address (number and street) of the site.
               city leaf City of the site.
               country-code leaf Country of the site.
               location-id leaf Location ID
               state leaf State of the site. This leaf can also be used to describe a region for country who does not have states.
               zip-code leaf ZIP code of the site.
         mac-loop-prevention container Container of MAC loop prevention.
            frequency leaf Frequency
            number-retries leaf Number of retries
            protection-type leaf Protection type
         management container Container for management
            type leaf Management type of the connection.
         service container Container for service
            qos container QoS configuration.
               qos-classification-policy container Need to express marking rules ...
                  rule list List of marking rules.
                     id leaf ID of the rule.
                     match-type choice Choice for classification
                        match-application case match-application
                           match-application leaf Defines the application to match.
                        match-flow case match-flow
                           match-flow container Describe flow matching criteria.
                              any leaf Allow all.
                              color-type leaf Color Types
                              dot1q leaf 802.1q matching. It is VLAN Tag added into frame.
                              dscp leaf DSCP value.
                              dst-mac leaf Destination MAC
                              pcp leaf PCP value
                              src-mac leaf Source MAC
                              target-sites leaf-list Identify a site as traffic destination.
                              vpn-id leaf Reference to the target VPN.
                        match-phy-port case match-phy-port
                           match-phy-port leaf Defines the physical port to match.
                     target-class-id leaf Identification of the class of service. This identifier is internal to the administration.
               qos-profile container Qos profile configuration.
                  qos-profile choice Choice for QoS profile. Can be standard profile or custom.
                     custom case classes
                        classes container Container for list of class of services.
                           class list List of class of services.
                              bandwidth container Bandwidth constraint on the traffic class.
                                 end-to-end leaf Used if the bandwidth reservation must be done on the MPLS network too.
                                 guaranteed-bw-percent leaf To be used to define the guaranteed bandwidth as a percentage of the available service bandwidth.
                              byte-offset leaf For not including extra VLAN tags in the QoS calculation
                              class-id leaf Identification of the class of service. This identifier is internal to the administration.
                              direction leaf The direction which QoS profile is applied to
                              frame-delay container Delay constraint on the traffic class
                                 flavor choice Delay constraint on the traffic class
                                    boundary case delay-bound
                                       delay-bound leaf The traffic class should use a path with a defined maximum delay.
                                    lowest case use-low-del
                                       use-low-del leaf The traffic class should use the lowest delay path
                              frame-jitter container Jitter constraint on the traffic class
                                 flavor choice Jitter constraint on the traffic class
                                    boundary case delay-bound
                                       delay-bound leaf The traffic class should use a path with a defined maximum jitter.
                                    lowest case use-low-jit
                                       use-low-jit leaf The traffic class should use the lowest jitter path
                              frame-loss container Container for frame loss
                                 fr-loss-rate leaf Loss constraint on the traffic class
                              policing leaf The policing can be either one-rate, two-color (1R2C) or two-rate, three-color (2R3C)
                     standard case profile
                        profile leaf QoS Profile to be used
         signaling-options container Container for signaling option
            signaling-options list List of VPN Signaling Option.
               evpn-bgp container Container for MP BGP L2VPN
                  address-family leaf Address family used for management.
                  arp-suppress leaf Indicates whether to suppress ARP broadcast.
                  mac-learning-mode leaf Indicates through which plane MAC addresses are advertised.
                  type leaf L2VPN types
                  vpn-id leaf Identifies the target EVPN
               l2tp-pwe container Container for l2tp pw
                  ac-pw-list list List of AC and PW bindings.
                     peer-addr leaf Peer IP address.
                     pw-priority leaf PW priority
                     pw-type leaf PW topology type
                     vc-id leaf VC lable used to identify PW.
                  control-word leaf Control word configurations
                  encapsulation-type leaf Encapsulation type
                  type leaf T-LDP PWE type
               l2vpn-bgp container Container for MP BGP L2VPN
                  address-family leaf Address family used for management.
                  pwe-encapsulation-type leaf PWE Encapsulation Type
                  pwe-mtu container Container of PWE MTU configurations
                     allow-mtu-mismatch leaf Allow MTU mismatch
                  type leaf L2VPN types
                  vpn-id leaf Identifies the target VPN
               t-ldp-pwe container Container of T-LDP PWE configurations
                  ac-pw-list list List of AC and PW bindings.
                     peer-addr leaf Peer IP address.
                     pw-priority leaf Defines the priority for the PW. The higher the pw-priority value, the higher the preference of the PW will be.
                     pw-type leaf PW topology type
                     vc-id leaf VC lable used to identify PW.
                  control-word leaf Control word configurations
                  provision-mode leaf provision-models. It support Double-Sided Provisioning model or single-side provisioning model.
                  pwe-encapsulation-type leaf PWE Encapsulation Type.
                  pwe-mtu container Container of PWE MTU configurations
                     allow-mtu-mismatch leaf Allow MTU mismatch
                  qinq container Container for QinQ
                     c-tag leaf C-TAG
                     s-tag leaf S-TAG
                  type leaf T-LDP PWE type
               type leaf VPN signaling types
         site-diversity container Diversity constraint type.
            groups container Groups the site is belonging to. All site network accesses will inherit those group values.
               group list List of group-id
                  group-id leaf Group-id the site is belonging to
         site-id leaf Site id
         site-network-accesses container Container of port configurations
            site-network-access list List of Site Network Accesses.
               access-control-list container Container for access control List.
                  mac list List for MAC.
                     mac-address leaf MAC address.
               access-diversity container Diversity parameters.
                  constraints container Constraints for placing this site network access
                     constraint list List of constraints
                        constraint-type leaf Diversity constraint type.
                        target container The constraint will apply against this list of groups
                           target-flavor choice Choice for the group definition
                              all-accesses case all-other-accesses
                                 all-other-accesses leaf The constraint will apply against all other site network access of this site
                              all-groups case all-other-groups
                                 all-other-groups leaf The constraint will apply against all other groups the customer is managing
                              id case group
                                 group list List of groups
                                    group-id leaf The constraint will apply against this particular group-id
                  groups container Groups the fate sharing group member is belonging to
                     fate-sharing-group-size leaf Fate sharing group size.
                     group list List of group-id
                     group-color leaf Group color associated with a particular VPN.
                        group-id leaf Group-id the site network access is belonging to
               availability container Container of availability optional configurations
                  access-priority leaf Access priority
                  redundancy-mode choice Redundancy mode choice
                     all-active case All active case
                        all-active leaf All active
                     single-active case Single active case
                        single-active leaf Single active
               bearer container Bearer specific parameters. To be augmented.
                  always-on leaf Request for an always on access type. This means no Dial access type for example.
                  bearer-reference leaf This is an internal reference for the service provider.
                  requested-type container Container for requested type.
                     requested-type leaf Type of requested bearer Ethernet, ATM, Frame Relay, IP Layer 2 Transport, Frame Relay DLCI, SONET/SDH,PPP.
                     strict leaf Define if the requested-type is a preference or a strict requirement.
               broadcast-unknown-unicast-multicast container Container of broadcast, unknown unicast, and multicast configurations
                  bum-overall-rate leaf overall rate for BUM
                  bum-rate-per-type list List of rate per type
                     rate leaf rate for BUM
                     type leaf BUM type
                  multicast-gp-address-mapping list List of Port to group mappings.
                     id leaf Unique identifier for the mapping.
                     mac-gp-address leaf the MAC address of the Multicast group
                     port-lag-number leaf the ports/LAGs belonging to the Multicast group
                     vlan-id leaf the VLAN ID of the Multicast group
                  multicast-site-type leaf Type of multicast site.
               connection container Container for bearer
                  cvlan-id-to-svc-map list List for cvlan-id to L2VPn Service map configurations
                     cvlan-id list List of CVLAN-ID to SVC Map configurations
                        vid leaf CVLAN ID
                     svc-id leaf VPN Service identifier
                  dot1q-interface container Container for dot1Q Interface
                     atm container ATM Cell.
                        vci leaf VCI Identifier
                        vpi leaf VPI Identifier
                     dot1q container Qot1q
                        c-vlan-id leaf VLAN identifier
                        physical-inf leaf Physical Interface
                     l2-access-type leaf L2 Access Encapsulation Type
                     qinany container Container for Q in Any
                        s-vlan-id leaf S-Vlan ID
                     qinq container QinQ
                        c-vlan-id leaf C-VLAN Identifier
                        s-vlan-id leaf S-VLAN Identifier
                     sub-inf container sub interface
                        interface-description leaf Interface description
                        sub-if-id leaf Sub interface ID
                     vxlan container QinQ
                        peer-list list List for peer IP
                           peer-ip leaf Peer IP
                        peer-mode leaf specify the vxlan access mode
                        vni-id leaf VNI Identifier
                  encapsulation-type leaf Encapsulation Type
                  eth-inf-type leaf-list Ethernet Interface Type
                  l2cp-control container Container of L2CP control configurations
                     e-lmi leaf E-LMI
                     esmc leaf ESMC
                     garp-mrp leaf GARP/MRP
                     l2cp-802.1x leaf 802.x
                     lacp-lamp leaf LACP/LAMP
                     link-oam leaf Link OAM
                     lldp leaf LLDP protocol type applicable to all UNIs
                     pause leaf Pause protocol type applicable to all UNIs
                     ptp-peer-delay leaf PTP peer delay
                     stp-rstp-mstp leaf STP/RSTP/MSTP protocol type applicable to all UNIs
                  lag-interface container Container of LAG interface attributes configuration
                     lag-interface list List of LAG interfaces
                        lacp container LACP
                           bfd container Container for BFD.
                              bfd-enabled leaf BFD activation
                              holdtime choice Choice for hold time flavor.
                                 fixed case fixed-value
                                    fixed-value leaf Expected hold time expressed in msec.
                                 profile case Service provider well known profile.
                                    profile-name leaf Service provider well known profile.
                           flow-control leaf Flow control
                           lacp-mode leaf LACP mode
                           lacp-speed leaf LACP speed
                           lacp-state leaf LACP on/off
                           lldp leaf LLDP
                           member-link-list container Container of Member link list
                              member-link list Member link
                                 link-mtu leaf Link MTU size.
                                 mode leaf Negotiation mode
                                 name leaf Member link name
                                 oam-802.3ah-link container Container for oam 802.3 ah link.
                                    enable leaf Indicate whether support oam 802.3 ah link
                                 port-speed leaf Port speed
                           micro-bfd container Container of Micro-BFD configurations
                              bfd-hold-timer leaf BFD hold timer
                              bfd-interval leaf BFD interval
                              micro-bfd-on-off leaf Micro BFD ON/OFF
                           mini-link leaf The minimum aggregate bandwidth for a LAG
                           system-priority leaf Indicates the LACP priority for the system. The range is from 0 to 65535. The default is 32768.
                        lag-interface-number leaf LAG interface number
                  phy-interface container Container of PHY Interface Attributes configurations
                     circuit-id leaf Circuit ID
                     flow-control leaf Flow control
                     lldp leaf LLDP
                     mode leaf Negotiation mode
                     oam-802.3ah-link container Container for oam 802.3 ah link.
                        enable leaf Indicate whether support oam 802.3 ah link
                     phy-mtu leaf PHY MTU
                     physical-if leaf Physical interface
                     port-number leaf Port number
                     port-speed leaf Port speed
                     uni-loop-prevention leaf If this leaf set to truth that the port automatically goes down when a physical loopback is detect.
               ethernet-service-oam container Container for Ethernet service OAM.
                  cfm-802.1-ag container Container of 802.1ag CFM configurations.
                     n2-uni-c list List of UNI-N to UNI-C
                        alarm-priority-defect leaf The lowest priority defect that is allowed to generate a Fault Alarm. The non-existence of this leaf means that no defects are to be reported
                        ccm-holdtime leaf CCM hold time
                        ccm-interval leaf CCM interval
                        ccm-p-bits-pri leaf The priority parameter for CCMs transmitted by the MEP
                        cos-for-cfm-pdus leaf COS for CFM PDUs
                        maid leaf MA ID
                        mep-id leaf Local MEP ID
                        mep-level leaf MEP level
                        mep-up-down leaf MEP up/down
                        remote-mep-id leaf Remote MEP ID
                     n2-uni-n list List of UNI-N to UNI-N
                        alarm-priority-defect leaf The lowest priority defect that is allowed to generate a Fault Alarm. The non-existence of this leaf means that no defects are to be reported
                        ccm-holdtime leaf CCM hold time
                        ccm-interval leaf CCM interval
                        ccm-p-bits-pri leaf The priority parameter for CCMs transmitted by the MEP
                        cos-for-cfm-pdus leaf COS for CFM PDUs
                        maid leaf MA ID
                        mep-id leaf Local MEP ID
                        mep-level leaf MEP level
                        mep-up-down leaf MEP up/down
                        remote-mep-id leaf Remote MEP ID
                  md-level leaf Maintenance domain level
                  md-name leaf Maintenance domain name
                  y-1731 list List for y-1731.
                     cos leaf Class of service
                     delay-measurement container Container for delay measurement
                        enable-dm leaf Whether to enable delay measurement
                        two-way leaf Whether delay measurement is two-way (true) of one- way (false)
                     frame-size leaf Frame size
                     loss-measurement leaf Whether enable loss measurement
                     maid leaf MA ID
                     measurement-interval leaf Specifies the measurement interval for statistics. The measurement interval is expressed in seconds
                     mep-id leaf Local MEP ID
                     message-period leaf Defines the interval between OAM messages. The message period is expressed in milliseconds
                     remote-mep-id leaf Remote MEP ID
                     session-type leaf Session type
                     synthethic-loss-measurement leaf Indicate whether enable synthetic loss measurement
                     type leaf Performance monitor types
               mac-addr-limit container Container of MAC-Addr limit configurations
                  action leaf specify the action when the upper limit is exceeded: drop the packet, flood the packet, or simply send a warning log message.
                  mac-num-limit leaf maximum number of MAC addresses learned from the subscriber for a single service instance.
                  time-interval leaf The aging time of the mac address.
               mac-loop-prevention container Container of MAC loop prevention.
                  frequency leaf Frequency
                  number-retries leaf Number of retries
                  protection-type leaf Protection type
               network-access-id leaf Identifier of network access
               remote-carrier-name leaf Remote carrier name
               service container Container for service
                  qos container QoS configuration.
                     qos-classification-policy container Need to express marking rules ...
                        rule list List of marking rules.
                           id leaf ID of the rule.
                           match-type choice Choice for classification
                              match-application case match-application
                                 match-application leaf Defines the application to match.
                              match-flow case match-flow
                                 match-flow container Describe flow matching criteria.
                                    any leaf Allow all.
                                    color-type leaf Color Types
                                    dot1q leaf 802.1q matching. It is VLAN Tag added into frame.
                                    dscp leaf DSCP value.
                                    dst-mac leaf Destination MAC
                                    pcp leaf PCP value
                                    src-mac leaf Source MAC
                                    target-sites leaf-list Identify a site as traffic destination.
                                    vpn-id leaf Reference to the target VPN.
                              match-phy-port case match-phy-port
                                 match-phy-port leaf Defines the physical port to match.
                           target-class-id leaf Identification of the class of service. This identifier is internal to the administration.
                     qos-profile container Qos profile configuration.
                        qos-profile choice Choice for QoS profile. Can be standard profile or custom.
                           custom case classes
                              classes container Container for list of class of services.
                                 class list List of class of services.
                                    bandwidth container Bandwidth constraint on the traffic class.
                                       end-to-end leaf Used if the bandwidth reservation must be done on the MPLS network too.
                                       guaranteed-bw-percent leaf To be used to define the guaranteed bandwidth as a percentage of the available service bandwidth.
                                    byte-offset leaf For not including extra VLAN tags in the QoS calculation
                                    class-id leaf Identification of the class of service. This identifier is internal to the administration.
                                    direction leaf The direction which QoS profile is applied to
                                    frame-delay container Delay constraint on the traffic class
                                       flavor choice Delay constraint on the traffic class
                                          boundary case delay-bound
                                             delay-bound leaf The traffic class should use a path with a defined maximum delay.
                                          lowest case use-low-del
                                             use-low-del leaf The traffic class should use the lowest delay path
                                    frame-jitter container Jitter constraint on the traffic class
                                       flavor choice Jitter constraint on the traffic class
                                          boundary case delay-bound
                                             delay-bound leaf The traffic class should use a path with a defined maximum jitter.
                                          lowest case use-low-jit
                                             use-low-jit leaf The traffic class should use the lowest jitter path
                                    frame-loss container Container for frame loss
                                       fr-loss-rate leaf Loss constraint on the traffic class
                                    policing leaf The policing can be either one-rate, two-color (1R2C) or two-rate, three-color (2R3C)
                           standard case profile
                              profile leaf QoS Profile to be used
                  svc-input-bandwidth container From the PE perspective, the service input bandwidth of the connection.
                     input-bandwidth list List for input bandwidth
                        cbs leaf Committed Burst Size.CBS controls the bursty nature of the traffic. Traffic that does not use the configured CIR accumulates credits until the credits reach the configured CBS.
                        cir leaf Committed Information Rate. The maximum number of bits that a port can receive or send during one-second over an interface.
                        cos-id leaf Identifier of Class of Service , indicated by DSCP or a CE-CLAN CoS(802.1p)value in the service frame.
                        ebs leaf Excess Burst Size. The bandwidth available for burst traffic from the EBS is subject to the amount of bandwidth that is accumulated during periods when traffic allocated by the EIR policy is not used.
                        eir leaf Excess Information Rate,i.e.,Excess frame delivery allowed not subject to SLA.The traffic rate can be limited by eir.
                        pbs leaf Peak Burst Size. It is measured in bytes per second.
                        pir leaf Peak Information Rate, i.e., maixmum frame delivery allowed. It is equal to or less than sum of cir and eir.
                        type leaf Bandwidth Type
                        vpn-id leaf Identifies the target VPN.
                  svc-output-bandwidth container From the PE perspective, the service output bandwidth of the connection.
                     output-bandwidth list List for output bandwidth
                        cbs leaf Committed Burst Size.CBS controls the bursty nature of the traffic. Traffic that does not use the configured CIR accumulates credits until the credits reach the configured CBS.
                        cir leaf Committed Information Rate. The maximum number of bits that a port can receive or send during one-second over an interface.
                        cos-id leaf Identifier of Class of Service , indicated by DSCP or a CE-CLAN CoS(802.1p)value in the service frame.
                        ebs leaf Excess Burst Size. The bandwidth available for burst traffic from the EBS is subject to the amount of bandwidth that is accumulated during periods when traffic allocated by the EIR policy is not used.
                        eir leaf Excess Information Rate,i.e.,Excess frame delivery allowed not subject to SLA.The traffic rate can be limited by eir.
                        pbs leaf Peak Burst Size. It is measured in bytes per second.
                        pir leaf Peak Information Rate, i.e., maixmum frame delivery allowed. It is equal to or less than sum of cir and eir.
                        type leaf Bandwidth Type
                        vpn-id leaf Identifies the target VPN.
               vpn-attachment container Defines VPN attachment of a site.
                  attachment-flavor choice Choice for VPN attachment flavor.
                     vpn-flavor case vpn-flavor
                        vpn-flavor list List of IPVPNs attached by the Site Network Access
                           site-role leaf Role of the site in the IPVPN.
                           vpn-id leaf Reference to a VPN.
                     vpn-policy-id case vpn-policy-id
                        vpn-policy-id leaf Reference to a vpn policy
                  device-id leaf Device ID
                  management container Management configuration..
                     address leaf Management address
                     address-family leaf Address family used for management.
         site-type leaf Site type
         vpn-policies container VPN policy.
            vpn-policy list List of VPN policies.
               entries list List of entries for export policy.
                  filters container If a more-granular VPN attachment is necessary, filtering can be used. If used, it permits the splitting of site LANs among multiple VPNs.The Site LAN can be split based on either LAN-tag or LAN prefix. If no filter is used, all the LANs will be part of t...
                     filter list List of filters used on the site. This list can be augmented.
                        lan-tag leaf-list List of Ethernet LAN Tag to be matched. Ethernet LAN Tag identifies a particular broadcast domain in a VPN.
                        type leaf Type of VPN Policy filter.
                  id leaf Unique identifier for the policy entry.
                  vpn list List of VPNs the LAN is associated with.
                     site-role leaf Role of the site in the IP VPN.
                     vpn-id leaf Reference to an IP VPN.
               vpn-policy-id leaf Unique identifier for the VPN policy.
   vpn-profiles container Container for VPN Profiles.
      valid-provider-identifiers container Container for Valid Provider Identifies.
         cloud-identifier list List for Cloud Identifiers.
            id leaf Identification of cloud service. Local administration meaning.
         qos-profile-identifier list List for QoS Profile Identifiers.
            id leaf Identification of the QoS Profile to be used. Local administration meaning.
   vpn-services container Container for VPN services.
      vpn-svc list List of vpn-svc
         ce-vlan-cos-perservation leaf CE vlan CoS preservation. PCP bits in the CE-VLAN tag of the egress frame are identical to those of the ingress frame that yielded this egress service frame.
         ce-vlan-preservation leaf Preserve the CE-VLAN ID from ingress to egress,i.e., CE-VLAN tag of the egress frame are identical to those of the ingress frame that yielded this egress service frame. If All-to-One bundling within a site is Enabled, then preservation applies to all Ingr...
         cloud-accesses container Container for cloud access configurations
            cloud-access list Cloud access configuration.
               authorized-sites container Configuration of authorized sites.
                  authorized-site list List of authorized sites.
                     site-id leaf Site ID.
               cloud-identifier leaf Identification of cloud service. Local admin meaning.
               denied-sites container Configuration of denied sites.
                  denied-site list List of denied sites.
                     site-id leaf Site ID.
               list-flavor choice Choice for cloud access policy.
                  deny-any-except case permit-site
                     permit-site leaf-list Site ID to be authorized.
                  permit-any case permit-any
                  permit-any-except case deny-site
                     deny-site leaf-list Site ID to be denied.
                     permit-any leaf Allow all sites.
         customer-name leaf Customer name
         extranet-vpns container Container for extranet VPN configuration.
            extranet-vpn list List of extranet VPNs the local VPN is attached to.
               local-sites-role leaf This describes the role of the local sites in the target VPN topology.
               vpn-id leaf Identifies the target VPN.
         multicast-like container Multicast global parameters for the VPN service.
            bum-frame-delivery-modes container Define frame delivery type and mode.
               bum-frame-delivery list List of frame delivery type and mode.
                  delivery-mode leaf Define Frame Delivery Mode (unconditional[default], conditional, or discard).
                  traffic-type leaf Type of frame delivery. It support unicast frame delivery, multicast frame delivery and broadcast frame delivery.
            customer-tree-flavors container Type of trees used by customer.
               tree-flavor leaf-list Type of tree to be used.
            enabled leaf Enables multicast.
            multicast-gp-port-mapping leaf Describe the way in which each interface is associated with the Multicast group
         svc-mtu leaf SVC MTU, it is also known as the maximum transmission unit or maximum frame size,When a frame is larger than the MTU, it is broken down, or fragmented, into smaller pieces by the network protocol to accommodate the MTU of the network
         svc-topo leaf Defining service topology, such as any-to-any,hub-spoke, etc.
         vpn-id leaf Defining a service id.
         vpn-svc-type leaf Service type