]> 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:47:47 +0000 (17:47 +0000)
committerjtl <jtl@FreeBSD.org>
Mon, 6 Aug 2018 17:47:47 +0000 (17:47 +0000)
commit00cd17024e9c60551882f2881dbda5716c8dce7a
treeaf8b640cc163754133685e1cf49beb59d257f5eb
parent62a489e1688b21b7cbdab9ffdb449a67bacc770c
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