CiscoDevNet / Opendaylight-BGP-Pathman-apps

BGP and PCEP apps for Opendaylight, with the backend written in Python and the UI in JavaScript for NeXt
Other
38 stars 29 forks source link

Error while creating LSP #3

Open parulagrawal14 opened 7 years ago

parulagrawal14 commented 7 years ago

Hi All,

I am getting below error while executing the steps mentioned:

Click "Create new LSP" on pathman app Select source and destination Click "Go" Choose path Enter name "mypath" Click "Deploy"

"7967 2017-11-28 09:31:08.878 UTC root:rest_interface_parser INFO: Commands Recieved: {u'path': [u'R1', u'R2'], u'name': u'mypath', u'option': u'create'} 7967 2017-11-28 09:31:08.878 UTC root:getHoplist INFO: Path: [u'0001.0001.0001', u'0001.0001.0002'] 7967 2017-11-28 09:31:08.878 UTC root:getHoplist INFO: Hoplist: [u'20.0.0.3'] 7967 2017-11-28 09:31:08.895 UTC root:create_02_Lsp INFO: Create 02LSP response: {u'errors': {u'error': [{u'error-type': u'protocol', u'error-tag': u'invalid-value', u'error-message': u'URI has bad format. If operations behind mount point should be showed, URI has to end with yang-ext:mount'}]}} 7967 2017-11-28 09:31:08.895 UTC root:post INFO: {"response": [{"cause": "KeyError: output", "option": "unknown", "success": false}]}" 9900 2017-01-03 14:45:31.791 UTC root:rest_interface_parser INFO: Commands Recieved: {u'path': [u'router1', u'router2'], u'name': u'mypat\x00', u'option': u'create'}

Can you please guide me on this ?

nikmon2 commented 7 years ago

Hi,

What's your ODL version? Can you share the beginning of the pathman.log file, showing the topology build up?

Cheers, Niklas

parulagrawal14 commented 7 years ago

Hi,

Thanks for your reply.

I am using ODL version 0.4.4-Beryllium-SR4

Kindly find the complete logs below:

19279 2017-11-29 18:02:11.483 UTC root: INFO: This is initializing the log 19279 2017-11-29 18:02:11.517 UTC root:get_url INFO: Url get Status: 200 19279 2017-11-29 18:02:11.527 UTC root:get_url INFO: Url get Status: 200 19279 2017-11-29 18:02:11.527 UTC root:add_node INFO: New node: Node(name=u'R3', id=u'0001.0001.0003', loopback=u'7.7.7.7', portlist=[u'30.0.0.4', u'40.0.0.4'], pcc='', pcep_type='', prefix=[u' 30.0.0.0/24', u'40.0.0.0/24', u'7.7.7.0/24', u'70.0.0.0/24']) 19279 2017-11-29 18:02:11.528 UTC root:add_node INFO: New node: Node(name=u'R2', id=u'0001.0001.0002', loopback=u'6.6.6.6', portlist=[u'20.0.0.3', u'40.0.0.3'], pcc='', pcep_type='', prefix=[u' 20.0.0.0/24', u'40.0.0.0/24', u'6.6.6.0/24', u'70.0.0.0/24']) 19279 2017-11-29 18:02:11.528 UTC root:add_node INFO: New node: Node(name=u'R1', id=u'0001.0001.0001', loopback=u'5.5.5.5', portlist=[u'20.0.0.2', u'30.0.0.2'], pcc='', pcep_type='', prefix=[u' 192.168.121.0/24', u'20.0.0.0/24', u'30.0.0.0/24', u'5.5.5.0/24', u' 70.0.0.0/24']) 19279 2017-11-29 18:02:11.528 UTC root:node_structure INFO: [Node(name=u'R3', id=u'0001.0001.0003', loopback=u'7.7.7.7', portlist=[u'30.0.0.4', u'40.0.0.4'], pcc='', pcep_type='', prefix=[u' 30.0.0.0/24', u'40.0.0.0/24', u'7.7.7.0/24', u'70.0.0.0/24']), Node(name=u'R2', id=u'0001.0001.0002', loopback=u'6.6.6.6', portlist=[u'20.0.0.3', u'40.0.0.3'], pcc='', pcep_type='', prefix=[u' 20.0.0.0/24', u'40.0.0.0/24', u'6.6.6.0/24', u'70.0.0.0/24']), Node(name=u'R1', id=u'0001.0001.0001', loopback=u'5.5.5.5', portlist=[u'20.0.0.2', u'30.0.0.2'], pcc='', pcep_type='', prefix=[u' 192.168.121.0/24', u'20.0.0.0/24', u'30.0.0.0/24', u'5.5.5.0/24', u' 70.0.0.0/24'])] 19279 2017-11-29 18:02:11.528 UTC root:pseudo_net_build INFO: [] 19279 2017-11-29 18:02:11.529 UTC root:init INFO: patterned to '/pathman' 19279 2017-11-29 18:02:11.531 UTC root:init INFO: Pathman REST API Launched on port 8020 19279 2017-11-29 18:02:22.713 UTC root:initialize INFO: Init 2 done - debug saved 19279 2017-11-29 18:02:22.714 UTC root:rest_interface_parser INFO: Commands Recieved: {u'option': u'list_all'} 19279 2017-11-29 18:02:22.754 UTC root:get_url INFO: Url get Status: 200 19279 2017-11-29 18:02:22.755 UTC root:listAllLsp INFO: list: [], formatted: [] 19279 2017-11-29 18:02:22.755 UTC root:post INFO: {"response": [{"list": [], "option": "list_all", "success": true}]} 19279 2017-11-29 18:02:22.759 UTC root:initialize INFO: Init 2 done - debug saved 19279 2017-11-29 18:02:22.760 UTC root:rest_interface_parser INFO: Commands Recieved: {u'option': u'topo'} 19279 2017-11-29 18:02:22.777 UTC root:get_url INFO: Url get Status: 200 19279 2017-11-29 18:02:22.838 UTC root:get_url INFO: Url get Status: 200 19279 2017-11-29 18:02:22.839 UTC root:add_node INFO: New node: Node(name=u'R3', id=u'0001.0001.0003', loopback=u'7.7.7.7', portlist=[u'30.0.0.4', u'40.0.0.4'], pcc='', pcep_type='', prefix=[u' 30.0.0.0/24', u'40.0.0.0/24', u'7.7.7.0/24', u'70.0.0.0/24']) 19279 2017-11-29 18:02:22.839 UTC root:add_node INFO: New node: Node(name=u'R2', id=u'0001.0001.0002', loopback=u'6.6.6.6', portlist=[u'20.0.0.3', u'40.0.0.3'], pcc='', pcep_type='', prefix=[u' 20.0.0.0/24', u'40.0.0.0/24', u'6.6.6.0/24', u'70.0.0.0/24']) 19279 2017-11-29 18:02:22.839 UTC root:add_node INFO: New node: Node(name=u'R1', id=u'0001.0001.0001', loopback=u'5.5.5.5', portlist=[u'20.0.0.2', u'30.0.0.2'], pcc='', pcep_type='', prefix=[u' 192.168.121.0/24', u'20.0.0.0/24', u'30.0.0.0/24', u'5.5.5.0/24', u' 70.0.0.0/24']) 19279 2017-11-29 18:02:22.839 UTC root:node_structure INFO: [Node(name=u'R3', id=u'0001.0001.0003', loopback=u'7.7.7.7', portlist=[u'30.0.0.4', u'40.0.0.4'], pcc='', pcep_type='', prefix=[u' 30.0.0.0/24', u'40.0.0.0/24', u'7.7.7.0/24', u'70.0.0.0/24']), Node(name=u'R2', id=u'0001.0001.0002', loopback=u'6.6.6.6', portlist=[u'20.0.0.3', u'40.0.0.3'], pcc='', pcep_type='', prefix=[u' 20.0.0.0/24', u'40.0.0.0/24', u'6.6.6.0/24', u'70.0.0.0/24']), Node(name=u'R1', id=u'0001.0001.0001', loopback=u'5.5.5.5', portlist=[u'20.0.0.2', u'30.0.0.2'], pcc='', pcep_type='', prefix=[u' 192.168.121.0/24', u'20.0.0.0/24', u'30.0.0.0/24', u'5.5.5.0/24', u' 70.0.0.0/24'])] 19279 2017-11-29 18:02:22.841 UTC root:pseudo_net_build INFO: [] 19279 2017-11-29 18:02:22.841 UTC root:topoCheck INFO: Nodes not in topo_data.py: set([u'R1', u'R2', u'R3']) 19279 2017-11-29 18:02:22.842 UTC root:topoCheck INFO: Nodes not used: set(['sjc', 'bos', 'san', 'WA', 'DE', 'por', 'ME', 'WI', 'WV', 'HI', 'sea', 'FL', 'dxb', 'WY', 'NH', 'KS', 'NJ', 'NM', 'TX', 'LA', 'mia', 'chi', 'NC', 'ND', 'NE', 'sfc', 'TN', 'NY', 'PA', 'arn', 'nyc', 'MO', 'CT', 'sin', 'NV', 'VA', 'CO', 'alb', 'CA', 'AL', 'hst', 'AR', 'VT', 'IL', 'GA', 'IN', 'IA', 'MA', 'AZ', 'kcy', 'ID', 'nrt', 'jfk', 'MD', 'wdc', 'OK', 'dme', 'OH', 'UT', 'atl', 'MN', 'MI', 'RI', 'AK', 'MT', 'mvd', 'min', 'MS', 'SC', 'lax', 'KY', 'OR', 'SD']) 19279 2017-11-29 18:02:22.842 UTC root:topoCheck INFO: node: {'y': 547.632538305046, 'name': 'sjc', 'x': -558.254079540255, 'latitude': 36.137242513163, 'type': 'transit', 'ipaddress': 'df2a::10', 'site': 'sjc', 'longitude': -120.754451723841, 'icon': 'router'} 19279 2017-11-29 18:02:22.842 UTC root:topoCheck INFO: node: {'y': 378.785947351863, 'name': 'bos', 'x': 1341.94009483763, 'latitude': 42.3584, 'type': 'transit', 'ipaddress': 'df2a::0f', 'site': 'bos', 'longitude': -71.0598, 'icon': 'router'} 19279 2017-11-29 18:02:22.842 UTC root:topoCheck INFO: node: {'y': 1180.13722822491, 'name': 'san', 'x': -400.12790706029, 'latitude': 32.7153, 'type': 'transit', 'ipaddress': 'df2a::0e', 'site': 'san', 'longitude': -117.157, 'icon': 'router'} 19279 2017-11-29 18:02:22.842 UTC root:getTopo INFO: Topo build with 3 nodes 19279 2017-11-29 18:02:22.843 UTC root:post INFO: {"response": [{"option": "topo", "success": true, "topology": {"nodes": [{"name": "R1", "type": "transit", "site": "R1", "longitude": -120.754451723841, "y": 547.632538305046, "prefix": ["192.168.121.0/24", "20.0.0.0/24", "30.0.0.0/24", "5.5.5.0/24", "70.0.0.0/24"], "latitude": 36.137242513163, "x": -558.254079540255, "ipaddress": "5.5.5.5", "icon": "router"}, {"name": "R2", "type": "transit", "site": "R2", "longitude": -71.0598, "y": 378.785947351863, "prefix": ["20.0.0.0/24", "40.0.0.0/24", "6.6.6.0/24", " 70.0.0.0/24"], "latitude": 42.3584, "x": 1341.94009483763, "ipaddress": "6.6.6.6", "icon": "router"}, {"name": "R3", "type": "transit", "site": "R3", "longitude": -117.157, "y": 1180.13722822491, "prefix": ["30.0.0.0/24", "40.0.0.0/24", "7.7.7.0/24", "70.0.0.0/24"], "latitude": 32.7153, "x": -400.12790706029, "ipaddress": "7.7.7.7", "icon": "router"}], "links": [{"source": "R1", "targetTraffic": 10, "target": "R2", "sourceTraffic": 10}, {"source": "R1", "targetTraffic": 10, "target": "R3", "sourceTraffic": 10}, {"source": "R2", "targetTraffic": 10, "target": "R3", "sourceTraffic": 10}]}}]} 19279 2017-11-29 18:02:26.184 UTC root:initialize INFO: Init 2 done - debug saved 19279 2017-11-29 18:02:26.185 UTC root:rest_interface_parser INFO: Commands Recieved: {u'option': u'list_all'} 19279 2017-11-29 18:02:26.195 UTC root:get_url INFO: Url get Status: 200 19279 2017-11-29 18:02:26.195 UTC root:listAllLsp INFO: list: [], formatted: [] 19279 2017-11-29 18:02:26.196 UTC root:post INFO: {"response": [{"list": [], "option": "list_all", "success": true}]} 19279 2017-11-29 18:02:38.962 UTC root:initialize INFO: Init 2 done - debug saved 19279 2017-11-29 18:02:38.963 UTC root:rest_interface_parser INFO: Commands Recieved: {u'src': u'R1', u'dst': u'R2', u'option': u'path', u'metric': u'igp'} 19279 2017-11-29 18:02:38.963 UTC root:post INFO: {"response": [{"path": [["R1", "R2"], ["R1", "R3", "R2"]], "metric": [10, 20], "option": "path", "success": true}]} 19279 2017-11-29 18:02:48.468 UTC root:initialize INFO: Init 2 done - debug saved 19279 2017-11-29 18:02:48.469 UTC root:rest_interface_parser INFO: Commands Recieved: {u'path': [u'R1', u'R2'], u'name': u'mypath', u'option': u'create'} 19279 2017-11-29 18:02:48.469 UTC root:getHoplist INFO: Path: [u'0001.0001.0001', u'0001.0001.0002'] 19279 2017-11-29 18:02:48.469 UTC root:getHoplist INFO: Hoplist: [u'20.0.0.3'] 19279 2017-11-29 18:02:48.524 UTC root:create_02_Lsp INFO: Create 02LSP response: {u'errors': {u'error': [{u'error-type': u'protocol', u'error-tag': u'invalid-value', u'error-message': u'URI has bad format. If operations behind mount point should be showed, URI has to end with yang-ext:mount'}]}} 19279 2017-11-29 18:02:48.525 UTC root:post INFO: {"response": [{"cause": "KeyError: output", "option": "unknown", "success": false}]}

Regards, Parul

On Wed, Nov 29, 2017 at 10:23 PM, nikmon2 notifications@github.com wrote:

Hi,

What's your ODL version? Can you share the beginning of the pathman.log file, showing the topology build up?

Cheers, Niklas

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/CiscoDevNet/Opendaylight-BGP-Pathman-apps/issues/3#issuecomment-347923743, or mute the thread https://github.com/notifications/unsubscribe-auth/AL780w3KoSwNF5b5WxySYLu9aFjtJAGLks5s7YvugaJpZM4Qs8R4 .

nikmon2 commented 7 years ago

Hi Parul,

I don't see any PCEP details. What is the output of: http://{controller_ip}:8181/restconf/operational/network-topology:network-topology/topology/pcep-topology

The router loopback IP used for bgp_ls must match the pcep IP. That's how the two topologies are tied together.

Cheers, Niklas

parulagrawal14 commented 7 years ago

Hi,

Output of the pcep topology { "topology": [ { "topology-id": "pcep-topology", "topology-types": { "network-topology-pcep:topology-pcep": {} }, "node": [ { "node-id": "pcc://192.168.121.237", "network-topology-pcep:path-computation-client": { "ip-address": "192.168.121.237", "state-sync": "synchronized", "stateful-tlv": { "odl-pcep-ietf-stateful07:stateful": { "lsp-update-capability": true, "odl-pcep-ietf-initiated00:initiation": true } } } } ] } ] }

Regards, Parul

On Wed, Nov 29, 2017 at 1:07 PM, nikmon2 notifications@github.com wrote:

Hi Parul,

I don't see any PCEP details. What is the output of: http://{controller_ip}:8181/restconf/operational/network- topology:network-topology/topology/pcep-topology

Cheers, Niklas

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/CiscoDevNet/Opendaylight-BGP-Pathman-apps/issues/3#issuecomment-347963554, or mute the thread https://github.com/notifications/unsubscribe-auth/AL7809yEvt1jK0DrGXKcy64NnsjNuwW6ks5s7auPgaJpZM4Qs8R4 .

nikmon2 commented 7 years ago

Hi Parul,

The loopback on your "router-id" should then be: "192.168.121.237" for this node, in the output from: http://{controller_ip}:8181/restconf/operational/network-topology:network-topology/topology/example-linkstate-topology

                {
                    "node-id": "bgpls://IsisLevel2:0/type=node&as=65504&domain=3323134238&router=0000.0000.0029",
                    "termination-point": [
                        {
                            "tp-id": "bgpls://IsisLevel2:0/type=tp&ipv4=59.0.0.29",
                            "l3-unicast-igp-topology:igp-termination-point-attributes": {}
                        },
                        {
                            "tp-id": "bgpls://IsisLevel2:0/type=tp&ipv4=56.0.0.29",
                            "l3-unicast-igp-topology:igp-termination-point-attributes": {}
                        },
                        {
                            "tp-id": "bgpls://IsisLevel2:0/type=tp&ipv4=54.0.0.29",
                            "l3-unicast-igp-topology:igp-termination-point-attributes": {}
                        },
                        {
                            "tp-id": "bgpls://IsisLevel2:0/type=tp"
                        }
                    ],
                    "l3-unicast-igp-topology:igp-node-attributes": {
                        "router-id": [
                            "198.19.1.29"
                        ],
                        "name": "sfc",
                        "isis-topology:isis-node-attributes": {
                            "net": [
                                "72.0000.0000.0000.0000.0000.0029"
                            ],
                            "ted": {
                                "te-router-id-ipv4": "198.19.1.29"
                            },
                            "iso": {
                                "iso-system-id": "0000.0000.0029"
                            }
                        }
                    }
                }

Cheers, Niklas

mjyasini commented 6 years ago

I have the same problem, following what Niklas explained, first of all my PCC ip address should be in the range of ODL IP address and for having the PCEP link to be UP, I have to define IP of the source on router as bellow:

mpls traffic-eng interface GigabitEthernet0/0/0/0 ! interface GigabitEthernet0/0/0/1 ! interface GigabitEthernet0/0/0/2 ! interface GigabitEthernet0/0/0/3 ! pce peer source ipv4 172.16.1.84 >>>> management interface of router peer ipv4 172.16.1.128 >>>>>ODL IP Address ! stateful-client instantiation ! speaker-entity-id 10.10.4.100 !

!

my first question is that, why i have to specify peer source ip address, while in other sample configurations , there is not such configuration?

my second question is that the "router ID" is the ip address of loopback interface defines under ISIS. how it is possible to be equal to PCEP IP (which in my case is 172.16.1.84) considering that this address should be the address of physical interface connected to ODL, if i want to have PCEP link UP and working.

thank you in advanced

nikmon2 commented 6 years ago
my first question is that, why i have to specify peer source ip address, while in other sample configurations , there is not such configuration?

Both the routers and your ODL controller need to be able to reach each other, test that the contro

Adding that explicit configuration, changes your PCC address, and Pathman can't consolidate what link-state entires match what PCC. Today that needs to be one and the same IP.

my second question is that the "router ID" is the ip address of loopback interface defines under ISIS. how it is possible to be equal to PCEP IP (which in my case is 172.16.1.84) considering that this address should be the address of physical interface connected to ODL, if i want to have PCEP link UP and working.

It should not need to be a directly connected interface. If that was the case, it would get complicated as soon as yo go outside a lab. Just verify that you can ping your loopbacks from the controller.

Hope this helps.

Cheers, Niklas