summaryrefslogtreecommitdiffstats
path: root/examples/docker/mpls_demo
diff options
context:
space:
mode:
authorMarek Gradzki <mgradzki@cisco.com>2018-06-01 07:28:47 +0200
committerMarek Gradzki <mgradzki@cisco.com>2018-06-01 10:40:47 +0200
commitfe9af79a0cc1a980ac0dfb35a679f4e8565a5ef5 (patch)
tree7cca3da294de20ac91f8dac7359103d291a17e2c /examples/docker/mpls_demo
parenta3e02660522fb0c97f77f1123cc4058d589a4095 (diff)
HC2VPP-339: convert postman collections to v2.1.0 format
Mantaining postman collections in v1 format is difficult due to UID strings. Postman collection v2 fixes the issue and many others, see http://blog.getpostman.com/2015/06/05/travelogue-of-postman-collection-format-v2/ Collections in v1 format, were converted using postman-collection-transformer. Output was transformed using JSON.stringify with space='\t', to be compliant with Postman application which does not support spaces for indentation. Coverted collections were tested using Postman v6.1.3. Previous version of postman collections were renamed to *_v1.0.0.json or *_v2.0.0.json. Removal is planned in 18.10 (HC2VPP-338). Change-Id: I6caf496293fccc1f9aadcdece668b5200fe07122 Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
Diffstat (limited to 'examples/docker/mpls_demo')
-rw-r--r--[-rwxr-xr-x]examples/docker/mpls_demo/postman_collection.json916
-rw-r--r--examples/docker/mpls_demo/postman_collection_v2.0.0.json1050
2 files changed, 1915 insertions, 51 deletions
diff --git a/examples/docker/mpls_demo/postman_collection.json b/examples/docker/mpls_demo/postman_collection.json
index 0420f2a42..a2ca7fc11 100755..100644
--- a/examples/docker/mpls_demo/postman_collection.json
+++ b/examples/docker/mpls_demo/postman_collection.json
@@ -1,14 +1,14 @@
{
"info": {
- "_postman_id": "4165ed66-ad4e-4003-99dd-285a50e86f15",
+ "_postman_id": "fb857a99-6ac3-41e4-8a0d-2dd8cc508661",
"name": "Honeycomb SR MPLS",
"description": "Examples of configuring some basic MPLS SR scenariou using hc2vpp",
- "schema": "https://schema.getpostman.com/json/collection/v2.0.0/collection.json"
+ "schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json"
},
"item": [
{
"name": "vpp3",
- "description": "",
+ "description": null,
"item": [
{
"name": "Enable mpls on host-veth341",
@@ -28,7 +28,25 @@
"mode": "raw",
"raw": "{\n \"interface\": [\n {\n \"name\": \"host-veth341\",\n \"config\": {\n \"enabled\": \"true\"\n }\n }\n ]\n}"
},
- "url": "https://172.17.0.4:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls/interface/host-veth341",
+ "url": {
+ "raw": "https://172.17.0.4:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls/interface/host-veth341",
+ "protocol": "https",
+ "host": [
+ "172",
+ "17",
+ "0",
+ "4"
+ ],
+ "port": "8445",
+ "path": [
+ "restconf",
+ "config",
+ "hc2vpp-ietf-routing:routing",
+ "hc2vpp-ietf-mpls:mpls",
+ "interface",
+ "host-veth341"
+ ]
+ },
"description": "Correspondig CLI command:\n\nset interface mpls host-veth341 enable"
},
"response": []
@@ -51,7 +69,23 @@
"mode": "raw",
"raw": "{\r\n \r\n \"interface\": [\r\n {\r\n \"name\": \"testInterface\",\r\n \"description\": \"for testing purposes\",\r\n \"type\": \"iana-if-type:ethernetCsmacd\",\r\n \"enabled\": \"true\",\r\n \"link-up-down-trap-enable\": \"enabled\",\r\n \"ietf-ip:ipv4\": {\r\n \"enabled\": \"true\",\r\n \"mtu\": \"1500\",\r\n \"address\": [\r\n {\r\n \"ip\": \"1.2.3.0\",\r\n \"netmask\": \"255.255.255.0\"\r\n }\r\n ]\r\n }\r\n }\r\n ]\r\n \r\n}"
},
- "url": "https://172.17.0.4:8445/restconf/config/ietf-interfaces:interfaces/"
+ "url": {
+ "raw": "https://172.17.0.4:8445/restconf/config/ietf-interfaces:interfaces/",
+ "protocol": "https",
+ "host": [
+ "172",
+ "17",
+ "0",
+ "4"
+ ],
+ "port": "8445",
+ "path": [
+ "restconf",
+ "config",
+ "ietf-interfaces:interfaces",
+ ""
+ ]
+ }
},
"response": []
},
@@ -73,7 +107,23 @@
"mode": "raw",
"raw": ""
},
- "url": "https://172.17.0.4:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls"
+ "url": {
+ "raw": "https://172.17.0.4:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls",
+ "protocol": "https",
+ "host": [
+ "172",
+ "17",
+ "0",
+ "4"
+ ],
+ "port": "8445",
+ "path": [
+ "restconf",
+ "config",
+ "hc2vpp-ietf-routing:routing",
+ "hc2vpp-ietf-mpls:mpls"
+ ]
+ }
},
"response": []
},
@@ -95,7 +145,25 @@
"mode": "raw",
"raw": "{\n \"interface\": [\n {\n \"name\": \"host-veth342\",\n \"config\": {\n \"enabled\": \"true\"\n }\n }\n ]\n}"
},
- "url": "https://172.17.0.4:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls/interface/host-veth342",
+ "url": {
+ "raw": "https://172.17.0.4:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls/interface/host-veth342",
+ "protocol": "https",
+ "host": [
+ "172",
+ "17",
+ "0",
+ "4"
+ ],
+ "port": "8445",
+ "path": [
+ "restconf",
+ "config",
+ "hc2vpp-ietf-routing:routing",
+ "hc2vpp-ietf-mpls:mpls",
+ "interface",
+ "host-veth342"
+ ]
+ },
"description": "Correspondig CLI command:\n\nset interface mpls host-veth342 enable"
},
"response": []
@@ -118,7 +186,25 @@
"mode": "raw",
"raw": "{\n \"interface\": [\n {\n \"name\": \"host-veth31\",\n \"config\": {\n \"enabled\": \"true\"\n }\n }\n ]\n}"
},
- "url": "https://172.17.0.4:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls/interface/host-veth31",
+ "url": {
+ "raw": "https://172.17.0.4:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls/interface/host-veth31",
+ "protocol": "https",
+ "host": [
+ "172",
+ "17",
+ "0",
+ "4"
+ ],
+ "port": "8445",
+ "path": [
+ "restconf",
+ "config",
+ "hc2vpp-ietf-routing:routing",
+ "hc2vpp-ietf-mpls:mpls",
+ "interface",
+ "host-veth31"
+ ]
+ },
"description": "Correspondig CLI command:\n\nset interface mpls host-veth31 enable"
},
"response": []
@@ -141,7 +227,26 @@
"mode": "raw",
"raw": "{\n \"static-lsp\": [\n {\n \"name\": \"lsp1\",\n \"config\": {\n \"in-segment\": {\n \t\"config\" : {\n \t\t\"incoming-label\": 103\n \t}\n },\n \"operation\": \"pop-and-lookup\",\n \"vpp-mpls:label-lookup\" : {\n \"type\": \"mpls\",\n \"mpls-lookup-in-table\": 0\n }\n }\n }\n ]\n}"
},
- "url": "https://172.17.0.4:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls/hc2vpp-ietf-mpls-static:static-lsps/static-lsp/lsp1",
+ "url": {
+ "raw": "https://172.17.0.4:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls/hc2vpp-ietf-mpls-static:static-lsps/static-lsp/lsp1",
+ "protocol": "https",
+ "host": [
+ "172",
+ "17",
+ "0",
+ "4"
+ ],
+ "port": "8445",
+ "path": [
+ "restconf",
+ "config",
+ "hc2vpp-ietf-routing:routing",
+ "hc2vpp-ietf-mpls:mpls",
+ "hc2vpp-ietf-mpls-static:static-lsps",
+ "static-lsp",
+ "lsp1"
+ ]
+ },
"description": "Corresponding CLI command:\n\nmpls local-label add non-eos 103 mpls-lookup-in-table 0\n\n\nCan be verified via CLI using:\n\nshow mpls fib 103"
},
"response": []
@@ -164,7 +269,26 @@
"mode": "raw",
"raw": "{\n \"static-lsp\": [\n {\n \"name\": \"lsp2\",\n \"config\": {\n \"in-segment\": {\n \t\"config\" : {\n \t\t\"incoming-label\": 104\n \t}\n },\n \"operation\": \"swap-and-forward\"\n },\n \"simple-path\": {\n\t\t\t\"config\": {\n\t\t \"next-hop\": \"10.34.1.4\",\n\t\t \"outgoing-label\": 104,\n\t\t \"outgoing-interface\": \"host-veth341\"\n\t\t\t}\n\t\t}\n }\n ]\n}"
},
- "url": "https://172.17.0.4:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls/hc2vpp-ietf-mpls-static:static-lsps/static-lsp/lsp2",
+ "url": {
+ "raw": "https://172.17.0.4:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls/hc2vpp-ietf-mpls-static:static-lsps/static-lsp/lsp2",
+ "protocol": "https",
+ "host": [
+ "172",
+ "17",
+ "0",
+ "4"
+ ],
+ "port": "8445",
+ "path": [
+ "restconf",
+ "config",
+ "hc2vpp-ietf-routing:routing",
+ "hc2vpp-ietf-mpls:mpls",
+ "hc2vpp-ietf-mpls-static:static-lsps",
+ "static-lsp",
+ "lsp2"
+ ]
+ },
"description": "Corresponding CLI command:\n\nmpls local-label add eos 104 via 10.34.1.4 host-veth341 out-labels 104\n\n\nCan be verified via CLI using:\n\nshow mpls fib 104"
},
"response": []
@@ -187,7 +311,26 @@
"mode": "raw",
"raw": "{\n \"static-lsp\": [\n {\n \"name\": \"lsp3\",\n \"config\": {\n \"in-segment\": {\n \t\"config\" : {\n \t\t\"incoming-label\": 104\n \t}\n },\n \"operation\": \"swap-and-forward\"\n },\n \"simple-path\": {\n\t\t\t\"config\": {\n\t\t \"next-hop\": \"10.34.2.4\",\n\t\t \"outgoing-label\": 104,\n\t\t \"outgoing-interface\": \"host-veth342\"\n\t\t\t}\n\t\t}\n }\n ]\n}"
},
- "url": "https://172.17.0.4:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls/hc2vpp-ietf-mpls-static:static-lsps/static-lsp/lsp3",
+ "url": {
+ "raw": "https://172.17.0.4:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls/hc2vpp-ietf-mpls-static:static-lsps/static-lsp/lsp3",
+ "protocol": "https",
+ "host": [
+ "172",
+ "17",
+ "0",
+ "4"
+ ],
+ "port": "8445",
+ "path": [
+ "restconf",
+ "config",
+ "hc2vpp-ietf-routing:routing",
+ "hc2vpp-ietf-mpls:mpls",
+ "hc2vpp-ietf-mpls-static:static-lsps",
+ "static-lsp",
+ "lsp3"
+ ]
+ },
"description": "Corresponding CLI command:\n\nmpls local-label add eos 104 via 10.34.2.4 host-veth342 out-labels 104\n\n\nCan be verified via CLI using:\n\nshow mpls fib 104"
},
"response": []
@@ -210,7 +353,23 @@
"mode": "raw",
"raw": "{\r\n \r\n \"interface\": [\r\n {\r\n \"name\": \"testInterface\",\r\n \"description\": \"for testing purposes\",\r\n \"type\": \"iana-if-type:ethernetCsmacd\",\r\n \"enabled\": \"true\",\r\n \"link-up-down-trap-enable\": \"enabled\",\r\n \"ietf-ip:ipv4\": {\r\n \"enabled\": \"true\",\r\n \"mtu\": \"1500\",\r\n \"address\": [\r\n {\r\n \"ip\": \"1.2.3.0\",\r\n \"netmask\": \"255.255.255.0\"\r\n }\r\n ]\r\n }\r\n }\r\n ]\r\n \r\n}"
},
- "url": "https://172.17.0.4:8445/restconf/operational/ietf-interfaces:interfaces-state/"
+ "url": {
+ "raw": "https://172.17.0.4:8445/restconf/operational/ietf-interfaces:interfaces-state/",
+ "protocol": "https",
+ "host": [
+ "172",
+ "17",
+ "0",
+ "4"
+ ],
+ "port": "8445",
+ "path": [
+ "restconf",
+ "operational",
+ "ietf-interfaces:interfaces-state",
+ ""
+ ]
+ }
},
"response": []
},
@@ -232,7 +391,26 @@
"mode": "raw",
"raw": "{\n \"static-lsp\": [\n {\n \"name\": \"lsp4\",\n \"config\": {\n \"in-segment\": {\n \t\"config\" : {\n \t\t\"incoming-label\": 10341\n \t}\n },\n \"operation\": \"swap-and-forward\"\n },\n \"simple-path\": {\n\t\t\t\"config\": {\n\t\t \"next-hop\": \"10.34.1.4\",\n\t\t \"outgoing-label\": 104,\n\t\t \"outgoing-interface\": \"host-veth341\"\n\t\t\t}\n\t\t}\n }\n ]\n}"
},
- "url": "https://172.17.0.4:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls/hc2vpp-ietf-mpls-static:static-lsps/static-lsp/lsp4",
+ "url": {
+ "raw": "https://172.17.0.4:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls/hc2vpp-ietf-mpls-static:static-lsps/static-lsp/lsp4",
+ "protocol": "https",
+ "host": [
+ "172",
+ "17",
+ "0",
+ "4"
+ ],
+ "port": "8445",
+ "path": [
+ "restconf",
+ "config",
+ "hc2vpp-ietf-routing:routing",
+ "hc2vpp-ietf-mpls:mpls",
+ "hc2vpp-ietf-mpls-static:static-lsps",
+ "static-lsp",
+ "lsp4"
+ ]
+ },
"description": "Corresponding CLI command:\n\nmpls local-label add eos 10341 via 10.34.1.4 host-veth341 out-labels 104\n\n\nCan be verified via CLI using:\n\nshow mpls fib 10341"
},
"response": []
@@ -255,7 +433,26 @@
"mode": "raw",
"raw": "{\n \"static-lsp\": [\n {\n \"name\": \"lsp5\",\n \"config\": {\n \"in-segment\": {\n \t\"config\" : {\n \t\t\"incoming-label\": 10342\n \t}\n },\n \"operation\": \"swap-and-forward\"\n },\n \"simple-path\": {\n\t\t\t\"config\": {\n\t\t \"next-hop\": \"10.34.2.4\",\n\t\t \"outgoing-label\": 104,\n\t\t \"outgoing-interface\": \"host-veth342\"\n\t\t\t}\n\t\t}\n }\n ]\n}"
},
- "url": "https://172.17.0.4:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls/hc2vpp-ietf-mpls-static:static-lsps/static-lsp/lsp5",
+ "url": {
+ "raw": "https://172.17.0.4:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls/hc2vpp-ietf-mpls-static:static-lsps/static-lsp/lsp5",
+ "protocol": "https",
+ "host": [
+ "172",
+ "17",
+ "0",
+ "4"
+ ],
+ "port": "8445",
+ "path": [
+ "restconf",
+ "config",
+ "hc2vpp-ietf-routing:routing",
+ "hc2vpp-ietf-mpls:mpls",
+ "hc2vpp-ietf-mpls-static:static-lsps",
+ "static-lsp",
+ "lsp5"
+ ]
+ },
"description": "Corresponding CLI command:\n\nmpls local-label add eos 10342 via 10.34.2.4 host-veth342 out-labels 104\n\n\nCan be verified via CLI using:\n\nshow mpls fib 10342"
},
"response": []
@@ -264,7 +461,7 @@
},
{
"name": "vpp4",
- "description": "",
+ "description": null,
"item": [
{
"name": "Enable mpls on veth431",
@@ -284,7 +481,25 @@
"mode": "raw",
"raw": "{\n \"interface\": [\n {\n \"name\": \"host-veth431\",\n \"config\": {\n \"enabled\": \"true\"\n }\n }\n ]\n}"
},
- "url": "https://172.17.0.5:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls/interface/host-veth431",
+ "url": {
+ "raw": "https://172.17.0.5:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls/interface/host-veth431",
+ "protocol": "https",
+ "host": [
+ "172",
+ "17",
+ "0",
+ "5"
+ ],
+ "port": "8445",
+ "path": [
+ "restconf",
+ "config",
+ "hc2vpp-ietf-routing:routing",
+ "hc2vpp-ietf-mpls:mpls",
+ "interface",
+ "host-veth431"
+ ]
+ },
"description": "Correspondig CLI command:\n\nset interface mpls host-veth431 enable"
},
"response": []
@@ -307,7 +522,25 @@
"mode": "raw",
"raw": "{\n \"interface\": [\n {\n \"name\": \"host-veth432\",\n \"config\": {\n \"enabled\": \"true\"\n }\n }\n ]\n}"
},
- "url": "https://172.17.0.5:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls/interface/host-veth432",
+ "url": {
+ "raw": "https://172.17.0.5:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls/interface/host-veth432",
+ "protocol": "https",
+ "host": [
+ "172",
+ "17",
+ "0",
+ "5"
+ ],
+ "port": "8445",
+ "path": [
+ "restconf",
+ "config",
+ "hc2vpp-ietf-routing:routing",
+ "hc2vpp-ietf-mpls:mpls",
+ "interface",
+ "host-veth432"
+ ]
+ },
"description": "Correspondig CLI command:\n\nset interface mpls host-veth432 enable"
},
"response": []
@@ -330,7 +563,26 @@
"mode": "raw",
"raw": "{\r\n\t\"control-plane-protocol\":[\r\n\t\t{\r\n\t\t\t\"name\":\"learned-protocol-0\",\r\n\t\t\t\"type\":\"static\",\r\n\t\t\t\"vpp-protocol-attributes\": {\r\n\t \"primary-vrf\": 0\r\n }\r\n\t\t}\t\r\n\t]\r\n}"
},
- "url": "https://172.17.0.5:8445/restconf/config/hc2vpp-ietf-routing:routing/control-plane-protocols/control-plane-protocol/hc2vpp-ietf-routing:static/learned-protocol-0",
+ "url": {
+ "raw": "https://172.17.0.5:8445/restconf/config/hc2vpp-ietf-routing:routing/control-plane-protocols/control-plane-protocol/hc2vpp-ietf-routing:static/learned-protocol-0",
+ "protocol": "https",
+ "host": [
+ "172",
+ "17",
+ "0",
+ "5"
+ ],
+ "port": "8445",
+ "path": [
+ "restconf",
+ "config",
+ "hc2vpp-ietf-routing:routing",
+ "control-plane-protocols",
+ "control-plane-protocol",
+ "hc2vpp-ietf-routing:static",
+ "learned-protocol-0"
+ ]
+ },
"description": "Hc2vpp by default stores it under learned-protocol-0"
},
"response": []
@@ -353,7 +605,30 @@
"mode": "raw",
"raw": "{\n\t\"route\": [\n\t\t{\n\t\t\t\"destination-prefix\": \"10.13.1.0/24\",\n\t\t\t\"next-hop\": {\n \t\"next-hop-address\" : \"10.34.2.3\",\n\t\t\t\t\"outgoing-interface\": \"host-veth432\"\n }\n\t}]\n}"
},
- "url": "https://172.17.0.5:8445/restconf/config/hc2vpp-ietf-routing:routing/control-plane-protocols/control-plane-protocol/hc2vpp-ietf-routing:static/learned-protocol-0/static-routes/ipv4/route/10.13.1.0%2f24",
+ "url": {
+ "raw": "https://172.17.0.5:8445/restconf/config/hc2vpp-ietf-routing:routing/control-plane-protocols/control-plane-protocol/hc2vpp-ietf-routing:static/learned-protocol-0/static-routes/ipv4/route/10.13.1.0%2f24",
+ "protocol": "https",
+ "host": [
+ "172",
+ "17",
+ "0",
+ "5"
+ ],
+ "port": "8445",
+ "path": [
+ "restconf",
+ "config",
+ "hc2vpp-ietf-routing:routing",
+ "control-plane-protocols",
+ "control-plane-protocol",
+ "hc2vpp-ietf-routing:static",
+ "learned-protocol-0",
+ "static-routes",
+ "ipv4",
+ "route",
+ "10.13.1.0%2f24"
+ ]
+ },
"description": "Send reverse traffic using IP.\n\nCorresponding CLI command:\n\nip route add 10.13.1.0/24 via 10.34.2.3 host-veth432"
},
"response": []
@@ -376,7 +651,23 @@
"mode": "raw",
"raw": "{\r\n \r\n \"interface\": [\r\n {\r\n \"name\": \"testInterface\",\r\n \"description\": \"for testing purposes\",\r\n \"type\": \"iana-if-type:ethernetCsmacd\",\r\n \"enabled\": \"true\",\r\n \"link-up-down-trap-enable\": \"enabled\",\r\n \"ietf-ip:ipv4\": {\r\n \"enabled\": \"true\",\r\n \"mtu\": \"1500\",\r\n \"address\": [\r\n {\r\n \"ip\": \"1.2.3.0\",\r\n \"netmask\": \"255.255.255.0\"\r\n }\r\n ]\r\n }\r\n }\r\n ]\r\n \r\n}"
},
- "url": "https://172.17.0.5:8445/restconf/operational/ietf-interfaces:interfaces-state/"
+ "url": {
+ "raw": "https://172.17.0.5:8445/restconf/operational/ietf-interfaces:interfaces-state/",
+ "protocol": "https",
+ "host": [
+ "172",
+ "17",
+ "0",
+ "5"
+ ],
+ "port": "8445",
+ "path": [
+ "restconf",
+ "operational",
+ "ietf-interfaces:interfaces-state",
+ ""
+ ]
+ }
},
"response": []
},
@@ -398,7 +689,24 @@
"mode": "raw",
"raw": "{\r\n \r\n \"interface\": [\r\n {\r\n \"name\": \"A\",\r\n \"description\": \"Host A\",\r\n \"type\": \"v3po:tap\",\r\n \"tap\" : {\r\n \"tap-name\" : \"A\"\r\n },\r\n \"ipv4\" : {\r\n \t\"address\" : [{\r\n \t\t\"ip\" : \"10.100.1.1\",\r\n \t\t\"prefix-length\" : \"24\"\r\n \t}]\r\n }\r\n }\r\n ]\r\n \r\n}"
},
- "url": "https://172.17.0.5:8445/restconf/config/ietf-interfaces:interfaces/interface/A"
+ "url": {
+ "raw": "https://172.17.0.5:8445/restconf/config/ietf-interfaces:interfaces/interface/A",
+ "protocol": "https",
+ "host": [
+ "172",
+ "17",
+ "0",
+ "5"
+ ],
+ "port": "8445",
+ "path": [
+ "restconf",
+ "config",
+ "ietf-interfaces:interfaces",
+ "interface",
+ "A"
+ ]
+ }
},
"response": []
},
@@ -420,7 +728,26 @@
"mode": "raw",
"raw": "{\n \"static-lsp\": [\n {\n \"name\": \"lsp1\",\n \"config\": {\n \"in-segment\": {\n \t\"config\" : {\n \t\t\"incoming-label\": 104\n \t}\n },\n \"operation\": \"pop-and-lookup\",\n \"vpp-mpls:label-lookup\" : {\n \"type\": \"ipv4\",\n \"ip4-lookup-in-table\": 0\n }\n }\n }\n ]\n}"
},
- "url": "https://172.17.0.5:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls/hc2vpp-ietf-mpls-static:static-lsps/static-lsp/lsp1",
+ "url": {
+ "raw": "https://172.17.0.5:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls/hc2vpp-ietf-mpls-static:static-lsps/static-lsp/lsp1",
+ "protocol": "https",
+ "host": [
+ "172",
+ "17",
+ "0",
+ "5"
+ ],
+ "port": "8445",
+ "path": [
+ "restconf",
+ "config",
+ "hc2vpp-ietf-routing:routing",
+ "hc2vpp-ietf-mpls:mpls",
+ "hc2vpp-ietf-mpls-static:static-lsps",
+ "static-lsp",
+ "lsp1"
+ ]
+ },
"description": "Corresponding CLI command:\n\nmpls local-label add eos 104 ip4-lookup-in-table 0\n\n\nCan be verified via CLI using:\n\nshow mpls fib 104"
},
"response": []
@@ -443,7 +770,30 @@
"mode": "raw",
"raw": "{\n\t\"route\": [\n\t\t{\n\t\t\t\"destination-prefix\": \"10.12.1.0/24\",\n\t\t\t\"next-hop\": {\n \t\"next-hop-address\" : \"10.24.1.2\",\n\t\t\t\t\"outgoing-interface\": \"host-veth42\"\n }\n\t}]\n}"
},
- "url": "https://172.17.0.5:8445/restconf/config/hc2vpp-ietf-routing:routing/control-plane-protocols/control-plane-protocol/hc2vpp-ietf-routing:static/learned-protocol-0/static-routes/ipv4/route/10.12.1.0%2F24",
+ "url": {
+ "raw": "https://172.17.0.5:8445/restconf/config/hc2vpp-ietf-routing:routing/control-plane-protocols/control-plane-protocol/hc2vpp-ietf-routing:static/learned-protocol-0/static-routes/ipv4/route/10.12.1.0%2F24",
+ "protocol": "https",
+ "host": [
+ "172",
+ "17",
+ "0",
+ "5"
+ ],
+ "port": "8445",
+ "path": [
+ "restconf",
+ "config",
+ "hc2vpp-ietf-routing:routing",
+ "control-plane-protocols",
+ "control-plane-protocol",
+ "hc2vpp-ietf-routing:static",
+ "learned-protocol-0",
+ "static-routes",
+ "ipv4",
+ "route",
+ "10.12.1.0%2F24"
+ ]
+ },
"description": "Send reverse traffic using IP.\n\nCorresponding CLI command:\n\nip route add 10.12.1.0/24 via 10.24.1.2 host-veth42"
},
"response": []
@@ -466,7 +816,24 @@
"mode": "raw",
"raw": "{\r\n \r\n \"interface\": [\r\n {\r\n \"name\": \"B\",\r\n \"description\": \"Host B\",\r\n \"type\": \"v3po:tap\",\r\n \"tap\" : {\r\n \"tap-name\" : \"B\"\r\n },\r\n \"ipv4\" : {\r\n \t\"address\" : [{\r\n \t\t\"ip\" : \"10.200.1.1\",\r\n \t\t\"prefix-length\" : \"24\"\r\n \t}]\r\n }\r\n }\r\n ]\r\n \r\n}"
},
- "url": "https://172.17.0.5:8445/restconf/config/ietf-interfaces:interfaces/interface/B"
+ "url": {
+ "raw": "https://172.17.0.5:8445/restconf/config/ietf-interfaces:interfaces/interface/B",
+ "protocol": "https",
+ "host": [
+ "172",
+ "17",
+ "0",
+ "5"
+ ],
+ "port": "8445",
+ "path": [
+ "restconf",
+ "config",
+ "ietf-interfaces:interfaces",
+ "interface",
+ "B"
+ ]
+ }
},
"response": []
},
@@ -488,7 +855,25 @@
"mode": "raw",
"raw": "{\n \"interface\": [\n {\n \"name\": \"host-veth42\",\n \"config\": {\n \"enabled\": \"true\"\n }\n }\n ]\n}"
},
- "url": "https://172.17.0.5:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls/interface/host-veth42",
+ "url": {
+ "raw": "https://172.17.0.5:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls/interface/host-veth42",
+ "protocol": "https",
+ "host": [
+ "172",
+ "17",
+ "0",
+ "5"
+ ],
+ "port": "8445",
+ "path": [
+ "restconf",
+ "config",
+ "hc2vpp-ietf-routing:routing",
+ "hc2vpp-ietf-mpls:mpls",
+ "interface",
+ "host-veth42"
+ ]
+ },
"description": "Correspondig CLI command:\n\nset interface mpls host-veth42 enable"
},
"response": []
@@ -511,7 +896,23 @@
"mode": "raw",
"raw": "{\r\n \r\n \"interface\": [\r\n {\r\n \"name\": \"testInterface\",\r\n \"description\": \"for testing purposes\",\r\n \"type\": \"iana-if-type:ethernetCsmacd\",\r\n \"enabled\": \"true\",\r\n \"link-up-down-trap-enable\": \"enabled\",\r\n \"ietf-ip:ipv4\": {\r\n \"enabled\": \"true\",\r\n \"mtu\": \"1500\",\r\n \"address\": [\r\n {\r\n \"ip\": \"1.2.3.0\",\r\n \"netmask\": \"255.255.255.0\"\r\n }\r\n ]\r\n }\r\n }\r\n ]\r\n \r\n}"
},
- "url": "https://172.17.0.5:8445/restconf/config/ietf-interfaces:interfaces/"
+ "url": {
+ "raw": "https://172.17.0.5:8445/restconf/config/ietf-interfaces:interfaces/",
+ "protocol": "https",
+ "host": [
+ "172",
+ "17",
+ "0",
+ "5"
+ ],
+ "port": "8445",
+ "path": [
+ "restconf",
+ "config",
+ "ietf-interfaces:interfaces",
+ ""
+ ]
+ }
},
"response": []
},
@@ -533,7 +934,23 @@
"mode": "raw",
"raw": ""
},
- "url": "https://172.17.0.5:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls"
+ "url": {
+ "raw": "https://172.17.0.5:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls",
+ "protocol": "https",
+ "host": [
+ "172",
+ "17",
+ "0",
+ "5"
+ ],
+ "port": "8445",
+ "path": [
+ "restconf",
+ "config",
+ "hc2vpp-ietf-routing:routing",
+ "hc2vpp-ietf-mpls:mpls"
+ ]
+ }
},
"response": []
}
@@ -541,7 +958,7 @@
},
{
"name": "vpp1",
- "description": "",
+ "description": null,
"item": [
{
"name": "Get mpls (cfg)",
@@ -561,7 +978,23 @@
"mode": "raw",
"raw": ""
},
- "url": "https://172.17.0.2:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls"
+ "url": {
+ "raw": "https://172.17.0.2:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls",
+ "protocol": "https",
+ "host": [
+ "172",
+ "17",
+ "0",
+ "2"
+ ],
+ "port": "8445",
+ "path": [
+ "restconf",
+ "config",
+ "hc2vpp-ietf-routing:routing",
+ "hc2vpp-ietf-mpls:mpls"
+ ]
+ }
},
"response": []
},
@@ -583,7 +1016,25 @@
"mode": "raw",
"raw": "{\n \"interface\": [\n {\n \"name\": \"host-veth12\",\n \"config\": {\n \"enabled\": \"true\"\n }\n }\n ]\n}"
},
- "url": "https://172.17.0.2:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls/interface/host-veth12",
+ "url": {
+ "raw": "https://172.17.0.2:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls/interface/host-veth12",
+ "protocol": "https",
+ "host": [
+ "172",
+ "17",
+ "0",
+ "2"
+ ],
+ "port": "8445",
+ "path": [
+ "restconf",
+ "config",
+ "hc2vpp-ietf-routing:routing",
+ "hc2vpp-ietf-mpls:mpls",
+ "interface",
+ "host-veth12"
+ ]
+ },
"description": "Correspondig CLI command:\n\nset interface mpls host-veth12 enable"
},
"response": []
@@ -606,7 +1057,26 @@
"mode": "raw",
"raw": "{\n\t\"static-lsp\": [{\n\t\t\"name\": \"trafficToA\",\n\t\t\"config\": {\n\t\t\t\"in-segment\": {\n\t\t\t\t\"ip-prefix\": \"10.100.1.1/24\"\n\t\t\t},\n\t\t\t\"operation\": \"impose-and-forward\"\n\t\t},\n\t\t\"paths\": {\n\t\t\t\"path\": [{\n\t\t\t\t\"path-index\": 0,\n\t\t\t\t\"config\": {\n\t\t\t\t\t\"path-index\": 0,\n\t\t\t\t\t\"next-hop\": \"10.13.1.3\",\n\t\t\t\t\t\"outgoing-interface\": \"host-veth13\"\n\t\t\t\t}\n\t\t\t}],\n\t\t\t\"outgoing-labels\": {\n\t\t\t\t\"outgoing-labels\": [{\n\t\t\t\t\t\"index\": 0,\n\t\t\t\t\t\"config\": {\n\t\t\t\t\t\t\"index\": 0,\n\t\t\t\t\t\t\"label\": 103\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"index\": 1,\n\t\t\t\t\t\"config\": {\n\t\t\t\t\t\t\"index\": 1,\n\t\t\t\t\t\t\"label\": 104\n\t\t\t\t\t}\n\t\t\t\t}]\n\t\t\t}\n\t\t}\n\t}]\n}"
},
- "url": "https://172.17.0.2:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls/hc2vpp-ietf-mpls-static:static-lsps/static-lsp/trafficToA",
+ "url": {
+ "raw": "https://172.17.0.2:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls/hc2vpp-ietf-mpls-static:static-lsps/static-lsp/trafficToA",
+ "protocol": "https",
+ "host": [
+ "172",
+ "17",
+ "0",
+ "2"
+ ],
+ "port": "8445",
+ "path": [
+ "restconf",
+ "config",
+ "hc2vpp-ietf-routing:routing",
+ "hc2vpp-ietf-mpls:mpls",
+ "hc2vpp-ietf-mpls-static:static-lsps",
+ "static-lsp",
+ "trafficToA"
+ ]
+ },
"description": "Corresponding CLI command:\n\nip route add 10.100.1.1/24 via 10.13.1.3 host-veth13 out-labels 103 104\n\nCan be verified via CLI using:\n\nshow ip fib 10.100.1.1/24"
},
"response": []
@@ -629,7 +1099,26 @@
"mode": "raw",
"raw": "{\n\t\"static-lsp\": [{\n\t\t\"name\": \"trafficToA\",\n\t\t\"config\": {\n\t\t\t\"in-segment\": {\n\t\t\t\t\"config\": {\n\t\t\t\t\t\"ip-prefix\": \"10.100.1.1/24\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"operation\": \"impose-and-forward\"\n\t\t},\n\t\t\"paths\": {\n\t\t\t\"path\": [{\n\t\t\t\t\"path-index\": 0,\n\t\t\t\t\"config\": {\n\t\t\t\t\t\"path-index\": 0,\n\t\t\t\t\t\"next-hop\": \"10.13.1.3\",\n\t\t\t\t\t\"outgoing-interface\": \"host-veth13\"\n\t\t\t\t}\n\t\t\t}],\n\t\t\t\"outgoing-labels\": {\n\t\t\t\t\"outgoing-labels\": [{\n\t\t\t\t\t\"index\": 0,\n\t\t\t\t\t\"config\": {\n\t\t\t\t\t\t\"index\": 0,\n\t\t\t\t\t\t\"label\": 103\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"index\": 1,\n\t\t\t\t\t\"config\": {\n\t\t\t\t\t\t\"index\": 1,\n\t\t\t\t\t\t\"label\": 10341\n\t\t\t\t\t}\n\t\t\t\t}]\n\t\t\t}\n\t\t}\n\t}]\n}"
},
- "url": "https://172.17.0.2:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls/hc2vpp-ietf-mpls-static:static-lsps/static-lsp/trafficToA",
+ "url": {
+ "raw": "https://172.17.0.2:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls/hc2vpp-ietf-mpls-static:static-lsps/static-lsp/trafficToA",
+ "protocol": "https",
+ "host": [
+ "172",
+ "17",
+ "0",
+ "2"
+ ],
+ "port": "8445",
+ "path": [
+ "restconf",
+ "config",
+ "hc2vpp-ietf-routing:routing",
+ "hc2vpp-ietf-mpls:mpls",
+ "hc2vpp-ietf-mpls-static:static-lsps",
+ "static-lsp",
+ "trafficToA"
+ ]
+ },
"description": "Node + adjacency SID example.\n\nSteers traffic to A veth341 (the first interface between vpp3 and vpp4)."
},
"response": []
@@ -652,7 +1141,23 @@
"mode": "raw",
"raw": "{\r\n \r\n \"interface\": [\r\n {\r\n \"name\": \"testInterface\",\r\n \"description\": \"for testing purposes\",\r\n \"type\": \"iana-if-type:ethernetCsmacd\",\r\n \"enabled\": \"true\",\r\n \"link-up-down-trap-enable\": \"enabled\",\r\n \"ietf-ip:ipv4\": {\r\n \"enabled\": \"true\",\r\n \"mtu\": \"1500\",\r\n \"address\": [\r\n {\r\n \"ip\": \"1.2.3.0\",\r\n \"netmask\": \"255.255.255.0\"\r\n }\r\n ]\r\n }\r\n }\r\n ]\r\n \r\n}"
},
- "url": "https://172.17.0.2:8445/restconf/operational/ietf-interfaces:interfaces-state/"
+ "url": {
+ "raw": "https://172.17.0.2:8445/restconf/operational/ietf-interfaces:interfaces-state/",
+ "protocol": "https",
+ "host": [
+ "172",
+ "17",
+ "0",
+ "2"
+ ],
+ "port": "8445",
+ "path": [
+ "restconf",
+ "operational",
+ "ietf-interfaces:interfaces-state",
+ ""
+ ]
+ }
},
"response": []
},
@@ -674,7 +1179,26 @@
"mode": "raw",
"raw": ""
},
- "url": "https://172.17.0.2:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls/hc2vpp-ietf-mpls-static:static-lsps/static-lsp/trafficToB"
+ "url": {
+ "raw": "https://172.17.0.2:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls/hc2vpp-ietf-mpls-static:static-lsps/static-lsp/trafficToB",
+ "protocol": "https",
+ "host": [
+ "172",
+ "17",
+ "0",
+ "2"
+ ],
+ "port": "8445",
+ "path": [
+ "restconf",
+ "config",
+ "hc2vpp-ietf-routing:routing",
+ "hc2vpp-ietf-mpls:mpls",
+ "hc2vpp-ietf-mpls-static:static-lsps",
+ "static-lsp",
+ "trafficToB"
+ ]
+ }
},
"response": []
},
@@ -696,7 +1220,26 @@
"mode": "raw",
"raw": "{\n\t\"static-lsp\": [{\n\t\t\"name\": \"trafficToA\",\n\t\t\"config\": {\n\t\t\t\"in-segment\": {\n\t\t\t\t\"config\": {\n\t\t\t\t\t\"ip-prefix\": \"10.100.1.1/24\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"operation\": \"impose-and-forward\"\n\t\t},\n\t\t\"paths\": {\n\t\t\t\"path\": [{\n\t\t\t\t\"path-index\": 0,\n\t\t\t\t\"config\": {\n\t\t\t\t\t\"path-index\": 0,\n\t\t\t\t\t\"next-hop\": \"10.13.1.3\",\n\t\t\t\t\t\"outgoing-interface\": \"host-veth13\"\n\t\t\t\t}\n\t\t\t}],\n\t\t\t\"outgoing-labels\": {\n\t\t\t\t\"outgoing-labels\": [{\n\t\t\t\t\t\"index\": 0,\n\t\t\t\t\t\"config\": {\n\t\t\t\t\t\t\"index\": 0,\n\t\t\t\t\t\t\"label\": 103\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"index\": 1,\n\t\t\t\t\t\"config\": {\n\t\t\t\t\t\t\"index\": 1,\n\t\t\t\t\t\t\"label\": 10342\n\t\t\t\t\t}\n\t\t\t\t}]\n\t\t\t}\n\t\t}\n\t}]\n}\n"
},
- "url": "https://172.17.0.2:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls/hc2vpp-ietf-mpls-static:static-lsps/static-lsp/trafficToA",
+ "url": {
+ "raw": "https://172.17.0.2:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls/hc2vpp-ietf-mpls-static:static-lsps/static-lsp/trafficToA",
+ "protocol": "https",
+ "host": [
+ "172",
+ "17",
+ "0",
+ "2"
+ ],
+ "port": "8445",
+ "path": [
+ "restconf",
+ "config",
+ "hc2vpp-ietf-routing:routing",
+ "hc2vpp-ietf-mpls:mpls",
+ "hc2vpp-ietf-mpls-static:static-lsps",
+ "static-lsp",
+ "trafficToA"
+ ]
+ },
"description": "Node + adjacency SID example.\n\nSteers traffic to A veth342 (the second interface between vpp3 and vpp4)."
},
"response": []
@@ -719,7 +1262,26 @@
"mode": "raw",
"raw": ""
},
- "url": "https://172.17.0.2:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls/hc2vpp-ietf-mpls-static:static-lsps/static-lsp/trafficToB"
+ "url": {
+ "raw": "https://172.17.0.2:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls/hc2vpp-ietf-mpls-static:static-lsps/static-lsp/trafficToB",
+ "protocol": "https",
+ "host": [
+ "172",
+ "17",
+ "0",
+ "2"
+ ],
+ "port": "8445",
+ "path": [
+ "restconf",
+ "config",
+ "hc2vpp-ietf-routing:routing",
+ "hc2vpp-ietf-mpls:mpls",
+ "hc2vpp-ietf-mpls-static:static-lsps",
+ "static-lsp",
+ "trafficToB"
+ ]
+ }
},
"response": []
},
@@ -741,7 +1303,23 @@
"mode": "raw",
"raw": ""
},
- "url": "https://172.17.0.2:8445/restconf/config/ietf-interfaces:interfaces/"
+ "url": {
+ "raw": "https://172.17.0.2:8445/restconf/config/ietf-interfaces:interfaces/",
+ "protocol": "https",
+ "host": [
+ "172",
+ "17",
+ "0",
+ "2"
+ ],
+ "port": "8445",
+ "path": [
+ "restconf",
+ "config",
+ "ietf-interfaces:interfaces",
+ ""
+ ]
+ }
},
"response": []
},
@@ -763,7 +1341,26 @@
"mode": "raw",
"raw": ""
},
- "url": "https://172.17.0.2:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls/hc2vpp-ietf-mpls-static:static-lsps/static-lsp/trafficToA"
+ "url": {
+ "raw": "https://172.17.0.2:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls/hc2vpp-ietf-mpls-static:static-lsps/static-lsp/trafficToA",
+ "protocol": "https",
+ "host": [
+ "172",
+ "17",
+ "0",
+ "2"
+ ],
+ "port": "8445",
+ "path": [
+ "restconf",
+ "config",
+ "hc2vpp-ietf-routing:routing",
+ "hc2vpp-ietf-mpls:mpls",
+ "hc2vpp-ietf-mpls-static:static-lsps",
+ "static-lsp",
+ "trafficToA"
+ ]
+ }
},
"response": []
},
@@ -785,7 +1382,26 @@
"mode": "raw",
"raw": ""
},
- "url": "https://172.17.0.2:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls/hc2vpp-ietf-mpls-static:static-lsps/static-lsp/trafficToA"
+ "url": {
+ "raw": "https://172.17.0.2:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls/hc2vpp-ietf-mpls-static:static-lsps/static-lsp/trafficToA",
+ "protocol": "https",
+ "host": [
+ "172",
+ "17",
+ "0",
+ "2"
+ ],
+ "port": "8445",
+ "path": [
+ "restconf",
+ "config",
+ "hc2vpp-ietf-routing:routing",
+ "hc2vpp-ietf-mpls:mpls",
+ "hc2vpp-ietf-mpls-static:static-lsps",
+ "static-lsp",
+ "trafficToA"
+ ]
+ }
},
"response": []
},
@@ -807,7 +1423,26 @@
"mode": "raw",
"raw": "{\n\t\"static-lsp\": [{\n\t\t\"name\": \"trafficToB\",\n\t\t\"config\": {\n\t\t\t\"in-segment\": {\n\t\t\t\t\"config\": {\n\t\t\t\t\t\"config\" : {\n\t\t\t\t\t\t\"ip-prefix\": \"10.200.1.1/24\"\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"operation\": \"impose-and-forward\"\n\t\t},\n\t\t\"paths\": {\n\t\t\t\"path\": [{\n\t\t\t\t\"path-index\": 0,\n\t\t\t\t\"config\": {\n\t\t\t\t\t\"path-index\": 0,\n\t\t\t\t\t\"next-hop\": \"10.12.1.2\",\n\t\t\t\t\t\"outgoing-interface\": \"host-veth12\"\n\t\t\t\t}\n\t\t\t}],\n\t\t\t\"outgoing-labels\": {\n\t\t\t\t\"outgoing-labels\": [{\n\t\t\t\t\t\"index\": 0,\n\t\t\t\t\t\"config\": {\n\t\t\t\t\t\t\"index\": 0,\n\t\t\t\t\t\t\"label\": 102\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"index\": 1,\n\t\t\t\t\t\"config\": {\n\t\t\t\t\t\t\"index\": 1,\n\t\t\t\t\t\t\"label\": 104\n\t\t\t\t\t}\n\t\t\t\t}]\n\t\t\t}\n\t\t}\n\t}]\n}"
},
- "url": "https://172.17.0.2:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls/hc2vpp-ietf-mpls-static:static-lsps/static-lsp/trafficToB",
+ "url": {
+ "raw": "https://172.17.0.2:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls/hc2vpp-ietf-mpls-static:static-lsps/static-lsp/trafficToB",
+ "protocol": "https",
+ "host": [
+ "172",
+ "17",
+ "0",
+ "2"
+ ],
+ "port": "8445",
+ "path": [
+ "restconf",
+ "config",
+ "hc2vpp-ietf-routing:routing",
+ "hc2vpp-ietf-mpls:mpls",
+ "hc2vpp-ietf-mpls-static:static-lsps",
+ "static-lsp",
+ "trafficToB"
+ ]
+ },
"description": "Corresponding CLI command:\n\nip route add 10.200.1.1/24 via 10.12.1.2 host-veth12 out-labels 102 104\n\nCan be verified via CLI using:\n\nshow ip fib 10.200.1.1/24"
},
"response": []
@@ -830,7 +1465,26 @@
"mode": "raw",
"raw": "{\n\t\"static-lsp\": [{\n\t\t\"name\": \"trafficToB\",\n\t\t\"config\": {\n\t\t\t\"in-segment\": {\n\t\t\t\t\"config\": {\n\t\t\t\t\t\"ip-prefix\": \"10.200.1.1/24\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"operation\": \"impose-and-forward\"\n\t\t},\n\t\t\"simple-path\": {\n\t\t\t\"config\": {\n\t\t\t\t\"next-hop\": \"10.12.1.2\",\n\t\t\t\t\"outgoing-label\": 102,\n\t\t\t\t\"outgoing-interface\": \"host-veth12\"\n\t\t\t}\n\t\t}\n\t}]\n}"
},
- "url": "https://172.17.0.2:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls/hc2vpp-ietf-mpls-static:static-lsps/static-lsp/trafficToB"
+ "url": {
+ "raw": "https://172.17.0.2:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls/hc2vpp-ietf-mpls-static:static-lsps/static-lsp/trafficToB",
+ "protocol": "https",
+ "host": [
+ "172",
+ "17",
+ "0",
+ "2"
+ ],
+ "port": "8445",
+ "path": [
+ "restconf",
+ "config",
+ "hc2vpp-ietf-routing:routing",
+ "hc2vpp-ietf-mpls:mpls",
+ "hc2vpp-ietf-mpls-static:static-lsps",
+ "static-lsp",
+ "trafficToB"
+ ]
+ }
},
"response": []
}
@@ -838,7 +1492,7 @@
},
{
"name": "vpp2",
- "description": "",
+ "description": null,
"item": [
{
"name": "Enable mpls on host-veth24 interface",
@@ -858,7 +1512,25 @@
"mode": "raw",
"raw": "{\n \"interface\": [\n {\n \"name\": \"host-veth24\",\n \"config\": {\n \"enabled\": \"true\"\n }\n }\n ]\n}"
},
- "url": "https://172.17.0.3:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls/interface/host-veth24",
+ "url": {
+ "raw": "https://172.17.0.3:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls/interface/host-veth24",
+ "protocol": "https",
+ "host": [
+ "172",
+ "17",
+ "0",
+ "3"
+ ],
+ "port": "8445",
+ "path": [
+ "restconf",
+ "config",
+ "hc2vpp-ietf-routing:routing",
+ "hc2vpp-ietf-mpls:mpls",
+ "interface",
+ "host-veth24"
+ ]
+ },
"description": "Correspondig CLI command:\n\nset interface mpls host-veth24 enable"
},
"response": []
@@ -881,7 +1553,23 @@
"mode": "raw",
"raw": "{\r\n \r\n \"interface\": [\r\n {\r\n \"name\": \"testInterface\",\r\n \"description\": \"for testing purposes\",\r\n \"type\": \"iana-if-type:ethernetCsmacd\",\r\n \"enabled\": \"true\",\r\n \"link-up-down-trap-enable\": \"enabled\",\r\n \"ietf-ip:ipv4\": {\r\n \"enabled\": \"true\",\r\n \"mtu\": \"1500\",\r\n \"address\": [\r\n {\r\n \"ip\": \"1.2.3.0\",\r\n \"netmask\": \"255.255.255.0\"\r\n }\r\n ]\r\n }\r\n }\r\n ]\r\n \r\n}"
},
- "url": "https://172.17.0.3:8445/restconf/operational/ietf-interfaces:interfaces-state/"
+ "url": {
+ "raw": "https://172.17.0.3:8445/restconf/operational/ietf-interfaces:interfaces-state/",
+ "protocol": "https",
+ "host": [
+ "172",
+ "17",
+ "0",
+ "3"
+ ],
+ "port": "8445",
+ "path": [
+ "restconf",
+ "operational",
+ "ietf-interfaces:interfaces-state",
+ ""
+ ]
+ }
},
"response": []
},
@@ -903,7 +1591,25 @@
"mode": "raw",
"raw": "{\n \"interface\": [\n {\n \"name\": \"host-veth21\",\n \"config\": {\n \"enabled\": \"true\"\n }\n }\n ]\n}"
},
- "url": "https://172.17.0.3:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls/interface/host-veth21",
+ "url": {
+ "raw": "https://172.17.0.3:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls/interface/host-veth21",
+ "protocol": "https",
+ "host": [
+ "172",
+ "17",
+ "0",
+ "3"
+ ],
+ "port": "8445",
+ "path": [
+ "restconf",
+ "config",
+ "hc2vpp-ietf-routing:routing",
+ "hc2vpp-ietf-mpls:mpls",
+ "interface",
+ "host-veth21"
+ ]
+ },
"description": "Correspondig CLI command:\n\nset interface mpls host-veth21 enable"
},
"response": []
@@ -926,7 +1632,23 @@
"mode": "raw",
"raw": "{\r\n \r\n \"interface\": [\r\n {\r\n \"name\": \"testInterface\",\r\n \"description\": \"for testing purposes\",\r\n \"type\": \"iana-if-type:ethernetCsmacd\",\r\n \"enabled\": \"true\",\r\n \"link-up-down-trap-enable\": \"enabled\",\r\n \"ietf-ip:ipv4\": {\r\n \"enabled\": \"true\",\r\n \"mtu\": \"1500\",\r\n \"address\": [\r\n {\r\n \"ip\": \"1.2.3.0\",\r\n \"netmask\": \"255.255.255.0\"\r\n }\r\n ]\r\n }\r\n }\r\n ]\r\n \r\n}"
},
- "url": "https://172.17.0.3:8445/restconf/config/ietf-interfaces:interfaces/"
+ "url": {
+ "raw": "https://172.17.0.3:8445/restconf/config/ietf-interfaces:interfaces/",
+ "protocol": "https",
+ "host": [
+ "172",
+ "17",
+ "0",
+ "3"
+ ],
+ "port": "8445",
+ "path": [
+ "restconf",
+ "config",
+ "ietf-interfaces:interfaces",
+ ""
+ ]
+ }
},
"response": []
},
@@ -948,7 +1670,23 @@
"mode": "raw",
"raw": ""
},
- "url": "https://172.17.0.3:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls"
+ "url": {
+ "raw": "https://172.17.0.3:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls",
+ "protocol": "https",
+ "host": [
+ "172",
+ "17",
+ "0",
+ "3"
+ ],
+ "port": "8445",
+ "path": [
+ "restconf",
+ "config",
+ "hc2vpp-ietf-routing:routing",
+ "hc2vpp-ietf-mpls:mpls"
+ ]
+ }
},
"response": []
},
@@ -970,7 +1708,26 @@
"mode": "raw",
"raw": "{\n \"static-lsp\": [\n {\n \"name\": \"trafficToB\",\n \"config\": {\n \"in-segment\": {\n \t\"config\" : {\n \"ip-prefix\": \"10.200.1.1/24\"\n \t}\n },\n \"operation\": \"impose-and-forward\"\n },\n \"simple-path\": {\n\t\t\"config\": {\n\t\t\t\"next-hop\": \"10.24.1.4\",\n\t\t\t\"outgoing-label\": 104,\n\t\t\t\"outgoing-interface\": \"host-veth24\"\n\t\t}\n\t }\n }\n ]\n}"
},
- "url": "https://172.17.0.3:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls/hc2vpp-ietf-mpls-static:static-lsps/static-lsp/trafficToB",
+ "url": {
+ "raw": "https://172.17.0.3:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls/hc2vpp-ietf-mpls-static:static-lsps/static-lsp/trafficToB",
+ "protocol": "https",
+ "host": [
+ "172",
+ "17",
+ "0",
+ "3"
+ ],
+ "port": "8445",
+ "path": [
+ "restconf",
+ "config",
+ "hc2vpp-ietf-routing:routing",
+ "hc2vpp-ietf-mpls:mpls",
+ "hc2vpp-ietf-mpls-static:static-lsps",
+ "static-lsp",
+ "trafficToB"
+ ]
+ },
"description": "Simulates route that could be received via BGP."
},
"response": []
@@ -993,7 +1750,26 @@
"mode": "raw",
"raw": "{\n\t\"static-lsp\": [{\n\t\t\"name\": \"lsp1\",\n\t\t\"config\": {\n\t\t\t\"in-segment\": {\n\t\t\t\t\"config\": {\n\t\t\t\t\t\"incoming-label\": 102\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"operation\": \"pop-and-lookup\",\n\t\t\t\"vpp-mpls:label-lookup\": {\n\t\t\t\t\"type\": \"mpls\",\n\t\t\t\t\"mpls-lookup-in-table\": 0\n\t\t\t}\n\t\t}\n\t}]\n}"
},
- "url": "https://172.17.0.3:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls/hc2vpp-ietf-mpls-static:static-lsps/static-lsp/lsp1",
+ "url": {
+ "raw": "https://172.17.0.3:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls/hc2vpp-ietf-mpls-static:static-lsps/static-lsp/lsp1",
+ "protocol": "https",
+ "host": [
+ "172",
+ "17",
+ "0",
+ "3"
+ ],
+ "port": "8445",
+ "path": [
+ "restconf",
+ "config",
+ "hc2vpp-ietf-routing:routing",
+ "hc2vpp-ietf-mpls:mpls",
+ "hc2vpp-ietf-mpls-static:static-lsps",
+ "static-lsp",
+ "lsp1"
+ ]
+ },
"description": "Corresponding CLI command:\n\nmpls local-label add non-eos 102 mpls-lookup-in-table 0\n\n\nCan be verified via CLI using:\n\nshow mpls fib 102"
},
"response": []
@@ -1016,7 +1792,26 @@
"mode": "raw",
"raw": "{\n\t\"static-lsp\": [{\n\t\t\"name\": \"lsp3\",\n\t\t\"config\": {\n\t\t\t\"in-segment\": {\n\t\t\t\t\"config\": {\n\t\t\t\t\t\"incoming-label\": 102\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"operation\": \"pop-and-lookup\",\n\t\t\t\"vpp-mpls:label-lookup\": {\n\t\t\t\t\"type\": \"ipv4\",\n\t\t\t\t\"ip4-lookup-in-table\": 0\n\t\t\t}\n\t\t}\n\t}]\n}"
},
- "url": "https://172.17.0.3:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls/hc2vpp-ietf-mpls-static:static-lsps/static-lsp/lsp3",
+ "url": {
+ "raw": "https://172.17.0.3:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls/hc2vpp-ietf-mpls-static:static-lsps/static-lsp/lsp3",
+ "protocol": "https",
+ "host": [
+ "172",
+ "17",
+ "0",
+ "3"
+ ],
+ "port": "8445",
+ "path": [
+ "restconf",
+ "config",
+ "hc2vpp-ietf-routing:routing",
+ "hc2vpp-ietf-mpls:mpls",
+ "hc2vpp-ietf-mpls-static:static-lsps",
+ "static-lsp",
+ "lsp3"
+ ]
+ },
"description": "In case 102 is the last label,\npop it and check if we have route for destination."
},
"response": []
@@ -1039,7 +1834,26 @@
"mode": "raw",
"raw": "{\n\t\"static-lsp\": [{\n\t\t\"name\": \"lsp2\",\n\t\t\"config\": {\n\t\t\t\"in-segment\": {\n\t\t\t\t\"config\": {\n\t\t\t\t\t\"incoming-label\": 104\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"operation\": \"swap-and-forward\"\n\t\t},\n\t\t\"simple-path\": {\n\t\t\t\"config\": {\n\t\t\t\t\"next-hop\": \"10.24.1.4\",\n\t\t\t\t\"outgoing-label\": 104,\n\t\t\t\t\"outgoing-interface\": \"host-veth24\"\n\t\t\t}\n\t\t}\n\t}]\n}"
},
- "url": "https://172.17.0.3:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls/hc2vpp-ietf-mpls-static:static-lsps/static-lsp/lsp2",
+ "url": {
+ "raw": "https://172.17.0.3:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls/hc2vpp-ietf-mpls-static:static-lsps/static-lsp/lsp2",
+ "protocol": "https",
+ "host": [
+ "172",
+ "17",
+ "0",
+ "3"
+ ],
+ "port": "8445",
+ "path": [
+ "restconf",
+ "config",
+ "hc2vpp-ietf-routing:routing",
+ "hc2vpp-ietf-mpls:mpls",
+ "hc2vpp-ietf-mpls-static:static-lsps",
+ "static-lsp",
+ "lsp2"
+ ]
+ },
"description": "Corresponding CLI command:\n\nmpls local-label add eos 104 via 10.24.1.4 host-veth24 out-labels 104\n\n\nCan be verified via CLI using:\n\nshow mpls fib 104"
},
"response": []
diff --git a/examples/docker/mpls_demo/postman_collection_v2.0.0.json b/examples/docker/mpls_demo/postman_collection_v2.0.0.json
new file mode 100644
index 000000000..0420f2a42
--- /dev/null
+++ b/examples/docker/mpls_demo/postman_collection_v2.0.0.json
@@ -0,0 +1,1050 @@
+{
+ "info": {
+ "_postman_id": "4165ed66-ad4e-4003-99dd-285a50e86f15",
+ "name": "Honeycomb SR MPLS",
+ "description": "Examples of configuring some basic MPLS SR scenariou using hc2vpp",
+ "schema": "https://schema.getpostman.com/json/collection/v2.0.0/collection.json"
+ },
+ "item": [
+ {
+ "name": "vpp3",
+ "description": "",
+ "item": [
+ {
+ "name": "Enable mpls on host-veth341",
+ "request": {
+ "method": "PUT",
+ "header": [
+ {
+ "key": "Authorization",
+ "value": "Basic YWRtaW46YWRtaW4="
+ },
+ {
+ "key": "Content-Type",
+ "value": "application/json"
+ }
+ ],
+ "body": {
+ "mode": "raw",
+ "raw": "{\n \"interface\": [\n {\n \"name\": \"host-veth341\",\n \"config\": {\n \"enabled\": \"true\"\n }\n }\n ]\n}"
+ },
+ "url": "https://172.17.0.4:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls/interface/host-veth341",
+ "description": "Correspondig CLI command:\n\nset interface mpls host-veth341 enable"
+ },
+ "response": []
+ },
+ {
+ "name": "List ifcs - cfg",
+ "request": {
+ "method": "GET",
+ "header": [
+ {
+ "key": "Authorization",
+ "value": "Basic YWRtaW46YWRtaW4="
+ },
+ {
+ "key": "Content-Type",
+ "value": "application/json"
+ }
+ ],
+ "body": {
+ "mode": "raw",
+ "raw": "{\r\n \r\n \"interface\": [\r\n {\r\n \"name\": \"testInterface\",\r\n \"description\": \"for testing purposes\",\r\n \"type\": \"iana-if-type:ethernetCsmacd\",\r\n \"enabled\": \"true\",\r\n \"link-up-down-trap-enable\": \"enabled\",\r\n \"ietf-ip:ipv4\": {\r\n \"enabled\": \"true\",\r\n \"mtu\": \"1500\",\r\n \"address\": [\r\n {\r\n \"ip\": \"1.2.3.0\",\r\n \"netmask\": \"255.255.255.0\"\r\n }\r\n ]\r\n }\r\n }\r\n ]\r\n \r\n}"
+ },
+ "url": "https://172.17.0.4:8445/restconf/config/ietf-interfaces:interfaces/"
+ },
+ "response": []
+ },
+ {
+ "name": "Get mpls (cfg)",
+ "request": {
+ "method": "GET",
+ "header": [
+ {
+ "key": "Authorization",
+ "value": "Basic YWRtaW46YWRtaW4="
+ },
+ {
+ "key": "Content-Type",
+ "value": "application/json"
+ }
+ ],
+ "body": {
+ "mode": "raw",
+ "raw": ""
+ },
+ "url": "https://172.17.0.4:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls"
+ },
+ "response": []
+ },
+ {
+ "name": "Enable mpls on host-veth342",
+ "request": {
+ "method": "PUT",
+ "header": [
+ {
+ "key": "Authorization",
+ "value": "Basic YWRtaW46YWRtaW4="
+ },
+ {
+ "key": "Content-Type",
+ "value": "application/json"
+ }
+ ],
+ "body": {
+ "mode": "raw",
+ "raw": "{\n \"interface\": [\n {\n \"name\": \"host-veth342\",\n \"config\": {\n \"enabled\": \"true\"\n }\n }\n ]\n}"
+ },
+ "url": "https://172.17.0.4:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls/interface/host-veth342",
+ "description": "Correspondig CLI command:\n\nset interface mpls host-veth342 enable"
+ },
+ "response": []
+ },
+ {
+ "name": "Enable mpls on host-veth31",
+ "request": {
+ "method": "PUT",
+ "header": [
+ {
+ "key": "Authorization",
+ "value": "Basic YWRtaW46YWRtaW4="
+ },
+ {
+ "key": "Content-Type",
+ "value": "application/json"
+ }
+ ],
+ "body": {
+ "mode": "raw",
+ "raw": "{\n \"interface\": [\n {\n \"name\": \"host-veth31\",\n \"config\": {\n \"enabled\": \"true\"\n }\n }\n ]\n}"
+ },
+ "url": "https://172.17.0.4:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls/interface/host-veth31",
+ "description": "Correspondig CLI command:\n\nset interface mpls host-veth31 enable"
+ },
+ "response": []
+ },
+ {
+ "name": "Pop 103 and MPLS lookup",
+ "request": {
+ "method": "PUT",
+ "header": [
+ {
+ "key": "Authorization",
+ "value": "Basic YWRtaW46YWRtaW4="
+ },
+ {
+ "key": "Content-Type",
+ "value": "application/json"
+ }
+ ],
+ "body": {
+ "mode": "raw",
+ "raw": "{\n \"static-lsp\": [\n {\n \"name\": \"lsp1\",\n \"config\": {\n \"in-segment\": {\n \t\"config\" : {\n \t\t\"incoming-label\": 103\n \t}\n },\n \"operation\": \"pop-and-lookup\",\n \"vpp-mpls:label-lookup\" : {\n \"type\": \"mpls\",\n \"mpls-lookup-in-table\": 0\n }\n }\n }\n ]\n}"
+ },
+ "url": "https://172.17.0.4:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls/hc2vpp-ietf-mpls-static:static-lsps/static-lsp/lsp1",
+ "description": "Corresponding CLI command:\n\nmpls local-label add non-eos 103 mpls-lookup-in-table 0\n\n\nCan be verified via CLI using:\n\nshow mpls fib 103"
+ },
+ "response": []
+ },
+ {
+ "name": "Swap 104 and forward via veth341",
+ "request": {
+ "method": "PUT",
+ "header": [
+ {
+ "key": "Authorization",
+ "value": "Basic YWRtaW46YWRtaW4="
+ },
+ {
+ "key": "Content-Type",
+ "value": "application/json"
+ }
+ ],
+ "body": {
+ "mode": "raw",
+ "raw": "{\n \"static-lsp\": [\n {\n \"name\": \"lsp2\",\n \"config\": {\n \"in-segment\": {\n \t\"config\" : {\n \t\t\"incoming-label\": 104\n \t}\n },\n \"operation\": \"swap-and-forward\"\n },\n \"simple-path\": {\n\t\t\t\"config\": {\n\t\t \"next-hop\": \"10.34.1.4\",\n\t\t \"outgoing-label\": 104,\n\t\t \"outgoing-interface\": \"host-veth341\"\n\t\t\t}\n\t\t}\n }\n ]\n}"
+ },
+ "url": "https://172.17.0.4:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls/hc2vpp-ietf-mpls-static:static-lsps/static-lsp/lsp2",
+ "description": "Corresponding CLI command:\n\nmpls local-label add eos 104 via 10.34.1.4 host-veth341 out-labels 104\n\n\nCan be verified via CLI using:\n\nshow mpls fib 104"
+ },
+ "response": []
+ },
+ {
+ "name": "Swap 104 and forward via veth342",
+ "request": {
+ "method": "PUT",
+ "header": [
+ {
+ "key": "Authorization",
+ "value": "Basic YWRtaW46YWRtaW4="
+ },
+ {
+ "key": "Content-Type",
+ "value": "application/json"
+ }
+ ],
+ "body": {
+ "mode": "raw",
+ "raw": "{\n \"static-lsp\": [\n {\n \"name\": \"lsp3\",\n \"config\": {\n \"in-segment\": {\n \t\"config\" : {\n \t\t\"incoming-label\": 104\n \t}\n },\n \"operation\": \"swap-and-forward\"\n },\n \"simple-path\": {\n\t\t\t\"config\": {\n\t\t \"next-hop\": \"10.34.2.4\",\n\t\t \"outgoing-label\": 104,\n\t\t \"outgoing-interface\": \"host-veth342\"\n\t\t\t}\n\t\t}\n }\n ]\n}"
+ },
+ "url": "https://172.17.0.4:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls/hc2vpp-ietf-mpls-static:static-lsps/static-lsp/lsp3",
+ "description": "Corresponding CLI command:\n\nmpls local-label add eos 104 via 10.34.2.4 host-veth342 out-labels 104\n\n\nCan be verified via CLI using:\n\nshow mpls fib 104"
+ },
+ "response": []
+ },
+ {
+ "name": "List ifcs - oper",
+ "request": {
+ "method": "GET",
+ "header": [
+ {
+ "key": "Authorization",
+ "value": "Basic YWRtaW46YWRtaW4="
+ },
+ {
+ "key": "Content-Type",
+ "value": "application/json"
+ }
+ ],
+ "body": {
+ "mode": "raw",
+ "raw": "{\r\n \r\n \"interface\": [\r\n {\r\n \"name\": \"testInterface\",\r\n \"description\": \"for testing purposes\",\r\n \"type\": \"iana-if-type:ethernetCsmacd\",\r\n \"enabled\": \"true\",\r\n \"link-up-down-trap-enable\": \"enabled\",\r\n \"ietf-ip:ipv4\": {\r\n \"enabled\": \"true\",\r\n \"mtu\": \"1500\",\r\n \"address\": [\r\n {\r\n \"ip\": \"1.2.3.0\",\r\n \"netmask\": \"255.255.255.0\"\r\n }\r\n ]\r\n }\r\n }\r\n ]\r\n \r\n}"
+ },
+ "url": "https://172.17.0.4:8445/restconf/operational/ietf-interfaces:interfaces-state/"
+ },
+ "response": []
+ },
+ {
+ "name": "Swap 10341 and forward via veth341",
+ "request": {
+ "method": "PUT",
+ "header": [
+ {
+ "key": "Authorization",
+ "value": "Basic YWRtaW46YWRtaW4="
+ },
+ {
+ "key": "Content-Type",
+ "value": "application/json"
+ }
+ ],
+ "body": {
+ "mode": "raw",
+ "raw": "{\n \"static-lsp\": [\n {\n \"name\": \"lsp4\",\n \"config\": {\n \"in-segment\": {\n \t\"config\" : {\n \t\t\"incoming-label\": 10341\n \t}\n },\n \"operation\": \"swap-and-forward\"\n },\n \"simple-path\": {\n\t\t\t\"config\": {\n\t\t \"next-hop\": \"10.34.1.4\",\n\t\t \"outgoing-label\": 104,\n\t\t \"outgoing-interface\": \"host-veth341\"\n\t\t\t}\n\t\t}\n }\n ]\n}"
+ },
+ "url": "https://172.17.0.4:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls/hc2vpp-ietf-mpls-static:static-lsps/static-lsp/lsp4",
+ "description": "Corresponding CLI command:\n\nmpls local-label add eos 10341 via 10.34.1.4 host-veth341 out-labels 104\n\n\nCan be verified via CLI using:\n\nshow mpls fib 10341"
+ },
+ "response": []
+ },
+ {
+ "name": "Swap 10342 and forward via veth342",
+ "request": {
+ "method": "PUT",
+ "header": [
+ {
+ "key": "Authorization",
+ "value": "Basic YWRtaW46YWRtaW4="
+ },
+ {
+ "key": "Content-Type",
+ "value": "application/json"
+ }
+ ],
+ "body": {
+ "mode": "raw",
+ "raw": "{\n \"static-lsp\": [\n {\n \"name\": \"lsp5\",\n \"config\": {\n \"in-segment\": {\n \t\"config\" : {\n \t\t\"incoming-label\": 10342\n \t}\n },\n \"operation\": \"swap-and-forward\"\n },\n \"simple-path\": {\n\t\t\t\"config\": {\n\t\t \"next-hop\": \"10.34.2.4\",\n\t\t \"outgoing-label\": 104,\n\t\t \"outgoing-interface\": \"host-veth342\"\n\t\t\t}\n\t\t}\n }\n ]\n}"
+ },
+ "url": "https://172.17.0.4:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls/hc2vpp-ietf-mpls-static:static-lsps/static-lsp/lsp5",
+ "description": "Corresponding CLI command:\n\nmpls local-label add eos 10342 via 10.34.2.4 host-veth342 out-labels 104\n\n\nCan be verified via CLI using:\n\nshow mpls fib 10342"
+ },
+ "response": []
+ }
+ ]
+ },
+ {
+ "name": "vpp4",
+ "description": "",
+ "item": [
+ {
+ "name": "Enable mpls on veth431",
+ "request": {
+ "method": "PUT",
+ "header": [
+ {
+ "key": "Authorization",
+ "value": "Basic YWRtaW46YWRtaW4="
+ },
+ {
+ "key": "Content-Type",
+ "value": "application/json"
+ }
+ ],
+ "body": {
+ "mode": "raw",
+ "raw": "{\n \"interface\": [\n {\n \"name\": \"host-veth431\",\n \"config\": {\n \"enabled\": \"true\"\n }\n }\n ]\n}"
+ },
+ "url": "https://172.17.0.5:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls/interface/host-veth431",
+ "description": "Correspondig CLI command:\n\nset interface mpls host-veth431 enable"
+ },
+ "response": []
+ },
+ {
+ "name": "Enable mpls on veth432",
+ "request": {
+ "method": "PUT",
+ "header": [
+ {
+ "key": "Authorization",
+ "value": "Basic YWRtaW46YWRtaW4="
+ },
+ {
+ "key": "Content-Type",
+ "value": "application/json"
+ }
+ ],
+ "body": {
+ "mode": "raw",
+ "raw": "{\n \"interface\": [\n {\n \"name\": \"host-veth432\",\n \"config\": {\n \"enabled\": \"true\"\n }\n }\n ]\n}"
+ },
+ "url": "https://172.17.0.5:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls/interface/host-veth432",
+ "description": "Correspondig CLI command:\n\nset interface mpls host-veth432 enable"
+ },
+ "response": []
+ },
+ {
+ "name": "Create config for vrf0",
+ "request": {
+ "method": "PUT",
+ "header": [
+ {
+ "key": "Authorization",
+ "value": "Basic YWRtaW46YWRtaW4="
+ },
+ {
+ "key": "Content-Type",
+ "value": "application/json"
+ }
+ ],
+ "body": {
+ "mode": "raw",
+ "raw": "{\r\n\t\"control-plane-protocol\":[\r\n\t\t{\r\n\t\t\t\"name\":\"learned-protocol-0\",\r\n\t\t\t\"type\":\"static\",\r\n\t\t\t\"vpp-protocol-attributes\": {\r\n\t \"primary-vrf\": 0\r\n }\r\n\t\t}\t\r\n\t]\r\n}"
+ },
+ "url": "https://172.17.0.5:8445/restconf/config/hc2vpp-ietf-routing:routing/control-plane-protocols/control-plane-protocol/hc2vpp-ietf-routing:static/learned-protocol-0",
+ "description": "Hc2vpp by default stores it under learned-protocol-0"
+ },
+ "response": []
+ },
+ {
+ "name": "Add reverse direction for 10.13.1.0/24",
+ "request": {
+ "method": "PUT",
+ "header": [
+ {
+ "key": "Authorization",
+ "value": "Basic YWRtaW46YWRtaW4="
+ },
+ {
+ "key": "Content-Type",
+ "value": "application/json"
+ }
+ ],
+ "body": {
+ "mode": "raw",
+ "raw": "{\n\t\"route\": [\n\t\t{\n\t\t\t\"destination-prefix\": \"10.13.1.0/24\",\n\t\t\t\"next-hop\": {\n \t\"next-hop-address\" : \"10.34.2.3\",\n\t\t\t\t\"outgoing-interface\": \"host-veth432\"\n }\n\t}]\n}"
+ },
+ "url": "https://172.17.0.5:8445/restconf/config/hc2vpp-ietf-routing:routing/control-plane-protocols/control-plane-protocol/hc2vpp-ietf-routing:static/learned-protocol-0/static-routes/ipv4/route/10.13.1.0%2f24",
+ "description": "Send reverse traffic using IP.\n\nCorresponding CLI command:\n\nip route add 10.13.1.0/24 via 10.34.2.3 host-veth432"
+ },
+ "response": []
+ },
+ {
+ "name": "List ifcs - oper",
+ "request": {
+ "method": "GET",
+ "header": [
+ {
+ "key": "Authorization",
+ "value": "Basic YWRtaW46YWRtaW4="
+ },
+ {
+ "key": "Content-Type",
+ "value": "application/json"
+ }
+ ],
+ "body": {
+ "mode": "raw",
+ "raw": "{\r\n \r\n \"interface\": [\r\n {\r\n \"name\": \"testInterface\",\r\n \"description\": \"for testing purposes\",\r\n \"type\": \"iana-if-type:ethernetCsmacd\",\r\n \"enabled\": \"true\",\r\n \"link-up-down-trap-enable\": \"enabled\",\r\n \"ietf-ip:ipv4\": {\r\n \"enabled\": \"true\",\r\n \"mtu\": \"1500\",\r\n \"address\": [\r\n {\r\n \"ip\": \"1.2.3.0\",\r\n \"netmask\": \"255.255.255.0\"\r\n }\r\n ]\r\n }\r\n }\r\n ]\r\n \r\n}"
+ },
+ "url": "https://172.17.0.5:8445/restconf/operational/ietf-interfaces:interfaces-state/"
+ },
+ "response": []
+ },
+ {
+ "name": "Configure tap for host A",
+ "request": {
+ "method": "PUT",
+ "header": [
+ {
+ "key": "Authorization",
+ "value": "Basic YWRtaW46YWRtaW4="
+ },
+ {
+ "key": "Content-Type",
+ "value": "application/json"
+ }
+ ],
+ "body": {
+ "mode": "raw",
+ "raw": "{\r\n \r\n \"interface\": [\r\n {\r\n \"name\": \"A\",\r\n \"description\": \"Host A\",\r\n \"type\": \"v3po:tap\",\r\n \"tap\" : {\r\n \"tap-name\" : \"A\"\r\n },\r\n \"ipv4\" : {\r\n \t\"address\" : [{\r\n \t\t\"ip\" : \"10.100.1.1\",\r\n \t\t\"prefix-length\" : \"24\"\r\n \t}]\r\n }\r\n }\r\n ]\r\n \r\n}"
+ },
+ "url": "https://172.17.0.5:8445/restconf/config/ietf-interfaces:interfaces/interface/A"
+ },
+ "response": []
+ },
+ {
+ "name": "Pop 104 and IPv4 lookup",
+ "request": {
+ "method": "PUT",
+ "header": [
+ {
+ "key": "Authorization",
+ "value": "Basic YWRtaW46YWRtaW4="
+ },
+ {
+ "key": "Content-Type",
+ "value": "application/json"
+ }
+ ],
+ "body": {
+ "mode": "raw",
+ "raw": "{\n \"static-lsp\": [\n {\n \"name\": \"lsp1\",\n \"config\": {\n \"in-segment\": {\n \t\"config\" : {\n \t\t\"incoming-label\": 104\n \t}\n },\n \"operation\": \"pop-and-lookup\",\n \"vpp-mpls:label-lookup\" : {\n \"type\": \"ipv4\",\n \"ip4-lookup-in-table\": 0\n }\n }\n }\n ]\n}"
+ },
+ "url": "https://172.17.0.5:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls/hc2vpp-ietf-mpls-static:static-lsps/static-lsp/lsp1",
+ "description": "Corresponding CLI command:\n\nmpls local-label add eos 104 ip4-lookup-in-table 0\n\n\nCan be verified via CLI using:\n\nshow mpls fib 104"
+ },
+ "response": []
+ },
+ {
+ "name": "Add reverse direction for 10.12.1.0/24",
+ "request": {
+ "method": "PUT",
+ "header": [
+ {
+ "key": "Authorization",
+ "value": "Basic YWRtaW46YWRtaW4="
+ },
+ {
+ "key": "Content-Type",
+ "value": "application/json"
+ }
+ ],
+ "body": {
+ "mode": "raw",
+ "raw": "{\n\t\"route\": [\n\t\t{\n\t\t\t\"destination-prefix\": \"10.12.1.0/24\",\n\t\t\t\"next-hop\": {\n \t\"next-hop-address\" : \"10.24.1.2\",\n\t\t\t\t\"outgoing-interface\": \"host-veth42\"\n }\n\t}]\n}"
+ },
+ "url": "https://172.17.0.5:8445/restconf/config/hc2vpp-ietf-routing:routing/control-plane-protocols/control-plane-protocol/hc2vpp-ietf-routing:static/learned-protocol-0/static-routes/ipv4/route/10.12.1.0%2F24",
+ "description": "Send reverse traffic using IP.\n\nCorresponding CLI command:\n\nip route add 10.12.1.0/24 via 10.24.1.2 host-veth42"
+ },
+ "response": []
+ },
+ {
+ "name": "Configure tap for host B",
+ "request": {
+ "method": "PUT",
+ "header": [
+ {
+ "key": "Authorization",
+ "value": "Basic YWRtaW46YWRtaW4="
+ },
+ {
+ "key": "Content-Type",
+ "value": "application/json"
+ }
+ ],
+ "body": {
+ "mode": "raw",
+ "raw": "{\r\n \r\n \"interface\": [\r\n {\r\n \"name\": \"B\",\r\n \"description\": \"Host B\",\r\n \"type\": \"v3po:tap\",\r\n \"tap\" : {\r\n \"tap-name\" : \"B\"\r\n },\r\n \"ipv4\" : {\r\n \t\"address\" : [{\r\n \t\t\"ip\" : \"10.200.1.1\",\r\n \t\t\"prefix-length\" : \"24\"\r\n \t}]\r\n }\r\n }\r\n ]\r\n \r\n}"
+ },
+ "url": "https://172.17.0.5:8445/restconf/config/ietf-interfaces:interfaces/interface/B"
+ },
+ "response": []
+ },
+ {
+ "name": "Enable mpls on host-veth42",
+ "request": {
+ "method": "PUT",
+ "header": [
+ {
+ "key": "Authorization",
+ "value": "Basic YWRtaW46YWRtaW4="
+ },
+ {
+ "key": "Content-Type",
+ "value": "application/json"
+ }
+ ],
+ "body": {
+ "mode": "raw",
+ "raw": "{\n \"interface\": [\n {\n \"name\": \"host-veth42\",\n \"config\": {\n \"enabled\": \"true\"\n }\n }\n ]\n}"
+ },
+ "url": "https://172.17.0.5:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls/interface/host-veth42",
+ "description": "Correspondig CLI command:\n\nset interface mpls host-veth42 enable"
+ },
+ "response": []
+ },
+ {
+ "name": "List ifcs - cfg",
+ "request": {
+ "method": "GET",
+ "header": [
+ {
+ "key": "Authorization",
+ "value": "Basic YWRtaW46YWRtaW4="
+ },
+ {
+ "key": "Content-Type",
+ "value": "application/json"
+ }
+ ],
+ "body": {
+ "mode": "raw",
+ "raw": "{\r\n \r\n \"interface\": [\r\n {\r\n \"name\": \"testInterface\",\r\n \"description\": \"for testing purposes\",\r\n \"type\": \"iana-if-type:ethernetCsmacd\",\r\n \"enabled\": \"true\",\r\n \"link-up-down-trap-enable\": \"enabled\",\r\n \"ietf-ip:ipv4\": {\r\n \"enabled\": \"true\",\r\n \"mtu\": \"1500\",\r\n \"address\": [\r\n {\r\n \"ip\": \"1.2.3.0\",\r\n \"netmask\": \"255.255.255.0\"\r\n }\r\n ]\r\n }\r\n }\r\n ]\r\n \r\n}"
+ },
+ "url": "https://172.17.0.5:8445/restconf/config/ietf-interfaces:interfaces/"
+ },
+ "response": []
+ },
+ {
+ "name": "Get mpls (cfg)",
+ "request": {
+ "method": "GET",
+ "header": [
+ {
+ "key": "Authorization",
+ "value": "Basic YWRtaW46YWRtaW4="
+ },
+ {
+ "key": "Content-Type",
+ "value": "application/json"
+ }
+ ],
+ "body": {
+ "mode": "raw",
+ "raw": ""
+ },
+ "url": "https://172.17.0.5:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls"
+ },
+ "response": []
+ }
+ ]
+ },
+ {
+ "name": "vpp1",
+ "description": "",
+ "item": [
+ {
+ "name": "Get mpls (cfg)",
+ "request": {
+ "method": "GET",
+ "header": [
+ {
+ "key": "Authorization",
+ "value": "Basic YWRtaW46YWRtaW4="
+ },
+ {
+ "key": "Content-Type",
+ "value": "application/json"
+ }
+ ],
+ "body": {
+ "mode": "raw",
+ "raw": ""
+ },
+ "url": "https://172.17.0.2:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls"
+ },
+ "response": []
+ },
+ {
+ "name": "Enable mpls on host-veth12",
+ "request": {
+ "method": "PUT",
+ "header": [
+ {
+ "key": "Authorization",
+ "value": "Basic YWRtaW46YWRtaW4="
+ },
+ {
+ "key": "Content-Type",
+ "value": "application/json"
+ }
+ ],
+ "body": {
+ "mode": "raw",
+ "raw": "{\n \"interface\": [\n {\n \"name\": \"host-veth12\",\n \"config\": {\n \"enabled\": \"true\"\n }\n }\n ]\n}"
+ },
+ "url": "https://172.17.0.2:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls/interface/host-veth12",
+ "description": "Correspondig CLI command:\n\nset interface mpls host-veth12 enable"
+ },
+ "response": []
+ },
+ {
+ "name": "Send traffic to A via 103, 104",
+ "request": {
+ "method": "PUT",
+ "header": [
+ {
+ "key": "Authorization",
+ "value": "Basic YWRtaW46YWRtaW4="
+ },
+ {
+ "key": "Content-Type",
+ "value": "application/json"
+ }
+ ],
+ "body": {
+ "mode": "raw",
+ "raw": "{\n\t\"static-lsp\": [{\n\t\t\"name\": \"trafficToA\",\n\t\t\"config\": {\n\t\t\t\"in-segment\": {\n\t\t\t\t\"ip-prefix\": \"10.100.1.1/24\"\n\t\t\t},\n\t\t\t\"operation\": \"impose-and-forward\"\n\t\t},\n\t\t\"paths\": {\n\t\t\t\"path\": [{\n\t\t\t\t\"path-index\": 0,\n\t\t\t\t\"config\": {\n\t\t\t\t\t\"path-index\": 0,\n\t\t\t\t\t\"next-hop\": \"10.13.1.3\",\n\t\t\t\t\t\"outgoing-interface\": \"host-veth13\"\n\t\t\t\t}\n\t\t\t}],\n\t\t\t\"outgoing-labels\": {\n\t\t\t\t\"outgoing-labels\": [{\n\t\t\t\t\t\"index\": 0,\n\t\t\t\t\t\"config\": {\n\t\t\t\t\t\t\"index\": 0,\n\t\t\t\t\t\t\"label\": 103\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"index\": 1,\n\t\t\t\t\t\"config\": {\n\t\t\t\t\t\t\"index\": 1,\n\t\t\t\t\t\t\"label\": 104\n\t\t\t\t\t}\n\t\t\t\t}]\n\t\t\t}\n\t\t}\n\t}]\n}"
+ },
+ "url": "https://172.17.0.2:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls/hc2vpp-ietf-mpls-static:static-lsps/static-lsp/trafficToA",
+ "description": "Corresponding CLI command:\n\nip route add 10.100.1.1/24 via 10.13.1.3 host-veth13 out-labels 103 104\n\nCan be verified via CLI using:\n\nshow ip fib 10.100.1.1/24"
+ },
+ "response": []
+ },
+ {
+ "name": "Send traffic to A via 103, 10341",
+ "request": {
+ "method": "PUT",
+ "header": [
+ {
+ "key": "Authorization",
+ "value": "Basic YWRtaW46YWRtaW4="
+ },
+ {
+ "key": "Content-Type",
+ "value": "application/json"
+ }
+ ],
+ "body": {
+ "mode": "raw",
+ "raw": "{\n\t\"static-lsp\": [{\n\t\t\"name\": \"trafficToA\",\n\t\t\"config\": {\n\t\t\t\"in-segment\": {\n\t\t\t\t\"config\": {\n\t\t\t\t\t\"ip-prefix\": \"10.100.1.1/24\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"operation\": \"impose-and-forward\"\n\t\t},\n\t\t\"paths\": {\n\t\t\t\"path\": [{\n\t\t\t\t\"path-index\": 0,\n\t\t\t\t\"config\": {\n\t\t\t\t\t\"path-index\": 0,\n\t\t\t\t\t\"next-hop\": \"10.13.1.3\",\n\t\t\t\t\t\"outgoing-interface\": \"host-veth13\"\n\t\t\t\t}\n\t\t\t}],\n\t\t\t\"outgoing-labels\": {\n\t\t\t\t\"outgoing-labels\": [{\n\t\t\t\t\t\"index\": 0,\n\t\t\t\t\t\"config\": {\n\t\t\t\t\t\t\"index\": 0,\n\t\t\t\t\t\t\"label\": 103\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"index\": 1,\n\t\t\t\t\t\"config\": {\n\t\t\t\t\t\t\"index\": 1,\n\t\t\t\t\t\t\"label\": 10341\n\t\t\t\t\t}\n\t\t\t\t}]\n\t\t\t}\n\t\t}\n\t}]\n}"
+ },
+ "url": "https://172.17.0.2:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls/hc2vpp-ietf-mpls-static:static-lsps/static-lsp/trafficToA",
+ "description": "Node + adjacency SID example.\n\nSteers traffic to A veth341 (the first interface between vpp3 and vpp4)."
+ },
+ "response": []
+ },
+ {
+ "name": "List ifcs - oper",
+ "request": {
+ "method": "GET",
+ "header": [
+ {
+ "key": "Authorization",
+ "value": "Basic YWRtaW46YWRtaW4="
+ },
+ {
+ "key": "Content-Type",
+ "value": "application/json"
+ }
+ ],
+ "body": {
+ "mode": "raw",
+ "raw": "{\r\n \r\n \"interface\": [\r\n {\r\n \"name\": \"testInterface\",\r\n \"description\": \"for testing purposes\",\r\n \"type\": \"iana-if-type:ethernetCsmacd\",\r\n \"enabled\": \"true\",\r\n \"link-up-down-trap-enable\": \"enabled\",\r\n \"ietf-ip:ipv4\": {\r\n \"enabled\": \"true\",\r\n \"mtu\": \"1500\",\r\n \"address\": [\r\n {\r\n \"ip\": \"1.2.3.0\",\r\n \"netmask\": \"255.255.255.0\"\r\n }\r\n ]\r\n }\r\n }\r\n ]\r\n \r\n}"
+ },
+ "url": "https://172.17.0.2:8445/restconf/operational/ietf-interfaces:interfaces-state/"
+ },
+ "response": []
+ },
+ {
+ "name": "Delete rule for traffic to B",
+ "request": {
+ "method": "DELETE",
+ "header": [
+ {
+ "key": "Authorization",
+ "value": "Basic YWRtaW46YWRtaW4="
+ },
+ {
+ "key": "Content-Type",
+ "value": "application/json"
+ }
+ ],
+ "body": {
+ "mode": "raw",
+ "raw": ""
+ },
+ "url": "https://172.17.0.2:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls/hc2vpp-ietf-mpls-static:static-lsps/static-lsp/trafficToB"
+ },
+ "response": []
+ },
+ {
+ "name": "Send traffic to A via 103, 10342",
+ "request": {
+ "method": "PUT",
+ "header": [
+ {
+ "key": "Authorization",
+ "value": "Basic YWRtaW46YWRtaW4="
+ },
+ {
+ "key": "Content-Type",
+ "value": "application/json"
+ }
+ ],
+ "body": {
+ "mode": "raw",
+ "raw": "{\n\t\"static-lsp\": [{\n\t\t\"name\": \"trafficToA\",\n\t\t\"config\": {\n\t\t\t\"in-segment\": {\n\t\t\t\t\"config\": {\n\t\t\t\t\t\"ip-prefix\": \"10.100.1.1/24\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"operation\": \"impose-and-forward\"\n\t\t},\n\t\t\"paths\": {\n\t\t\t\"path\": [{\n\t\t\t\t\"path-index\": 0,\n\t\t\t\t\"config\": {\n\t\t\t\t\t\"path-index\": 0,\n\t\t\t\t\t\"next-hop\": \"10.13.1.3\",\n\t\t\t\t\t\"outgoing-interface\": \"host-veth13\"\n\t\t\t\t}\n\t\t\t}],\n\t\t\t\"outgoing-labels\": {\n\t\t\t\t\"outgoing-labels\": [{\n\t\t\t\t\t\"index\": 0,\n\t\t\t\t\t\"config\": {\n\t\t\t\t\t\t\"index\": 0,\n\t\t\t\t\t\t\"label\": 103\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"index\": 1,\n\t\t\t\t\t\"config\": {\n\t\t\t\t\t\t\"index\": 1,\n\t\t\t\t\t\t\"label\": 10342\n\t\t\t\t\t}\n\t\t\t\t}]\n\t\t\t}\n\t\t}\n\t}]\n}\n"
+ },
+ "url": "https://172.17.0.2:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls/hc2vpp-ietf-mpls-static:static-lsps/static-lsp/trafficToA",
+ "description": "Node + adjacency SID example.\n\nSteers traffic to A veth342 (the second interface between vpp3 and vpp4)."
+ },
+ "response": []
+ },
+ {
+ "name": "Delete rule for traffic to B",
+ "request": {
+ "method": "DELETE",
+ "header": [
+ {
+ "key": "Authorization",
+ "value": "Basic YWRtaW46YWRtaW4="
+ },
+ {
+ "key": "Content-Type",
+ "value": "application/json"
+ }
+ ],
+ "body": {
+ "mode": "raw",
+ "raw": ""
+ },
+ "url": "https://172.17.0.2:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls/hc2vpp-ietf-mpls-static:static-lsps/static-lsp/trafficToB"
+ },
+ "response": []
+ },
+ {
+ "name": "List ifcs - cfg",
+ "request": {
+ "method": "GET",
+ "header": [
+ {
+ "key": "Authorization",
+ "value": "Basic YWRtaW46YWRtaW4="
+ },
+ {
+ "key": "Content-Type",
+ "value": "application/json"
+ }
+ ],
+ "body": {
+ "mode": "raw",
+ "raw": ""
+ },
+ "url": "https://172.17.0.2:8445/restconf/config/ietf-interfaces:interfaces/"
+ },
+ "response": []
+ },
+ {
+ "name": "Delete rule for traffic to A",
+ "request": {
+ "method": "DELETE",
+ "header": [
+ {
+ "key": "Authorization",
+ "value": "Basic YWRtaW46YWRtaW4="
+ },
+ {
+ "key": "Content-Type",
+ "value": "application/json"
+ }
+ ],
+ "body": {
+ "mode": "raw",
+ "raw": ""
+ },
+ "url": "https://172.17.0.2:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls/hc2vpp-ietf-mpls-static:static-lsps/static-lsp/trafficToA"
+ },
+ "response": []
+ },
+ {
+ "name": "Delete rule for traffic to A",
+ "request": {
+ "method": "DELETE",
+ "header": [
+ {
+ "key": "Authorization",
+ "value": "Basic YWRtaW46YWRtaW4="
+ },
+ {
+ "key": "Content-Type",
+ "value": "application/json"
+ }
+ ],
+ "body": {
+ "mode": "raw",
+ "raw": ""
+ },
+ "url": "https://172.17.0.2:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls/hc2vpp-ietf-mpls-static:static-lsps/static-lsp/trafficToA"
+ },
+ "response": []
+ },
+ {
+ "name": "Send traffic to B via 102,104",
+ "request": {
+ "method": "PUT",
+ "header": [
+ {
+ "key": "Authorization",
+ "value": "Basic YWRtaW46YWRtaW4="
+ },
+ {
+ "key": "Content-Type",
+ "value": "application/json"
+ }
+ ],
+ "body": {
+ "mode": "raw",
+ "raw": "{\n\t\"static-lsp\": [{\n\t\t\"name\": \"trafficToB\",\n\t\t\"config\": {\n\t\t\t\"in-segment\": {\n\t\t\t\t\"config\": {\n\t\t\t\t\t\"config\" : {\n\t\t\t\t\t\t\"ip-prefix\": \"10.200.1.1/24\"\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"operation\": \"impose-and-forward\"\n\t\t},\n\t\t\"paths\": {\n\t\t\t\"path\": [{\n\t\t\t\t\"path-index\": 0,\n\t\t\t\t\"config\": {\n\t\t\t\t\t\"path-index\": 0,\n\t\t\t\t\t\"next-hop\": \"10.12.1.2\",\n\t\t\t\t\t\"outgoing-interface\": \"host-veth12\"\n\t\t\t\t}\n\t\t\t}],\n\t\t\t\"outgoing-labels\": {\n\t\t\t\t\"outgoing-labels\": [{\n\t\t\t\t\t\"index\": 0,\n\t\t\t\t\t\"config\": {\n\t\t\t\t\t\t\"index\": 0,\n\t\t\t\t\t\t\"label\": 102\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"index\": 1,\n\t\t\t\t\t\"config\": {\n\t\t\t\t\t\t\"index\": 1,\n\t\t\t\t\t\t\"label\": 104\n\t\t\t\t\t}\n\t\t\t\t}]\n\t\t\t}\n\t\t}\n\t}]\n}"
+ },
+ "url": "https://172.17.0.2:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls/hc2vpp-ietf-mpls-static:static-lsps/static-lsp/trafficToB",
+ "description": "Corresponding CLI command:\n\nip route add 10.200.1.1/24 via 10.12.1.2 host-veth12 out-labels 102 104\n\nCan be verified via CLI using:\n\nshow ip fib 10.200.1.1/24"
+ },
+ "response": []
+ },
+ {
+ "name": "Send traffic to B via 102",
+ "request": {
+ "method": "PUT",
+ "header": [
+ {
+ "key": "Authorization",
+ "value": "Basic YWRtaW46YWRtaW4="
+ },
+ {
+ "key": "Content-Type",
+ "value": "application/json"
+ }
+ ],
+ "body": {
+ "mode": "raw",
+ "raw": "{\n\t\"static-lsp\": [{\n\t\t\"name\": \"trafficToB\",\n\t\t\"config\": {\n\t\t\t\"in-segment\": {\n\t\t\t\t\"config\": {\n\t\t\t\t\t\"ip-prefix\": \"10.200.1.1/24\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"operation\": \"impose-and-forward\"\n\t\t},\n\t\t\"simple-path\": {\n\t\t\t\"config\": {\n\t\t\t\t\"next-hop\": \"10.12.1.2\",\n\t\t\t\t\"outgoing-label\": 102,\n\t\t\t\t\"outgoing-interface\": \"host-veth12\"\n\t\t\t}\n\t\t}\n\t}]\n}"
+ },
+ "url": "https://172.17.0.2:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls/hc2vpp-ietf-mpls-static:static-lsps/static-lsp/trafficToB"
+ },
+ "response": []
+ }
+ ]
+ },
+ {
+ "name": "vpp2",
+ "description": "",
+ "item": [
+ {
+ "name": "Enable mpls on host-veth24 interface",
+ "request": {
+ "method": "PUT",
+ "header": [
+ {
+ "key": "Authorization",
+ "value": "Basic YWRtaW46YWRtaW4="
+ },
+ {
+ "key": "Content-Type",
+ "value": "application/json"
+ }
+ ],
+ "body": {
+ "mode": "raw",
+ "raw": "{\n \"interface\": [\n {\n \"name\": \"host-veth24\",\n \"config\": {\n \"enabled\": \"true\"\n }\n }\n ]\n}"
+ },
+ "url": "https://172.17.0.3:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls/interface/host-veth24",
+ "description": "Correspondig CLI command:\n\nset interface mpls host-veth24 enable"
+ },
+ "response": []
+ },
+ {
+ "name": "List ifcs - oper",
+ "request": {
+ "method": "GET",
+ "header": [
+ {
+ "key": "Authorization",
+ "value": "Basic YWRtaW46YWRtaW4="
+ },
+ {
+ "key": "Content-Type",
+ "value": "application/json"
+ }
+ ],
+ "body": {
+ "mode": "raw",
+ "raw": "{\r\n \r\n \"interface\": [\r\n {\r\n \"name\": \"testInterface\",\r\n \"description\": \"for testing purposes\",\r\n \"type\": \"iana-if-type:ethernetCsmacd\",\r\n \"enabled\": \"true\",\r\n \"link-up-down-trap-enable\": \"enabled\",\r\n \"ietf-ip:ipv4\": {\r\n \"enabled\": \"true\",\r\n \"mtu\": \"1500\",\r\n \"address\": [\r\n {\r\n \"ip\": \"1.2.3.0\",\r\n \"netmask\": \"255.255.255.0\"\r\n }\r\n ]\r\n }\r\n }\r\n ]\r\n \r\n}"
+ },
+ "url": "https://172.17.0.3:8445/restconf/operational/ietf-interfaces:interfaces-state/"
+ },
+ "response": []
+ },
+ {
+ "name": "Enable mpls on host-veth21 interface",
+ "request": {
+ "method": "PUT",
+ "header": [
+ {
+ "key": "Authorization",
+ "value": "Basic YWRtaW46YWRtaW4="
+ },
+ {
+ "key": "Content-Type",
+ "value": "application/json"
+ }
+ ],
+ "body": {
+ "mode": "raw",
+ "raw": "{\n \"interface\": [\n {\n \"name\": \"host-veth21\",\n \"config\": {\n \"enabled\": \"true\"\n }\n }\n ]\n}"
+ },
+ "url": "https://172.17.0.3:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls/interface/host-veth21",
+ "description": "Correspondig CLI command:\n\nset interface mpls host-veth21 enable"
+ },
+ "response": []
+ },
+ {
+ "name": "List ifcs - cfg",
+ "request": {
+ "method": "GET",
+ "header": [
+ {
+ "key": "Authorization",
+ "value": "Basic YWRtaW46YWRtaW4="
+ },
+ {
+ "key": "Content-Type",
+ "value": "application/json"
+ }
+ ],
+ "body": {
+ "mode": "raw",
+ "raw": "{\r\n \r\n \"interface\": [\r\n {\r\n \"name\": \"testInterface\",\r\n \"description\": \"for testing purposes\",\r\n \"type\": \"iana-if-type:ethernetCsmacd\",\r\n \"enabled\": \"true\",\r\n \"link-up-down-trap-enable\": \"enabled\",\r\n \"ietf-ip:ipv4\": {\r\n \"enabled\": \"true\",\r\n \"mtu\": \"1500\",\r\n \"address\": [\r\n {\r\n \"ip\": \"1.2.3.0\",\r\n \"netmask\": \"255.255.255.0\"\r\n }\r\n ]\r\n }\r\n }\r\n ]\r\n \r\n}"
+ },
+ "url": "https://172.17.0.3:8445/restconf/config/ietf-interfaces:interfaces/"
+ },
+ "response": []
+ },
+ {
+ "name": "Get mpls (cfg)",
+ "request": {
+ "method": "GET",
+ "header": [
+ {
+ "key": "Authorization",
+ "value": "Basic YWRtaW46YWRtaW4="
+ },
+ {
+ "key": "Content-Type",
+ "value": "application/json"
+ }
+ ],
+ "body": {
+ "mode": "raw",
+ "raw": ""
+ },
+ "url": "https://172.17.0.3:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls"
+ },
+ "response": []
+ },
+ {
+ "name": "Send traffic to B via 104",
+ "request": {
+ "method": "PUT",
+ "header": [
+ {
+ "key": "Authorization",
+ "value": "Basic YWRtaW46YWRtaW4="
+ },
+ {
+ "key": "Content-Type",
+ "value": "application/json"
+ }
+ ],
+ "body": {
+ "mode": "raw",
+ "raw": "{\n \"static-lsp\": [\n {\n \"name\": \"trafficToB\",\n \"config\": {\n \"in-segment\": {\n \t\"config\" : {\n \"ip-prefix\": \"10.200.1.1/24\"\n \t}\n },\n \"operation\": \"impose-and-forward\"\n },\n \"simple-path\": {\n\t\t\"config\": {\n\t\t\t\"next-hop\": \"10.24.1.4\",\n\t\t\t\"outgoing-label\": 104,\n\t\t\t\"outgoing-interface\": \"host-veth24\"\n\t\t}\n\t }\n }\n ]\n}"
+ },
+ "url": "https://172.17.0.3:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls/hc2vpp-ietf-mpls-static:static-lsps/static-lsp/trafficToB",
+ "description": "Simulates route that could be received via BGP."
+ },
+ "response": []
+ },
+ {
+ "name": "Pop 102 and MPLS lookup",
+ "request": {
+ "method": "PUT",
+ "header": [
+ {
+ "key": "Authorization",
+ "value": "Basic YWRtaW46YWRtaW4="
+ },
+ {
+ "key": "Content-Type",
+ "value": "application/json"
+ }
+ ],
+ "body": {
+ "mode": "raw",
+ "raw": "{\n\t\"static-lsp\": [{\n\t\t\"name\": \"lsp1\",\n\t\t\"config\": {\n\t\t\t\"in-segment\": {\n\t\t\t\t\"config\": {\n\t\t\t\t\t\"incoming-label\": 102\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"operation\": \"pop-and-lookup\",\n\t\t\t\"vpp-mpls:label-lookup\": {\n\t\t\t\t\"type\": \"mpls\",\n\t\t\t\t\"mpls-lookup-in-table\": 0\n\t\t\t}\n\t\t}\n\t}]\n}"
+ },
+ "url": "https://172.17.0.3:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls/hc2vpp-ietf-mpls-static:static-lsps/static-lsp/lsp1",
+ "description": "Corresponding CLI command:\n\nmpls local-label add non-eos 102 mpls-lookup-in-table 0\n\n\nCan be verified via CLI using:\n\nshow mpls fib 102"
+ },
+ "response": []
+ },
+ {
+ "name": "Pop 102 and IPv4 lookup",
+ "request": {
+ "method": "PUT",
+ "header": [
+ {
+ "key": "Authorization",
+ "value": "Basic YWRtaW46YWRtaW4="
+ },
+ {
+ "key": "Content-Type",
+ "value": "application/json"
+ }
+ ],
+ "body": {
+ "mode": "raw",
+ "raw": "{\n\t\"static-lsp\": [{\n\t\t\"name\": \"lsp3\",\n\t\t\"config\": {\n\t\t\t\"in-segment\": {\n\t\t\t\t\"config\": {\n\t\t\t\t\t\"incoming-label\": 102\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"operation\": \"pop-and-lookup\",\n\t\t\t\"vpp-mpls:label-lookup\": {\n\t\t\t\t\"type\": \"ipv4\",\n\t\t\t\t\"ip4-lookup-in-table\": 0\n\t\t\t}\n\t\t}\n\t}]\n}"
+ },
+ "url": "https://172.17.0.3:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls/hc2vpp-ietf-mpls-static:static-lsps/static-lsp/lsp3",
+ "description": "In case 102 is the last label,\npop it and check if we have route for destination."
+ },
+ "response": []
+ },
+ {
+ "name": "Swap 104 and forward",
+ "request": {
+ "method": "PUT",
+ "header": [
+ {
+ "key": "Authorization",
+ "value": "Basic YWRtaW46YWRtaW4="
+ },
+ {
+ "key": "Content-Type",
+ "value": "application/json"
+ }
+ ],
+ "body": {
+ "mode": "raw",
+ "raw": "{\n\t\"static-lsp\": [{\n\t\t\"name\": \"lsp2\",\n\t\t\"config\": {\n\t\t\t\"in-segment\": {\n\t\t\t\t\"config\": {\n\t\t\t\t\t\"incoming-label\": 104\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"operation\": \"swap-and-forward\"\n\t\t},\n\t\t\"simple-path\": {\n\t\t\t\"config\": {\n\t\t\t\t\"next-hop\": \"10.24.1.4\",\n\t\t\t\t\"outgoing-label\": 104,\n\t\t\t\t\"outgoing-interface\": \"host-veth24\"\n\t\t\t}\n\t\t}\n\t}]\n}"
+ },
+ "url": "https://172.17.0.3:8445/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls/hc2vpp-ietf-mpls-static:static-lsps/static-lsp/lsp2",
+ "description": "Corresponding CLI command:\n\nmpls local-label add eos 104 via 10.24.1.4 host-veth24 out-labels 104\n\n\nCan be verified via CLI using:\n\nshow mpls fib 104"
+ },
+ "response": []
+ }
+ ]
+ }
+ ]
+} \ No newline at end of file