{ "id": "abfccfe7-a135-613b-e41a-1c02036cf82c", "name": "Hc2vpp2 BGP Prefix SID calls", "description": "Examples of requests for testing advertising and receiving BGP Prefix SID.\nMore info:\nhttps://tools.ietf.org/html/draft-ietf-idr-bgp-prefix-sid-07#section-4.1\n\nhttps://tools.ietf.org/html/draft-ietf-spring-segment-routing-msdc-08#section-4.2.2", "order": [ "ac87ed19-e13a-0aef-5ef7-07a23e4baf0a", "ea7d30c1-89e0-a901-4a0a-cd9a288167d6", "5fa48b78-e865-1f53-773d-2982c657220c", "63bcbfc0-cfb4-cf33-75f0-78da8e15467f", "3c4d647a-57ba-c17d-7b1f-4db053a7fa1c", "6b1c7831-f7f7-4ff2-c633-8bd86952a829", "2ffb2b89-f0bb-e73c-5f9a-2e2cd03014ac" ], "folders": [], "timestamp": 1513592291556, "owner": 0, "public": false, "requests": [ { "id": "2ffb2b89-f0bb-e73c-5f9a-2e2cd03014ac", "headers": "Content-Type: application/xml\nAuthorization: Basic YWRtaW46YWRtaW4=\n", "url": "http://localhost:8183/restconf/config/bgp-rib:application-rib/192.0.2.11/tables/bgp-types:ipv4-address-family/bgp-labeled-unicast:labeled-unicast-subsequent-address-family/bgp-labeled-unicast:labeled-unicast-routes/labeled-unicast-route/bgp-lu-route/1", "preRequestScript": null, "pathVariables": {}, "method": "DELETE", "data": [], "dataMode": "raw", "version": 2, "tests": null, "currentHelper": "normal", "helperAttributes": {}, "time": 1513954995928, "name": "Delete IPv4 labeled unicast route (cfg)", "description": "", "collectionId": "abfccfe7-a135-613b-e41a-1c02036cf82c", "responses": [], "rawModeData": "" }, { "id": "3c4d647a-57ba-c17d-7b1f-4db053a7fa1c", "headers": "Content-Type: application/json\nAuthorization: Basic YWRtaW46YWRtaW4=\n", "url": "http://localhost:8183/restconf/config/bgp-rib:application-rib/192.0.2.11/tables/bgp-types:ipv4-address-family/bgp-labeled-unicast:labeled-unicast-subsequent-address-family/bgp-labeled-unicast:labeled-unicast-routes/labeled-unicast-route/bgp-lu-route/1", "preRequestScript": null, "pathVariables": {}, "method": "PUT", "data": [], "dataMode": "raw", "tests": null, "currentHelper": "normal", "helperAttributes": {}, "time": 1513954149219, "name": "Add IPv4 labeled unicast route", "description": "Configures BGP LU update for 10.10.10.10/24 via 192.0.2.11 with label 16011 and label-index 11.\n\nVerify presence of 3 FIB entries (MPLS non-eos, eos, IP) using CLI:\n\nvpp# show mpls fib 16011\n\nvpp# show ip fib 10.10.10.10", "collectionId": "abfccfe7-a135-613b-e41a-1c02036cf82c", "rawModeData": "{\n \"bgp-labeled-unicast:labeled-unicast-route\": [\n {\n \"path-id\": 1,\n \"route-key\": \"bgp-lu-route\",\n \"attributes\": {\n \"local-pref\": {\n \"pref\": 100\n },\n \"bgp-prefix-sid\": {\n \"bgp-prefix-sid-tlvs\": [\n {\n \"label-index-tlv\": 11\n },\n {\n \"srgb-value\": [\n {\n \"range\": 8000,\n \"base\": 16000\n }\n ]\n }\n ]\n },\n \"ipv4-next-hop\": {\n \"global\": \"192.0.2.11\"\n },\n \"as-path\": {},\n \"origin\": {\n \"value\": \"igp\"\n }\n },\n \"label-stack\": [\n {\n \"label-value\": 16011\n }\n ],\n \"prefix\": \"10.10.10.10/24\"\n }\n ]\n}" }, { "id": "5fa48b78-e865-1f53-773d-2982c657220c", "headers": "Content-Type: application/json\nAuthorization: Basic YWRtaW46YWRtaW4=\n", "url": "http://localhost:8183/restconf/config/openconfig-network-instance:network-instances/network-instance/global-bgp/openconfig-network-instance:protocols/protocol/openconfig-policy-types:BGP/hc-bgp-instance/bgp/bgp-openconfig-extensions:neighbors/neighbor/192.0.2.11", "preRequestScript": null, "pathVariables": {}, "method": "PUT", "data": [], "dataMode": "raw", "version": 2, "tests": null, "currentHelper": "normal", "helperAttributes": {}, "time": 1513954016557, "name": "Add application peer", "description": "BGP HC borrows application peer concept for route programming.\n\nLet's configure an instance that supports BGP LU.", "collectionId": "abfccfe7-a135-613b-e41a-1c02036cf82c", "responses": [], "rawModeData": "{\n \"neighbor\": {\n \"neighbor-address\": \"192.0.2.11\",\n \"config\": {\n \"peer-group\": \"application-peers\"\n },\n \"afi-safis\": {\n \"afi-safi\": [\n {\n \"afi-safi-name\": \"openconfig-bgp-types:IPV4-UNICAST\",\n \"receive\": true,\n \"send-max\": 0\n },\n {\n \"afi-safi-name\": \"openconfig-bgp-types:IPV4-LABELLED-UNICAST\",\n \"receive\": true,\n \"send-max\": 0\n }\n ]\n }\n }\n}" }, { "id": "63bcbfc0-cfb4-cf33-75f0-78da8e15467f", "headers": "Authorization: Basic YWRtaW46YWRtaW4=\nContent-Type: application/json\n", "url": "http://localhost:8183/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls/hc2vpp-ietf-mpls-static:static-lsps/static-lsp/192.0.2.11", "preRequestScript": "", "pathVariables": {}, "method": "PUT", "data": [], "dataMode": "raw", "version": 2, "tests": "", "currentHelper": "normal", "helperAttributes": {}, "time": 1513954038151, "name": "Push single MPLS label", "description": "HC translates BGP LU updates to recursive routes with outgoing label.\nTo teach VPP how to resolve them we need non-recursive one.\n\nVPP can't recursively resolve a route that has out labels via a route that does not have out labels,\nso we cnfigure implicit null(3) (no more labels will be added to the package).\n\nCLI equivalent:\nip route add 192.0.2.11/32 via loop0 out-labels 3", "collectionId": "abfccfe7-a135-613b-e41a-1c02036cf82c", "responses": [], "rawModeData": "{\n \"static-lsp\": [\n {\n \"name\": \"192.0.2.11\",\n \"config\": {\n \"in-segment\": {\n \"ip-prefix\": \"192.0.2.11/32\"\n },\n \"operation\": \"impose-and-forward\",\n \"outgoing-label\": 3,\n \"outgoing-interface\": \"loop0\"\n }\n }\n ]\n}" }, { "id": "6b1c7831-f7f7-4ff2-c633-8bd86952a829", "headers": "Content-Type: application/xml\nAuthorization: Basic YWRtaW46YWRtaW4=\n", "url": "http://localhost:8183/restconf/config/bgp-rib:application-rib/192.0.2.11/tables/bgp-types:ipv4-address-family/bgp-labeled-unicast:labeled-unicast-subsequent-address-family/bgp-labeled-unicast:labeled-unicast-routes/labeled-unicast-route/bgp-lu-route/1", "preRequestScript": null, "pathVariables": {}, "method": "GET", "data": [], "dataMode": "raw", "version": 2, "tests": null, "currentHelper": "normal", "helperAttributes": {}, "time": 1513953133232, "name": "Show IPv4 labeled unicast route (cfg)", "description": "", "collectionId": "abfccfe7-a135-613b-e41a-1c02036cf82c", "responses": [], "rawModeData": "" }, { "id": "ac87ed19-e13a-0aef-5ef7-07a23e4baf0a", "headers": "Authorization: Basic YWRtaW46YWRtaW4=\nContent-Type: application/json\n", "url": "http://localhost:8183/restconf/config/ietf-interfaces:interfaces/interface/loop0", "preRequestScript": "", "pathVariables": {}, "method": "PUT", "data": [], "dataMode": "raw", "version": 2, "tests": "", "currentHelper": "normal", "helperAttributes": {}, "time": 1513953979381, "name": "Add loop0 interface ", "description": "We need an interface for our MPLS traffic. Our example uses loopback for simplicity.", "collectionId": "abfccfe7-a135-613b-e41a-1c02036cf82c", "responses": [], "rawModeData": "{\n \"interface\": [\n {\n \"name\": \"loop0\",\n \"description\": \"for testing purposes\",\n \"type\": \"v3po:loopback\",\n \"loopback\": {\n \"mac\": \"00:ff:ff:ff:ff:ff\"\n }\n }\n ]\n}" }, { "id": "ea7d30c1-89e0-a901-4a0a-cd9a288167d6", "headers": "Authorization: Basic YWRtaW46YWRtaW4=\nContent-Type: application/json\n", "url": "http://localhost:8183/restconf/config/hc2vpp-ietf-routing:routing/hc2vpp-ietf-mpls:mpls/interface/loop0", "preRequestScript": "", "pathVariables": {}, "method": "PUT", "data": [], "dataMode": "raw", "version": 2, "tests": "", "currentHelper": "normal", "helperAttributes": {}, "time": 1513953993897, "name": "Enable mpls on loop0 interface", "description": "", "collectionId": "abfccfe7-a135-613b-e41a-1c02036cf82c", "responses": [], "rawModeData": "{\n \"interface\": [\n {\n \"name\": \"loop0\",\n \"config\": {\n \"enabled\": \"true\"\n }\n }\n ]\n}" } ] }