Add tool to measure southbound notification performance
[netconf.git] / netconf / tools / netconf-test-perf / src / main / yang / Cisco-IOS-XR-ip-static-cfg@2013-07-22.yang
1 module Cisco-IOS-XR-ip-static-cfg {
2
3   /*** NAMESPACE / PREFIX DEFINITION ***/
4
5   namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ip-static-cfg";
6
7
8   prefix "ip-static-cfg";
9
10   /*** LINKAGE (IMPORTS / INCLUDES) ***/
11
12   import ietf-inet-types { prefix "inet"; }
13
14   import Cisco-IOS-XR-types { prefix "xr"; }
15
16   /*** META INFORMATION ***/
17
18   organization "Cisco Systems, Inc.";
19
20   contact
21     "Cisco Systems, Inc.
22      Customer Service
23
24      Postal: 170 West Tasman Drive
25      San Jose, CA 95134
26
27      Tel: +1 800 553-NETS
28
29      E-mail: cs-yang@cisco.com";
30
31   description
32     "This module contains a collection of YANG definitions
33      for Cisco IOS-XR ip-static package configuration.
34
35      This module contains definitions
36      for the following management objects:
37        router-static: This class represents router static
38          configuration
39
40      Copyright (c) 2013 by Cisco Systems, Inc.
41      All rights reserved.";
42
43   revision "2013-07-22" {
44     description
45       "Initial revision.";
46   }
47
48
49   grouping VRF-ROUTE {
50     description "Common node of vrf-prefix, vrf-prefix-topology";
51
52     container vrf-route {
53       xr:xr-xml-map "ip_static_cfg:VRFRoute";
54       description "A connected or recursive  static route";
55
56       container vrf-next-hops {
57         xr:xr-xml-map "ip_static_cfg:VRFNextHopTable";
58         description
59           "A forwarding interface and/or the address of a
60           nexthop router for this route (one of these
61           must be specified)";
62
63         grouping VRF-NEXT-HOP-CONTENT {
64           description "Content grouping.";
65           leaf bfd-fast-detect {
66             xr:xr-xml-map "ip_static_cfg:BFDFastDetect";
67             type boolean;
68             default "false";
69             description "If set, bfd is enabled";
70           }
71           leaf minimum-interval {
72             xr:xr-xml-map "ip_static_cfg:MinimumInterval";
73             type uint32 {
74               range "3..30000";
75             }
76             units "millisecond";
77             default "100";
78             description "BFD Hello interval in milliseconds";
79           }
80           leaf detect-multiplier {
81             xr:xr-xml-map "ip_static_cfg:DetectMultiplier";
82             type uint32 {
83               range "1..10";
84             }
85             default "3";
86             description "BFD Detect Multiplier";
87           }
88           leaf metric {
89             xr:xr-xml-map "ip_static_cfg:Metric";
90             type uint32 {
91               range "1..254";
92             }
93             default "1";
94             description "Distance metric for this path";
95           }
96           leaf tag {
97             xr:xr-xml-map "ip_static_cfg:Tag";
98             type uint32 {
99               range "1..4294967295";
100             }
101             description "Tag for this path";
102           }
103           leaf permanent {
104             xr:xr-xml-map "ip_static_cfg:Permanent";
105             type boolean;
106             default "false";
107             description "If set, path is permanent";
108           }
109           leaf vrf-lable {
110             xr:xr-xml-map "ip_static_cfg:VRFLable";
111             type uint32 {
112               range "0..4294967295";
113             }
114             default "0";
115             description "VRF LABEL";
116           }
117           leaf tunnel-id {
118             xr:xr-xml-map "ip_static_cfg:TunnelID";
119             type uint32 {
120               range "0..65535";
121             }
122             default "0";
123             description "Tunnel ID for this path";
124           }
125           leaf object-name {
126             xr:xr-xml-map "ip_static_cfg:ObjectName";
127             type xr:Cisco-ios-xr-string {
128               length "0..32";
129             }
130             description "Name of the object to track";
131           }
132           leaf description {
133             xr:xr-xml-map "ip_static_cfg:Description";
134             type string;
135             description "Short Description of Static Route";
136           }
137         }
138
139         list interface-name-and-next-hop-address {
140           xr:xr-xml-map "ip_static_cfg:VRFNextHop";
141           key "interface-name next-hop-address";
142           description "keys: interface-name, next-hop-address";
143           leaf interface-name {
144             xr:xr-xml-map "ip_static_cfg:InterfaceName";
145             type xr:Interface-name;
146             description "Forwarding interface";
147           }
148           leaf next-hop-address {
149             xr:xr-xml-map "ip_static_cfg:NextHopAddress";
150             type inet:ip-address;
151             description "Next hop address";
152           }
153           uses VRF-NEXT-HOP-CONTENT;
154         }
155
156         list interface-name {
157           xr:xr-xml-map "ip_static_cfg:VRFNextHop";
158           key "interface-name";
159           description "keys: interface-name";
160           leaf interface-name {
161             xr:xr-xml-map "ip_static_cfg:InterfaceName";
162             type xr:Interface-name;
163             description "Forwarding interface";
164           }
165           uses VRF-NEXT-HOP-CONTENT;
166         }
167
168         list next-hop-address {
169           xr:xr-xml-map "ip_static_cfg:VRFNextHop";
170           key "next-hop-address";
171           description "keys: next-hop-address";
172           leaf next-hop-address {
173             xr:xr-xml-map "ip_static_cfg:NextHopAddress";
174             type inet:ip-address;
175             description "Next hop address";
176           }
177           uses VRF-NEXT-HOP-CONTENT;
178         }
179       }
180     }
181   }
182
183   grouping TOPOLOGY-TABLE {
184     description "Common node of vrf-unicast, vrf-multicast";
185
186     container topologies {
187       xr:xr-xml-map "ip_static_cfg:TopologyTable";
188       description "Topology static configuration container";
189
190       list topology {
191         xr:xr-xml-map "ip_static_cfg:Topology";
192         key "topology-name";
193         description "Topology static configuration";
194         leaf topology-name {
195           xr:xr-xml-map "ip_static_cfg:TopologyName";
196           type xr:Cisco-ios-xr-string;
197           description "Topology name";
198         }
199         uses VRF-PREFIX-TOPOLOGY-TABLE;
200       }
201     }
202   }
203
204   grouping VRF-PREFIX-TABLE {
205     description "Common node of vrf-unicast, vrf-multicast";
206
207     container vrf-prefixes {
208       xr:xr-xml-map "ip_static_cfg:VRFPrefixTable";
209       description "The set of all Static Topologies for this AFI.";
210
211       list vrf-prefix {
212         xr:xr-xml-map "ip_static_cfg:VRFPrefix";
213         key "prefix prefix-length";
214         description "A static route";
215         leaf prefix {
216           xr:xr-xml-map "ip_static_cfg:Prefix";
217           type inet:ip-address;
218           description "Destination prefix";
219         }
220         leaf prefix-length {
221           xr:xr-xml-map "ip_static_cfg:PrefixLength";
222           type uint32 {
223             range "0..128";
224           }
225           description "Destination prefix length";
226         }
227         uses VRF-ROUTE;
228       }
229     }
230   }
231
232   grouping ADDRESS-FAMILY {
233     description "Common node of default-vrf, vrf";
234
235     container address-family {
236       xr:xr-xml-map "ip_static_cfg:AddressFamily";
237       description "Address family configuration";
238
239       container vrfipv4 {
240         xr:xr-xml-map "ip_static_cfg:VRFIPV4";
241         description "IPv4 static configuration";
242         uses VRF-UNICAST;
243         uses VRF-MULTICAST;
244       }
245
246       container vrfipv6 {
247         xr:xr-xml-map "ip_static_cfg:VRFIPV6";
248         description "IPv6 static configuration";
249         uses VRF-UNICAST;
250         uses VRF-MULTICAST;
251       }
252     }
253   }
254
255   grouping VRF-PREFIX-TOPOLOGY-TABLE {
256     description "Common node of default-topology, topology";
257
258     container vrf-prefix-topologies {
259       xr:xr-xml-map "ip_static_cfg:VRFPrefixTopologyTable";
260       description "The set of all Static Topologies for this AFI.";
261
262       list vrf-prefix-topology {
263         xr:xr-xml-map "ip_static_cfg:VRFPrefixTopology";
264         key "prefix prefix-length";
265         description "A static route";
266         leaf prefix {
267           xr:xr-xml-map "ip_static_cfg:Prefix";
268           type inet:ip-address;
269           description "Destination prefix";
270         }
271         leaf prefix-length {
272           xr:xr-xml-map "ip_static_cfg:PrefixLength";
273           type uint32 {
274             range "0..128";
275           }
276           description "Destination prefix length";
277         }
278         uses VRF-ROUTE;
279       }
280     }
281   }
282
283   grouping DEFAULT-TOPOLOGY {
284     description "Common node of vrf-unicast, vrf-multicast";
285
286     container default-topology {
287       xr:xr-xml-map "ip_static_cfg:DefaultTopology";
288       description "Default topology configuration";
289       uses VRF-PREFIX-TOPOLOGY-TABLE;
290     }
291   }
292
293   grouping VRF-UNICAST {
294     description "Common node of vrfipv4, vrfipv6";
295
296     container vrf-unicast {
297       xr:xr-xml-map "ip_static_cfg:VRFUnicast";
298       description "Unicast static configuration";
299       uses TOPOLOGY-TABLE;
300       uses VRF-PREFIX-TABLE;
301       uses DEFAULT-TOPOLOGY;
302     }
303   }
304
305   grouping VRF-MULTICAST {
306     description "Common node of vrfipv4, vrfipv6";
307
308     container vrf-multicast {
309       xr:xr-xml-map "ip_static_cfg:VRFMulticast";
310       description "Multicast static configuration";
311       uses TOPOLOGY-TABLE;
312       uses VRF-PREFIX-TABLE;
313       uses DEFAULT-TOPOLOGY;
314     }
315   }
316
317   container router-static {
318     xr:xr-xml-map "ip_static_cfg:RouterStatic";
319     description "This class represents router static configuration";
320
321     container vrfs {
322       xr:xr-xml-map "ip_static_cfg:VRFTable";
323       description "VRF static configuration container";
324
325       list vrf {
326         xr:xr-xml-map "ip_static_cfg:VRF";
327         key "vrf-name";
328         description "VRF static configuration";
329         leaf vrf-name {
330           xr:xr-xml-map "ip_static_cfg:VRFName";
331           type xr:Cisco-ios-xr-string;
332           description "VRF name";
333         }
334         uses ADDRESS-FAMILY;
335       }
336     }
337
338     container default-vrf {
339       xr:xr-xml-map "ip_static_cfg:DefaultVRF";
340       description "Default VRF configuration";
341       uses ADDRESS-FAMILY;
342     }
343
344     container maximum-routes {
345       xr:xr-xml-map "ip_static_cfg:MaximumRoutes";
346       description
347         "The maximum number of static routes that can be
348         configured.";
349       leaf ipv6-routes {
350         xr:xr-xml-map "ip_static_cfg:IPV6Routes";
351         type uint32 {
352           range "1..140000";
353         }
354         default "4000";
355         description
356           "The maximum number of static routes that can be
357           configured for this AFI";
358       }
359       leaf ipv4-routes {
360         xr:xr-xml-map "ip_static_cfg:IPV4Routes";
361         type uint32 {
362           range "1..140000";
363         }
364         default "4000";
365         description
366           "The maximum number of static routes that can be
367           configured for this AFI";
368       }
369     }
370   }
371 }