Welcome! Log In Create A New Profile

Advanced

Re: [nginx-quic] Segmentation offloading

Vladimir Homutov
July 27, 2021 02:44AM
On Mon, Jul 26, 2021 at 04:08:02PM -0500, Lucas Cuminato wrote:
> Hello,
>
> I was testing this feature the other day but unsure if it's doing the right
> thing.
> Nginx is generating 65k UDP datagrams which are then being fragmented at
> the IP layer.
> Reading the spec, rfc9000, it looks like IP fragmentation is not allowed
> (Section 14).
>
> "UDP datagrams MUST NOT be fragmented at the IP layer. In IPv4
>
> IPv4 <https://datatracker.ietf.org/doc/html/rfc9000#ref-IPv4>], the
> Don't Fragment (DF) bit MUST be set if possible, to
> prevent fragmentation on the path."
>
>
> Also, it doesn't seem to be respecting the client's endpoint
> max_udp_payload_size.
>
>
> Can you please confirm if this is desired ?

Hi Lucas,

thank you for the feedback.

Of course, 65K datagrams is not something expected. It looks like GSO is
not working properly in your case. The expected result is that kernel
will split 65K buffer into smaller UDP datagrams of specified (segment) size,
and this segment size respects QUIC settings.

Do you see it in the wire? If yes, please share output of configure
script, debug log [1], and output of 'nginx -T'.
Are you running nginx on hardware directly or is it some virtual machine?
NIC/interface details are valuable (ethtool -k <interface>,
ip link show <interface>).


[1] http://nginx.org/en/docs/debugging_log.html
_______________________________________________
nginx-devel mailing list
nginx-devel@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-devel
Subject Author Views Posted

[nginx-quic] Segmentation offloading

Lucas Cuminato 560 July 26, 2021 05:10PM

Re: [nginx-quic] Segmentation offloading

Vladimir Homutov 165 July 27, 2021 02:44AM



Sorry, you do not have permission to post/reply in this forum.

Online Users

Guests: 143
Record Number of Users: 8 on April 13, 2023
Record Number of Guests: 421 on December 02, 2018
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready