`
tcspecial
  • 浏览: 907885 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

Linux 网络调优

阅读更多

 

Linux 内核目录/proc/sys/net 提供了很多网络协议栈配置参数,可控制网络协议栈行为,优化系统性能。 

 

一. 基础命令

sysctl -a 显示内核参数

$ sysctl net.core.somaxconn;
$ sysctl -w net.core.somaxconn=32768
$ echo 32768 > /proc/sys/net/core/somaxconn
$
$ vi /etc/sysctl.conf  
$ sysctl -p    # 使参数生效

 

二. TCP/IP网络参数

连接参数

/proc/sys/netc/ipv4/tcp_max_syn_backlog syn队列(处于SYN_RCVD连接)大小,默认128,可调大

/proc/sys/net/core/somaxconn 端口最大监听队列(完成三次握手)长度,默认128;该参数过小会限制最大并发。应用层:listen(fd,  backlog);

 

TCP同步标签

/proc/sys/net/ipv4/tcp_syncookies 抵御同地址syn攻击,对于随机ip地址syn攻击无能为力。

 

选择性确认

/proc/sys/net/ipv4/tcp_sack 默认为1

Selective Acknowledgement, 只重传丢失的tcp片断,不用发送所有未被确认的tcp报文段。

注:tcp options 选项kind=4 报文。

 

窗口扩大因子

net.ipv4.tcp_window_scaling = 1 默认启用

提高TCP通信吞吐量,N*2^M = WinSize*64, 窗口因子默认为6. 

注:tcp options 选项kind=3 报文。

 

RTT

/proc/sys/net/ipv4/tcp_timestamps 启用或关闭时间戳选项,默认为1

注:tcp option选项kind=8报文,用于计算通信双方回路时间(Round Trip Time)。

 

超时重连

/proc/sys/net/ipv4/tcp_syn_retries 重连次数,默认为5。

 

超时重传

/proc/sys/net/ipv4/tcp_retries1 底层IP接管前TCP最少执行的重传次数,默认3

/proc/sys/net/ipv4/tcp_retries2 最多执行的重传次数,默认15

 

TIME_WAIT

a.用于可靠性终止TCP连接;

b.保证以来的TCP报文有足够时间被识别并丢弃。默认2MSL,默认2分钟。 

/proc/sys/net/ipv4/tcp_fin_timeout FIN_WAIT2到TIME_WAIT超时时间
/proc/sys/net/ipv4/tcp_tw_recycle 快速回收TIME_WAIT连接,默认为0,小心NAT
/proc/sys/net/ipv4/tcp_tw_reuse 重用TIME_WAIT端口,默认为0

 

可指定SO_REUSEADDR 强制进程使用处于TIME_WAIT状态的连接占用的端口。

 

TCP读写缓冲区

/proc/sys/net/ipv4/tcp_rmem 最小值 默认值 最大值

/proc/sys/net/ipv4/tcp_wmem

/proc/sys/net/ipv4/tcp_mem  压力下限值 压力模式初始值 压力模式上限值

 

拥塞控制

/proc/sys/net/ipv4/tcp_congestion_control   当前使用的拥塞算法,默认为cubic

具体有reno, vegas, cubic, bbr 算法等。

 

 

三. 基础概念

1. 交互数据

实时性较高场合,nagle算法攒够数据后发送,减少网络上微小tcp报文段数量。

2. 成块数据

ftp大文件下载场合,接收端一次性ACK多条报文。

3. 拥塞控制

慢启动 cwnd=(N, SMSS)

拥塞避免 cwnd=smss*smss/cwnd  避免cwnd线性增长

快速重传 cwnd=ssthresh+3*SMSS 收到3条重复ACK报文后,即认为有数据包丢失,则源端重传丢失的数据包,而不必等待

RTO超时。

快速恢复 cwnd=cwnd+smss 每次收到1重复ACK时,增大cwnd

 

 

参数资料:

Linux内核调优 

 

 

 

分享到:
评论

相关推荐

    Linux网络调优指导.pdf

    Linux网络调优是一门针对Linux操作系统下的网络性能进行优化的技术。本文档主要面向基于AMD EPYC系列处理器的服务器,提供了Linux网络性能调优的实用指南和命令示例。文档详细介绍了如何检查和调整网络接口的发送和...

    Linux简单调优与JVM参数.docx

    Linux 服务器调优与 JVM 参数调优 本文主要介绍了 Linux 服务器调优和 JVM 参数调优的相关知识点,以便提高服务器性能和 JVM 应用程序的运行效率。 Linux 服务器调优 Linux 服务器调优是指对 Linux 操作系统的...

    LINUX性能调优方法总结

    在Linux系统中,性能调优是一项关键任务,它涉及到系统的稳定性、效率以及资源利用的最大化。这份名为“LINUX性能调优方法总结”的文档,很可能包含了一系列关于如何优化Linux系统性能的技术和策略。以下是根据标题...

    Linux性能调优指南,IBM专家资深指导

    《Linux性能调优指南》是IBM专家团队倾力打造的一份深入浅出的教程,旨在帮助用户提升Linux服务器的运行效率和稳定性。这份高清PDF文档详细涵盖了Linux性能优化的各个方面,为管理员提供了一套全面而实用的方法论。...

    linux性能调优一些整合文档打包

    网络调优涉及TCP/IP栈参数调整,如TCP窗口大小、重传超时(RTO)和拥塞控制算法。还可以通过调整socket缓冲区大小,减少延迟并提高吞吐量。 6. **系统内核参数调优**: 内核参数直接影响系统行为。例如,调整中断...

    Linux性能调优工具

    本文将详细介绍Linux性能调优工具,包括内存管理、I/O性能、网络性能等方面的工具和技术。 #### 二、背景与挑战 - **大规模云环境**:如Netflix这样的大型服务提供商,拥有成千上万台Linux服务器实例,每天自动...

    No-Github#1earn#网络调优1

    网络调优压测工具网络测试调试常用调优配置Linux 网络调优:内核网络栈参数篇Linux性能调优之 网络。

    LINUX性能调优完全手册

    本文将详细介绍Linux性能调优的各种方法和技术,从系统文件到网络性能优化,涵盖了性能优化的多个方面。通过本文,读者可以了解到Linux性能优化的基本概念和方法,并掌握实用的优化技巧。 1. /etc/profile 文件配置...

    linux性能调优方法总结

    Linux系统性能调优是确保系统运行平稳、高效的关键环节,尤其是针对关键的网络服务和存储子系统。在Linux系统中,性能调优可以通过多种方法实现,这些方法包括但不限于网络参数调整、文件系统优化以及系统核心参数...

    linux 性能调优 linux performance truning

    【Linux性能调优 Linux Performance Tuning】是一本实用的手册,专注于解决Linux系统中的性能问题和日常调优工作。本书适合运维人员以及对Linux性能优化感兴趣的IT从业者使用。书中涵盖了一系列操作系统调优方法、...

    Linux性能调优命令精华

    对于系统管理员和开发者来说,了解并掌握Linux性能调优命令是至关重要的技能。"Linux性能调优命令精华"这个主题涵盖了在优化Linux系统性能时常用的命令,这些命令可以帮助我们监控系统状态、诊断问题,并进行必要的...

    Linux内核调优

    ### Linux内核调优:提高服务器整体性能及安全性 #### 一、引言 在Linux环境中,内核调优是一项重要的技术活动,旨在优化系统的性能和安全性。通过对内核参数的调整,可以显著提升服务器的运行效率,尤其是在面对高...

    Linux性能调优的几种方法

    本文将介绍Linux性能调优的几种方法,这些方法涉及内核、系统、网络等多个层面。 首先,Linux性能调优的第一种方法是Disabling daemons(关闭守护进程,简称daemons)。守护进程是Linux系统中运行在后台的一类进程...

    优化Linux性能调优

    最后,"Linux性能调优要考虑的因素"可能涵盖CPU利用率、内存使用率、磁盘I/O负载、网络带宽、系统响应时间等关键指标。监控这些指标,使用工具如top、vmstat、iostat、netstat等,可以帮助我们识别性能瓶颈,并进行...

    内核完全注释 linux系统管理员手册 linux性能调优 linux编程者手册

    这份压缩包包含四本关于Linux的重要参考资料,分别是《内核完全注释》、《Linux系统管理员手册》、《Linux性能调优》以及《Linux编程者手册》。这些书籍由专家撰写,旨在帮助读者深入理解Linux的运作机制,提升管理...

    linux性能调优实验环境.pdf

    在Linux环境下,性能调优可以从多个层面进行,包括但不限于系统内核参数调整、进程调度、文件系统优化、内存管理、I/O子系统配置以及网络参数设置等。本次文档提供的内容涉及了使用特定工具监控和分析系统性能,以...

    LINUX性能调优方法总结.docx

    总的来说,Linux性能调优是一个涉及多个层面的过程,包括网络、磁盘、内存和CPU等多个方面。理解这些核心组件的工作原理,并针对性地调整相关参数,是实现高效、稳定Linux系统的关键。在进行任何调整时,应确保备份...

    Linux 性能调优的几种方法

    Linux性能调优主要涉及到系统资源的优化,包括处理器、内存、文件系统以及网络等关键子系统。以下是对标题和描述中所述知识点的详细说明: 1. 关闭daemons:不必要的后台服务(daemons)会占用内存和CPU资源,降低...

Global site tag (gtag.js) - Google Analytics