Interface BgpMvpnData

  • All Superinterfaces:
    org.opendaylight.yangtools.yang.binding.DataRoot

    @Generated("mdsal-binding-generator")
    public interface BgpMvpnData
    extends org.opendaylight.yangtools.yang.binding.DataRoot
    This module contains the base data model of a BGP message. It rolls up the definitions contained in RFC6513, RFC6514, RFC6515. Copyright (c) 2018 AT&T Intellectual Property. All rights reserved. This program and the accompanying materials are made available under the terms of the Eclipse Public License v1.0 which accompanies this distribution, and is available at http://www.eclipse.org/legal/epl-v10.html

    This class represents the following YANG schema fragment defined in module bgp-mvpn

     module bgp-mvpn {
       yang-version 1;
       namespace urn:opendaylight:params:xml:ns:yang:bgp:mvpn;
       prefix bgp-mvpn;
       import bgp-types {
         prefix bgp-t;
         revision-date 2020-01-20;
       }
       import ietf-inet-types {
         prefix inet;
         revision-date 2013-07-15;
       }
       import pmsi-tunnel {
         prefix pmsi;
         revision-date 2020-01-20;
       }
       import yang-ext {
         prefix ext;
         revision-date 2013-07-09;
       }
       import network-concepts {
         prefix netc;
         revision-date 2013-11-25;
       }
       revision 2020-01-20 {
       }
       revision 2018-04-17 {
       }
       identity mcast-vpn-subsequent-address-family {
         base subsequent-address-family;
       }
       typedef nlri-type {
         type enumeration {
           enum intra-as-i-pmsi-a-d {
             value 1;
           }
           enum inter-as-i-pmsi-a-d {
             value 2;
           }
           enum s-pmsi-a-d {
             value 3;
           }
           enum leaf-a-d {
             value 4;
           }
           enum source-active-a-d {
             value 5;
           }
           enum shared-tree-join {
             value 6;
           }
           enum source-tree-join {
             value 7;
           }
         }
       }
       grouping source-as-grouping {
         leaf source-as {
           type inet:as-number;
         }
       }
       grouping multicast-source-rd-grouping {
         uses bgp-t:route-distinguisher-grouping;
         leaf multicast-source {
           type inet:ip-address-no-zone;
         }
       }
       grouping multicast-group-opaque-grouping {
         choice multicast-group {
           case c-g-address-case {
             leaf c-g-address {
               type inet:ip-address-no-zone;
             }
           }
           case ldp-mp-opaque-value-case {
             container ldp-mp-opaque-value {
               uses pmsi:opaque;
             }
           }
         }
       }
       grouping intra-as-i-pmsi-a-d-grouping {
         container intra-as-i-pmsi-a-d {
           uses bgp-t:route-distinguisher-grouping;
           uses bgp-t:orig-route-ip-grouping;
         }
       }
       grouping inter-as-i-pmsi-a-d-grouping {
         container inter-as-i-pmsi-a-d {
           uses bgp-t:route-distinguisher-grouping;
           uses source-as-grouping;
         }
       }
       grouping s-pmsi-a-d-grouping {
         container s-pmsi-a-d {
           uses multicast-source-rd-grouping;
           uses multicast-group-opaque-grouping;
           uses bgp-t:orig-route-ip-grouping;
         }
       }
       grouping leaf-a-d-grouping {
         container leaf-a-d {
           choice leaf-a-d-route-key {
             case inter-as-i-pmsi-a-d-case {
               uses inter-as-i-pmsi-a-d-grouping;
             }
             case s-pmsi-a-d-case {
               uses s-pmsi-a-d-grouping;
             }
           }
           uses bgp-t:orig-route-ip-grouping;
         }
       }
       grouping source-active-a-d-grouping {
         container source-active-a-d {
           uses multicast-source-rd-grouping;
           leaf multicast-group {
             type inet:ip-address-no-zone;
           }
         }
       }
       grouping c-multicast-grouping {
         container c-multicast {
           uses multicast-source-rd-grouping;
           uses source-as-grouping;
           uses multicast-group-opaque-grouping;
         }
       }
       grouping mvpn {
         choice mvpn-choice {
           case intra-as-i-pmsi-a-d-case {
             uses intra-as-i-pmsi-a-d-grouping;
           }
           case inter-as-i-pmsi-a-d-case {
             uses inter-as-i-pmsi-a-d-grouping;
           }
           case s-pmsi-a-d-case {
             uses s-pmsi-a-d-grouping;
           }
           case leaf-a-d-case {
             uses leaf-a-d-grouping;
           }
           case source-active-a-d-case {
             uses source-active-a-d-grouping;
           }
           case shared-tree-join-case {
             container shared-tree-join {
               uses c-multicast-grouping;
             }
           }
           case source-tree-join-case {
             container source-tree-join {
               uses c-multicast-grouping;
             }
           }
         }
       }
       grouping pe-distinguisher-labels-attribute {
         container pe-distinguisher-labels-attribute {
           list pe-distinguisher-label-attribute {
             leaf pe-address {
               type inet:ip-address-no-zone;
             }
             leaf mpls-label {
               type netc:mpls-label;
             }
           }
         }
       }
       grouping bgp-rib-route {
         uses pmsi:bgp-rib-route {
           augment attributes {
             ext:augment-identifier pe-distinguisher-labels-attribute-augmentation;
             uses pe-distinguisher-labels-attribute;
           }
         }
       }
       grouping mvpn-bgp-rib-route {
         uses mvpn;
         uses bgp-rib-route;
       }
       grouping mvpn-routes {
         list mvpn-route {
           key "route-key path-id";
           uses mvpn-bgp-rib-route;
         }
       }
     }