[ovs-dev] [PATCH] [RFC] Add a new OVS action check_pkt_larger

Ben Pfaff blp at ovn.org
Mon Nov 5 20:56:31 UTC 2018


On Mon, Nov 05, 2018 at 09:45:10PM +0530, nusiddiq at redhat.com wrote:
> From: Numan Siddique <nusiddiq at redhat.com>
> 
> This patch adds a new action 'check_pkt_larger' which checks if the
> packet is larger than the given size and stores the result in the
> destination register.
> 
> Usage: check_pkt_larger:len->REGISTER
> Eg. match=...,actions=check_pkt_larger:1442->NXM_NX_REG0[0],next;
> 
> When translating this action, SLOW_ACTION is set so that datapath
> flow is not added.
> 
> This action is intended to be used by OVN to check the packet length
> and generate an ICMP packet with type 3, code 4 and next hop mtu
> in the logical router pipeline if the MTU of the physical interface
> is lesser than the packet length. More information can be found here [1]
> 
> TODO:
>  - Add test case.
>  - Change the action format from check_pkt_larger:len to check_pkt_larger(len)
> 
> Request to suggest a better name for the action in case 'check_pkt_larger'
> seems odd.
> 
> [1] - https://mail.openvswitch.org/pipermail/ovs-discuss/2018-July/047039.html
> 
> Signed-off-by: Numan Siddique <nusiddiq at redhat.com>

Thanks for working on this.

It looks like this patch makes the assumption that every packet goes
through userspace, but that isn't true.  The action needs to be
implemented in the OVS datapaths so that the kernel or userspace can
direct oversized packets to the slow path.

Thanks,

Ben.


More information about the dev mailing list