Added materials for the SDN-IP tutorial.

Change-Id: Ib0c23d6f582bcdddfac651788529420a80d9a1d7
diff --git a/tools/test/topos/sdnip/configs/addresses.json b/tools/test/topos/sdnip/configs/addresses.json
new file mode 100644
index 0000000..ac54b5a
--- /dev/null
+++ b/tools/test/topos/sdnip/configs/addresses.json
@@ -0,0 +1,28 @@
+{
+    "addresses" : [
+	{
+	    "dpid" : "00:00:00:00:00:00:00:a1",
+	    "port" : "1",
+	    "ips" : ["10.0.1.101/24"],
+	    "mac" : "00:00:00:00:00:01"
+	},
+	{
+	    "dpid" : "00:00:00:00:00:00:00:a2",
+	    "port" : "1",
+	    "ips" : ["10.0.2.101/24"],
+	    "mac" : "00:00:00:00:00:02"
+	},
+	{
+	    "dpid" : "00:00:00:00:00:00:00:a5",
+	    "port" : "1",
+	    "ips" : ["10.0.3.101/24"],
+	    "mac" : "00:00:00:00:00:01"
+	},
+	{
+	    "dpid" : "00:00:00:00:00:00:00:a6",
+	    "port" : "1",
+	    "ips" : ["10.0.4.101/24"],
+	    "mac" : "00:00:00:00:00:01"
+	}
+    ]
+}
diff --git a/tools/test/topos/sdnip/configs/gui.json b/tools/test/topos/sdnip/configs/gui.json
new file mode 100644
index 0000000..fdc9757
--- /dev/null
+++ b/tools/test/topos/sdnip/configs/gui.json
@@ -0,0 +1,9 @@
+{
+    "hosts" : [
+        { "mac": "00:00:00:00:00:01", "vlan": -1, "location": "of:00000000000000a3/1", "ip": "10.0.1.101, 10.0.2.101, 10.0.3.101, 10.0.4.101",                         "annotations": { "type": "bgpSpeaker" } },
+        { "mac": "00:00:00:00:01:01", "vlan": -1, "location": "of:00000000000000a1/1", "ip": "10.0.1.1",                                   "annotations": { "type": "router" } },
+        { "mac": "00:00:00:00:02:01", "vlan": -1, "location": "of:00000000000000a2/1", "ip": "10.0.2.1",                        "annotations": { "type": "router" } },
+        { "mac": "00:00:00:00:03:01", "vlan": -1, "location": "of:00000000000000a5/1", "ip": "10.0.3.1",                        "annotations": { "type": "router" } },
+        { "mac": "00:00:00:00:04:01", "vlan": -1, "location": "of:00000000000000a6/1", "ip": "10.0.4.1",                                   "annotations": { "type": "router" } }
+    ]
+}
diff --git a/tools/test/topos/sdnip/configs/quagga-sdn.conf b/tools/test/topos/sdnip/configs/quagga-sdn.conf
new file mode 100644
index 0000000..983c96e
--- /dev/null
+++ b/tools/test/topos/sdnip/configs/quagga-sdn.conf
@@ -0,0 +1,35 @@
+!
+hostname bgp
+password sdnip
+!
+!
+router bgp 65000
+  bgp router-id 10.10.10.1
+  timers bgp 3 9
+  !
+  neighbor 10.0.1.1 remote-as 65001
+  neighbor 10.0.1.1 ebgp-multihop
+  neighbor 10.0.1.1 timers connect 5
+  neighbor 10.0.1.1 advertisement-interval 5
+  !
+  neighbor 10.0.2.1 remote-as 65002
+  neighbor 10.0.2.1 ebgp-multihop
+  neighbor 10.0.2.1 timers connect 5
+  neighbor 10.0.2.1 advertisement-interval 5
+  !
+  neighbor 10.0.3.1 remote-as 65003
+  neighbor 10.0.3.1 ebgp-multihop
+  neighbor 10.0.3.1 timers connect 5
+  neighbor 10.0.3.1 advertisement-interval 5
+  !
+  neighbor 10.0.4.1 remote-as 65004
+  neighbor 10.0.4.1 ebgp-multihop
+  neighbor 10.0.4.1 timers connect 5
+  neighbor 10.0.4.1 advertisement-interval 5
+  !
+  ! ONOS
+  neighbor 10.10.10.2 remote-as 65000
+  neighbor 10.10.10.2 port 2000
+  neighbor 10.10.10.2 timers connect 5
+!
+log stdout
diff --git a/tools/test/topos/sdnip/configs/quagga1.conf b/tools/test/topos/sdnip/configs/quagga1.conf
new file mode 100644
index 0000000..6e65c96
--- /dev/null
+++ b/tools/test/topos/sdnip/configs/quagga1.conf
@@ -0,0 +1,15 @@
+! BGP configuration for r1
+!
+hostname r1
+password sdnip
+!
+router bgp 65001
+  bgp router-id 10.0.1.1
+  timers bgp 3 9
+  neighbor 10.0.1.101 remote-as 65000
+  neighbor 10.0.1.101 ebgp-multihop
+  neighbor 10.0.1.101 timers connect 5
+  neighbor 10.0.1.101 advertisement-interval 5
+  network 192.168.1.0/24
+!
+log stdout
diff --git a/tools/test/topos/sdnip/configs/quagga2.conf b/tools/test/topos/sdnip/configs/quagga2.conf
new file mode 100644
index 0000000..8ab7205
--- /dev/null
+++ b/tools/test/topos/sdnip/configs/quagga2.conf
@@ -0,0 +1,15 @@
+! BGP configuration for r2
+!
+hostname r2
+password sdnip
+!
+router bgp 65002
+  bgp router-id 10.0.2.1
+  timers bgp 3 9
+  neighbor 10.0.2.101 remote-as 65000
+  neighbor 10.0.2.101 ebgp-multihop
+  neighbor 10.0.2.101 timers connect 5
+  neighbor 10.0.2.101 advertisement-interval 5
+  network 192.168.2.0/24
+!
+log stdout
diff --git a/tools/test/topos/sdnip/configs/quagga3.conf b/tools/test/topos/sdnip/configs/quagga3.conf
new file mode 100644
index 0000000..53d9c8a
--- /dev/null
+++ b/tools/test/topos/sdnip/configs/quagga3.conf
@@ -0,0 +1,15 @@
+! BGP configuration for r3
+!
+hostname r3
+password sdnip
+!
+router bgp 65003
+  bgp router-id 10.0.3.1
+  timers bgp 3 9
+  neighbor 10.0.3.101 remote-as 65000
+  neighbor 10.0.3.101 ebgp-multihop
+  neighbor 10.0.3.101 timers connect 5
+  neighbor 10.0.3.101 advertisement-interval 5
+  network 192.168.3.0/24
+!
+log stdout
diff --git a/tools/test/topos/sdnip/configs/quagga4.conf b/tools/test/topos/sdnip/configs/quagga4.conf
new file mode 100644
index 0000000..809d500
--- /dev/null
+++ b/tools/test/topos/sdnip/configs/quagga4.conf
@@ -0,0 +1,15 @@
+! BGP configuration for r4
+!
+hostname r4
+password sdnip
+!
+router bgp 65004
+  bgp router-id 10.0.4.1
+  timers bgp 3 9
+  neighbor 10.0.4.101 remote-as 65000
+  neighbor 10.0.4.101 ebgp-multihop
+  neighbor 10.0.4.101 timers connect 5
+  neighbor 10.0.4.101 advertisement-interval 5
+  !network 192.168.4.0/24
+!
+log stdout
diff --git a/tools/test/topos/sdnip/configs/sdnip.json b/tools/test/topos/sdnip/configs/sdnip.json
new file mode 100644
index 0000000..dde8ea7
--- /dev/null
+++ b/tools/test/topos/sdnip/configs/sdnip.json
@@ -0,0 +1,54 @@
+{
+    "bgpPeers" : [
+        {
+            "attachmentDpid" : "00:00:00:00:00:00:00:a1",
+	    "attachmentPort" : "1",
+            "ipAddress" : "10.0.1.1"
+        },
+	{
+            "attachmentDpid" : "00:00:00:00:00:00:00:a2",
+	    "attachmentPort" : "1",
+            "ipAddress" : "10.0.2.1"
+        },
+	{
+            "attachmentDpid" : "00:00:00:00:00:00:00:a5",
+	    "attachmentPort" : "1",
+            "ipAddress" : "10.0.3.1"
+        },
+	{
+            "attachmentDpid" : "00:00:00:00:00:00:00:a6",
+	    "attachmentPort" : "1",
+            "ipAddress" : "10.0.4.1"
+        }
+    ],
+    "bgpSpeakers" : [
+        {
+            "name" : "bgp",
+            "attachmentDpid" : "00:00:00:00:00:00:00:a3",
+            "attachmentPort" : "1",
+            "macAddress" : "00:00:00:00:00:01",
+            "interfaceAddresses" : [
+                {
+		    "interfaceDpid" : "00:00:00:00:00:00:00:a1",
+		    "interfacePort" : "1",
+                    "ipAddress" : "10.0.1.101"
+                },
+                {
+		    "interfaceDpid" : "00:00:00:00:00:00:00:a2",
+		    "interfacePort" : "1",
+                    "ipAddress" : "10.0.2.101"
+                },
+                {
+		    "interfaceDpid" : "00:00:00:00:00:00:00:a5",
+		    "interfacePort" : "1",
+                    "ipAddress" : "10.0.3.101"
+                },
+                {
+		    "interfaceDpid" : "00:00:00:00:00:00:00:a6",
+		    "interfacePort" : "1",
+                    "ipAddress" : "10.0.4.101"
+                }
+            ]
+        }
+    ]
+}
diff --git a/tools/test/topos/sdnip/configs/zebra.conf b/tools/test/topos/sdnip/configs/zebra.conf
new file mode 100644
index 0000000..6a4ae95
--- /dev/null
+++ b/tools/test/topos/sdnip/configs/zebra.conf
@@ -0,0 +1,5 @@
+! Configuration for zebra (NB: it is the same for all routers)
+!
+hostname zebra 
+password sdnip
+log stdout