[ovs-dev] [PATCH] OVN: Fix ARP request flow in router ingress table

Guru Shetty guru at ovn.org
Tue Jul 5 21:55:10 UTC 2016


On 4 July 2016 at 06:53, Chandra S Vejendla <csvejend at us.ibm.com> wrote:

> TPA in arp requests generated for unknown MAC-to-IP bindings is currently
> set
> to DST_IP of the original packet. These arps will not be resolved when the
> DST_IP is rechable via the default gateway. This patch fixes the issue by
> setting the TPA to reg0. In routing stage reg0 is set to IP of the default
> gateway when the packet has to go through the default gateway, otherwise
> reg0
> is set to the DST_IP of the original packet.
>
> Signed-off-by: Chandra Sekhar Vejendla <csvejend at us.ibm.com>
>

This looks correct to me.

> ---
>  ovn/northd/ovn-northd.8.xml | 1 +
>  ovn/northd/ovn-northd.c     | 1 +
>  2 files changed, 2 insertions(+)
>
> diff --git a/ovn/northd/ovn-northd.8.xml b/ovn/northd/ovn-northd.8.xml
> index 6bc83ea..0a49b11 100644
> --- a/ovn/northd/ovn-northd.8.xml
> +++ b/ovn/northd/ovn-northd.8.xml
> @@ -1011,6 +1011,7 @@ icmp4 {
>  arp {
>      eth.dst = ff:ff:ff:ff:ff:ff;
>      arp.spa = reg1;
> +    arp.tpa = reg0;
>      arp.op = 1;  /* ARP request. */
>      output;
>  };
>

The documentation explains where 'reg0' comes from. I think it makes sense
to also say where 'reg0' is populated.




> diff --git a/ovn/northd/ovn-northd.c b/ovn/northd/ovn-northd.c
> index f4b4435..afcd7fd 100644
> --- a/ovn/northd/ovn-northd.c
> +++ b/ovn/northd/ovn-northd.c
> @@ -2693,6 +2693,7 @@ build_lrouter_flows(struct hmap *datapaths, struct
> hmap *ports,
>                        "arp { "
>                        "eth.dst = ff:ff:ff:ff:ff:ff; "
>                        "arp.spa = reg1; "
> +                      "arp.tpa = reg0; "
>                        "arp.op = 1; " /* ARP request */
>                        "output; "
>                        "};");
> --
> 2.6.1
>
> _______________________________________________
> dev mailing list
> dev at openvswitch.org
> http://openvswitch.org/mailman/listinfo/dev
>



More information about the dev mailing list