[RFE] Add BFD support for Neutron
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
neutron |
Won't Fix
|
Wishlist
|
Lajos Katona |
Bug Description
I plan to open a spec with more details as gerrit is more suitable for discussions.
# Problem description
BFD (Bidirectional Forwarding Detection) is used to detect link failures between routers.
It can be helpful to detect
* if an extra route (a nexthop-destination pair) is alive or not, and change routes accordingly.
* Can help routing protocols like ECMP or BGP to change routing decisions based on link status.
# Proposed change (more details are coming in the spec)
* Add the following new APIs to Neutron:
** Handle (Create, list, show, update, delete) bfd_monitors:
POST /v2.0/bfd_monitors
GET /v2.0/bfd_monitors
GET /v2.0/bfd_
DELETE POST /v2.0/bfd_
PUT /v2.0/bfd_
** Get the current status of a bfd_monitor (As current status can be fetched from the backend it can be an expensive operation so better to not mix it with show bfd_monitors operation)
GET /v2.0/bfd_
* Change the existing router API
** Associate a bfd_monitor to an extra route
PUT /v2.0/routers/
{"router" : {"routes" : [{ "destination" : "10.0.3.0/24", "nexthop" : "10.0.0.13" , "bfd": <bfd_monitor_
** show routes status for a given router:
GET /v2.0/routers/
BFD not only gives monitoring option, but generally used to allow quick response to link status changes.
In Neutron case this can be the removal of dead route from the routing table, and adding it back if the monitor status goes to UP again. Other backends, and switch/routing implementations can have more sophisticated solutions of course.
A simple opensource backend can be OVS, as OVS is capable of BFD monitoring.
Changed in neutron: | |
assignee: | nobody → Lajos Katona (lajos-katona) |
Changed in neutron: | |
importance: | Undecided → Wishlist |
tags: | added: rfe |
tags: | added: l3-bgp |
tags: |
added: rfe-approved removed: rfe-triaged |
Proposal for bumping wrapt in l-c.txt: /review. opendev. org/c/openstack /neutron/ +/765988
https:/