Added link types of TUNNEL and OPTICAL.
Fixed the optical config json file.
Fixed treatment of links added by ancillary providers.
Added a trap for topology provider errors.
Added CLI to recompute topology.
diff --git a/apps/optical/src/main/java/org/onlab/onos/optical/cfg/OpticalConfigProvider.java b/apps/optical/src/main/java/org/onlab/onos/optical/cfg/OpticalConfigProvider.java
index b2e273f..cfdeb1f 100644
--- a/apps/optical/src/main/java/org/onlab/onos/optical/cfg/OpticalConfigProvider.java
+++ b/apps/optical/src/main/java/org/onlab/onos/optical/cfg/OpticalConfigProvider.java
@@ -284,7 +284,7 @@
DefaultLinkDescription linkDescription =
new DefaultLinkDescription(srcPoint,
snkPoint,
- Link.Type.DIRECT,
+ Link.Type.OPTICAL,
extendedAttributes);
linkProviderService.linkDetected(linkDescription);
@@ -315,7 +315,7 @@
DefaultLinkDescription linkDescription =
new DefaultLinkDescription(srcPoint,
snkPoint,
- Link.Type.DIRECT,
+ Link.Type.OPTICAL,
extendedAttributes);
linkProviderService.linkDetected(linkDescription);
diff --git a/apps/optical/src/main/resources/demo-3-roadm-2-ps.json b/apps/optical/src/main/resources/demo-3-roadm-2-ps.json
index 6f2c2f5..20b7db2 100644
--- a/apps/optical/src/main/resources/demo-3-roadm-2-ps.json
+++ b/apps/optical/src/main/resources/demo-3-roadm-2-ps.json
@@ -1,5 +1,5 @@
{
- "opticalSwitches": [
+ "opticalSwitches": [
{
"allowed": true,
"latitude": 37.6,
@@ -12,7 +12,7 @@
"type": "Roadm"
},
- {
+ {
"allowed": true,
"latitude": 37.3,
"longitude": 121.9,
@@ -22,9 +22,9 @@
"numRegen": 0
},
"type": "Roadm"
- },
+ },
- {
+ {
"allowed": true,
"latitude": 33.9,
"longitude": 118.4,
@@ -34,10 +34,10 @@
"numRegen": 2
},
"type": "Roadm"
- }
+ }
],
- "opticalLinks": [
+ "opticalLinks": [
{
"allowed": true,
"nodeDpid1": "00:00:ff:ff:ff:ff:ff:01",
@@ -51,10 +51,38 @@
"port2": 30
},
"type": "wdmLink"
- },
-
- {
- "allowed": true,
+ },
+ {
+ "allowed": true,
+ "nodeDpid1": "00:00:ff:ff:ff:ff:ff:03",
+ "nodeDpid2": "00:00:ff:ff:ff:ff:ff:01",
+ "params": {
+ "distKms": 1000,
+ "nodeName1": "ROADM3",
+ "nodeName2": "ROADM1",
+ "numWaves": 80,
+ "port1": 30,
+ "port2": 10
+ },
+ "type": "wdmLink"
+ },
+
+ {
+ "allowed": true,
+ "nodeDpid1": "00:00:ff:ff:ff:ff:ff:02",
+ "nodeDpid2": "00:00:ff:ff:ff:ff:ff:03",
+ "params": {
+ "distKms": 2000,
+ "nodeName1": "ROADM2",
+ "nodeName2": "ROADM3",
+ "numWaves": 80,
+ "port1": 20,
+ "port2": 31
+ },
+ "type": "wdmLink"
+ },
+ {
+ "allowed": true,
"nodeDpid1": "00:00:ff:ff:ff:ff:ff:03",
"nodeDpid2": "00:00:ff:ff:ff:ff:ff:02",
"params": {
@@ -66,10 +94,9 @@
"port2": 20
},
"type": "wdmLink"
- },
+ },
-
- {
+ {
"allowed": true,
"nodeDpid1": "00:00:ff:ff:ff:ff:00:01",
"nodeDpid2": "00:00:ff:ff:ff:ff:ff:01",
@@ -82,8 +109,21 @@
},
"type": "pktOptLink"
},
+ {
+ "allowed": true,
+ "nodeDpid1": "00:00:ff:ff:ff:ff:ff:01",
+ "nodeDpid2": "00:00:ff:ff:ff:ff:00:01",
+ "params": {
+ "nodeName1": "ROADM1",
+ "nodeName2": "ROUTER1",
+ "bandWidth": 100000,
+ "port1": 11,
+ "port2": 10
+ },
+ "type": "pktOptLink"
+ },
- {
+ {
"allowed": true,
"nodeDpid1": "00:00:ff:ff:ff:ff:00:02",
"nodeDpid2": "00:00:ff:ff:ff:ff:ff:02",
@@ -95,7 +135,20 @@
"port2": 21
},
"type": "pktOptLink"
- }
+ },
+ {
+ "allowed": true,
+ "nodeDpid1": "00:00:ff:ff:ff:ff:ff:02",
+ "nodeDpid2": "00:00:ff:ff:ff:ff:00:02",
+ "params": {
+ "nodeName1": "ROADM2",
+ "nodeName2": "ROUTER2",
+ "bandWidth": 100000,
+ "port1": 21,
+ "port2": 10
+ },
+ "type": "pktOptLink"
+ }
]
}