<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Optimize on 浙江物链网络科技有限公司</title><link>https://www.wlstack.com/cn/tags/optimize/</link><description>Recent content in Optimize on 浙江物链网络科技有限公司</description><generator>Hugo</generator><language>zh-CN</language><managingEditor>info@wlstack.com (物链网络)</managingEditor><webMaster>info@wlstack.com (物链网络)</webMaster><lastBuildDate>Tue, 07 Mar 2023 00:00:00 +0000</lastBuildDate><atom:link href="https://www.wlstack.com/cn/tags/optimize/index.xml" rel="self" type="application/rss+xml"/><item><title>内核优化参数记录</title><link>https://www.wlstack.com/cn/blog/%E5%86%85%E6%A0%B8%E4%BC%98%E5%8C%96%E5%8F%82%E6%95%B0%E8%AE%B0%E5%BD%95/</link><pubDate>Tue, 07 Mar 2023 00:00:00 +0000</pubDate><author>info@wlstack.com (物链网络)</author><guid>https://www.wlstack.com/cn/blog/%E5%86%85%E6%A0%B8%E4%BC%98%E5%8C%96%E5%8F%82%E6%95%B0%E8%AE%B0%E5%BD%95/</guid><description>&lt;h1 id="参数说明">参数说明&lt;/h1>
&lt;p>Linux内核参数的配置对于性能的影响是巨大的。
可以通过修改/etc/sysctl.conf文件来调整。下面是每个参数的简要说明：&lt;/p>
&lt;table>
 &lt;thead>
 &lt;tr>
 &lt;th>参数名&lt;/th>
 &lt;th>参数值&lt;/th>
 &lt;th>说明&lt;/th>
 &lt;th>建议&lt;/th>
 &lt;/tr>
 &lt;/thead>
 &lt;tbody>
 &lt;tr>
 &lt;td>vm.swappiness&lt;/td>
 &lt;td>0&lt;/td>
 &lt;td>控制内核将哪些页面交换到磁盘以释放内存。&lt;/td>
 &lt;td>如果您的系统拥有足够的内存容量，建议将这个参数的值设置为 0，以减少交换分区的使用。&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>vm.panic_on_oom&lt;/td>
 &lt;td>1&lt;/td>
 &lt;td>控制系统在内存不足时是否会宕机。&lt;/td>
 &lt;td>如果您的系统拥有足够的内存容量，建议将这个参数的值设置为 1，以确保系统不会因为内存不足而出现问题。&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>kernel.panic&lt;/td>
 &lt;td>10&lt;/td>
 &lt;td>控制系统在内核崩溃时重新启动的时间。&lt;/td>
 &lt;td>如果您的系统存在内核崩溃的问题，建议将这个参数的值设置得较小，以便快速重新启动系统。&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>fs.file-max&lt;/td>
 &lt;td>65536&lt;/td>
 &lt;td>控制内核允许打开的文件数的最大数量。&lt;/td>
 &lt;td>如果您的应用程序需要大量的文件句柄，建议增加这个参数的值。&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>kernel.sysrq&lt;/td>
 &lt;td>0&lt;/td>
 &lt;td>控制内核是否允许使用 SysRq 键来执行紧急操作。&lt;/td>
 &lt;td>如果您不需要使用 SysRq 键，建议将这个参数的值设置为 0，以增加系统的安全性。&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>kernel.printk&lt;/td>
 &lt;td>5 4 1 7&lt;/td>
 &lt;td>控制内核消息的打印级别。&lt;/td>
 &lt;td>如果您不需要详细的内核消息，建议将这个参数的值设置为 3 4 1 3，以减少内核消息的频率和级别。&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>kernel.softlockup_panic&lt;/td>
 &lt;td>1&lt;/td>
 &lt;td>控制系统在发生软锁定时是否宕机。&lt;/td>
 &lt;td>如果您的系统存在软锁定的问题，建议将这个参数的值设置为 1，以便快速重新启动系统。&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>net.ipv4.conf.default.rp_filter&lt;/td>
 &lt;td>0&lt;/td>
 &lt;td>控制反向路径检测。&lt;/td>
 &lt;td>如果您的系统需要进行反向路径检测，建议将这个参数的值设置为 1。&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>net.ipv4.ip_forward&lt;/td>
 &lt;td>1&lt;/td>
 &lt;td>控制 IP 转发功能。&lt;/td>
 &lt;td>如果您的系统需要使用 IP 转发功能，建议将这个参数的值设置为 1。&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>net.core.netdev_max_backlog&lt;/td>
 &lt;td>40960&lt;/td>
 &lt;td>控制网络设备接收队列的长度。&lt;/td>
 &lt;td>如果您的系统的网络流量较大，建议增加这个参数的值。&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>net.core.optmem_max&lt;/td>
 &lt;td>921600&lt;/td>
 &lt;td>控制内核套接字缓冲区的最大大小。&lt;/td>
 &lt;td>如果您的系统的网络流量较大，建议增加这个参数的值。&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>net.core.rmem_default&lt;/td>
 &lt;td>2097152&lt;/td>
 &lt;td>控制内核套接字接收缓冲区的默认大小。&lt;/td>
 &lt;td>如果您的系统的网络流量较大，建议增加这个参数的值。&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>net.core.rmem_max&lt;/td>
 &lt;td>8388608&lt;/td>
 &lt;td>内核套接字接收缓冲区的最大大小。&lt;/td>
 &lt;td>如果您的系统的网络流量较大，建议增加这个参数的值。&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>net.ipv4.tcp_rmem&lt;/td>
 &lt;td>4096 87380 8388608&lt;/td>
 &lt;td>内核套接字 TCP 接收缓冲区的最小、默认、最大大小。&lt;/td>
 &lt;td>如果您的系统的网络流量较大，建议增加这些参数的值。&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>net.ipv4.tcp_wmem&lt;/td>
 &lt;td>4096 87380 8388608&lt;/td>
 &lt;td>内核套接字 TCP 发送缓冲区的最小、默认、最大大小。&lt;/td>
 &lt;td>如果您的系统的网络流量较大，建议增加这些参数的值。&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>net.ipv4.udp_mem&lt;/td>
 &lt;td>8388608 12582912 16777216&lt;/td>
 &lt;td>内核套接字 UDP 缓冲区的最小、默认、最大大小。&lt;/td>
 &lt;td>如果您的系统的网络流量较大，建议增加这些参数的值。&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>net.ipv4.udp_rmem_min&lt;/td>
 &lt;td>65536&lt;/td>
 &lt;td>内核套接字 UDP 接收缓冲区的最小大小。&lt;/td>
 &lt;td>如果您的系统的网络流量较大，建议增加这个参数的值。&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>net.ipv4.udp_wmem_min&lt;/td>
 &lt;td>65536&lt;/td>
 &lt;td>内核套接字 UDP 发送缓冲区的最小大小。&lt;/td>
 &lt;td>如果您的系统的网络流量较大，建议增加这个参数的值。&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>net.ipv4.tcp_no_metrics_save&lt;/td>
 &lt;td>1&lt;/td>
 &lt;td>控制内核是否保存 TCP 的性能指标。&lt;/td>
 &lt;td>如果您不需要保存 TCP 的性能指标，建议将这个参数的值设置为 1，以减少系统的 I/O 负载。&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>net.ipv4.icmp_echo_ignore_broadcasts&lt;/td>
 &lt;td>1&lt;/td>
 &lt;td>控制内核是否响应广播地址的 ICMP 请求。&lt;/td>
 &lt;td>如果您不需要响应广播地址的 ICMP 请求，建议将这个参数的值设置为 1，以增加系统的安全性。&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>net.ipv4.ipfrag_high_thresh&lt;/td>
 &lt;td>5242880&lt;/td>
 &lt;td>控制内核 IP 分片的高阈值。&lt;/td>
 &lt;td>如果您的系统的网络流量较大，建议增加这个参数的值。&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>net.ipv4.ipfrag_low_thresh&lt;/td>
 &lt;td>2932160&lt;/td>
 &lt;td>控制内核 IP 分片的低阈值。&lt;/td>
 &lt;td>如果您的系统的网络流量较大，建议增加这个参数的值。&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>net.ipv4.ip_local_port_range&lt;/td>
 &lt;td>1025 65530&lt;/td>
 &lt;td>控制内核分配本地端口的范围。&lt;/td>
 &lt;td>如果您的应用程序需要大量的本地端口，建议增加这些参数的值。&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>net.ipv4.neigh.default.gc_thresh1&lt;/td>
 &lt;td>8192&lt;/td>
 &lt;td>控制内核网络邻居表的 GC 阈值。&lt;/td>
 &lt;td>如果您的系统的网络流量较大，建议增加这个参数的值。｜&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>net.ipv4.neigh.default.gc_thresh2&lt;/td>
 &lt;td>4092&lt;/td>
 &lt;td>控制内核网络邻居表的 GC 阈值。&lt;/td>
 &lt;td>如果您的系统的网络流量较大，建议增加这个参数的值。&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>net.ipv4.neigh.default.gc_thresh3&lt;/td>
 &lt;td>8192&lt;/td>
 &lt;td>控制内核网络邻居表的 GC 阈值。&lt;/td>
 &lt;td>如果您的系统的网络流量较大，建议增加这个参数的值。&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>net.ipv4.tcp_fin_timeout&lt;/td>
 &lt;td>10&lt;/td>
 &lt;td>控制内核 TCP 连接终止时的超时时间。&lt;/td>
 &lt;td>如果您的应用程序需要快速地建立和终止 TCP 连接，建议将这个参数的值设置为较小的值。&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>net.ipv4.tcp_keepalive_time&lt;/td>
 &lt;td>3600&lt;/td>
 &lt;td>控制内核 TCP 连接的空闲时间。&lt;/td>
 &lt;td>如果您的应用程序需要保持 TCP 连接的长时间空闲状态，建议增加这个参数的值。&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>net.ipv4.tcp_max_syn_backlog&lt;/td>
 &lt;td>40960&lt;/td>
 &lt;td>控制内核 TCP SYN 队列的最大长度。&lt;/td>
 &lt;td>如果您的系统需要处理大量的 TCP 连接请求，建议增加这个参数的值。&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>net.ipv4.tcp_max_tw_buckets&lt;/td>
 &lt;td>1440000&lt;/td>
 &lt;td>控制内核 TCP TIME-WAIT 队列的最大长度。&lt;/td>
 &lt;td>如果您的系统需要处理大量的 TCP 连接请求，建议增加这个参数的值。&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>net.ipv4.tcp_rmem&lt;/td>
 &lt;td>92160 6000000 17476000&lt;/td>
 &lt;td>内核套接字 TCP 接收缓冲区的最小、默认、最大大小。&lt;/td>
 &lt;td>如果您的系统的网络流量较大，建议增加这些参数的值。&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>net.ipv4.tcp_sack&lt;/td>
 &lt;td>1&lt;/td>
 &lt;td>控制内核是否启用 TCP SACK。&lt;/td>
 &lt;td>如果您的应用程序需要使用 TCP SACK，建议将这个参数的值设置为 1。&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>net.ipv4.tcp_synack_retries&lt;/td>
 &lt;td>2&lt;/td>
 &lt;td>控制内核 TCP 连接建立时的重试次数。&lt;/td>
 &lt;td>如果您的系统需要处理大量的 TCP 连接请求，建议增加这个参数的值。&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>net.ipv4.tcp_syncookies&lt;/td>
 &lt;td>1&lt;/td>
 &lt;td>控制内核是否启用 TCP SYN Cookie。&lt;/td>
 &lt;td>如果您的系统需要处理大量的 TCP 连接请求，建议将这个参数的值设置为 1。&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>net.ipv4.tcp_syn_retries&lt;/td>
 &lt;td>2&lt;/td>
 &lt;td>控制内核 TCP 连接建立时的重试次数。&lt;/td>
 &lt;td>如果您的系统需要处理大量的 TCP 连接请求，建议增加这个参数的值。&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>net.ipv4.tcp_tw_recycle&lt;/td>
 &lt;td>1&lt;/td>
 &lt;td>控制内核是否启用 TCP TIME-WAIT 回收机制。&lt;/td>
 &lt;td>如果您的系统需要处理大量的 TCP 连接请求，建议将这个参数的值设置为 1。&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>net.ipv4.tcp_tw_reuse&lt;/td>
 &lt;td>1&lt;/td>
 &lt;td>控制内核是否启用 TCP TIME-WAIT 重用机制。&lt;/td>
 &lt;td>如果您的系统需要处理大量的 TCP 连接请求，建议将这个参数的值设置为 1。&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>net.ipv4.tcp_window_scaling&lt;/td>
 &lt;td>1&lt;/td>
 &lt;td>控制内核是否启用 TCP 窗口扩展机制。&lt;/td>
 &lt;td>如果您的系统需要处理大量的 TCP 连接请求，建议将这个参数的值设置为 1。&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>net.ipv4.tcp_timestamps&lt;/td>
 &lt;td>1&lt;/td>
 &lt;td>控制内核是否启用 TCP 时间戳机制。&lt;/td>
 &lt;td>如果您的应用程序需要使用 TCP 时间戳机制，建议将这个参数的值设置为 1。&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>net.core.somaxconn&lt;/td>
 &lt;td>65535&lt;/td>
 &lt;td>内核套接字连接队列的最大长度。&lt;/td>
 &lt;td>如果您的系统需要处理大量的 TCP 连接请求，建议增加这个参数的值。&lt;/td>
 &lt;/tr>
 &lt;/tbody>
&lt;/table>
&lt;h1 id="参考示例">参考示例&lt;/h1>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-shell" data-lang="shell">&lt;span style="display:flex;">&lt;span>vm.swappiness &lt;span style="color:#f92672">=&lt;/span> &lt;span style="color:#ae81ff">0&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>vm.panic_on_oom&lt;span style="color:#f92672">=&lt;/span>&lt;span style="color:#ae81ff">1&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>kernel.panic&lt;span style="color:#f92672">=&lt;/span>&lt;span style="color:#ae81ff">10&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>fs.file-max &lt;span style="color:#f92672">=&lt;/span> &lt;span style="color:#ae81ff">65536&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>kernel.sysrq &lt;span style="color:#f92672">=&lt;/span> &lt;span style="color:#ae81ff">0&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>kernel.printk &lt;span style="color:#f92672">=&lt;/span> &lt;span style="color:#ae81ff">5&lt;/span> &lt;span style="color:#ae81ff">4&lt;/span> &lt;span style="color:#ae81ff">1&lt;/span> &lt;span style="color:#ae81ff">7&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>kernel.softlockup_panic &lt;span style="color:#f92672">=&lt;/span> &lt;span style="color:#ae81ff">1&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>net.ipv4.conf.default.rp_filter &lt;span style="color:#f92672">=&lt;/span> &lt;span style="color:#ae81ff">0&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>net.ipv4.ip_forward &lt;span style="color:#f92672">=&lt;/span> &lt;span style="color:#ae81ff">1&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>net.core.netdev_max_backlog &lt;span style="color:#f92672">=&lt;/span> &lt;span style="color:#ae81ff">40960&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>net.core.optmem_max &lt;span style="color:#f92672">=&lt;/span> &lt;span style="color:#ae81ff">921600&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>net.core.rmem_default &lt;span style="color:#f92672">=&lt;/span> &lt;span style="color:#ae81ff">2097152&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>net.core.wmem_default &lt;span style="color:#f92672">=&lt;/span> &lt;span style="color:#ae81ff">2097152&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>net.core.wmem_max &lt;span style="color:#f92672">=&lt;/span> &lt;span style="color:#ae81ff">8388608&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>net.core.rmem_max &lt;span style="color:#f92672">=&lt;/span> &lt;span style="color:#ae81ff">8388608&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>net.ipv4.tcp_rmem &lt;span style="color:#f92672">=&lt;/span> &lt;span style="color:#ae81ff">4096&lt;/span> &lt;span style="color:#ae81ff">87380&lt;/span> &lt;span style="color:#ae81ff">8388608&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>net.ipv4.tcp_wmem &lt;span style="color:#f92672">=&lt;/span> &lt;span style="color:#ae81ff">4096&lt;/span> &lt;span style="color:#ae81ff">87380&lt;/span> &lt;span style="color:#ae81ff">8388608&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>net.ipv4.udp_mem &lt;span style="color:#f92672">=&lt;/span> &lt;span style="color:#ae81ff">8388608&lt;/span> &lt;span style="color:#ae81ff">12582912&lt;/span> &lt;span style="color:#ae81ff">16777216&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>net.ipv4.udp_rmem_min &lt;span style="color:#f92672">=&lt;/span> &lt;span style="color:#ae81ff">65536&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>net.ipv4.udp_wmem_min &lt;span style="color:#f92672">=&lt;/span> &lt;span style="color:#ae81ff">65536&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>net.ipv4.tcp_no_metrics_save &lt;span style="color:#f92672">=&lt;/span> &lt;span style="color:#ae81ff">1&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>net.ipv4.icmp_echo_ignore_broadcasts &lt;span style="color:#f92672">=&lt;/span> &lt;span style="color:#ae81ff">1&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>net.ipv4.ipfrag_high_thresh &lt;span style="color:#f92672">=&lt;/span> &lt;span style="color:#ae81ff">5242880&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>net.ipv4.ipfrag_low_thresh &lt;span style="color:#f92672">=&lt;/span> &lt;span style="color:#ae81ff">2932160&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>net.ipv4.ip_local_port_range &lt;span style="color:#f92672">=&lt;/span> &lt;span style="color:#ae81ff">1025&lt;/span> &lt;span style="color:#ae81ff">65530&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>net.ipv4.neigh.default.gc_thresh1 &lt;span style="color:#f92672">=&lt;/span> &lt;span style="color:#ae81ff">8192&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>net.ipv4.neigh.default.gc_thresh2 &lt;span style="color:#f92672">=&lt;/span> &lt;span style="color:#ae81ff">4092&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>net.ipv4.neigh.default.gc_thresh3 &lt;span style="color:#f92672">=&lt;/span> &lt;span style="color:#ae81ff">8192&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>net.ipv4.tcp_fin_timeout &lt;span style="color:#f92672">=&lt;/span> &lt;span style="color:#ae81ff">10&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>net.ipv4.tcp_keepalive_time &lt;span style="color:#f92672">=&lt;/span> &lt;span style="color:#ae81ff">3600&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>net.ipv4.tcp_max_syn_backlog &lt;span style="color:#f92672">=&lt;/span> &lt;span style="color:#ae81ff">40960&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>net.ipv4.tcp_max_tw_buckets &lt;span style="color:#f92672">=&lt;/span> &lt;span style="color:#ae81ff">1440000&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>net.ipv4.tcp_rmem &lt;span style="color:#f92672">=&lt;/span> &lt;span style="color:#ae81ff">92160&lt;/span> &lt;span style="color:#ae81ff">6000000&lt;/span> &lt;span style="color:#ae81ff">17476000&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>net.ipv4.tcp_sack &lt;span style="color:#f92672">=&lt;/span> &lt;span style="color:#ae81ff">1&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>net.ipv4.tcp_synack_retries &lt;span style="color:#f92672">=&lt;/span> &lt;span style="color:#ae81ff">2&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>net.ipv4.tcp_syncookies &lt;span style="color:#f92672">=&lt;/span> &lt;span style="color:#ae81ff">1&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>net.ipv4.tcp_syn_retries &lt;span style="color:#f92672">=&lt;/span> &lt;span style="color:#ae81ff">2&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>net.ipv4.tcp_tw_recycle&lt;span style="color:#f92672">=&lt;/span>&lt;span style="color:#ae81ff">1&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>net.ipv4.tcp_tw_reuse&lt;span style="color:#f92672">=&lt;/span>&lt;span style="color:#ae81ff">1&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>net.ipv4.tcp_window_scaling &lt;span style="color:#f92672">=&lt;/span> &lt;span style="color:#ae81ff">1&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>net.ipv4.tcp_timestamps &lt;span style="color:#f92672">=&lt;/span> &lt;span style="color:#ae81ff">1&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>net.core.somaxconn &lt;span style="color:#f92672">=&lt;/span> &lt;span style="color:#ae81ff">65535&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div></description></item><item><title>内核优化参数记录之FreeBSD</title><link>https://www.wlstack.com/cn/blog/freebsd-kernel-optimizations/</link><pubDate>Mon, 07 Mar 2022 00:00:00 +0000</pubDate><author>info@wlstack.com (物链网络)</author><guid>https://www.wlstack.com/cn/blog/freebsd-kernel-optimizations/</guid><description>&lt;p>#最大的待发送TCP数据缓冲区空间
net.inet.tcp.sendspace=65536&lt;/p>
&lt;p>#最大的接受TCP缓冲区空间
net.inet.tcp.recvspace=65536&lt;/p>
&lt;p>#最大的接受UDP缓冲区大小
net.inet.udp.sendspace=65535&lt;/p>
&lt;p>#最大的发送UDP数据缓冲区大小
net.inet.udp.maxdgram=65535&lt;/p>
&lt;p>#本地套接字连接的数据发送空间
net.local.stream.sendspace=65535&lt;/p>
&lt;p>#加快网络性能的协议
net.inet.tcp.rfc1323=1
net.inet.tcp.rfc1644=1
net.inet.tcp.rfc3042=1
net.inet.tcp.rfc3390=1&lt;/p>
&lt;p>#最大的套接字缓冲区
kern.ipc.maxsockbuf=2097152&lt;/p>
&lt;p>#系统中允许的最多文件数量
kern.maxfiles=65536&lt;/p>
&lt;p>#每个进程能够同时打开的最大文件数量
kern.maxfilesperproc=32768&lt;/p>
&lt;p>#当一台计算机发起TCP连接请求时,系统会回应ACK应答数据包.
#该选项设置是否延迟ACK应答数据包,把它和包含数据的数据包一起发送,
#在高速网络和低负载的情况下会略微提高性能,但在网络连接较差的时候,
#对方计算机得不到应答会持续发起连接请求,反而会降低性能.
net.inet.tcp.delayed_ack=0&lt;/p>
&lt;p>#屏蔽ICMP重定向功能
net.inet.icmp.drop_redirect=1
net.inet.icmp.log_redirect=1
net.inet.ip.redirect=0
net.inet6.ip6.redirect=0&lt;/p>
&lt;p>#防止ICMP广播风暴
net.inet.icmp.bmcastecho=0
net.inet.icmp.maskrepl=0&lt;/p>
&lt;p>#限制系统发送ICMP速率
net.inet.icmp.icmplim=100&lt;/p>
&lt;p>#安全参数,编译内核的时候加了options TCP_DROP_SYNFIN才可以用
net.inet.icmp.icmplim_output=0
net.inet.tcp.drop_synfin=1&lt;/p>
&lt;p>#设置为1会帮助系统清除没有正常断开的TCP连接,这增加了一些网络带宽的使用,但是一些死掉的连接最终能被识别并清除.死的TCP连接是被拨号用户存取的系统的一个特别的问题,因为用户经常断开modem而不正确的关闭活动的连接
net.inet.tcp.always_keepalive=1&lt;/p>
&lt;p>#若看到net.inet.ip.intr_queue_drops这个在增加,就要调大net.inet.ip.intr_queue_maxlen,为0最好
net.inet.ip.intr_queue_maxlen=1000&lt;/p>
&lt;p>#防止DOS攻击,默认为30000
net.inet.tcp.msl=7500&lt;/p>
&lt;p>#接收到一个已经关闭的端口发来的所有包,直接drop,如果设置为1则是只针对TCP包
net.inet.tcp.blackhole=2&lt;/p>
&lt;p>#接收到一个已经关闭的端口发来的所有UDP包直接drop
net.inet.udp.blackhole=1&lt;/p>
&lt;p>#为网络数据连接时提供缓冲
net.inet.tcp.inflight.enable=1&lt;/p>
&lt;p>#如果打开的话每个目标地址一次转发成功以后它的数据都将被记录进路由表和arp数据表,节约路由的计算时间,但会需要大量的内核内存空间来保存路由表
net.inet.ip.fastforwarding=0&lt;/p>
&lt;p>##kernel编译打开options POLLING功能,高负载情况下使用低负载不推荐
##SMP不能和polling一起用
#kern.polling.enable=1&lt;/p>
&lt;p>#并发连接数,默认为128,推荐在1024-4096之间,数字越大占用内存也越大
kern.ipc.somaxconn=32768&lt;/p>
&lt;p>#禁止用户查看其他用户的进程
security.bsd.see_other_uids=0&lt;/p>
&lt;p>#设置kernel安全级别
kern.securelevel=0&lt;/p>
&lt;p>#记录下任何TCP连接
net.inet.tcp.log_in_vain=1&lt;/p>
&lt;p>#记录下任何UDP连接
net.inet.udp.log_in_vain=1&lt;/p>
&lt;p>#防止不正确的udp包的攻击
net.inet.udp.checksum=1&lt;/p></description></item></channel></rss>