[RFE] Enhance BGP Dynamic Routing driver with Quagga suppport

Bug #1561824 reported by Steve Ruan
12
This bug affects 2 people
Affects Status Importance Assigned to Milestone
neutron
Won't Fix
Wishlist
Steve Ruan

Bug Description

Current bgp-dynamic-routing only support ryu bgp. But some time we want to Quagga as bgp speaker because:
 1. Quagga has more features which is wanted like:
      1.1) multiple instance support which is need by [3].
      1.2) quagga has more flexible route filter
2. Quagga is programmed by C language, it will have better performance.

And [1] list the comparison of all possible bgp speakers.

[1]BGPSpeakersComparison
https://wiki.openstack.org/wiki/Neutron/DynamicRouting/BGPSpeakersComparison
[2] bgp-dynamic-routing
https://blueprints.launchpad.net/neutron/+spec/bgp-dynamic-routing
[3]bgp-dragent-hosting-multiple-speakers
https://bugs.launchpad.net/neutron/+bug/1528003

Henry Gessau (gessau)
Changed in neutron:
status: New → Confirmed
importance: Undecided → Wishlist
tags: added: rfe
Revision history for this message
Carl Baldwin (carl-baldwin) wrote :

I'd like to see a higher level use case that makes this feature compelling. Could you describe the cases where hosting multiple speakers on an agent is necessary?

I recall having a conversation with Ryan Tidwell about multiple speakers per dragent. As I recall, we didn't think it was very compelling at the time but it could be that we didn't consider something. I'll ask him to comment on this. Is it possible to host multiple dragents on a single host? Could that be a way to address the use cases around this?

Revision history for this message
Carl Baldwin (carl-baldwin) wrote :

To comment on the performance. Has the performance of the Ryu library been demonstrated to be insufficient?

Changed in neutron:
status: Confirmed → Incomplete
Revision history for this message
Ryan Tidwell (ryan-tidwell) wrote :

I understand the desire to enable Quagga with a BGP driver for the agent, and it would be useful on a number of fronts. I'm not sure I'd highlight performance as one of the reasons to use something other than the Ryu driver at this point. Support for multiple speakers on a dr-agent is supported if the driver allows it. The advantage is that the operator can deploy a smaller number of dr_agents, while being able to instantiate any number of BGP speakers without requiring 1 agent per speaker. It means there is less cloud infrastructure to manage as you scale up. If Ryu supported views like Quagga does, we could allow multiple speakers to land on an agent.

Revision history for this message
Steve Ruan (ruansx) wrote :

Thanks Ryan's comments.

Add 1 more information about multiple speakers.
For example, 2 tenants create 2 bgp peers to advertise their private subnets, 2 bgp speakers will be needed. Because of Ryu bgp, each network node can only host 1 bgp speaker. In this case, we need 2 network nodes.
It means each tenant need a network node, it's unacceptable.

For quagga, it has "BGP multiple instance" feature. It can run multiple bgp speakers in 1 network node.

Revision history for this message
Ryan Tidwell (ryan-tidwell) wrote :

Steve, keep in mind that BGP speakers are an admin-only resource today. They are not a tenant-facing resource, so keep that in mind as you're working through RFE's, specs, etc.

tags: added: l3-bgp
Changed in neutron:
status: Incomplete → Triaged
Revision history for this message
Steve Ruan (ruansx) wrote :

Thanks Carl & Ryan.
This rfe will be implemented in neutron-dynamic-routing project.

Changed in neutron:
assignee: nobody → steve (ruansx)
tags: added: rfe-approved
removed: rfe
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Related fix proposed to neutron-specs (master)

Related fix proposed to branch: master
Review: https://review.openstack.org/362008

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Change abandoned on neutron-specs (master)

Change abandoned by Kevin Benton (<email address hidden>) on branch: master
Review: https://review.openstack.org/362008
Reason: please restore and re-propose for pike if you're still interested in doing this

tags: added: rfe
removed: rfe-approved
tags: added: rfe-postponed
removed: rfe
Revision history for this message
Rodolfo Alonso (rodolfo-alonso-hernandez) wrote :

Bug closed due to lack of activity, please feel free to reopen if needed.

Changed in neutron:
status: Triaged → Won't Fix
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.