[Bug 258732] [tcp] TCP_MAXSEG does not work

From: <bugzilla-noreply_at_freebsd.org>
Date: Fri, 08 Oct 2021 09:29:32 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=258732

--- Comment #10 from zhh0000zhh <me@zhh0000zhh.com> ---
Turning off the Nagle algorithm causes the system to not wait for buffers.
And any socket forwarder should have low latency.
This leads to a problem for ipv6 to ipv4 forwarding where
When the forwarder accepts a message from ipv4 and forwards it to the ipv6
network, the actual data sent by ipv6 will be split into two packets because
the MSS of ipv4 is larger than the MSS of ipv6 (e.g. an ipv4 packet has 1460
bytes payload, this packet will be split into a 1446 bytes packet and a 14
bytes packet in ipv6, with Nagle disabled, This problem can be verified using
tcpdump)
This leads to a performance problem, as the ipv4 network generates one packet,
while the ipv6 network outputs two packets, which has a significant impact on
both packet count (there is a direct correlation between packet count and
performance) and effective bandwidth (excessive packet header loss leads to
reduced bandwidth utilization)
Inherently, the inability to set MSS does not lead to program errors, but in
high performance and low latency demand scenarios can result in a significant
waste of resources.

-- 
You are receiving this mail because:
You are the assignee for the bug.