summaryrefslogtreecommitdiffstats
path: root/routing/routing-api/src/main/yang/vpp-ipv4-unicast-routing@2018-03-19.yang
diff options
context:
space:
mode:
authorMichal Cmarada <michal.cmarada@pantheon.tech>2018-05-04 16:13:09 +0200
committerMichal Cmarada <michal.cmarada@pantheon.tech>2018-05-09 14:36:21 +0200
commit8f9fe3ca424abc56d212a96af4ec5750a29e7673 (patch)
treec3472885ef0fb57452b88b4ea76f2935f81ca39f /routing/routing-api/src/main/yang/vpp-ipv4-unicast-routing@2018-03-19.yang
parentd5883157bff11ee89b95bc1abe7f62fca3509950 (diff)
HC2VPP-253 - Bump routing models
This patch updates (for support of SRv6 and MPLS) routing models to: - hc2vpp-ietf-routing@2018-03-13.yang (RFC 8349, https://tools.ietf.org/html/rfc8349) - hc2vpp-ietf-ipv4-unicast-routing@2018-03-13.yang (RFC 8349) - hc2vpp-ietf-ipv6-unicast-routing@2018-03-13.yang (RFC 8349) - hc2vpp-ietf-ipv6-router-advertisements@2018-03-13 (RFC 8349) - hc2vpp-ietf-routing-types@2017-12-04 (RFC 8294 ,https://tools.ietf.org/html/rfc8294) Due to odl bugs these models were changed, see HC2VPP-298 for more details. Significant changes in updated models: - Routing instance was removed, we used vpp-routing-instance as single instance before, which is no longer needed. - Routing-protocol and Routing-protocols were refactored to Control-plane-protocol/s. Control-protocol now uses type and name as key - Route Key was changed from id to ipPrefix - Next-hop and Next-Hop-list were refactored See attached routing_postman_collection.json for updated data structures and examples for both IPv4 and IPv6 routes. For router advertisements see routing_advertisments_postman_collection.json Another fixes in this patch: - fixes in MPLS module due to Routing model updates - fixes doc module due to changes in Routing model Change-Id: I33704a50061aef97dfbd73a7701ff6fe5274d6f0 Signed-off-by: Michal Cmarada <michal.cmarada@pantheon.tech>
Diffstat (limited to 'routing/routing-api/src/main/yang/vpp-ipv4-unicast-routing@2018-03-19.yang')
-rw-r--r--routing/routing-api/src/main/yang/vpp-ipv4-unicast-routing@2018-03-19.yang78
1 files changed, 78 insertions, 0 deletions
diff --git a/routing/routing-api/src/main/yang/vpp-ipv4-unicast-routing@2018-03-19.yang b/routing/routing-api/src/main/yang/vpp-ipv4-unicast-routing@2018-03-19.yang
new file mode 100644
index 000000000..d4147cc4b
--- /dev/null
+++ b/routing/routing-api/src/main/yang/vpp-ipv4-unicast-routing@2018-03-19.yang
@@ -0,0 +1,78 @@
+module vpp-ipv4-unicast-routing {
+
+ namespace "urn:ietf:params:xml:ns:yang:vpp-ipv4-unicast-routing";
+ prefix "vpp-v4ur";
+
+ import yang-ext {
+ prefix "ext";
+ }
+
+ import vpp-classifier {
+ prefix "classifier";
+ }
+
+ import hc2vpp-ietf-routing {
+ prefix "ietf-r";
+ revision-date 2018-03-13;
+ }
+
+ import hc2vpp-ietf-ipv4-unicast-routing {
+ prefix "v4ur";
+ revision-date 2018-03-13;
+ }
+
+ import vpp-routing {
+ prefix "vpp-rt";
+ revision-date 2018-03-19;
+ }
+
+ import vpp-routing-types {
+ prefix "vpp-rt-tp";
+ revision-date 2018-04-06;
+ }
+
+ organization
+ "FD.io - The Fast Data Project";
+
+ contact
+ "Hc2vpp Wiki <https://wiki.fd.io/view/Hc2vpp>
+ Mailing List <hc2vpp@lists.fd.io>";
+
+ description
+ "This module contains a collection of YANG definitions
+ that extend hc2vpp-ietf-routing module
+ with VPP specific ipv4 unicast routing features.
+
+ Copyright (c) 2018 Bell Canada, Pantheon.tech and/or its affiliates.
+
+ Licensed under the Apache License, Version 2.0 (the 'License');
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at:
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an 'AS IS' BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.";
+
+ revision 2018-03-19 {
+ description "Initial revision";
+ }
+
+ augment "/rt:routing/rt:control-plane-protocols/rt:control-plane-protocol/rt:static-routes/" +
+ "v4ur:ipv4/v4ur:route/v4ur:next-hop/v4ur:next-hop-options/v4ur:next-hop-list/v4ur:next-hop-list/v4ur:next-hop"
+ {
+ ext:augment-identifier "vpp-ipv4-next-hop-augmentation";
+ uses vpp-rt-tp:vpp-next-hop-attributes;
+ }
+
+ augment "/rt:routing/rt:control-plane-protocols/rt:control-plane-protocol/rt:static-routes/v4ur:ipv4/v4ur:route"
+ {
+ ext:augment-identifier "vpp-ipv4-route-attributes-augmentation";
+ container vpp-ipv4-route{
+ uses vpp-rt:vpp-route-attributes;
+ }
+ }
+}