Linux之TCPIP内核全参数优化

合集下载

Nginx做web服务器linux内核参数优化WEB服务器 电脑资料.doc

Nginx做web服务器linux内核参数优化WEB服务器 电脑资料.doc

Nginx做web效劳器linux内核参数优化WEB效劳器电脑资料Nginx做web效劳器linux内核参数优化Nginx提供web效劳时Linux内核参数调整是必不可少的,其中在优化方面就需要我们格外的注意,关于Linux内核参数的优化:.ipv4.tcpmaxtwbuckets = 6000timewait的数量,默认是180000。

.ipv4.iplocalportrange = 1024 65000允许系统翻开的端口范围。

.ipv4.tcptwrecycle = 1启用timewait快速回收。

.ipv4.tcptwreuse = 1开启重用。

允许将TIME-WAIT sockets重新用于新的TCP连接。

.ipv4.tcpsyncookies = 1开启SYN Cookies,当出现SYN等待队列溢出时,启用cookies来处理。

.core.somaxconn = 262144web应用中listen函数的backlog默认会给我们内核参数的.core.somaxconn限制到128,而Nginx内核参数定义的NGXLISTENBACKLOG默认为511,所以有必要调整这个值。

.core.devmaxbacklog = 262144每个网络接口接收数据包的速率比内核处理这些包的速率快时,允许送到队列的数据包的最大数目。

.ipv4.tcpmaxorphans = 262144系统中最多有多少个TCP套接字不被关联到任何一个用户文件句柄上,.ipv4.tcpmaxsynbacklog = 262144记录的那些尚未收到客户端确认信息的连接请求的最大值。

对于有128M内存的系统而言,缺省值是1024,小内存的系统那么是128。

.ipv4.tcptimestamps = 0时间戳可以防止序列号的卷绕。

一个1Gbps的链路肯定会遇到以前用过的序列号。

时间戳能够让内核承受这种“异常”的数据包。

这里需要将其关掉。

LINUX性能调优方法总结

LINUX性能调优方法总结

LINUX性能调优方法总结大多数 Linux 发布版都定义了适当的缓冲区和其他 Transmission Control Protocol(TCP)参数。

可以修改这些参数来分配更多的内存,从而改进网络性能。

设置内核参数的方法是通过 proc 接口,也就是通过读写 /proc 中的值。

幸运的是,sysctl 可以读取 /etc/sysctl.conf 中的值并根据需要填充/proc,这样就能够更轻松地管理这些参数。

清单 2 展示在互联网服务器上应用于 Internet 服务器的一些比较激进的网络设置。

# Use TCP syncookies when needednet.ipv4.tcp_syncookies = 1# Enable TCP window scalingnet.ipv4.tcp_window_scaling: = 1# Increase TCP max buffer sizenet.core.rmem_max = 16777216net.core.wmem_max = 16777216# Increase Linux autotuning TCP buffer limitsnet.ipv4.tcp_rmem = 4096 87380 16777216net.ipv4.tcp_wmem = 4096 65536 16777216# Increase number of ports availablenet.ipv4.ip_local_port_range = 1024 65000将这些设置添加到 /etc/sysctl.conf 的现有内容中。

第一个设置启用TCP SYN cookie。

当从客户机发来新的 TCP 连接时,数据包设置了 SYN 位,服务器就为这个半开的连接创建一个条目,并用一个 SYN-ACK 数据包进行响应。

在正常操作中,远程客户机用一个 ACK 数据包进行响应,这会使半开的连接转换为全开的。

内核tcp参数

内核tcp参数

TCP参数是用来配置和调整TCP协议栈的内核参数,以优化网络性能和吞吐量。

下面是一些常见的内核TCP参数:
1. tcp_syncookies:启用SYN cookies防止SYN洪水攻击。

2. tcp_fin_timeout:设置TCP连接在关闭时等待FIN包的超时时间。

3. tcp_tw_reuse:允许复用TIME_W AIT状态的套接字。

4. tcp_tw_recycle:开启快速回收TIME_W AIT套接字的机制。

5. tcp_max_tw_buckets:限制TIME_W AIT套接字的最大数量。

6. tcp_keepalive_time:设置TCP连接的空闲时间,超过该时间将发送keepalive 探测包。

7. tcp_keepalive_probes:设置发送keepalive探测包的次数。

8. tcp_keepalive_intvl:设置两次发送keepalive探测包的间隔时间。

9. tcp_rmem:设置接收缓冲区大小。

10. tcp_wmem:设置发送缓冲区大小。

11. tcp_max_syn_backlog:设置SYN队列的最大长度,控制同时等待三次握手完成的连接数。

12. tcp_slow_start_after_idle:控制TCP长时间处于空闲状态后重新进入慢启动的阈值。

这只是一小部分常见的TCP参数,内核还有很多其他的TCP参数可以根据具体需求进行调整。

要注意,在修改这些参数之前,需要谨慎评估对系统性能和稳定性的影响,并确保了解每个参数的功能和作用。

1。

linux系统参数调优

linux系统参数调优

linux系统参数调优linux系统调优包括两个⽂件,⼀个是limits.conf⽂件,⼀个是sysctl.conf⽂件,这两个⽂件分别在/etc/secriuty/limits.conf和/etc/sysctl.conf 下,具体修改内容如下:vi /etc/security/limits.conf* soft nproc 11000 #限制最多打开的软件数* hard nproc 11000 #限制打开软件的最多进程数* soft nofile 655350#限制最多打开的⽂件数* hard nofile 655350#限制最多运⾏的进程数,⼀般设置为65535#优化TCPvi /etc/sysctl.conf#禁⽤包过滤功能net.ipv4.ip_forward = 0#启⽤源路由核查功能net.ipv4.conf.default.rp_filter = 1#禁⽤所有IP源路由net.ipv4.conf.default.accept_source_route = 0#使⽤sysrq组合键是了解系统⽬前运⾏情况,为安全起见设为0关闭kernel.sysrq = 0#控制core⽂件的⽂件名是否添加pid作为扩展kernel.core_uses_pid = 1#开启SYN Cookies,当出现SYN等待队列溢出时,启⽤cookies来处理net.ipv4.tcp_syncookies = 1#每个消息队列的⼤⼩(单位:字节)限制重要kernel.msgmnb = 65536#整个系统最⼤消息队列数量限制重要kernel.msgmax = 65536#单个共享内存段的⼤⼩(单位:字节)限制,计算公式64G*1024*1024*1024(字节)kernel.shmmax = 68719476736#所有内存⼤⼩(单位:页,1页 = 4Kb),计算公式16G*1024*1024*1024/4KB(页)kernel.shmall = 4294967296#timewait的数量,默认是180000net.ipv4.tcp_max_tw_buckets = 6000#开启有选择的应答net.ipv4.tcp_sack = 1#⽀持更⼤的TCP窗⼝. 如果TCP窗⼝最⼤超过65535(64K), 必须设置该数值为1net.ipv4.tcp_window_scaling = 1#TCP读buffernet.ipv4.tcp_rmem = 4096 131072 1048576#TCP写buffernet.ipv4.tcp_wmem = 4096 131072 1048576#为TCP socket预留⽤于发送缓冲的内存默认值(单位:字节)net.core.wmem_default = 8388608#为TCP socket预留⽤于发送缓冲的内存最⼤值(单位:字节)net.core.wmem_max = 16777216#为TCP socket预留⽤于接收缓冲的内存默认值(单位:字节)net.core.rmem_default = 8388608#为TCP socket预留⽤于接收缓冲的内存最⼤值(单位:字节)net.core.rmem_max = 16777216#每个⽹络接⼝接收数据包的速率⽐内核处理这些包的速率快时,允许送到队列的数据包的最⼤数⽬重要dev_max_backlog = 262144#web应⽤中listen函数的backlog默认会给我们内核参数的net.core.somaxconn限制到128,⽽nginx定义的NGX_LISTEN_BACKLOG默认为511,所以有必要调整这个值net.core.somaxconn = 262144#系统中最多有多少个TCP套接字不被关联到任何⼀个⽤户⽂件句柄上。

TCP协议的性能优化与调优方法总结(二)

TCP协议的性能优化与调优方法总结(二)

TCP协议的性能优化与调优方法总结在互联网时代,TCP协议作为互联网的核心协议之一,承担着可靠传输的重要任务。

然而,随着网络规模的不断扩大和应用需求的不断增加,TCP协议的性能成为了一个亟待解决的问题。

本文将从四个方面总结TCP协议的性能优化与调优方法,分别是拥塞控制算法、窗口调节、拥塞避免和数据包的丢失与重传。

一、拥塞控制算法拥塞控制算法是TCP协议保证网络拥塞情况下性能稳定的重要手段。

TCP拥塞控制算法可以分为慢启动、拥塞避免和快速恢复三个阶段。

在慢启动阶段,TCP协议初始化发送窗口大小,通过指数增加的方式逐渐增大发送窗口,以便向网络注入更多的数据包。

在拥塞避免阶段,TCP协议采用加法增加的方式逐渐增大发送窗口,但是速率比慢启动阶段慢一些,以避免网络拥塞。

在快速恢复阶段,当发生数据包的丢失时,TCP协议将发送窗口缩小一半,并进行重传,以便恢复丢失的数据包,同时逐渐增加发送窗口,以便重新注入数据包到网络。

二、窗口调节窗口调节是TCP协议提高网络吞吐量和响应速度的重要手段。

TCP 协议的窗口调节机制可以通过改变发送窗口的大小来实现。

发送窗口大小的适当调节可以使得网络中的数据流动更加顺畅,减少数据的丢失和重传,从而提高网络的性能。

窗口调节可以根据网络的状况动态调整发送窗口的大小,以便适应不同的网络情况,并且可以避免网络拥塞。

三、拥塞避免拥塞避免是TCP协议保证网络性能稳定的重要手段。

TCP协议的拥塞避免机制可以根据网络的负载情况来调整数据包的发送速率,以避免网络拥塞。

拥塞避免算法可以根据数据包的丢失情况和延迟情况来判断网络的拥塞情况,并根据拥塞窗口的大小来调整数据包的发送速率。

通过拥塞避免算法可以使得网络的负载均衡,并且可以避免网络拥塞的发生,提高网络的性能。

四、数据包的丢失与重传数据包的丢失与重传是TCP协议解决网络拥塞的重要手段。

TCP协议通过数据包的丢失与重传来保证网络拥塞下的可靠传输。

当发生数据包的丢失时,TCP协议将发送窗口缩小一半,并进行数据包的重传,以保证数据的可靠传输。

linux调优参数

linux调优参数

在Linux系统上,可以通过调整参数来优化系统的性能和功能。

以下是一些常见的Linux调优参数:内存管理:vm.swappiness:调整交换分区的使用频率,默认值为60,建议将其设置为10或更低的值,以减少交换分区的使用。

vm.min_free_kbytes:设置系统保留的空闲内存量,默认值为64,建议根据实际情况调整。

vm.max_map_count:设置进程可以拥有的最大内存映射数量,默认值为65536,如果需要运行大量进程或使用大量内存映射,可以适当增加该值。

网络性能:net.ipv4.tcp_tw_reuse:允许重用TIME_WAIT套接字,默认值为0,建议将其设置为1以减少TIME_WAIT套接字数量。

net.ipv4.tcp_fin_timeout:设置TIME_WAIT套接字的超时时间,默认值为60秒,可以适当增加该值以减少TIME_WAIT套接字数量。

net.ipv4.tcp_keepalive_time:设置TCP keepalive探测的间隔时间,默认值为75秒,可以适当增加该值以避免因长时间不活动而断开连接。

文件系统:fs.file-max:设置系统可以同时打开的最大文件数量,默认值为1024,可以根据实际情况调整。

fs.nr_open:设置系统进程可以同时打开的文件数量上限,默认值为8192,可以根据实际情况调整。

CPU 调度:kernel.sched_min_granularity_ns:设置最小调度时间粒度,默认值为1000000纳秒(1毫秒),可以根据实际情况调整。

kernel.sched_migration_cost_ns:设置CPU调度迁移的开销时间,默认值为500000纳秒(半毫秒),可以适当增加该值以提高系统在多核处理器上的性能。

系统进程:kernel.panic:设置系统崩溃时的重启次数,默认值为1,建议将其设置为0以避免系统无限重启。

fs.inotify.max_user_instances:设置系统可以监视的文件系统实例数量上限,默认值为8192,可以根据实际情况调整。

Linux服务器性能优化技巧有哪些

Linux服务器性能优化技巧有哪些Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。

对于Linux服务器我们有什么技巧可以优化性能呢?这篇文章主要为大家详细介绍了Linux服务器性能优化小技巧,具有一定的参考价值,感兴趣的小伙伴们可以参考一下具体技巧1、为磁盘I/O调整Linux内核电梯算法在选择文件系统后,有一些内核和挂载选项可能会影响到它的性能表现,其中一个内核设置是电梯算法,通过调整电梯算法,系统可以平衡低延迟需求,收集足够的数据,以有效地组织对磁盘的读和写请求。

2、禁用不必要的守护进程,节省内存和CPU资源每台服务器上都运行着许多守护进程或服务,而具有讽刺意味的是,有很多通常不是必需的,这些服务没有发挥作用,但却消耗了宝贵的内存和CPU时间。

此外,它们可能将服务器置于危险境地,多运行一个服务就等于多向黑客打开一扇长驱直入的门,因此,你应该将它们从服务器移除,禁用它们最大的好处是可以加快启动时间,释放内存。

另外,你可以减少CPU需要处理的进程数,禁用它们的另一个好处是增强服务器的安全性,因为越少的守护进程意味着可被攻击和利用的漏洞越少。

下面是一些应该被禁用的Linux守护进程,默认情况下,它们都是自动运行的:3、关掉GUI一般说来,Linux服务器是不需要GUI的,所有管理任务都可以在命令行下完成,因此最好关掉GUI,重定向X显示或通过一个Web 浏览器界面显示。

为了禁用GUI,“init level(启动级别)”应该被设置为3(命令行登录),而不是5(图形登录),如果需要GUI,可以随时运行startx的进入图形用户界面。

4、清理不需要的模块或功能在服务器软件包中有太多被启动的功能或模块实际上是不需要的(如Apache中的许多功能模块),仔细查看Apache配置文件,确定FrontPage支持或其它额外的模块是否真的要用到,如果不需要,应该毫不犹豫地从服务器禁用掉,这样有助于提高系统内存可用量,腾出更多资源给那些真正需要的软件,让它们运行得更快。

Linux系统资源优化与性能调整

Linux系统资源优化与性能调整在当今信息技术高速发展的时代,Linux操作系统作为一种稳定、高效的开源操作系统,越来越受到广大开发者和企业的青睐。

然而,随着系统的使用时间增长,系统资源可能会出现不合理利用、性能下降等问题。

本文将探讨Linux系统资源优化与性能调整的方法,旨在提高系统的稳定性和性能。

一、内存管理内存管理是Linux系统优化的关键因素之一。

在Linux系统中,内核通过虚拟内存管理机制来管理物理内存。

合理利用内存资源可以提高系统的运行效率。

以下是一些内存管理的优化建议:1. 设置合理的交换空间大小:交换空间(Swap)是物理内存的一种扩展,当物理内存不足时,系统可以将不常用的数据交换到交换空间中。

合理设置交换空间大小可以避免内存过度使用或浪费。

2. 使用适当的内存分区:将物理内存分为不同的区域,可以优化内存的访问速度。

例如,将经常访问的数据放在高速缓存中,将不常用的数据放在较慢的存储器中。

3. 调整页面大小:页面大小是虚拟内存的基本单位,合理调整页面大小可以减少内存碎片,提高内存的利用率。

二、 CPU调度优化CPU调度是Linux系统性能调优的重要方面。

合理的CPU调度策略可以提高系统对任务的响应速度,保证系统的稳定性。

以下是一些建议:1. 调整进程优先级:Linux系统中,每个进程都有一个优先级,较高优先级的进程会获得更多的CPU时间。

根据不同的应用场景,适当调整进程的优先级,可以提高关键任务的响应速度。

2. 使用CPU亲和力:通过将特定的进程和特定的CPU核心绑定在一起,可以减少CPU切换带来的开销,提高系统的性能。

3. 避免CPU过载:监控系统的CPU使用率,当CPU负载过高时,及时采取措施,如增加CPU核心数量、优化代码等,以避免系统性能下降。

三、磁盘IO优化磁盘IO是系统性能的瓶颈之一。

通过优化磁盘IO的读写速度,可以提高系统的响应速度。

以下是一些建议:1. 文件系统优化:使用合适的文件系统可以提高磁盘IO性能。

linux tcp参数

linux tcp参数Linux是一种开源的操作系统,它具有灵活的定制性和高度的可配置性,包括TCP参数。

TCP(传输控制协议)是Internet协议套件的一部分,它提供可靠的、面向连接的数据传输服务。

TCP参数可以帮助调整系统的网络性能,以适应不同的网络环境和应用场景。

创建TCP连接时涉及以下参数:1. TCP SYN重试次数SYN是TCP连接建立的第一个消息,如果没有得到回应,则需要进行重试。

在Linux中,可以通过tcp_syn_retries参数来设置SYN 重试次数,默认值为6次。

如果需要更快的连接建立速度,可以将该值降低,但是可能会增加连接失败的风险。

2. TCP SYNACK重试次数SYNACK是对SYN的回应,在Linux中,可以通过tcp_synack_retries参数来设置SYNACK重试次数,默认值为5次。

如果网络环境较差,可以适当增加该值,以提高连接建立的成功率。

3. TCP连接超时时间如果连接建立过程中超过了设置的超时时间,连接将被认为是失败的。

在Linux中,可以通过tcp_synack_retries参数来设置连接超时时间,默认值为30秒。

如果网络环境不稳定,可以适当增加该值,以减少连接超时的情况。

TCP数据传输时涉及以下参数:1. TCP窗口大小TCP窗口大小指发送方在等待接收方确认之前可以发送的数据量。

在Linux中,可以通过tcp_window_scaling参数来设置TCP窗口大小,默认值为开启窗口大小自适应。

适当增加窗口大小可以提高数据传输的效率,但是也可能会增加网络拥塞的风险。

2. TCP拥塞控制算法TCP拥塞控制算法用于防止网络拥塞。

在Linux中,可以通过tcp_congestion_control参数来设置拥塞控制算法,默认值为cubic。

如果网络环境较差,可以选择更加严格的拥塞控制算法,以避免网络拥塞。

3. TCP延迟确认TCP延迟确认指接收方在接收到数据后不会立即发送确认消息,而是等待一段时间后再发送。

linux系统优化的方法

linux系统优化的方法
1.减少启动服务:通过启动项和初始化项,关闭一些不必要的服
务和软件,以实现启动更快,占用资源更少的目的。

2.修改内核参数:根据服务器的硬件情况,调整一些内核参数,
以达到更好的性能和资源管理。

3.安装监控工具:通过安装监控工具(如top、iostat、vmstat)分析服务器的负载情况,如CPU、内存、磁盘、网络等方面的使用情况,排除负载过高的问题。

4.调整文件系统:可以采用ext4文件系统代替ext3文件系统,
以提高磁盘读写速度。

5.优化磁盘读写:可以通过调整系统缓存、调整磁盘调度算法、
替换硬盘为SSD等方式提高磁盘读写速度,减少IO等待时间。

6.优化网络连接:通过优化网络带宽、调整TCP/IP参数、升级
驱动程序等方式提高网络连接,对于负载高的站点特别有效。

7.更新软件和补丁:定期更新系统和软件补丁,以修复漏洞,提
高系统的安全性和稳定性。

8.安全加固:通过关闭不必要的服务和端口,设置安全策略、使
用防火墙等手段加强系统的安全性。

9.资源分配策略:根据系统的使用情况,采用适当的资源分配策
略(如动态分配)提高系统的性能和使用效率。

10.使用高效的编译器:使用最新版本的编译器,对代码进行优化,减少程序的运行时间和占用资源。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

文档名称 文档密级 2019-3-27 华为保密信息,未经授权禁止扩散 第1页, 共10页

Linux之TCPIP内核参数优化 /proc/sys/net目录 所有的TCP/IP参数都位于/proc/sys/net目录下(请注意,对/proc/sys/net目录下内容的修改都是临时的,任何修改在系统重启后都会丢失),例如下面这些重要的参数:

参数(路径+文件) 描述 默认值 优化值 /proc/sys/net/core/rmem_default 默认的TCP数据接收窗口大小(字节)。 229376 256960 /proc/sys/net/core/rmem_max 最大的TCP数据接收窗口(字节)。 131071 513920 /proc/sys/net/core/wmem_default 文档名称 文档密级 2019-3-27 华为保密信息,未经授权禁止扩散 第2页, 共10页

默认的TCP数据发送窗口大小(字节)。 229376 256960 /proc/sys/net/core/wmem_max 最大的TCP数据发送窗口(字节)。 131071 513920 /proc/sys/net/core/netdev_max_backlog 在每个网络接口接收数据包的速率比内核处理这些包的速率快时,允许送到队列的数据包的最大数目。

1000 2000 /proc/sys/net/core/somaxconn 定义了系统中每一个端口最大的监听队列的长度,这是个全局的参数。 128 2048 文档名称 文档密级 2019-3-27 华为保密信息,未经授权禁止扩散 第3页, 共10页

/proc/sys/net/core/optmem_max 表示每个套接字所允许的最大缓冲区的大小。 20480 81920 /proc/sys/net/ipv4/tcp_mem 确定TCP栈应该如何反映内存使用,每个值的单位都是内存页(通常是4KB)。第一个值是内存使用的下限;第二个值是内存压力模式开始对缓冲区使用应用压力的上限;第三个值是内存使用的上限。在这个层次上可以将报文丢弃,从而减少对内存的使用。对于较大的BDP可以增大这些值(注意,其单位是内存页而不是字节)。

94011 125351 188022 131072 262144 524288 /proc/sys/net/ipv4/tcp_rmem 为自动调优定义socket使用的内存。第一个值是为socket接收缓冲区分配的最少字节数;第二个值是默认值(该值会被rmem_default覆盖),缓冲区在系统负载不重的情况下可以增长到这个值;第三个值是接收缓冲区空间的最大字节数(该值会被rmem_max覆盖)。

4096 87380 4011232 8760 256960 4088000 /proc/sys/net/ipv4/tcp_wmem 文档名称 文档密级 2019-3-27 华为保密信息,未经授权禁止扩散 第4页, 共10页

为自动调优定义socket使用的内存。第一个值是为socket发送缓冲区分配的最少字节数;第二个值是默认值(该值会被wmem_default覆盖),缓冲区在系统负载不重的情况下可以增长到这个值;第三个值是发送缓冲区空间的最大字节数(该值会被wmem_max覆盖)。

4096 16384 4011232 8760 256960 4088000 /proc/sys/net/ipv4/tcp_keepalive_time TCP发送keepalive探测消息的间隔时间(秒),用于确认TCP连接是否有效。 7200 1800 /proc/sys/net/ipv4/tcp_keepalive_intvl 探测消息未获得响应时,重发该消息的间隔时间(秒)。 75 30 /proc/sys/net/ipv4/tcp_keepalive_probes 在认定TCP连接失效之前,最多发送多少个keepalive探测消息。 9 3 文档名称 文档密级 2019-3-27 华为保密信息,未经授权禁止扩散 第5页, 共10页

/proc/sys/net/ipv4/tcp_sack 启用有选择的应答(1表示启用),通过有选择地应答乱序接收到的报文来提高性能,让发送者只发送丢失的报文段,(对于广域网通信来说)这个选项应该启用,但是会增加对CPU的占用。

1 1 /proc/sys/net/ipv4/tcp_fack 启用转发应答,可以进行有选择应答(SACK)从而减少拥塞情况的发生,这个选项也应该启用。

1 1 /proc/sys/net/ipv4/tcp_timestamps TCP时间戳(会在TCP包头增加12个字节),以一种比重发超时更精确的方法(参考RFC 1323)来启用对RTT 的计算,为实现更好的性能应该启用这个选项。

1 1 /proc/sys/net/ipv4/tcp_window_scaling 启用RFC 1323定义的window scaling,要支持超过64KB的TCP窗口,必须启用该值(1表示启用),TCP窗口最大至1GB,TCP连接双方都启用时才生效。 文档名称 文档密级 2019-3-27 华为保密信息,未经授权禁止扩散 第6页, 共10页

1 1 /proc/sys/net/ipv4/tcp_syncookies 表示是否打开TCP同步标签(syncookie),内核必须打开了CONFIG_SYN_COOKIES项进行编译,同步标签可以防止一个套接字在有过多试图连接到达时引起过载。

1 1 /proc/sys/net/ipv4/tcp_tw_reuse 表示是否允许将处于TIME-WAIT状态的socket(TIME-WAIT的端口)用于新的TCP连接 。 0 1 /proc/sys/net/ipv4/tcp_tw_recycle 能够更快地回收TIME-WAIT套接字。 0 1 /proc/sys/net/ipv4/tcp_fin_timeout 文档名称 文档密级 2019-3-27 华为保密信息,未经授权禁止扩散 第7页, 共10页

对于本端断开的socket连接,TCP保持在FIN-WAIT-2状态的时间(秒)。对方可能会断开连接或一直不结束连接或不可预料的进程死亡。

60 30 /proc/sys/net/ipv4/ip_local_port_range 表示TCP/UDP协议允许使用的本地端口号 32768 61000 1024 65000 /proc/sys/net/ipv4/tcp_max_syn_backlog 对于还未获得对方确认的连接请求,可保存在队列中的最大数目。如果服务器经常出现过载,可以尝试增加这个数字。

2048 2048 /proc/sys/net/ipv4/tcp_low_latency 允许TCP/IP栈适应在高吞吐量情况下低延时的情况,这个选项应该禁用。 0 文档名称 文档密级

2019-3-27 华为保密信息,未经授权禁止扩散 第8页, 共10页

/proc/sys/net/ipv4/tcp_westwood 启用发送者端的拥塞控制算法,它可以维护对吞吐量的评估,并试图对带宽的整体利用情况进行优化,对于WAN 通信来说应该启用这个选项。

0

/proc/sys/net/ipv4/tcp_bic 为快速长距离网络启用Binary Increase Congestion,这样可以更好地利用以GB速度进行操作的链接,对于WAN通信应该启用这个选项。

1

/etc/sysctl.conf文件 /etc/sysctl.conf是一个允许你改变正在运行中的Linux系统的接口。它包含一些TCP/IP堆栈和虚拟内存系统的高级选项,可用来控制Linux网络配置,由于/proc/sys/net目录内容的临时性,建议把TCPIP参数的修改添加到/etc/sysctl.conf文件, 然后保存文件,使用命令“/sbin/sysctl –p”使之立即生效。具体修改方案参照上文:

net.core.rmem_default = 256960 net.core.rmem_max = 513920 net.core.wmem_default = 256960 文档名称 文档密级 2019-3-27 华为保密信息,未经授权禁止扩散 第9页, 共10页

net.core.wmem_max = 513920 net.core.netdev_max_backlog = 2000 net.core.somaxconn = 2048 net.core.optmem_max = 81920 net.ipv4.tcp_mem = 131072 262144 524288 net.ipv4.tcp_rmem = 8760 256960 4088000 net.ipv4.tcp_wmem = 8760 256960 4088000 net.ipv4.tcp_keepalive_time = 1800 net.ipv4.tcp_keepalive_intvl = 30 net.ipv4.tcp_keepalive_probes = 3 net.ipv4.tcp_sack = 1 net.ipv4.tcp_fack = 1 net.ipv4.tcp_timestamps = 1 net.ipv4.tcp_window_scaling = 1 net.ipv4.tcp_syncookies = 1 net.ipv4.tcp_tw_reuse = 1

相关文档
最新文档