Linux常用内核参数

TCP状态描述

CLOSED:无连接是活动的或正在进行的

LISTEN:服务器在等待进入呼叫

SYN-RECV:一个连接请求已经到达,等待确认

SYN-SENT:应用已经开始,打开一个连接

ESTABLISHED:已经建立的连接

FIN-WAIT1:主动断开一方,第一次发送完FIN

FIN-WAIT2:主动断开一方,收到对端确认的ACK

TIME-WAIT:主动断开一方,收到FIN-ACK

CLOSE-WAIT:被动断开一方,收到对方FIN且发送完ACK后

LAST-ACK:被动断开了方,发送完FIN后

net.ipv4.ip_forward = 1

开启ip转发功能

net.core.netdev_max_backlog = 400000

该参数决定了网络设备接收数据包的速率比内核处理这些包的速率快时,允许送到队列的数据包的最大数目

net.core.optmeme_max = 10000000

该参数指定了每个套接字所允许的最大缓冲区的大小

net.core.rmem_default = 1000000

指定了接收套按字缓冲区大小的缺少值

net.core.rmem_max = 10000000

指定了接收套按字缓冲区大小的最大值

net.core.somaxconn = 1000000

指定socket监听的backlog(监听队列)上限

net.core.wmem_default = 11059200

定义默认的发送窗口大小

net.ipv4.tcp_windows_scaling = 0

关闭tcp_windows_scaling

net.ipv4.tcp_ecn = 0

把TCP的显式拥塞通告关闭

net.ipv4.tcp_max_tw_buckets = 10000

同时保持TEAM_WAIT套接字的最大数量

net.ipv4.tcp_max_syn_backlog = 1024

SYN队列长度,默认1024

net.ipv4.tcp_syncookies = 1

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

net.ipv4.tcp_tw_reuse = 1

开启重用,允许将TIME-WAIT sockets重新用于新的TCP连接,默认为0,表示关闭

net.ipv4.tcp_tw_recyle = 1

表示开启TCP连接中TIME-WAIT sockets的快速回收,默认为0,表示关闭

net.ipv4.tcp_fin_timeout = 10

表示如果套接字由本端要求关闭,这个参数决定了它保持在FIN-WAIT-2状态的时间

net.ipv4.tcp_keepalive_time = 1800

表示当keepalive开启的时候,TCP发送keepalive消息的频率。缺少是2小时。

net.ipv4.tcp_keepalive_probes = 3

如果对方不予应答,探测包的发送次数

net.ipv4.tcp_keepalive_intvl = 15

keepalive探测包发送间隔

net.ipv4.ip_local_port_range = 32768 65000

用于向外连接的端口范围

net.ipv4.tcp_slow_start_after_idle = 0

关闭tcp的连接传输的慢启动,即先休止一段时间,再初始化拥塞窗口

net.ipv4.route.gc_timeout = 100

路由缓存刷新频率,当一个路由失败后,多长时间跳到另一个路由,默认是300

net.ipv4.tcp_syn_retries = 1

在内核放弃建立连接之前发送SYN包的数量

修改完成后执行如下命令生效

$ sudo sysctl -p

使用while检测192.168.2.0/24网段存活的主机

#!/bin/bash
#使用while循环检测192.168.2.0/24网段内存活的主机
#对于ping测试成功的主机立即进行下一轮,对于ping
#测试不成功的主机连续进行三次测试,如果全部失败
#,则提示存机该IP不存在 TESTNET=192.168.2. ip_check() {
ping -c 1 -w 1 $1 &> /dev/null
}
i=1
while [ $i -le 255 ]
do
FAIL_NUM=0
ip_check $TESTNET$i
if [ $? -eq 0 ] ;then
echo -e "\033[32m$TESTNET$i is alive\033[0m"
else
ip_check $TESTNET$i || let FAIL_NUM++
ip_check $TESTNET$i || let FAIL_NUM++
ip_check $TESTNET$i || let FAIL_NUM++
[ $FAIL_NUM -eq 3 ] && echo -e "\033[31m$TESTNET$i is down\033[0m"
fi
let i++
done

使用for循环检测192.168.2.0/24网段存活的主机

#!/bin/bash
#使用for循环检测192.168.2.0/24网段内的主机
#如果成功直接输出,如果失败,连续检测三次 TESTNET=192.168.2. ip_check() {
ping -c 1 -w 1 $1 &> /dev/null
} for i in {1..5};do
FAIL_NUM=0
ip_check $TESTNET$i
if [ $? -eq 0 ];then
echo -e "\033[32m$TESTNET$i is alive\033[0m"
else
ip_check $TESTNET$i && echo -e "\033[32m$TESTNET$i is alive\033[0m" || let FAIL_NUM++
ip_check $TESTNET$i && echo -e "\033[32m$TESTNET$i is alive\033[0m" || let FAIL_NUM++
ip_check $TESTNET$i && echo -e "\033[32m$TESTNET$i is alive\033[0m" || let FAIL_NUM++
[ $FAIL_NUM -eq 3 ] && echo -e "\033[31m$TESTNET$i is down \033[0m"
fi
done

initrd

Linux初始化RAM磁盘(initrd)是在系统引导过程中挂载的一个临时根文件系统,用来支持两阶段的引导过程。initrd文件中包含了各种可执行程序和驱动程序,它们可以用来挂载实际的根文件系统,然后再将这个initrd RAM磁盘卸载,并释放内存。

初始RAM磁盘(RAM)是在实际根文件系统可用之前挂载到系统中的一个初始根文件系统。initrd与内核绑定在一起,并作为内核引导过程的一部分进行加载。内核会将这个initrd文件作为其两阶段引导过程的一部分来加载模块,这样才能稍后使用真正的文件系统,并挂载实际的根文件系统。

initrd中包含了实现这个目标所需要的目录和可执行程序的最小集合,例如将内核模块加载到内核中所使用的insmod工具。

在桌面或服务器Linux系统中,initrd是一个临时文件系统。其生存周期很短,只会用作到真实文件系统的一个桥梁。在没有存储设备的嵌入式系统中,initrd是永久的根文件系统。

Linux常用内核参数的更多相关文章

  1. (转)linux IO 内核参数调优 之 参数调节和场景分析

    1. pdflush刷新脏数据条件 (linux IO 内核参数调优 之 原理和参数介绍)上一章节讲述了IO内核调优介个重要参数参数. 总结可知cached中的脏数据满足如下几个条件中一个或者多个的时 ...

  2. [记录]优化Linux 的内核参数来提高服务器并发处理能力

    优化Linux 的内核参数来提高服务器并发处理能力PS:在服务器硬件资源额定有限的情况下,最大的压榨服务器的性能,提高服务器的并发处理能力,是很多运维技术人员思考的问题.要提高Linux 系统下的负载 ...

  3. Nginx常用内核参数优化,安装,基本命令

    1.内核参数配置,默认的Linux内核参数考虑的是通用的场景,明显不符合用于支持高并发访问web服务的定义,所以需要修改Linux内核参数,使得Nginx可以拥有更高的性能.可以通过修改 /etc/s ...

  4. nginx的linux服务器内核参数调整【转】

    概述 由于默认的linux内核参数考虑的是最通用场景,这明显不符合用于支持高并发访问的Web服务器的定义,所以需要修改Linux内核参数,让Nginx可以拥有更高的性能: 在优化内核时,可以做的事情很 ...

  5. linux 修改内核参数 如何生效?

    Linux 操作系统修改内核参数有3种方式: 修改 /etc/sysctl.conf 文件,加入配置选项,格式为 key = value ,修改保存后调用 sysctl -p 加载新配置使用 sysc ...

  6. Linux 系统调整内核参数

    调整系统内核参数 内核优化:Linux系统(内核 + shell + 应用程序)       针对业务服务应用而进行的系统内核参数调整(主要是/etc/sysctl.conf文件) 1. vim /e ...

  7. linux常见内核参数

    参数 描述 net.ipv4.ip_forward 接口间转发报文net.ipv4.tcp_tw_reuse 表示是否允许将处于 TIME-WAIT 状态的 socket (TIME-WAIT 的端口 ...

  8. 优化Linux的内核参数来提高服务器并发处理能力

    提高Linux系统下的负载能力,可以使用nginx等原生并发处理能力就很强的web服务器 使用Apache的可以启用其Worker模式,来提高其并发处理能力 修改Linux的内核相关TCP参数,来最大 ...

  9. linux IO 内核参数调优 之 原理和参数介绍

    1.  page cache linux操作系统默认情况下写都是有写缓存的,可以使用direct IO方式绕过操作系统的写缓存.当你写一串数据时,系统会开辟一块内存区域缓存这些数据,这块区域就是我们常 ...

随机推荐

  1. 《linux就该这么学》第十节课:第8章iptables和firewalld

            网卡配置: 物理机:192.168.10.1/24 服务器:192.168.10.10/24 客户端:192.168.10.20/24         1.vim  /etc/sysc ...

  2. Session, Token and SSO 有什么区别

    Session, Token and SSO 有什么区别 Basic Compareation Session-based Authentication In Session-based Authen ...

  3. day11 python之函数装饰器

    一,什么是装饰器? 装饰器本质上就是一个python函数,他可以让其他函数在不需要做任何代码变动的前提下,增加额外的功能,装饰器的返回值也是一个函数对象. 装饰器的应用场景:比如插入日志,性能测试,事 ...

  4. jQuery图片无缝轮播

    <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content ...

  5. Servlet+纯java+MySQL实现课程信息的增删改查

    Dbutil: package com.zh.util; import java.sql.Connection; import java.sql.DriverManager; import java. ...

  6. Luogu P1892 P1525 团伙 关押罪犯

    (怎么都是抓罪犯 怪不得写法差不多) 团伙 关押罪犯 并查集.以"敌人的敌人是朋友"的思路来处理.所以增加一个e/E数组来存储敌人. 关押罪犯还用到了贪心的思路.将冲突值从大到小排 ...

  7. 手游折扣app排行榜前10名_2018哪个折扣app最低最好

    2018游戏圈白皮书发布,PC端游的份额继续下降,页游的比例也在下降,但手游的比例持续3年上升.以渠道为阵营,逐渐小的平台和公会被逐渐淘汰.流量集中在少数几个大的平台.但是这样带来的问题是,平台越来越 ...

  8. 面试神体验之:get和post的区别

    由于本文是用markdown在本地编辑的,粘贴到本地的时候出现了一些页面bug,所以只好贴进代码里面,一些链接失效,望见谅 Get和POST的区别 都9102年了,你们还在问get和post的区别?是 ...

  9. weblogic10补丁升级与卸载

    1.首先将补丁包解压放在weblogic的utils/bsu/cache_dir文件夹下,如果没有该文件夹,则手动创建. 2.回到bsu目录,执行安装命令 C:\Oracle\Middleware\u ...

  10. 对负载均衡的理解及nginx负载均衡的配置

    https://blog.csdn.net/qq_28602957/article/details/61615876