bagpipe: agent restart lost flows

Bug #1531459 reported by Thomas Morin
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
networking-bgpvpn
Fix Released
Undecided
Thomas Morin

Bug Description

We are probably subject to the issue described here:

http://docs-draft.openstack.org/19/263819/2/check/gate-neutron-specs-docs/1699045//doc/build/html/specs/mitaka/l2-agent-extensions-agent-api.html#problem-description

"One major use case where extensions may need to coordinate with the agent that is running them is the Open vSwitch agent graceful restart feature added in Liberty cycle. For this feature, a per-session agent id is used to distinguish flows that belong to the current agent session from those that belong to the previous one. The problem starts when an extension wants to inject its own flows into the switch. Since those extensions don’t have a way to determine what the current agent id is, they cannot mark their new flows with it, which results in the agent dropping all their flows on restart assuming they are stale."

It is likely that flows to direct traffic to/from patch ports are impacted by this, and dropped on agent restart, and then rebuilt when the bagpipe direct sends RPCs after port is set active by the agent.

This issue remains to be investigated.

Changed in bgpvpn:
milestone: none → next
Changed in bgpvpn:
assignee: nobody → Thomas Morin (tmmorin-orange)
status: New → In Progress
Revision history for this message
Thomas Morin (tmmorin-orange) wrote :
Changed in bgpvpn:
assignee: Thomas Morin (tmmorin-orange) → Mathieu Rohon (mathieu-rohon)
Changed in bgpvpn:
assignee: Mathieu Rohon (mathieu-rohon) → Thomas Morin (tmmorin-orange)
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to networking-bgpvpn (master)

Reviewed: https://review.openstack.org/281358
Committed: https://git.openstack.org/cgit/openstack/networking-bgpvpn/commit/?id=753fa2410639dca3957f0bffbb2e632181f00f77
Submitter: Jenkins
Branch: master

commit 753fa2410639dca3957f0bffbb2e632181f00f77
Author: Thomas Morin <email address hidden>
Date: Thu Sep 17 11:59:28 2015 +0200

    OVS Agent extension for bagpipe driver

    This change introduces an OVS L2 agent extension that will now be used
    instead of the previous agent in ovs_bagpipe_neutron_agent.py which
    was inheriting from the Neutron OVS agent in a crude way, requiring
    duplicating the main() code.

    We also remove mention of the old bagpipe-openvswitch agent
    in the documentation and and adapt the devstack plugin so that
    old local.conf will still work.

    Change-Id: Ibf27e2b028efffa1e49207d39bfc9b13464180ad
    Closes-Bug: 1492021
    Closes-Bug: 1531459

Changed in bgpvpn:
status: In Progress → Fix Released
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.