[ovs-dev] [PATCH] ovn-northd: Fix peering of routers.

Guru Shetty guru at ovn.org
Fri Apr 1 16:10:51 UTC 2016


On 30 March 2016 at 16:18, Ben Pfaff <blp at ovn.org> wrote:

> On Mon, Mar 28, 2016 at 02:31:41PM -0700, Gurucharan Shetty wrote:
> > 1. Currently, the ovn-nb man page says that the 'peer'
> > in a logical_router_port table should point to the name
> > of the peer's logical router port. But the schema had declared
> > this column as a uuid. This looks not to be the intention as peers
> > for logical switches connected to routers is a name (and not a uuid).
> > So this patch changes the schema to be name.
> >
> > 2. In the southbound database, in the port_binding table, for a
> > logical_router_port, the peer was pointing back to itself. This
> > was causing ovn-controller to create patch ports where the peer
> > was wrongly pointing back to the source itself. This clearly looks
> > to be an error. So this patch fixes the peer in southbound database
> > to correclty point to the real peer.
> >
> > 3. ovn-northd.c currently skips generating logical flows to transfer
> > packets between two peers with comment about needing 'ARP for
> > neighboring routers'. It looked to me that since the router peer
> > is a logical object that has to be created in OVN-NB database, we
> > always need to statically assign the mac address. So this patch
> > picks the mac address from the database.
> >
> > Signed-off-by: Gurucharan Shetty <guru at ovn.org>
>
> Thank you.  The lack of this feature was due to my laziness.
>
> I suspect that you should update ovn-northd.8.xml also.
>

True. I will add the following incremental
diff --git a/ovn/northd/ovn-northd.8.xml b/ovn/northd/ovn-northd.8.xml
index 7954e22..a89b88e 100644
--- a/ovn/northd/ovn-northd.8.xml
+++ b/ovn/northd/ovn-northd.8.xml
@@ -746,6 +746,15 @@ icmp4 {
           <var>A</var></code> has actions <code>eth.dst = <var>E</var>;
           next;</code>.
         </p>
+
+        <p>
+          For each logical router port with an IP address <var>A</var> and
+          a mac address of <var>E</var> that is reachable via a different
+          logical router port <var>P</var>, a priority-100 flow with
+          match <code>outport === <var>P</var> &amp;&amp; reg0 ==
+          <var>A</var></code> has actions <code>eth.dst = <var>E</var>;
+          next;</code>.
+        </p>
       </li>

       <li>

>
> Acked-by: Ben Pfaff <blp at ovn.org>
>

Thanks, I will apply this in a while.



More information about the dev mailing list