]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
Address concerns about CPU usage while doing TCP reassembly.
authorjtl <jtl@FreeBSD.org>
Mon, 6 Aug 2018 17:48:46 +0000 (17:48 +0000)
committerjtl <jtl@FreeBSD.org>
Mon, 6 Aug 2018 17:48:46 +0000 (17:48 +0000)
commit6b83085c249c99dac2d7c2d97eee0b50f3253891
tree96b376eb91bb18c9014683dc957a3621446fe524
parent97edf7a88e9bfc170fa8f934b78cccc576f87f78
Address concerns about CPU usage while doing TCP reassembly.

Currently, the per-queue limit is a function of the receive buffer
size and the MSS.  In certain cases (such as connections with large
receive buffers), the per-queue segment limit can be quite large.
Because we process segments as a linked list, large queues may not
perform acceptably.

The better long-term solution is to make the queue more efficient.
But, in the short-term, we can provide a way for a system
administrator to set the maximum queue size.

We set the default queue limit to 100.  This is an effort to balance
performance with a sane resource limit.  Depending on their
environment, goals, etc., an administrator may choose to modify this
limit in either direction.

Approved by: so
Security: FreeBSD-SA-18:08.tcp
Security: CVE-2018-6922
share/man/man4/tcp.4
sys/netinet/tcp_reass.c