diff options
Diffstat (limited to 'src/plugins/yang/openconfig/openconfig-rib-bgp-ext.yang')
-rw-r--r-- | src/plugins/yang/openconfig/openconfig-rib-bgp-ext.yang | 166 |
1 files changed, 166 insertions, 0 deletions
diff --git a/src/plugins/yang/openconfig/openconfig-rib-bgp-ext.yang b/src/plugins/yang/openconfig/openconfig-rib-bgp-ext.yang new file mode 100644 index 0000000..3c7cf35 --- /dev/null +++ b/src/plugins/yang/openconfig/openconfig-rib-bgp-ext.yang @@ -0,0 +1,166 @@ +module openconfig-rib-bgp-ext { + + yang-version "1"; + + // namespace + namespace "http://openconfig.net/yang/rib/bgp-ext"; + + prefix "oc-bgprib-ext"; + + import openconfig-rib-bgp { prefix oc-bgprib; } + import openconfig-extensions { prefix oc-ext; } + import openconfig-rib-bgp-types { prefix oc-bgpribt; } + + organization "OpenConfig working group"; + + contact + "OpenConfig working group + www.openconfig.net"; + + description + "Defines additional data nodes for the OpenConfig BGP RIB model. + These items reflect extensions that are desirable features but + are not currently supported in a majority of BGP + implementations."; + + oc-ext:openconfig-version "0.3.0"; + + revision "2016-10-17" { + description + "OpenConfig BGP RIB refactor"; + reference "0.3.0"; + } + + revision "2016-04-11" { + description + "OpenConfig public release"; + reference "0.2.0"; + } + + + grouping rib-ext-route-annotations { + description + "Extended annotations for routes in the routing tables"; + + leaf reject-reason { + type union { + type identityref { + base oc-bgpribt:BGP_NOT_SELECTED_BESTPATH; + } + type identityref { + base oc-bgpribt:BGP_NOT_SELECTED_POLICY; + } + } + description + "Indicates the reason the route is not used, either due to + policy filtering or bestpath selection"; + } + } + + augment "/oc-bgprib:bgp-rib/oc-bgprib:afi-safis/" + + "oc-bgprib:afi-safi/oc-bgprib:ipv4-unicast/oc-bgprib:loc-rib/" + + "oc-bgprib:routes/oc-bgprib:route/oc-bgprib:state" { + description + "Add extended annotations to the Loc-RIB for IPv4"; + + uses rib-ext-route-annotations; + } + + augment "/oc-bgprib:bgp-rib/oc-bgprib:afi-safis/" + + "oc-bgprib:afi-safi/oc-bgprib:ipv6-unicast/oc-bgprib:loc-rib/" + + "oc-bgprib:routes/oc-bgprib:route/oc-bgprib:state" { + description + "Add extended annotations to the Loc-RIB for IPv6"; + + uses rib-ext-route-annotations; + } + + augment "/oc-bgprib:bgp-rib/oc-bgprib:afi-safis/" + + "oc-bgprib:afi-safi/oc-bgprib:ipv4-unicast/" + + "oc-bgprib:neighbors/oc-bgprib:neighbor/" + + "oc-bgprib:adj-rib-in-pre/oc-bgprib:routes/oc-bgprib:route" + + "/oc-bgprib:state" { + description + "Add extended annotations to Adj-RIB for IPv4"; + + uses rib-ext-route-annotations; + } + + augment "/oc-bgprib:bgp-rib/oc-bgprib:afi-safis/" + + "oc-bgprib:afi-safi/oc-bgprib:ipv4-unicast/" + + "oc-bgprib:neighbors/oc-bgprib:neighbor/" + + "oc-bgprib:adj-rib-in-post/oc-bgprib:routes/oc-bgprib:route" + + "/oc-bgprib:state"{ + description + "Add extended annotations to Adj-RIB for IPv4"; + + uses rib-ext-route-annotations; + } + + augment "/oc-bgprib:bgp-rib/oc-bgprib:afi-safis/" + + "oc-bgprib:afi-safi/oc-bgprib:ipv4-unicast/" + + "oc-bgprib:neighbors/oc-bgprib:neighbor/" + + "oc-bgprib:adj-rib-out-pre/oc-bgprib:routes/oc-bgprib:route" + + "/oc-bgprib:state"{ + description + "Add extended annotations to Adj-RIB for IPv4"; + + uses rib-ext-route-annotations; + } + + augment "/oc-bgprib:bgp-rib/oc-bgprib:afi-safis/" + + "oc-bgprib:afi-safi/oc-bgprib:ipv4-unicast/" + + "oc-bgprib:neighbors/oc-bgprib:neighbor/" + + "oc-bgprib:adj-rib-out-post/oc-bgprib:routes/oc-bgprib:route" + + "/oc-bgprib:state"{ + description + "Add extended annotations to Adj-RIB for IPv4"; + + uses rib-ext-route-annotations; + } + + augment "/oc-bgprib:bgp-rib/oc-bgprib:afi-safis/" + + "oc-bgprib:afi-safi/oc-bgprib:ipv6-unicast/" + + "oc-bgprib:neighbors/oc-bgprib:neighbor/" + + "oc-bgprib:adj-rib-in-pre/oc-bgprib:routes/oc-bgprib:route" + + "/oc-bgprib:state"{ + description + "Add extended annotations to Adj-RIB for IPv6"; + + uses rib-ext-route-annotations; + } + + augment "/oc-bgprib:bgp-rib/oc-bgprib:afi-safis/" + + "oc-bgprib:afi-safi/oc-bgprib:ipv6-unicast/" + + "oc-bgprib:neighbors/oc-bgprib:neighbor/" + + "oc-bgprib:adj-rib-in-post/oc-bgprib:routes/oc-bgprib:route" + + "/oc-bgprib:state"{ + description + "Add extended annotations to Adj-RIB for IPv6"; + + uses rib-ext-route-annotations; + } + + augment "/oc-bgprib:bgp-rib/oc-bgprib:afi-safis/" + + "oc-bgprib:afi-safi/oc-bgprib:ipv6-unicast/" + + "oc-bgprib:neighbors/oc-bgprib:neighbor/" + + "oc-bgprib:adj-rib-out-pre/oc-bgprib:routes/oc-bgprib:route" + + "/oc-bgprib:state"{ + description + "Add extended annotations to Adj-RIB for IPv6"; + + uses rib-ext-route-annotations; + } + + augment "/oc-bgprib:bgp-rib/oc-bgprib:afi-safis/" + + "oc-bgprib:afi-safi/oc-bgprib:ipv6-unicast/" + + "oc-bgprib:neighbors/oc-bgprib:neighbor/" + + "oc-bgprib:adj-rib-out-post/oc-bgprib:routes/oc-bgprib:route" + + "/oc-bgprib:state"{ + description + "Add extended annotations to Adj-RIB for IPv6"; + + uses rib-ext-route-annotations; + } + +}
\ No newline at end of file |