Charles Chan
Committed by Gerrit Code Review

Update and Remove some network-cfg.json sample

Remove network-cfg
    Each app has its own way to interpret the config.
    Therefore it doesn't make sense to keep a generic one
    In long term, each app should have a json schema that explain the meaning
Remove network-cfg-fabric4x4
    It does not provide more info than 2x2
Remove network-cfg-fabric2x2-default-route and network-cfg-fabric2x2-xconnect
    Keeping features in different configs doesn't help much but make people confused
    Also it's hard to maintain so many samples
Add network-cfg-fabric-2x2-all
    Full fabric config with readme
    The html documentation is just temporary. We will have a json schema
Rename/update network-cfg-fabric-2x2-min.json
    Minimum config required by the fabric

Change-Id: I93332d8166c264b9dbb7819b90099c2f19fcf3b5
The onos-config command will copy files contained in this directory to ONOS
instances according to cell definition.
NOTE: Please remember to rename the network config to network-cfg.json if
you copy it from the samples directory
\ No newline at end of file
......
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta http-equiv="Content-Style-Type" content="text/css">
<title></title>
<meta name="Generator" content="Cocoa HTML Writer">
<meta name="CocoaVersion" content="1404.34">
<style type="text/css">
p.p1 {margin: 0.0px 0.0px 0.0px 0.0px; line-height: 14.0px; font: 12.0px Menlo; color: #0433ff; -webkit-text-stroke: #0433ff}
p.p2 {margin: 0.0px 0.0px 0.0px 0.0px; line-height: 14.0px; font: 12.0px Menlo; color: #ff9300; -webkit-text-stroke: #ff9300}
p.p3 {margin: 0.0px 0.0px 0.0px 0.0px; line-height: 14.0px; font: 12.0px Menlo; color: #ff40ff; -webkit-text-stroke: #ff40ff}
p.p4 {margin: 0.0px 0.0px 0.0px 0.0px; line-height: 14.0px; font: 12.0px Menlo; color: #77bb41; -webkit-text-stroke: #77bb41}
p.p5 {margin: 0.0px 0.0px 0.0px 0.0px; line-height: 14.0px; font: 12.0px Menlo; color: #00c7fc; -webkit-text-stroke: #00c7fc}
p.p6 {margin: 0.0px 0.0px 0.0px 0.0px; line-height: 14.0px; font: 12.0px Menlo; color: #ff2600; -webkit-text-stroke: #ff2600}
p.p7 {margin: 0.0px 0.0px 0.0px 0.0px; line-height: 14.0px; font: 12.0px Menlo; color: #000000; -webkit-text-stroke: #000000}
span.s1 {font-kerning: none}
span.s2 {font-kerning: none; color: #0433ff; -webkit-text-stroke: 0px #0433ff}
span.s3 {font-kerning: none; color: #000000; -webkit-text-stroke: 0px #000000}
span.s4 {font-kerning: none; color: #ff40ff; -webkit-text-stroke: 0px #ff40ff}
span.s5 {font-kerning: none; color: #ff9300; -webkit-text-stroke: 0px #ff9300}
span.s6 {font-kerning: none; color: #77bb41; -webkit-text-stroke: 0px #77bb41}
span.s7 {font-kerning: none; color: #00c7fc; -webkit-text-stroke: 0px #00c7fc}
span.s8 {font-kerning: none; color: #ff2600; -webkit-text-stroke: 0px #ff2600}
span.s9 {font-kerning: none; color: #669c35; -webkit-text-stroke: 0px #669c35}
span.Apple-tab-span {white-space:pre}
</style>
</head>
<body>
<p class="p1"><span class="s1">Blue: standard fabric operation</span></p>
<p class="p2"><span class="s1">Orange: vSG LAN connectivity (cross-connect)</span></p>
<p class="p3"><span class="s1">Magenta: vSG WAN connectivity (default route)</span></p>
<p class="p4"><span class="s1">Green: vRouter integration</span></p>
<p class="p5"><span class="s1">Light Blue: PIM integration</span></p>
<p class="p6"><span class="s1">Red: Link validation</span></p>
<p class="p7"><span class="s1"><br>
</span></p>
<p class="p7"><span class="s1">{</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">    </span>"ports" : {</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">    </span>"of:0000000000000001/5" : { </span><span class="s2">// connects to node 1</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">        </span>"interfaces" : [</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">            </span>{<span class="Apple-tab-span"> </span></span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">                </span>"ips" : [ "10.0.1.254/24" ] </span><span class="s2">// subnet of node 1</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">            </span>},</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">            </span>{</span></p>
<p class="p2"><span class="s3"><span class="Apple-converted-space">                </span>"vlan" : "69" </span><span class="s1">// cross-connect s-tag 69 to Fujitsu OLT</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">            </span>},</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">            </span>{</span></p>
<p class="p2"><span class="s3"><span class="Apple-converted-space">                </span>"vlan" : "222" </span><span class="s1">// cross-connect s-tag 222 to PMC OLT</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">            </span>},</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">            </span>{</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">                </span>"ips" : [ "A.A.A.A/32" ] </span><span class="s4">// vSG1 public IP address /32</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">            </span>},</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">            </span>{</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">                </span>"ips" : [ "B.B.B.B/32" ] </span><span class="s4">// vSG2 public IP address /32</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">            </span>}</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">        </span>]</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">    </span>},</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">    </span>"of:0000000000000001/7" : { </span><span class="s2">// connect to node 3</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">        </span>"interfaces" : [</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">            </span>{</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">                </span>"ips" : [ "10.0.1.254/24" ] </span><span class="s2">// subnet of node 3</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">            </span>}</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">        </span>]</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">    </span>},</span></p>
<p class="p3"><span class="s3"><span class="Apple-converted-space">    </span>"of:0000000000000001/30" : { </span><span class="s1">// connect to vSG3 directly without OLT (temporary)</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">        </span>"interfaces" : [</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">            </span>{</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">                </span>"ips" : [ "C.C.C.C/32" ] </span><span class="s4">// vSG3 /32 public IP address</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">            </span>}</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">        </span>]</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">    </span>},</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">    </span>"of:0000000000000001/65" : { </span><span class="s5">// connect to Fujitsu OLT</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">        </span>"interfaces" : [</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">            </span>{</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">                </span>"name" : "fujitsu-olt", </span><span class="s5">// unused</span></p>
<p class="p2"><span class="s3"><span class="Apple-converted-space">                </span>"vlan" : "69" </span><span class="s1">// cross-connect s-tag 69<span class="Apple-converted-space">  </span>to vSG</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">            </span>}</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">        </span>]</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">    </span>},</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">    </span>"of:0000000000000001/73" : { </span><span class="s5">// connect to PMC OLT</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">        </span>"interfaces" : [</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">            </span>{</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">                </span>"name" : "pmc-olt", </span><span class="s5">// unused</span></p>
<p class="p2"><span class="s3"><span class="Apple-converted-space">                </span>"vlan" : "222" </span><span class="s1">// cross-connect s-tag 222 to vSG</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">            </span>}</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">        </span>]</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">    </span>},</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">    </span>"of:0000000000000002/5" : { </span><span class="s2">// connect to node 2</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">        </span>"interfaces" : [</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">            </span>{</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">                </span>"ips" : [ "10.0.2.254/24" ] </span><span class="s2">// subnet of node 2</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">            </span>}</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">        </span>]</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">    </span>},</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">    </span>"of:0000000000000002/32" : { </span><span class="s6">// connect to Internet router</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">        </span>"interfaces" : [</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">            </span>{</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">                </span>"name" : "external-quagga", </span><span class="s6">// Internet router interface name</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">                </span>"ips" : [ "10.231.254.202/30", "10.231.254.223/32" ], </span><span class="s6">// Quagga IP addresses</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">                </span>"mac" : "00:16:3e:56:2b:48" </span><span class="s6">// Quagga WAN MAC</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">            </span>}</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">        </span>],</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">        </span>"pimInterface" : { </span><span class="s7">// PIM configuration</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">            </span>"interfaceName" : "external-quagga", </span><span class="s7">// port that faces the Internet router</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">            </span>"enabled" : true,</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">            </span>"helloInterval" : 1,</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">            </span>"holdTime" : 3,</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">            </span>"propagationDelay" : 500,</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">            </span>"overrideInterval" : 2500</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">         </span>}</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">    </span>}</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">    </span>},</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">    </span>"devices" : {</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">        </span>"of:0000000000000001" : { </span><span class="s2">// fabric leaf 1</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">            </span>"segmentrouting" : {</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">                </span>"name" : "Leaf-R1",</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">                </span>"nodeSid" : 101, </span><span class="s2">// segment router SID</span></p>
<p class="p1"><span class="s3"><span class="Apple-converted-space">                </span>"routerIp" : "10.0.1.254", </span><span class="s1">// segment router IP (default gateway of compute nodes)</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">                </span>"routerMac" : "00:00:00:00:01:80", </span><span class="s2">// segment router MAC</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">                </span>"isEdgeRouter" : true, </span><span class="s2">// true if this is a leaf router</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">                </span>"adjacencySids" : [] </span><span class="s2">// unused<span class="Apple-converted-space"> </span></span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">            </span>}</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">        </span>},</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">        </span>"of:0000000000000002" : { </span><span class="s2">// fabric leaf 2 DPID</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">            </span>"segmentrouting" : {</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">                </span>"name" : "Leaf-R2",</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">                </span>"nodeSid" : 102,</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">                </span>"routerIp" : "10.0.2.254",</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">                </span>"routerMac" : "00:00:00:00:02:80",</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">                </span>"isEdgeRouter" : true,</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">                </span>"adjacencySids" : []</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">            </span>}</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">        </span>},</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">        </span>"of:0000000000000191" : { </span><span class="s2">// fabric spine 1 DPID</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">            </span>"segmentrouting" : {</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">                </span>"name" : "Spine-R1",</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">                </span>"nodeSid" : 103,</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">                </span>"routerIp" : "192.168.0.11",</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">                </span>"routerMac" : "00:00:01:00:11:80",</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">                </span>"isEdgeRouter" : false,</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">                </span>"adjacencySids" : []</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">            </span>}</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">        </span>},</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">        </span>"of:0000000000000192" : { </span><span class="s2">// fabric spine 2 DPID</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">            </span>"segmentrouting" : {</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">                </span>"name" : "Spine-R2",</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">                </span>"nodeSid" : 104,</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">                </span>"routerIp" : "192.168.0.22",</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">                </span>"routerMac" : "00:00:01:00:22:80",</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">                </span>"isEdgeRouter" : false,</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">                </span>"adjacencySids" : []</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">            </span>}</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">        </span>}</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">    </span>},</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">    </span>"hosts" : {</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">        </span>"00:02:c9:1e:b1:20/-1" : { </span><span class="s2">// node 1</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">            </span>"basic": {</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">                </span>"ips": ["10.0.1.1"], </span><span class="s2">// node 1 IP</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">                </span>"location": "of:0000000000000001/5" </span><span class="s2">// node 1 location</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">            </span>}</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">        </span>},</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">        </span>"02:42:cf:8d:c0:82/-1" : { </span><span class="s4">// vSG1</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">            </span>"basic": {</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">                </span>"ips": ["A.A.A.A"], </span><span class="s4">// vSG1 public IP address</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">                </span>"location": "of:0000000000000001/5"</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">            </span>}</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">        </span>},</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">        </span>"02:42:cf:8d:c0:83/-1" : { </span><span class="s4">// vSG2</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">            </span>"basic": {</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">                </span>"ips": ["B.B.B.B"], </span><span class="s4">// vSG2 public IP address</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">                </span>"location": "of:0000000000000001/5"</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">            </span>}</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">        </span>},</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">        </span>"00:02:c9:1e:b4:e0/-1" : { </span><span class="s2">// node 2</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">            </span>"basic": {</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">                </span>"ips": ["10.0.1.2"],</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">                </span>"location": "of:0000000000000001/7"</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">            </span>}</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">        </span>},</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">        </span>"74:44:01:74:61:92/-1" : { </span><span class="s4">// vSG3</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">            </span>"basic": {</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">                </span>"ips": ["C.C.C.C"], </span><span class="s4">// vSG3 public IP address</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">                </span>"location": "of:0000000000000001/30"</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">            </span>}</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">        </span>},</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">        </span>"00:02:c9:1e:b4:60/-1" : { </span><span class="s2">// node 2</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">            </span>"basic": {</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">                </span>"ips": ["10.0.2.1"], </span><span class="s2">// node 2 IP</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">                </span>"location": "of:0000000000000002/5"</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">            </span>}</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">        </span>}</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">    </span>},</span></p>
<p class="p6"><span class="s3"><span class="Apple-converted-space">    </span>"links" : { </span><span class="s1">// list of expected links</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">        </span>"of:0000000000000001/1-of:0000000000000191/1" : {</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">            </span>"basic" : {}</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">        </span>},</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">        </span>"of:0000000000000001/3-of:0000000000000192/1" : {</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">            </span>"basic" : {}</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">        </span>},</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">        </span>"of:0000000000000002/1-of:0000000000000191/3" : {</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">            </span>"basic" : {}</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">        </span>},</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">        </span>"of:0000000000000002/3-of:0000000000000192/3" : {</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">            </span>"basic" : {}</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">        </span>},</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">        </span>"of:0000000000000191/1-of:0000000000000001/1" : {</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">            </span>"basic" : {}</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">        </span>},</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">        </span>"of:0000000000000192/1-of:0000000000000001/3" : {</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">            </span>"basic" : {}</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">        </span>},</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">        </span>"of:0000000000000191/3-of:0000000000000002/1" : {</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">            </span>"basic" : {}</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">        </span>},</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">        </span>"of:0000000000000192/3-of:0000000000000002/3" : {</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">            </span>"basic" : {}</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">        </span>}</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">    </span>},</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">    </span>"apps" : {</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">        </span>"org.onosproject.core" : {</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">            </span>"core" : {</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">                </span>"linkDiscoveryMode" : "STRICT" </span><span class="s8">// enable strict link validation</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">            </span>} <span class="Apple-converted-space">   </span></span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">        </span>},</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">        </span>"org.onosproject.segmentrouting" : {</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">            </span>"segmentrouting" : {</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">                </span>"vRouterMacs" : [</span></p>
<p class="p3"><span class="s3"><span class="Apple-converted-space">                    </span>"a4:23:05:34:56:78" </span><span class="s1">// vRouter LAN MAC (vSG’s default gateway)</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">                </span>],</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">                </span>"vRouterId" : "of:0000000000000002", </span><span class="s4">// vRouter DPID (0/0 is replaced by this)</span></p>
<p class="p4"><span class="s3"><span class="Apple-converted-space">                 </span>"suppressSubnet" : [ </span><span class="s1">// Do not push subnet rules for these ports</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">                    </span>"of:0000000000000002/31", "of:0000000000000002/32"</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">                </span>],</span></p>
<p class="p4"><span class="s3"><span class="Apple-converted-space">                </span>"suppressHost" : [ </span><span class="s1">// Do not push host rules for these ports</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">                    </span>"of:0000000000000001/65", "of:0000000000000001/73",</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">                    </span>"of:0000000000000002/31", "of:0000000000000002/32"</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">                </span>]</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">            </span>}</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">        </span>},</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">        </span>"org.onosproject.router" : {</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">            </span>"router" : {</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">                </span>"controlPlaneConnectPoint" : "of:0000000000000002/31", </span><span class="s6">// location of Quagga</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">                </span>"ospfEnabled" : "true", </span><span class="s6">// enable OSPF</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">                </span>"pimEnabled" : "true", </span><span class="s7">// enable PIM</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">                </span>"interfaces" : [ "external-quagga" ] </span><span class="s9">// </span><span class="s6">VR only handles peers on these ports</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">            </span>}</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">        </span>}</span></p>
<p class="p7"><span class="s1"><span class="Apple-converted-space">    </span>}</span></p>
<p class="p7"><span class="s1">}</span></p>
</body>
</html>
{
"ports" : {
"of:0000000000000001/3" : {
"of:0000000000000001/5" : {
"interfaces" : [
{
"ips" : [ "10.0.1.254/24" ],
"vlan" : "-1"
},
{
"vlan" : "100"
}
{
"ips" : [ "10.0.1.254/24" ]
},
{
"vlan" : "20"
},
{
"vlan" : "10"
},
{
"vlan" : "222"
},
{
"ips" : [
"A.A.A.146/32", "A.A.A.147/32", "A.A.A.148/32", "A.A.A.149/32",
"A.A.A.150/32", "A.A.A.151/32", "A.A.A.152/32", "A.A.A.153/32"
]
}
]
},
"of:0000000000000001/4" : {
"of:0000000000000001/7" : {
"interfaces" : [
{
"ips" : [ "10.0.1.254/24" ],
"vlan" : "-1"
}
{
"ips" : [ "10.0.1.254/24" ]
}
]
},
"of:0000000000000001/5" : {
"of:0000000000000001/65" : {
"interfaces" : [
{
"vlan" : "100"
"name" : "fujitsu-olt",
"vlan" : "20"
}
]
},
"of:0000000000000002/3" : {
"of:0000000000000001/73" : {
"interfaces" : [
{
"ips" : [ "10.0.2.254/24" ],
"vlan" : "-1"
}
{
"name" : "pmc-olt",
"vlan" : "10"
},
{
"vlan" : "222"
}
]
},
"of:0000000000000002/4" : {
"of:0000000000000002/5" : {
"interfaces" : [
{
"ips" : [ "10.0.2.254/24" ],
"vlan" : "-1"
}
{
"ips" : [ "10.0.2.254/24" ]
},
{
"ips" : [ "A.A.A.130/32", "A.A.A.131/32" ]
}
]
},
"of:0000000000000002/32" : {
"interfaces" : [
{
"name" : "internet-router",
"ips" : [ "10.231.254.202/30" ],
"mac" : "00:16:3e:4b:5a:04"
}
],
"pimInterface" : {
"interfaceName" : "internet-router",
"enabled" : true,
"helloInterval" : 1,
"holdTime" : 3,
"propagationDelay" : 500,
"overrideInterval" : 2500
}
}
},
"devices" : {
......@@ -86,28 +119,138 @@
}
},
"hosts" : {
"00:00:00:00:00:01/-1" : {
"00:02:c9:1e:b1:20/-1" : {
"basic": {
"ips": ["10.0.1.1"],
"location": "of:0000000000000001/3"
"location": "of:0000000000000001/5"
}
},
"00:00:00:00:00:02/-1" : {
"00:02:c9:1e:b4:e0/-1" : {
"basic": {
"ips": ["10.0.1.2"],
"location": "of:0000000000000001/4"
"location": "of:0000000000000001/7"
}
},
"00:00:00:00:00:03/-1" : {
"00:02:c9:1e:b4:60/-1" : {
"basic": {
"ips": ["10.0.2.1"],
"location": "of:0000000000000002/3"
"location": "of:0000000000000002/5"
}
},
"00:00:00:00:00:04/-1" : {
"fa:16:3e:f9:2d:96/-1" : {
"basic": {
"ips": ["10.0.2.2"],
"location": "of:0000000000000002/4"
"ips": ["A.A.A.130"],
"location": "of:0000000000000002/5"
}
},
"FA:16:3E:2D:11:D4/-1" : {
"basic": {
"ips": ["A.A.A.134"],
"location": "of:0000000000000002/5"
}
},
"02:42:cf:8d:c0:92/-1" : {
"basic": {
"ips": ["A.A.A.146"],
"location": "of:0000000000000001/5"
}
},
"02:42:cf:8d:c0:93/-1" : {
"basic": {
"ips": ["A.A.A.147"],
"location": "of:0000000000000001/5"
}
},
"02:42:cf:8d:c0:94/-1" : {
"basic": {
"ips": ["A.A.A.148"],
"location": "of:0000000000000001/5"
}
},
"02:42:cf:8d:c0:95/-1" : {
"basic": {
"ips": ["A.A.A.149"],
"location": "of:0000000000000001/5"
}
},
"02:42:cf:8d:c0:96/-1" : {
"basic": {
"ips": ["A.A.A.150"],
"location": "of:0000000000000001/5"
}
},
"02:42:cf:8d:c0:97/-1" : {
"basic": {
"ips": ["A.A.A.151"],
"location": "of:0000000000000001/5"
}
},
"02:42:cf:8d:c0:98/-1" : {
"basic": {
"ips": ["A.A.A.152"],
"location": "of:0000000000000001/5"
}
},
"02:42:cf:8d:c0:99/-1" : {
"basic": {
"ips": ["A.A.A.153"],
"location": "of:0000000000000001/5"
}
}
},
"links" : {
"of:0000000000000001/1-of:0000000000000191/1" : {
"basic" : {}
},
"of:0000000000000001/3-of:0000000000000192/1" : {
"basic" : {}
},
"of:0000000000000002/1-of:0000000000000191/3" : {
"basic" : {}
},
"of:0000000000000002/3-of:0000000000000192/3" : {
"basic" : {}
},
"of:0000000000000191/1-of:0000000000000001/1" : {
"basic" : {}
},
"of:0000000000000192/1-of:0000000000000001/3" : {
"basic" : {}
},
"of:0000000000000191/3-of:0000000000000002/1" : {
"basic" : {}
},
"of:0000000000000192/3-of:0000000000000002/3" : {
"basic" : {}
}
},
"apps" : {
"org.onosproject.core" : {
"core" : {
"linkDiscoveryMode" : "STRICT"
}
},
"org.onosproject.segmentrouting" : {
"segmentrouting" : {
"vRouterMacs" : [
"a4:23:05:34:56:78", "a4:23:05:34:56:79"
],
"vRouterId" : "of:0000000000000002",
"suppressSubnet" : [
"of:0000000000000002/31", "of:0000000000000002/32"
],
"suppressHost" : [
"of:0000000000000001/65", "of:0000000000000001/73",
"of:0000000000000002/31", "of:0000000000000002/32"
]
}
},
"org.onosproject.router" : {
"router" : {
"controlPlaneConnectPoint" : "of:0000000000000002/31",
"ospfEnabled" : "true",
"pimEnabled" : "true",
"interfaces" : [ "internet-router" ]
}
}
}
......
......@@ -3,32 +3,28 @@
"of:0000000000000001/3" : {
"interfaces" : [
{
"ips" : [ "10.0.1.254/24" ],
"vlan" : "-1"
"ips" : [ "10.0.1.254/24" ]
}
]
},
"of:0000000000000001/4" : {
"interfaces" : [
{
"ips" : [ "10.0.1.254/24" ],
"vlan" : "-1"
"ips" : [ "10.0.1.254/24" ]
}
]
},
"of:0000000000000002/3" : {
"interfaces" : [
{
"ips" : [ "10.0.2.254/24" ],
"vlan" : "-1"
"ips" : [ "10.0.2.254/24" ]
}
]
},
"of:0000000000000002/4" : {
"interfaces" : [
{
"ips" : [ "10.0.2.254/24" ],
"vlan" : "-1"
"ips" : [ "10.0.2.254/24" ]
}
]
}
......@@ -76,25 +72,25 @@
}
},
"hosts" : {
"00:00:00:00:00:01/4093" : {
"00:00:00:00:00:01/-1" : {
"basic": {
"ips": ["10.0.1.1"],
"location": "of:0000000000000001/3"
}
},
"00:00:00:00:00:02/4093" : {
"00:00:00:00:00:02/-1" : {
"basic": {
"ips": ["10.0.1.2"],
"location": "of:0000000000000001/4"
}
},
"00:00:00:00:00:03/4093" : {
"00:00:00:00:00:03/-1" : {
"basic": {
"ips": ["10.0.2.1"],
"location": "of:0000000000000002/3"
}
},
"00:00:00:00:00:04/4093" : {
"00:00:00:00:00:04/-1" : {
"basic": {
"ips": ["10.0.2.2"],
"location": "of:0000000000000002/4"
......
{
"ports" : {
"of:0000000000000001/3" : {
"interfaces" : [
{
"ips" : [ "10.0.1.254/24" ],
"vlan" : "-1"
}
]
},
"of:0000000000000001/4" : {
"interfaces" : [
{
"ips" : [ "10.0.1.254/24", "200.0.0.200/32" ],
"vlan" : "-1"
}
]
},
"of:0000000000000002/3" : {
"interfaces" : [
{
"ips" : [ "10.0.2.254/24" ],
"vlan" : "-1"
}
]
},
"of:0000000000000002/4" : {
"interfaces" : [
{
"ips" : [ "10.0.2.254/24" ],
"vlan" : "-1"
}
]
},
"of:0000000000000002/5" : {
"interfaces" : [
{
"ips" : [ "100.0.0.0/24" ],
"vlan" : "-1"
}
]
}
},
"devices" : {
"of:0000000000000001" : {
"segmentrouting" : {
"name" : "Leaf-R1",
"nodeSid" : 101,
"routerIp" : "10.0.1.254",
"routerMac" : "00:00:00:00:01:80",
"isEdgeRouter" : true,
"adjacencySids" : []
}
},
"of:0000000000000002" : {
"segmentrouting" : {
"name" : "Leaf-R2",
"nodeSid" : 102,
"routerIp" : "10.0.2.254",
"routerMac" : "00:00:00:00:02:80",
"isEdgeRouter" : true,
"adjacencySids" : []
}
},
"of:0000000000000191" : {
"segmentrouting" : {
"name" : "Spine-R1",
"nodeSid" : 103,
"routerIp" : "192.168.0.11",
"routerMac" : "00:00:01:00:11:80",
"isEdgeRouter" : false,
"adjacencySids" : []
}
},
"of:0000000000000192" : {
"segmentrouting" : {
"name" : "Spine-R2",
"nodeSid" : 104,
"routerIp" : "192.168.0.22",
"routerMac" : "00:00:01:00:22:80",
"isEdgeRouter" : false,
"adjacencySids" : []
}
}
},
"hosts" : {
"00:00:00:00:00:01/-1" : {
"basic": {
"ips": ["10.0.1.1"],
"location": "of:0000000000000001/3"
}
},
"00:00:00:00:00:02/-1" : {
"basic": {
"ips": ["10.0.1.2"],
"location": "of:0000000000000001/4"
}
},
"00:00:00:00:00:03/-1" : {
"basic": {
"ips": ["10.0.2.1"],
"location": "of:0000000000000002/3"
}
},
"00:00:00:00:00:04/-1" : {
"basic": {
"ips": ["10.0.2.2"],
"location": "of:0000000000000002/4"
}
},
"00:00:00:aa:00:01/-1" : {
"basic": {
"ips": ["200.0.0.200"],
"location": "of:0000000000000001/4"
}
}
},
"apps" : {
"org.onosproject.segmentrouting" : {
"segmentrouting" : {
"vRouterMacs" : [
"00:00:00:aa:00:02"
],
"vRouterId" : "of:0000000000000002",
"suppressSubnet" : [
"of:0000000000000002/5"
],
"suppressHost" : [
"of:0000000000000002/5"
]
}
}
}
}
{
"ports" : {
"of:0000000000000001/5" : {
"interfaces" : [
{
"ips" : [ "10.0.1.254/24" ],
"vlan" : "-1"
}
]
},
"of:0000000000000001/6" : {
"interfaces" : [
{
"ips" : [ "10.0.1.254/24" ],
"vlan" : "-1"
}
]
},
"of:0000000000000002/5" : {
"interfaces" : [
{
"ips" : [ "10.0.2.254/24" ],
"vlan" : "-1"
}
]
},
"of:0000000000000002/6" : {
"interfaces" : [
{
"ips" : [ "10.0.2.254/24" ],
"vlan" : "-1"
}
]
},
"of:0000000000000003/5" : {
"interfaces" : [
{
"ips" : [ "10.0.3.254/24" ],
"vlan" : "-1"
}
]
},
"of:0000000000000003/6" : {
"interfaces" : [
{
"ips" : [ "10.0.3.254/24" ],
"vlan" : "-1"
}
]
},
"of:0000000000000004/5" : {
"interfaces" : [
{
"ips" : [ "10.0.4.254/24" ],
"vlan" : "-1"
}
]
},
"of:0000000000000004/6" : {
"interfaces" : [
{
"ips" : [ "10.0.4.254/24" ],
"vlan" : "-1"
}
]
}
},
"devices" : {
"of:0000000000000001" : {
"segmentrouting" : {
"name" : "Leaf-R1",
"nodeSid" : 101,
"routerIp" : "10.0.1.254",
"routerMac" : "00:00:00:00:01:80",
"isEdgeRouter" : true,
"adjacencySids" : []
}
},
"of:0000000000000002" : {
"segmentrouting" : {
"name" : "Leaf-R2",
"nodeSid" : 102,
"routerIp" : "10.0.2.254",
"routerMac" : "00:00:00:00:02:80",
"isEdgeRouter" : true,
"adjacencySids" : []
}
},
"of:0000000000000003" : {
"segmentrouting" : {
"name" : "Leaf-R3",
"nodeSid" : 103,
"routerIp" : "10.0.3.254",
"routerMac" : "00:00:00:00:03:80",
"isEdgeRouter" : true,
"adjacencySids" : []
}
},
"of:0000000000000004" : {
"segmentrouting" : {
"name" : "Leaf-R4",
"nodeSid" : 104,
"routerIp" : "10.0.4.254",
"routerMac" : "00:00:00:00:04:80",
"isEdgeRouter" : true,
"adjacencySids" : []
}
},
"of:0000000000000191" : {
"segmentrouting" : {
"name" : "Spine-R1",
"nodeSid" : 105,
"routerIp" : "192.168.0.11",
"routerMac" : "00:00:01:00:11:80",
"isEdgeRouter" : false,
"adjacencySids" : []
}
},
"of:0000000000000192" : {
"segmentrouting" : {
"name" : "Spine-R2",
"nodeSid" : 106,
"routerIp" : "192.168.0.22",
"routerMac" : "00:00:01:00:22:80",
"isEdgeRouter" : false,
"adjacencySids" : []
}
},
"of:0000000000000193" : {
"segmentrouting" : {
"name" : "Spine-R3",
"nodeSid" : 107,
"routerIp" : "192.168.0.33",
"routerMac" : "00:00:03:00:33:80",
"isEdgeRouter" : false,
"adjacencySids" : []
}
},
"of:0000000000000194" : {
"segmentrouting" : {
"name" : "Spine-R4",
"nodeSid" : 108,
"routerIp" : "192.168.0.44",
"routerMac" : "00:00:04:00:44:80",
"isEdgeRouter" : false,
"adjacencySids" : []
}
}
},
"hosts" : {
"00:00:00:00:00:01/-1" : {
"basic": {
"ips": ["10.0.1.1"],
"location": "of:0000000000000001/5"
}
},
"00:00:00:00:00:02/-1" : {
"basic": {
"ips": ["10.0.1.2"],
"location": "of:0000000000000001/6"
}
},
"00:00:00:00:00:03/-1" : {
"basic": {
"ips": ["10.0.2.1"],
"location": "of:0000000000000002/5"
}
},
"00:00:00:00:00:04/-1" : {
"basic": {
"ips": ["10.0.2.2"],
"location": "of:0000000000000002/6"
}
},
"00:00:00:00:00:05/-1" : {
"basic": {
"ips": ["10.0.3.1"],
"location": "of:0000000000000003/5"
}
},
"00:00:00:00:00:06/-1" : {
"basic": {
"ips": ["10.0.3.2"],
"location": "of:0000000000000003/6"
}
},
"00:00:00:00:00:07/-1" : {
"basic": {
"ips": ["10.0.4.1"],
"location": "of:0000000000000004/5"
}
},
"00:00:00:00:00:08/-1" : {
"basic": {
"ips": ["10.0.4.2"],
"location": "of:0000000000000004/6"
}
}
}
}
{
"ports" : {
"of:0000000000000002/1" : {
"interfaces" : [
{
"ips" : [ "192.168.10.101/24" ],
"mac" : "08:9e:01:82:38:68",
"vlan" : "100"
}
]
},
"of:0000000000000002/2" : {
"interfaces" : [
{
"ips" : [ "192.168.20.101/24" ],
"mac" : "08:9e:01:82:38:68",
"vlan" : "200"
}
]
}
},
"devices" : {
"of:0000000000000002" : {
"segmentrouting" : {
"name" : "Leaf-R1",
"nodeSid" : 101,
"routerIp" : "10.0.1.254",
"routerMac" : "00:00:00:00:01:80",
"isEdgeRouter" : true,
"adjacencySids" : [
{ "adjSids" : 100, "ports" : [2, 3] },
{ "adjSids" : 200, "ports" : [4, 5] }
]
}
},
"of:0000000000000191" : {
"segmentrouting" : {
"name" : "Spine-R1",
"nodeSid" : 105,
"routerIp" : "192.168.0.11",
"routerMac" : "00:00:01:00:11:80",
"isEdgeRouter" : false,
"adjacencySids" : []
}
}
},
"apps" : {
"org.onosproject.router" : {
"bgp" : {
"bgpSpeakers" : [
{
"connectPoint" : "of:00000000000000aa/10",
"peers" : [
"192.168.10.1"
]
},
{
"connectPoint" : "of:00000000000000aa/20",
"peers" : [
"192.168.20.1"
]
}
]
}
}
},
"hosts" : {
"00:00:00:00:00:01/4093": {
"basic": {
"ips": [
"10.0.1.1"
],
"location": "of:0000000000000001/3"
}
},
"00:00:00:00:00:02/4093": {
"basic": {
"ips": [
"10.0.1.2"
],
"location": "of:0000000000000001/4"
}
}
}
}