1 NETWORK_UNDERLAY_TOPOLOGY_1 = '''<topology
2 xmlns="urn:TBD:params:xml:ns:yang:network-topology"
3 xmlns:igp="urn:TBD:params:xml:ns:yang:nt:l3-unicast-igp-topology"
4 xmlns:isis="urn:TBD:params:xml:ns:yang:network:isis-topology"
5 xmlns:ovsdb="urn:opendaylight:params:xml:ns:yang:ovsdb">
6 <topology-id>network-topo:1</topology-id>
8 <node-id>bgp:1</node-id>
9 <igp:igp-node-attributes>
10 <isis:isis-node-attributes>
12 <isis:te-router-id-ipv4>192.168.1.1</isis:te-router-id-ipv4>
14 </isis:isis-node-attributes>
15 </igp:igp-node-attributes>
18 <ovsdb:ofport>1119</ovsdb:ofport>
19 <igp:igp-termination-point-attributes>
20 <igp:ip-address>192.168.1.5</igp:ip-address>
21 </igp:igp-termination-point-attributes>
25 <ovsdb:ofport>1119</ovsdb:ofport>
26 <igp:igp-termination-point-attributes>
27 <igp:ip-address>192.168.1.6</igp:ip-address>
28 </igp:igp-termination-point-attributes>
32 <ovsdb:ofport>2119</ovsdb:ofport>
36 <node-id>bgp:2</node-id>
37 <igp:igp-node-attributes>
38 <isis:isis-node-attributes>
40 <isis:te-router-id-ipv4>192.168.1.2</isis:te-router-id-ipv4>
42 </isis:isis-node-attributes>
43 </igp:igp-node-attributes>
46 <node-id>bgp:3</node-id>
47 <igp:igp-node-attributes>
48 <isis:isis-node-attributes>
50 <isis:te-router-id-ipv4>192.168.2.1</isis:te-router-id-ipv4>
52 </isis:isis-node-attributes>
53 </igp:igp-node-attributes>
56 <ovsdb:ofport>1118</ovsdb:ofport>
57 <igp:igp-termination-point-attributes>
58 <igp:ip-address>192.168.1.5</igp:ip-address>
59 </igp:igp-termination-point-attributes>
63 <ovsdb:ofport>2118</ovsdb:ofport>
64 <igp:igp-termination-point-attributes>
65 <igp:ip-address>192.168.1.6</igp:ip-address>
66 </igp:igp-termination-point-attributes>
70 <node-id>bgp:4</node-id>
71 <igp:igp-node-attributes>
72 <isis:isis-node-attributes>
74 <isis:te-router-id-ipv4>192.168.2.1</isis:te-router-id-ipv4>
76 </isis:isis-node-attributes>
77 </igp:igp-node-attributes>
80 <ovsdb:ofport>1117</ovsdb:ofport>
81 <igp:igp-termination-point-attributes>
82 <igp:ip-address>192.168.2.6</igp:ip-address>
83 </igp:igp-termination-point-attributes>
87 <ovsdb:ofport>1117</ovsdb:ofport>
88 <igp:igp-termination-point-attributes>
89 <igp:ip-address>192.168.2.7</igp:ip-address>
90 </igp:igp-termination-point-attributes>
94 <node-id>bgp:5</node-id>
95 <igp:igp-node-attributes>
96 <isis:isis-node-attributes>
98 <isis:te-router-id-ipv4>192.168.2.3</isis:te-router-id-ipv4>
100 </isis:isis-node-attributes>
101 </igp:igp-node-attributes>
103 <tp-id>tp:5:1</tp-id>
104 <ovsdb:ofport>1116</ovsdb:ofport>
105 <igp:igp-termination-point-attributes>
106 <igp:ip-address>192.168.2.8</igp:ip-address>
107 </igp:igp-termination-point-attributes>
111 <link-id>link:1:4</link-id>
113 <source-node>bgp:1</source-node>
116 <dest-node>bgp:4</dest-node>
118 <igp:igp-link-attributes>
119 <igp:name>linkA</igp:name>
120 <igp:metric>12</igp:metric>
121 </igp:igp-link-attributes>
124 <link-id>link:1:3</link-id>
126 <source-node>bgp:1</source-node>
129 <dest-node>bgp:3</dest-node>
131 <igp:igp-link-attributes>
132 <igp:name>linkB</igp:name>
133 <igp:metric>11</igp:metric>
134 </igp:igp-link-attributes>
137 <link-id>link:1:2-1</link-id>
139 <source-node>bgp:1</source-node>
142 <dest-node>bgp:2</dest-node>
144 <igp:igp-link-attributes>
145 <igp:name>linkA</igp:name>
146 <igp:metric>12</igp:metric>
147 </igp:igp-link-attributes>
150 <link-id>link:1:2-2</link-id>
152 <source-node>bgp:1</source-node>
155 <dest-node>bgp:2</dest-node>
157 <igp:igp-link-attributes>
158 <igp:name>linkC</igp:name>
159 <igp:metric>14</igp:metric>
160 </igp:igp-link-attributes>
164 NETWORK_UNDERLAY_TOPOLOGY_2 = '''<topology
165 xmlns="urn:TBD:params:xml:ns:yang:network-topology"
166 xmlns:igp="urn:TBD:params:xml:ns:yang:nt:l3-unicast-igp-topology"
167 xmlns:isis="urn:TBD:params:xml:ns:yang:network:isis-topology"
168 xmlns:ovsdb="urn:opendaylight:params:xml:ns:yang:ovsdb">
169 <topology-id>network-topo:2</topology-id>
171 <node-id>bgp:6</node-id>
172 <ovsdb:ovs-version>10</ovsdb:ovs-version>
173 <igp:igp-node-attributes>
174 <isis:isis-node-attributes>
176 <isis:te-router-id-ipv4>192.168.1.3</isis:te-router-id-ipv4>
178 </isis:isis-node-attributes>
179 </igp:igp-node-attributes>
181 <tp-id>tp:6:1</tp-id>
182 <ovsdb:ofport>1116</ovsdb:ofport>
183 <ovsdb:name>portA</ovsdb:name>
184 <igp:igp-termination-point-attributes>
185 <igp:ip-address>192.168.1.7</igp:ip-address>
186 </igp:igp-termination-point-attributes>
190 <node-id>bgp:7</node-id>
191 <ovsdb:ovs-version>20</ovsdb:ovs-version>
192 <igp:igp-node-attributes>
193 <isis:isis-node-attributes>
195 <isis:te-router-id-ipv4>192.168.1.4</isis:te-router-id-ipv4>
197 </isis:isis-node-attributes>
198 </igp:igp-node-attributes>
200 <tp-id>tp:7:1</tp-id>
201 <ovsdb:ofport>1119</ovsdb:ofport>
202 <ovsdb:name>portD</ovsdb:name>
203 <igp:igp-termination-point-attributes>
204 <igp:ip-address>192.168.1.8</igp:ip-address>
205 </igp:igp-termination-point-attributes>
208 <tp-id>tp:7:2</tp-id>
209 <ovsdb:ofport>1117</ovsdb:ofport>
210 <ovsdb:name>portC</ovsdb:name>
211 <igp:igp-termination-point-attributes>
212 <igp:ip-address>192.168.1.9</igp:ip-address>
213 </igp:igp-termination-point-attributes>
217 <node-id>bgp:8</node-id>
218 <ovsdb:ovs-version>21</ovsdb:ovs-version>
219 <igp:igp-node-attributes>
220 <isis:isis-node-attributes>
222 <isis:te-router-id-ipv4>192.168.2.4</isis:te-router-id-ipv4>
224 </isis:isis-node-attributes>
225 </igp:igp-node-attributes>
227 <tp-id>tp:8:1</tp-id>
228 <ovsdb:ofport>11120</ovsdb:ofport>
232 <node-id>bgp:9</node-id>
233 <ovsdb:ovs-version>25</ovsdb:ovs-version>
234 <igp:igp-node-attributes>
235 <isis:isis-node-attributes>
237 <isis:te-router-id-ipv4>192.168.2.5</isis:te-router-id-ipv4>
239 </isis:isis-node-attributes>
240 </igp:igp-node-attributes>
242 <tp-id>tp:9:1</tp-id>
243 <ovsdb:ofport>1121</ovsdb:ofport>
247 <node-id>bgp:10</node-id>
248 <ovsdb:ovs-version>25</ovsdb:ovs-version>
249 <igp:igp-node-attributes>
250 <isis:isis-node-attributes>
252 <isis:te-router-id-ipv4>192.168.2.3</isis:te-router-id-ipv4>
254 </isis:isis-node-attributes>
255 </igp:igp-node-attributes>
257 <tp-id>tp:10:1</tp-id>
258 <ovsdb:ofport>1122</ovsdb:ofport>
259 <ovsdb:name>portB</ovsdb:name>
260 <igp:igp-termination-point-attributes>
261 <igp:ip-address>192.168.2.9</igp:ip-address>
262 </igp:igp-termination-point-attributes>
267 NETWORK_UNDERLAY_TOPOLOGY_3 = '''<topology
268 xmlns="urn:TBD:params:xml:ns:yang:network-topology"
269 xmlns:igp="urn:TBD:params:xml:ns:yang:nt:l3-unicast-igp-topology"
270 xmlns:isis="urn:TBD:params:xml:ns:yang:network:isis-topology">
271 <topology-id>network-topo:3</topology-id>
273 <node-id>bgp:11</node-id>
274 <igp:igp-node-attributes>
275 <isis:isis-node-attributes>
277 <isis:te-router-id-ipv6>fe80:0:0:0:0:0:c0a8:103</isis:te-router-id-ipv6>
279 </isis:isis-node-attributes>
280 </igp:igp-node-attributes>
282 <tp-id>tp:11:1</tp-id>
283 <igp:igp-termination-point-attributes>
284 <igp:ip-address>fe80:0:0:0:0:0:c0a8:107</igp:ip-address>
285 </igp:igp-termination-point-attributes>
289 <node-id>bgp:12</node-id>
290 <igp:igp-node-attributes>
291 <isis:isis-node-attributes>
293 <isis:te-router-id-ipv6>fe80:0:0:0:0:0:c0a8:104</isis:te-router-id-ipv6>
295 </isis:isis-node-attributes>
296 </igp:igp-node-attributes>
299 <node-id>bgp:13</node-id>
300 <igp:igp-node-attributes>
301 <isis:isis-node-attributes>
303 <isis:te-router-id-ipv6>fe80:0:0:0:0:0:c0a8:204</isis:te-router-id-ipv6>
305 </isis:isis-node-attributes>
306 </igp:igp-node-attributes>
309 <node-id>bgp:14</node-id>
310 <igp:igp-node-attributes>
311 <isis:isis-node-attributes>
313 <isis:te-router-id-ipv6>fe80:0:0:0:0:0:c0a8:205</isis:te-router-id-ipv6>
315 </isis:isis-node-attributes>
316 </igp:igp-node-attributes>
318 <tp-id>tp:14:1</tp-id>
319 <igp:igp-termination-point-attributes>
320 <igp:ip-address>fe80:0:0:0:0:0:c0a8:207</igp:ip-address>
321 </igp:igp-termination-point-attributes>
324 <tp-id>tp:14:2</tp-id>
325 <igp:igp-termination-point-attributes>
326 <igp:ip-address>fe80:0:0:0:0:0:c0a8:209</igp:ip-address>
327 </igp:igp-termination-point-attributes>
331 <node-id>bgp:15</node-id>
332 <igp:igp-node-attributes>
333 <isis:isis-node-attributes>
335 <isis:te-router-id-ipv6>fe80:0:0:0:0:0:c0a8:203</isis:te-router-id-ipv6>
337 </isis:isis-node-attributes>
338 </igp:igp-node-attributes>
342 NETWORK_UNDERLAY_TOPOLOGY_4 = '''<topology
343 xmlns="urn:TBD:params:xml:ns:yang:network-topology"
344 xmlns:igp="urn:TBD:params:xml:ns:yang:nt:l3-unicast-igp-topology"
345 xmlns:isis="urn:TBD:params:xml:ns:yang:network:isis-topology">
346 <topology-id>network-topo:4</topology-id>
348 <node-id>bgp:16</node-id>
349 <igp:igp-node-attributes>
350 <isis:isis-node-attributes>
352 <isis:te-router-id-ipv4>192.168.1.1</isis:te-router-id-ipv4>
354 </isis:isis-node-attributes>
355 </igp:igp-node-attributes>
358 <node-id>bgp:17</node-id>
359 <igp:igp-node-attributes>
360 <isis:isis-node-attributes>
362 <isis:te-router-id-ipv4>192.168.1.2</isis:te-router-id-ipv4>
364 </isis:isis-node-attributes>
365 </igp:igp-node-attributes>
368 <node-id>bgp:18</node-id>
369 <igp:igp-node-attributes>
370 <isis:isis-node-attributes>
372 <isis:te-router-id-ipv4>192.168.2.1</isis:te-router-id-ipv4>
374 </isis:isis-node-attributes>
375 </igp:igp-node-attributes>
378 <node-id>bgp:19</node-id>
379 <igp:igp-node-attributes>
380 <isis:isis-node-attributes>
382 <isis:te-router-id-ipv4>192.168.2.2</isis:te-router-id-ipv4>
384 </isis:isis-node-attributes>
385 </igp:igp-node-attributes>
388 <node-id>bgp:20</node-id>
389 <igp:igp-node-attributes>
390 <isis:isis-node-attributes>
392 <isis:te-router-id-ipv4>192.168.2.1</isis:te-router-id-ipv4>
394 </isis:isis-node-attributes>
395 </igp:igp-node-attributes>
399 NETWORK_UNDERLAY_TOPOLOGY_5 = '''<topology
400 xmlns="urn:TBD:params:xml:ns:yang:network-topology"
401 xmlns:igp="urn:TBD:params:xml:ns:yang:nt:l3-unicast-igp-topology"
402 xmlns:isis="urn:TBD:params:xml:ns:yang:network:isis-topology"
403 xmlns:ovsdb="urn:opendaylight:params:xml:ns:yang:ovsdb">
404 <topology-id>network-topo:5</topology-id>
406 <node-id>bgp:21</node-id>
407 <igp:igp-node-attributes>
408 <isis:isis-node-attributes>
410 <isis:te-router-id-ipv4>192.168.1.1</isis:te-router-id-ipv4>
412 </isis:isis-node-attributes>
413 </igp:igp-node-attributes>
415 <tp-id>tp:21:1</tp-id>
416 <ovsdb:name>portA</ovsdb:name>
417 <igp:igp-termination-point-attributes>
418 <igp:ip-address>192.168.1.9</igp:ip-address>
419 </igp:igp-termination-point-attributes>
422 <tp-id>tp:21:2</tp-id>
423 <ovsdb:name>portA</ovsdb:name>
424 <igp:igp-termination-point-attributes>
425 <igp:ip-address>192.168.1.8</igp:ip-address>
426 </igp:igp-termination-point-attributes>
429 <tp-id>tp:21:3</tp-id>
430 <ovsdb:name>portA</ovsdb:name>
431 <igp:igp-termination-point-attributes>
432 <igp:ip-address>192.168.1.8</igp:ip-address>
433 </igp:igp-termination-point-attributes>
437 <node-id>bgp:22</node-id>
438 <igp:igp-node-attributes>
439 <isis:isis-node-attributes>
441 <isis:te-router-id-ipv4>192.168.1.2</isis:te-router-id-ipv4>
443 </isis:isis-node-attributes>
444 </igp:igp-node-attributes>
446 <tp-id>tp:22:1</tp-id>
447 <ovsdb:name>portA</ovsdb:name>
448 <igp:igp-termination-point-attributes>
449 <igp:ip-address>192.168.2.9</igp:ip-address>
450 </igp:igp-termination-point-attributes>
453 <tp-id>tp:22:2</tp-id>
454 <ovsdb:name>portB</ovsdb:name>
455 <igp:igp-termination-point-attributes>
456 <igp:ip-address>192.168.1.7</igp:ip-address>
457 </igp:igp-termination-point-attributes>
461 <node-id>bgp:23</node-id>
462 <igp:igp-node-attributes>
463 <isis:isis-node-attributes>
465 <isis:te-router-id-ipv4>192.168.2.1</isis:te-router-id-ipv4>
467 </isis:isis-node-attributes>
468 </igp:igp-node-attributes>
471 <node-id>bgp:24</node-id>
472 <igp:igp-node-attributes>
473 <isis:isis-node-attributes>
475 <isis:te-router-id-ipv4>192.168.2.2</isis:te-router-id-ipv4>
477 </isis:isis-node-attributes>
478 </igp:igp-node-attributes>
480 <tp-id>tp:24:1</tp-id>
481 <ovsdb:name>portA</ovsdb:name>
482 <igp:igp-termination-point-attributes>
483 <igp:ip-address>192.168.1.7</igp:ip-address>
484 </igp:igp-termination-point-attributes>
487 <tp-id>tp:24:2</tp-id>
488 <ovsdb:name>portA</ovsdb:name>
489 <igp:igp-termination-point-attributes>
490 <igp:ip-address>192.168.1.7</igp:ip-address>
491 </igp:igp-termination-point-attributes>
494 <tp-id>tp:24:3</tp-id>
495 <ovsdb:name>portB</ovsdb:name>
496 <igp:igp-termination-point-attributes>
497 <igp:ip-address>192.168.1.7</igp:ip-address>
498 </igp:igp-termination-point-attributes>
502 <node-id>bgp:25</node-id>
503 <igp:igp-node-attributes>
504 <isis:isis-node-attributes>
506 <isis:te-router-id-ipv4>192.168.2.1</isis:te-router-id-ipv4>
508 </isis:isis-node-attributes>
509 </igp:igp-node-attributes>
513 NETWORK_UNDERLAY_TOPOLOGY_6 = '''<topology
514 xmlns="urn:TBD:params:xml:ns:yang:network-topology"
515 xmlns:igp="urn:TBD:params:xml:ns:yang:nt:l3-unicast-igp-topology"
516 xmlns:isis="urn:TBD:params:xml:ns:yang:network:isis-topology">
517 <topology-id>network-topo:6</topology-id>
519 <node-id>bgp:26</node-id>
520 <igp:igp-node-attributes>
521 <isis:isis-node-attributes>
523 <isis:te-router-id-ipv4>192.168.1.1</isis:te-router-id-ipv4>
525 </isis:isis-node-attributes>
526 </igp:igp-node-attributes>
529 <node-id>bgp:27</node-id>
530 <igp:igp-node-attributes>
531 <isis:isis-node-attributes>
533 <isis:te-router-id-ipv4>192.168.1.2</isis:te-router-id-ipv4>
535 </isis:isis-node-attributes>
536 </igp:igp-node-attributes>
539 <node-id>bgp:28</node-id>
540 <igp:igp-node-attributes>
541 <isis:isis-node-attributes>
543 <isis:te-router-id-ipv4>192.168.2.1</isis:te-router-id-ipv4>
545 </isis:isis-node-attributes>
546 </igp:igp-node-attributes>
549 <node-id>bgp:29</node-id>
550 <igp:igp-node-attributes>
551 <isis:isis-node-attributes>
553 <isis:te-router-id-ipv4>192.168.2.1</isis:te-router-id-ipv4>
555 </isis:isis-node-attributes>
556 </igp:igp-node-attributes>
559 <node-id>bgp:30</node-id>
560 <igp:igp-node-attributes>
561 <isis:isis-node-attributes>
563 <isis:te-router-id-ipv4>192.168.2.3</isis:te-router-id-ipv4>
565 </isis:isis-node-attributes>
566 </igp:igp-node-attributes>
569 <link-id>link:26:28</link-id>
571 <source-node>bgp:26</source-node>
574 <dest-node>bgp:28</dest-node>
576 <igp:igp-link-attributes>
577 <igp:name>linkA</igp:name>
578 <igp:metric>17</igp:metric>
579 </igp:igp-link-attributes>
582 <link-id>link:28:29</link-id>
584 <source-node>bgp:28</source-node>
587 <dest-node>bgp:29</dest-node>
589 <igp:igp-link-attributes>
590 <igp:name>linkB</igp:name>
591 <igp:metric>11</igp:metric>
592 </igp:igp-link-attributes>
595 <link-id>link:29:30-1</link-id>
597 <source-node>bgp:29</source-node>
600 <dest-node>bgp:30</dest-node>
602 <igp:igp-link-attributes>
603 <igp:name>linkA</igp:name>
604 <igp:metric>12</igp:metric>
605 </igp:igp-link-attributes>
608 <link-id>link:29:30-2</link-id>
610 <source-node>bgp:29</source-node>
613 <dest-node>bgp:30</dest-node>
615 <igp:igp-link-attributes>
616 <igp:name>linkC</igp:name>
617 <igp:metric>12</igp:metric>
618 </igp:igp-link-attributes>
622 OPENFLOW_UNDERLAY_NODES = '''
624 xmlns="urn:opendaylight:inventory"
625 xmlns:flov-inv="urn:opendaylight:flow:inventory">
629 <id>openflow:1:1</id>
630 <flov-inv:port-number>1</flov-inv:port-number>
631 <flov-inv:maximum-speed>1</flov-inv:maximum-speed>
632 <flov-inv:name>portC</flov-inv:name>
635 <id>openflow:1:2</id>
636 <flov-inv:port-number>1</flov-inv:port-number>
638 <flov-inv:manufacturer>Pantheon Technologies</flov-inv:manufacturer>
639 <flov-inv:ip-address>192.168.1.1</flov-inv:ip-address>
640 <flov-inv:serial-number>19</flov-inv:serial-number>
645 <id>openflow:2:1</id>
646 <flov-inv:port-number>1</flov-inv:port-number>
647 <flov-inv:maximum-speed>1</flov-inv:maximum-speed>
648 <flov-inv:name>portB</flov-inv:name>
651 <id>openflow:2:2</id>
652 <flov-inv:port-number>2</flov-inv:port-number>
653 <flov-inv:maximum-speed>2</flov-inv:maximum-speed>
654 <flov-inv:name>portD</flov-inv:name>
657 <id>openflow:2:3</id>
658 <flov-inv:port-number>3</flov-inv:port-number>
659 <flov-inv:maximum-speed>3</flov-inv:maximum-speed>
660 <flov-inv:name>portA</flov-inv:name>
662 <flov-inv:manufacturer>Pantheon Technologies</flov-inv:manufacturer>
663 <flov-inv:ip-address>192.168.1.2</flov-inv:ip-address>
664 <flov-inv:serial-number>20</flov-inv:serial-number>
669 <id>openflow:3:1</id>
670 <flov-inv:port-number>2</flov-inv:port-number>
671 <flov-inv:maximum-speed>2</flov-inv:maximum-speed>
674 <id>openflow:3:2</id>
675 <flov-inv:port-number>2</flov-inv:port-number>
676 <flov-inv:maximum-speed>2</flov-inv:maximum-speed>
679 <id>openflow:3:3</id>
680 <flov-inv:port-number>1</flov-inv:port-number>
681 <flov-inv:maximum-speed>1</flov-inv:maximum-speed>
683 <flov-inv:manufacturer>Pantheon Technologies</flov-inv:manufacturer>
684 <flov-inv:ip-address>192.168.1.3</flov-inv:ip-address>
685 <flov-inv:serial-number>8</flov-inv:serial-number>
690 <id>openflow:4:1</id>
691 <flov-inv:port-number>1</flov-inv:port-number>
692 <flov-inv:maximum-speed>1</flov-inv:maximum-speed>
695 <id>openflow:4:2</id>
696 <flov-inv:port-number>1</flov-inv:port-number>
697 <flov-inv:maximum-speed>1</flov-inv:maximum-speed>
700 <id>openflow:4:3</id>
701 <flov-inv:port-number>1</flov-inv:port-number>
702 <flov-inv:maximum-speed>1</flov-inv:maximum-speed>
704 <flov-inv:manufacturer>Cisco</flov-inv:manufacturer>
705 <flov-inv:ip-address>192.168.2.1</flov-inv:ip-address>
706 <flov-inv:serial-number>21</flov-inv:serial-number>
711 <id>openflow:5:1</id>
712 <flov-inv:port-number>3</flov-inv:port-number>
713 <flov-inv:maximum-speed>3</flov-inv:maximum-speed>
714 <flov-inv:name>portB</flov-inv:name>
716 <flov-inv:manufacturer>Cisco</flov-inv:manufacturer>
717 <flov-inv:ip-address>192.168.2.2</flov-inv:ip-address>
718 <flov-inv:serial-number>25</flov-inv:serial-number>
722 <flov-inv:manufacturer>Pantheon Technologies</flov-inv:manufacturer>
723 <flov-inv:ip-address>192.168.1.1</flov-inv:ip-address>
724 <flov-inv:serial-number>26</flov-inv:serial-number>
728 <flov-inv:manufacturer>Pantheon Technologies</flov-inv:manufacturer>
729 <flov-inv:ip-address>192.168.2.3</flov-inv:ip-address>
730 <flov-inv:serial-number>19</flov-inv:serial-number>
734 <flov-inv:manufacturer>Cisco</flov-inv:manufacturer>
735 <flov-inv:ip-address>192.168.1.4</flov-inv:ip-address>
736 <flov-inv:serial-number>21</flov-inv:serial-number>
740 <flov-inv:manufacturer>Cisco</flov-inv:manufacturer>
741 <flov-inv:ip-address>192.168.2.3</flov-inv:ip-address>
742 <flov-inv:serial-number>21</flov-inv:serial-number>
746 <flov-inv:manufacturer>Cisco</flov-inv:manufacturer>
747 <flov-inv:ip-address>192.168.2.1</flov-inv:ip-address>
748 <flov-inv:serial-number>25</flov-inv:serial-number>
752 <flov-inv:manufacturer>Pantheon Technologies</flov-inv:manufacturer>
753 <flov-inv:ip-address>fe80:0:0:0:0:0:c0a8:103</flov-inv:ip-address>
754 <flov-inv:serial-number>29</flov-inv:serial-number>
758 <flov-inv:manufacturer>Pantheon Technologies</flov-inv:manufacturer>
759 <flov-inv:ip-address>fe80:0:0:0:0:0:c0a8:201</flov-inv:ip-address>
760 <flov-inv:serial-number>19</flov-inv:serial-number>
764 <flov-inv:manufacturer>Cisco</flov-inv:manufacturer>
765 <flov-inv:ip-address>fe80:0:0:0:0:0:c0a8:104</flov-inv:ip-address>
766 <flov-inv:serial-number>21</flov-inv:serial-number>
770 <flov-inv:manufacturer>Cisco</flov-inv:manufacturer>
771 <flov-inv:ip-address>fe80:0:0:0:0:0:c0a8:205</flov-inv:ip-address>
772 <flov-inv:serial-number>21</flov-inv:serial-number>
776 <flov-inv:manufacturer>Cisco</flov-inv:manufacturer>
777 <flov-inv:ip-address>fe80:0:0:0:0:0:c0a8:203</flov-inv:ip-address>
778 <flov-inv:serial-number>12</flov-inv:serial-number>
782 <flov-inv:manufacturer>Pantheon Technologies</flov-inv:manufacturer>
783 <flov-inv:ip-address>192.168.1.1</flov-inv:ip-address>
784 <flov-inv:serial-number>26</flov-inv:serial-number>
788 <flov-inv:manufacturer>Pantheon Technologies</flov-inv:manufacturer>
789 <flov-inv:ip-address>192.168.2.3</flov-inv:ip-address>
790 <flov-inv:serial-number>19</flov-inv:serial-number>
794 <flov-inv:manufacturer>Cisco</flov-inv:manufacturer>
795 <flov-inv:ip-address>192.168.2.4</flov-inv:ip-address>
796 <flov-inv:serial-number>21</flov-inv:serial-number>
800 <flov-inv:manufacturer>Cisco</flov-inv:manufacturer>
801 <flov-inv:ip-address>192.168.2.3</flov-inv:ip-address>
802 <flov-inv:serial-number>21</flov-inv:serial-number>
806 <flov-inv:manufacturer>Cisco</flov-inv:manufacturer>
807 <flov-inv:ip-address>192.168.2.3</flov-inv:ip-address>
808 <flov-inv:serial-number>25</flov-inv:serial-number>
812 <flov-inv:manufacturer>Pantheon Technologies</flov-inv:manufacturer>
813 <flov-inv:ip-address>192.168.1.1</flov-inv:ip-address>
814 <flov-inv:serial-number>19</flov-inv:serial-number>
816 <id>openflow:21:1</id>
817 <flov-inv:port-number>1</flov-inv:port-number>
818 <flov-inv:name>portC</flov-inv:name>
823 <flov-inv:manufacturer>Pantheon Technologies</flov-inv:manufacturer>
824 <flov-inv:ip-address>192.168.1.2</flov-inv:ip-address>
825 <flov-inv:serial-number>20</flov-inv:serial-number>
827 <id>openflow:22:1</id>
828 <flov-inv:port-number>2</flov-inv:port-number>
829 <flov-inv:name>portB</flov-inv:name>
832 <id>openflow:22:2</id>
833 <flov-inv:port-number>3</flov-inv:port-number>
834 <flov-inv:name>portD</flov-inv:name>
837 <id>openflow:22:3</id>
838 <flov-inv:port-number>1</flov-inv:port-number>
839 <flov-inv:name>portA</flov-inv:name>
844 <flov-inv:manufacturer>Pantheon Technologies</flov-inv:manufacturer>
845 <flov-inv:ip-address>192.168.1.3</flov-inv:ip-address>
846 <flov-inv:serial-number>8</flov-inv:serial-number>
850 <flov-inv:manufacturer>Cisco</flov-inv:manufacturer>
851 <flov-inv:ip-address>192.168.2.1</flov-inv:ip-address>
852 <flov-inv:serial-number>21</flov-inv:serial-number>
856 <flov-inv:manufacturer>Cisco</flov-inv:manufacturer>
857 <flov-inv:ip-address>192.168.2.2</flov-inv:ip-address>
858 <flov-inv:serial-number>25</flov-inv:serial-number>
860 <id>openflow:25:1</id>
861 <flov-inv:port-number>4</flov-inv:port-number>
862 <flov-inv:name>portB</flov-inv:name>
868 OPENFLOW_UNDERLAY_TOPOLOGY_1 = '''
870 xmlns="urn:TBD:params:xml:ns:yang:network-topology"
871 xmlns:inventory="urn:opendaylight:inventory"
872 xmlns:inventory-topo="urn:opendaylight:model:topology:inventory">
873 <topology-id>openflow-topo:1</topology-id>
875 <node-id>of-node:1</node-id>
876 <inventory-topo:inventory-node-ref>/inventory:nodes/inventory:node[inventory:id="openflow:1"]</inventory-topo:inventory-node-ref>
878 <tp-id>tp:1:1</tp-id>
879 <inventory-topo:inventory-node-connector-ref>
880 /inventory:nodes/inventory:node[inventory:id="openflow:1"]/inventory:node-connector[inventory:id="openflow:1:1"]
881 </inventory-topo:inventory-node-connector-ref>
884 <tp-id>tp:1:2</tp-id>
885 <inventory-topo:inventory-node-connector-ref>
886 /inventory:nodes/inventory:node[inventory:id="openflow:1"]/inventory:node-connector[inventory:id="openflow:1:2"]
887 </inventory-topo:inventory-node-connector-ref>
891 <node-id>of-node:2</node-id>
892 <inventory-topo:inventory-node-ref>/inventory:nodes/inventory:node[inventory:id="openflow:2"]</inventory-topo:inventory-node-ref>
894 <tp-id>tp:2:1</tp-id>
895 <inventory-topo:inventory-node-connector-ref>
896 /inventory:nodes/inventory:node[inventory:id="openflow:2"]/inventory:node-connector[inventory:id="openflow:2:1"]
897 </inventory-topo:inventory-node-connector-ref>
900 <tp-id>tp:2:2</tp-id>
901 <inventory-topo:inventory-node-connector-ref>
902 /inventory:nodes/inventory:node[inventory:id="openflow:2"]/inventory:node-connector[inventory:id="openflow:2:2"]
903 </inventory-topo:inventory-node-connector-ref>
906 <tp-id>tp:2:3</tp-id>
907 <inventory-topo:inventory-node-connector-ref>
908 /inventory:nodes/inventory:node[inventory:id="openflow:2"]/inventory:node-connector[inventory:id="openflow:2:3"]
909 </inventory-topo:inventory-node-connector-ref>
913 <node-id>of-node:3</node-id>
914 <inventory-topo:inventory-node-ref>/inventory:nodes/inventory:node[inventory:id="openflow:3"]</inventory-topo:inventory-node-ref>
916 <tp-id>tp:3:1</tp-id>
917 <inventory-topo:inventory-node-connector-ref>
918 /inventory:nodes/inventory:node[inventory:id="openflow:3"]/inventory:node-connector[inventory:id="openflow:3:1"]
919 </inventory-topo:inventory-node-connector-ref>
922 <tp-id>tp:3:2</tp-id>
923 <inventory-topo:inventory-node-connector-ref>
924 /inventory:nodes/inventory:node[inventory:id="openflow:3"]/inventory:node-connector[inventory:id="openflow:3:2"]
925 </inventory-topo:inventory-node-connector-ref>
928 <tp-id>tp:3:3</tp-id>
929 <inventory-topo:inventory-node-connector-ref>
930 /inventory:nodes/inventory:node[inventory:id="openflow:3"]/inventory:node-connector[inventory:id="openflow:3:3"]
931 </inventory-topo:inventory-node-connector-ref>
935 <node-id>of-node:4</node-id>
936 <inventory-topo:inventory-node-ref>/inventory:nodes/inventory:node[inventory:id="openflow:4"]</inventory-topo:inventory-node-ref>
938 <tp-id>tp:4:1</tp-id>
939 <inventory-topo:inventory-node-connector-ref>
940 /inventory:nodes/inventory:node[inventory:id="openflow:4"]/inventory:node-connector[inventory:id="openflow:4:1"]
941 </inventory-topo:inventory-node-connector-ref>
944 <tp-id>tp:4:2</tp-id>
945 <inventory-topo:inventory-node-connector-ref>
946 /inventory:nodes/inventory:node[inventory:id="openflow:4"]/inventory:node-connector[inventory:id="openflow:4:2"]
947 </inventory-topo:inventory-node-connector-ref>
950 <tp-id>tp:4:3</tp-id>
951 <inventory-topo:inventory-node-connector-ref>
952 /inventory:nodes/inventory:node[inventory:id="openflow:4"]/inventory:node-connector[inventory:id="openflow:4:3"]
953 </inventory-topo:inventory-node-connector-ref>
957 <node-id>of-node:5</node-id>
958 <inventory-topo:inventory-node-ref>/inventory:nodes/inventory:node[inventory:id="openflow:5"]</inventory-topo:inventory-node-ref>
960 <tp-id>tp:5:1</tp-id>
961 <inventory-topo:inventory-node-connector-ref>
962 /inventory:nodes/inventory:node[inventory:id="openflow:5"]/inventory:node-connector[inventory:id="openflow:5:1"]
963 </inventory-topo:inventory-node-connector-ref>
969 OPENFLOW_UNDERLAY_TOPOLOGY_2 = '''
971 xmlns="urn:TBD:params:xml:ns:yang:network-topology"
972 xmlns:inventory="urn:opendaylight:inventory"
973 xmlns:inventory-topo="urn:opendaylight:model:topology:inventory">
974 <topology-id>openflow-topo:2</topology-id>
976 <node-id>of-node:6</node-id>
977 <inventory-topo:inventory-node-ref>/inventory:nodes/inventory:node[inventory:id="openflow:6"]</inventory-topo:inventory-node-ref>
980 <node-id>of-node:7</node-id>
981 <inventory-topo:inventory-node-ref>/inventory:nodes/inventory:node[inventory:id="openflow:7"]</inventory-topo:inventory-node-ref>
984 <node-id>of-node:8</node-id>
985 <inventory-topo:inventory-node-ref>/inventory:nodes/inventory:node[inventory:id="openflow:8"]</inventory-topo:inventory-node-ref>
988 <node-id>of-node:9</node-id>
989 <inventory-topo:inventory-node-ref>/inventory:nodes/inventory:node[inventory:id="openflow:9"]</inventory-topo:inventory-node-ref>
992 <node-id>of-node:10</node-id>
993 <inventory-topo:inventory-node-ref>/inventory:nodes/inventory:node[inventory:id="openflow:10"]</inventory-topo:inventory-node-ref>
998 OPENFLOW_UNDERLAY_TOPOLOGY_3 = '''
1000 xmlns="urn:TBD:params:xml:ns:yang:network-topology"
1001 xmlns:inventory="urn:opendaylight:inventory"
1002 xmlns:inventory-topo="urn:opendaylight:model:topology:inventory"
1003 xmlns:igp="urn:TBD:params:xml:ns:yang:nt:l3-unicast-igp-topology">
1004 <topology-id>openflow-topo:3</topology-id>
1006 <node-id>of-node:11</node-id>
1007 <inventory-topo:inventory-node-ref>/inventory:nodes/inventory:node[inventory:id="openflow:11"]</inventory-topo:inventory-node-ref>
1010 <node-id>of-node:12</node-id>
1011 <inventory-topo:inventory-node-ref>/inventory:nodes/inventory:node[inventory:id="openflow:12"]</inventory-topo:inventory-node-ref>
1014 <node-id>of-node:13</node-id>
1015 <inventory-topo:inventory-node-ref>/inventory:nodes/inventory:node[inventory:id="openflow:13"]</inventory-topo:inventory-node-ref>
1018 <node-id>of-node:14</node-id>
1019 <inventory-topo:inventory-node-ref>/inventory:nodes/inventory:node[inventory:id="openflow:14"]</inventory-topo:inventory-node-ref>
1022 <node-id>of-node:15</node-id>
1023 <inventory-topo:inventory-node-ref>/inventory:nodes/inventory:node[inventory:id="openflow:15"]</inventory-topo:inventory-node-ref>
1026 <link-id>link:11:12</link-id>
1028 <source-node>of-node:11</source-node>
1031 <dest-node>of-node:12</dest-node>
1033 <igp:igp-link-attributes>
1034 <igp:name>linkB</igp:name>
1035 <igp:metric>16</igp:metric>
1036 </igp:igp-link-attributes>
1039 <link-id>link:14:12</link-id>
1041 <source-node>of-node:14</source-node>
1044 <dest-node>of-node:12</dest-node>
1046 <igp:igp-link-attributes>
1047 <igp:name>linkC</igp:name>
1048 <igp:metric>14</igp:metric>
1049 </igp:igp-link-attributes>
1052 <link-id>link:15:13</link-id>
1054 <source-node>of-node:15</source-node>
1057 <dest-node>of-node:13</dest-node>
1059 <igp:igp-link-attributes>
1060 <igp:name>linkD</igp:name>
1061 <igp:metric>15</igp:metric>
1062 </igp:igp-link-attributes>
1065 <link-id>link:11:13</link-id>
1067 <source-node>of-node:11</source-node>
1070 <dest-node>of-node:13</dest-node>
1072 <igp:igp-link-attributes>
1073 <igp:name>linkA</igp:name>
1074 <igp:metric>13</igp:metric>
1075 </igp:igp-link-attributes>
1079 OPENFLOW_UNDERLAY_TOPOLOGY_4 = '''
1081 xmlns="urn:TBD:params:xml:ns:yang:network-topology"
1082 xmlns:inventory="urn:opendaylight:inventory"
1083 xmlns:inventory-topo="urn:opendaylight:model:topology:inventory">
1084 <topology-id>openflow-topo:4</topology-id>
1086 <node-id>of-node:16</node-id>
1087 <inventory-topo:inventory-node-ref>/inventory:nodes/inventory:node[inventory:id="openflow:16"]</inventory-topo:inventory-node-ref>
1090 <node-id>of-node:17</node-id>
1091 <inventory-topo:inventory-node-ref>/inventory:nodes/inventory:node[inventory:id="openflow:17"]</inventory-topo:inventory-node-ref>
1094 <node-id>of-node:18</node-id>
1095 <inventory-topo:inventory-node-ref>/inventory:nodes/inventory:node[inventory:id="openflow:18"]</inventory-topo:inventory-node-ref>
1098 <node-id>of-node:19</node-id>
1099 <inventory-topo:inventory-node-ref>/inventory:nodes/inventory:node[inventory:id="openflow:19"]</inventory-topo:inventory-node-ref>
1102 <node-id>of-node:20</node-id>
1103 <inventory-topo:inventory-node-ref>/inventory:nodes/inventory:node[inventory:id="openflow:20"]</inventory-topo:inventory-node-ref>
1108 OPENFLOW_UNDERLAY_TOPOLOGY_5 = '''
1110 xmlns="urn:TBD:params:xml:ns:yang:network-topology"
1111 xmlns:inventory="urn:opendaylight:inventory"
1112 xmlns:inventory-topo="urn:opendaylight:model:topology:inventory">
1113 <topology-id>openflow-topo:5</topology-id>
1115 <node-id>of-node:21</node-id>
1116 <inventory-topo:inventory-node-ref>/inventory:nodes/inventory:node[inventory:id="openflow:21"]</inventory-topo:inventory-node-ref>
1119 <inventory-topo:inventory-node-connector-ref>
1120 /inventory:nodes/inventory:node[inventory:id="openflow:21"]/inventory:node-connector[inventory:id="openflow:21:1"]
1121 </inventory-topo:inventory-node-connector-ref>
1122 </termination-point>
1125 <node-id>of-node:22</node-id>
1126 <inventory-topo:inventory-node-ref>/inventory:nodes/inventory:node[inventory:id="openflow:22"]</inventory-topo:inventory-node-ref>
1129 <inventory-topo:inventory-node-connector-ref>
1130 /inventory:nodes/inventory:node[inventory:id="openflow:22"]/inventory:node-connector[inventory:id="openflow:22:1"]
1131 </inventory-topo:inventory-node-connector-ref>
1132 </termination-point>
1135 <inventory-topo:inventory-node-connector-ref>
1136 /inventory:nodes/inventory:node[inventory:id="openflow:22"]/inventory:node-connector[inventory:id="openflow:22:2"]
1137 </inventory-topo:inventory-node-connector-ref>
1138 </termination-point>
1141 <inventory-topo:inventory-node-connector-ref>
1142 /inventory:nodes/inventory:node[inventory:id="openflow:22"]/inventory:node-connector[inventory:id="openflow:22:3"]
1143 </inventory-topo:inventory-node-connector-ref>
1144 </termination-point>
1147 <node-id>of-node:23</node-id>
1148 <inventory-topo:inventory-node-ref>/inventory:nodes/inventory:node[inventory:id="openflow:23"]</inventory-topo:inventory-node-ref>
1151 <node-id>of-node:24</node-id>
1152 <inventory-topo:inventory-node-ref>/inventory:nodes/inventory:node[inventory:id="openflow:24"]</inventory-topo:inventory-node-ref>
1155 <node-id>of-node:25</node-id>
1156 <inventory-topo:inventory-node-ref>/inventory:nodes/inventory:node[inventory:id="openflow:25"]</inventory-topo:inventory-node-ref>
1159 <inventory-topo:inventory-node-connector-ref>
1160 /inventory:nodes/inventory:node[inventory:id="openflow:25"]/inventory:node-connector[inventory:id="openflow:25:1"]
1161 </inventory-topo:inventory-node-connector-ref>
1162 </termination-point>
1167 OPENFLOW_UNDERLAY_TOPOLOGY_6 = '''
1169 xmlns="urn:TBD:params:xml:ns:yang:network-topology"
1170 xmlns:inventory="urn:opendaylight:inventory"
1171 xmlns:inventory-topo="urn:opendaylight:model:topology:inventory">
1172 <topology-id>openflow-topo:6</topology-id>
1174 <node-id>of-node:26</node-id>
1175 <inventory-topo:inventory-node-ref>/inventory:nodes/inventory:node[inventory:id="openflow:6"]</inventory-topo:inventory-node-ref>
1178 <node-id>of-node:27</node-id>
1179 <inventory-topo:inventory-node-ref>/inventory:nodes/inventory:node[inventory:id="openflow:7"]</inventory-topo:inventory-node-ref>
1182 <node-id>of-node:28</node-id>
1183 <inventory-topo:inventory-node-ref>/inventory:nodes/inventory:node[inventory:id="openflow:8"]</inventory-topo:inventory-node-ref>
1186 <node-id>of-node:29</node-id>
1187 <inventory-topo:inventory-node-ref>/inventory:nodes/inventory:node[inventory:id="openflow:9"]</inventory-topo:inventory-node-ref>
1190 <node-id>of-node:30</node-id>
1191 <inventory-topo:inventory-node-ref>/inventory:nodes/inventory:node[inventory:id="openflow:10"]</inventory-topo:inventory-node-ref>