application routes not work after ODL restart or quagga restart


"11526143 <11526143@...>
 

Hi,all:

Hi. I'm trying to use ODL to controller routes on a server:
1. add an BGP instance on ODL controller
2. setup an IPv4 BGP session between the ODL controller and a server with quagga
3. add an application neighbor to this BGP instance
4. add an application route to the application rib

then I check the route on quagga server, it works.
but after I restart quagga, ODL dosen't update the route to quagga server again.
I restart ODL, ODL dosen't update the route to quagga server again.
if I DELETE the route and re-POST to ODL,the route works agagin.

My question is:How can I make the route work after quagga restart or ODL restart?

some information:

ODL Host:                       10.82.79.13 (Debian 8.7        4.9.0-0.bpo.2-amd64)
ODL version:                   distribution-karaf-0.5.5-20170903.233516-485.zip
odl-bgpcep-bgp version:   0.6.5-SNAPSHOT                                            
Quagga Host:                  10.82.79.10(Debian 8.7        4.9.0-0.bpo.2-amd64)
Quagga version:              0.99.23.1-1+deb8u3

quagga config:
router bgp 16310
 bgp router-id 10.82.79.10
 bgp graceful-restart
 bgp bestpath as-path multipath-relax
 aggregate-address 10.30.0.0/16 summary-only
 timers bgp 3 9
 neighbor 10.82.79.13 remote-as 16163
 neighbor 10.82.79.13 port 1790
 neighbor 10.82.79.13 advertisement-interval 3
 neighbor 10.82.79.13 timers 3 9
 neighbor 10.82.79.13 soft-reconfiguration inbound
 neighbor 10.82.79.13 route-map from_controller in
 
access-list 163 permit ip any any
!
route-map from_controller permit 163
 match ip address 163
 set local-preference 200
 set community local-AS
!
route-map from_controller permit 263

ODL:
GET http://{{controller}}:8181/restconf/config/openconfig-network-instance:network-instances/network-instance/global-bgp/openconfig-network-instance:protocols/protocol/openconfig-policy-types:BGP/test10

{
    "protocol": [
        {
            "identifier": "openconfig-policy-types:BGP",
            "name": "test10",
            "bgp-openconfig-extensions:bgp": {
                "global": {
                    "graceful-restart": {
                        "config": {
                            "enabled": true,
                            "restart-time": 9
                        }
                    },
                    "route-selection-options": {
                        "config": {
                            "advertise-inactive-routes": true,
                            "ignore-next-hop-igp-metric": true
                        }
                    },
                    "use-multiple-paths": {
                        "ibgp": {
                            "config": {
                                "maximum-paths": 8
                            }
                        },
                        "ebgp": {
                            "config": {
                                "allow-multiple-as": true,
                                "maximum-paths": 8
                            }
                        },
                        "state": {
                            "enabled": true
                        },
                        "config": {
                            "enabled": true
                        }
                    },
                    "config": {
                        "as": 16163,
                        "router-id": "163.163.163.10"
                    }
                },
                "neighbors": {
                    "neighbor": [
                        {
                            "neighbor-address": "163.163.163.10",
                            "add-paths": {
                                "config": {
                                    "send-max": 8,
                                    "receive": true
                                }
                            },
                            "config": {
                                "peer-group": "application-peers"
                            }
                        },
                        {
                            "neighbor-address": "10.82.79.10",
                            "timers": {
                                "config": {
                                    "hold-time": 9,
                                    "keepalive-interval": 3,
                                    "minimum-advertisement-interval": 3
                                }
                            },
                            "add-paths": {
                                "config": {
                                    "send-max": 8,
                                    "receive": true
                                }
                            },
                            "config": {
                                "peer-as": 16310,
                                "peer-type": "EXTERNAL",
                                "simple-routing-policy": "learn-none"
                            }
                        }
                    ]
                }
            }
        }
    ]
}

GET:http://{{controller}}:8181/restconf/operational/bgp-rib:bgp-rib/rib/test10
{
    "rib": [
        {
            "id": "test10",
            "peer": [
                {
                    "peer-id": "bgp://163.163.163.10",
                    "effective-rib-in": {
                        "tables": [
                            {
                                "afi": "bgp-types:ipv4-address-family",
                                "safi": "bgp-types:unicast-subsequent-address-family",
                                "bgp-inet:ipv4-routes": {
                                    "ipv4-route": [
                                        {
                                            "path-id": 0,
                                            "prefix": "10.31.0.0/16",
                                            "attributes": {
                                                "as-path": {},
                                                "origin": {
                                                    "value": "igp"
                                                },
                                                "local-pref": {
                                                    "pref": 200
                                                },
                                                "ipv4-next-hop": {
                                                    "global": "10.62.100.12"
                                                }
                                            }
                                        }
                                    ]
                                },
                                "attributes": {}
                            }
                        ]
                    },
                    "peer-role": "internal",
                    "adj-rib-in": {
                        "tables": [
                            {
                                "afi": "bgp-types:ipv4-address-family",
                                "safi": "bgp-types:unicast-subsequent-address-family",
                                "bgp-inet:ipv4-routes": {
                                    "ipv4-route": [
                                        {
                                            "path-id": 0,
                                            "prefix": "10.31.0.0/16",
                                            "attributes": {
                                                "as-path": {},
                                                "origin": {
                                                    "value": "igp"
                                                },
                                                "local-pref": {
                                                    "pref": 200
                                                },
                                                "ipv4-next-hop": {
                                                    "global": "10.62.100.12"
                                                }
                                            }
                                        }
                                    ]
                                },
                                "attributes": {
                                    "uptodate": false
                                }
                            }
                        ]
                    }
                },
                {
                    "peer-id": "bgp://10.82.79.10",
                    "simple-routing-policy": "learn-none",
                    "peer-role": "ebgp",
                    "supported-tables": [
                        {
                            "afi": "bgp-types:ipv4-address-family",
                            "safi": "bgp-types:unicast-subsequent-address-family"
                        }
                    ],
                    "adj-rib-in": {
                        "tables": [
                            {
                                "afi": "bgp-types:ipv4-address-family",
                                "safi": "bgp-types:unicast-subsequent-address-family",
                                "bgp-inet:ipv4-routes": {},
                                "attributes": {
                                    "uptodate": true
                                }
                            }
                        ]
                    },
                    "adj-rib-out": {
                        "tables": [
                            {
                                "afi": "bgp-types:ipv4-address-family",
                                "safi": "bgp-types:unicast-subsequent-address-family",
                                "bgp-inet:ipv4-routes": {},
                                "attributes": {}
                            }
                        ]
                    }
                }
            ],
            "loc-rib": {
                "tables": [
                    {
                        "afi": "bgp-types:ipv4-address-family",
                        "safi": "bgp-types:unicast-subsequent-address-family",
                        "bgp-inet:ipv4-routes": {
                            "ipv4-route": [
                                {
                                    "path-id": 0,
                                    "prefix": "10.31.0.0/16",
                                    "attributes": {
                                        "as-path": {},
                                        "origin": {
                                            "value": "igp"
                                        },
                                        "local-pref": {
                                            "pref": 200
                                        },
                                        "ipv4-next-hop": {
                                            "global": "10.62.100.12"
                                        }
                                    }
                                }
                            ]
                        }
                    }
                ]
            }
        }
    ]
}