ovn: Update comment about local datapath calculation.
authorRussell Bryant <russell@ovn.org>
Wed, 3 Feb 2016 16:46:33 +0000 (11:46 -0500)
committerRussell Bryant <russell@ovn.org>
Wed, 3 Feb 2016 16:49:40 +0000 (11:49 -0500)
ovn-controller has a simple optimization for excluding some logical flow
processing that we know is unnecessary.  This update to a comment in the
code reflects a discussion we had on the mailing list about a better
algorithm that would let us exclude even more.

Signed-off-by: Russell Bryant <russell@ovn.org>
ovn/controller/lflow.c

index f1d8ada..e586365 100644 (file)
@@ -308,6 +308,15 @@ lflow_run(struct controller_ctx *ctx, struct hmap *flow_table,
              * after a packet leaves a logical router.  Further optimization
              * is possible, but not based on what we know with local_datapaths
              * right now.
+             *
+             * A better approach would be a kind of "flood fill" algorithm:
+             *
+             *   1. Initialize set S to the logical datapaths that have a port
+             *      located on the hypervisor.
+             *
+             *   2. For each patch port P in a logical datapath in S, add the
+             *      logical datapath of the remote end of P to S.  Iterate
+             *      until S reaches a fixed point.
              */
 
             struct hmap_node *ld;