Hi,

We are currently observing packet drops when `ovn-controller` restarts. Our environment is running OVN 21.09 and OVS 2.16.2.

We reviewed commit d53c599ed05ea3c708a045a9434875458effa21e, which avoids dataplane downtime during the initial flow installation. However, it appears that this change does not fully eliminate packet drops during an `ovn-controller` restart, as the flow clearing operation still exists.

We also looked at commit 358b1dd53dcd9dde28f47caa21ea19e755323705, which ensures that all monitored updates are received before installing flows. Based on these two commits, we are considering a potential optimization in `ofctl.c`: - In `run_S_NEW()`: modify the cookie ID of all existing flows to a unified value (e.g., `0x1234`).
- In `ofctrl_put()`: remove the `clear flows` and `clear groups` operations.
- In `recv_S_UPDATE_FLOWS()`: delete redundant flows whose cookie ID was set in `run_S_NEW()`.

The goal is to avoid clearing flows during restart while still ensuring stale flows are properly cleaned up once updated flows are installed.

Please let us know if this approach makes sense. If there are no objections, we would like to prepare and submit a patch for further discussion.

Best regards,
Jun

_______________________________________________
discuss mailing list
[email protected]
https://mail.openvswitch.org/mailman/listinfo/ovs-discuss

Reply via email to