zoukankan      html  css  js  c++  java
  • tcp优化

    修改/etc/sysctl.conf 文件
    1. net.ipv4.ip_local_port_range = 1024 65535

    -->可以用于对外连接的端口,这里1024-65535都可以用于外部的连接;但3306是mysql的端口,如果被占用,将导致无法启动mysql,所以还需要设置;

    2. net.ipv4.ip_local_reserved_ports = 3306,6000-6100

    -->3306和6000-6100的端口被预留下来,不用做对外连接;

    3. net.ipv4.tcp_max_syn_backlog = 4096

    -->Tcp syn队列的最大长度,在进行系统调用connect时会发生Tcp的三次握手,server内核会为Tcp维护两个队列,Syn队列和Accept队列,Syn队列是指存放完成第一次握手的连接,Accept队列是存放完成整个Tcp三次握手的连接,修改net.ipv4.tcp_max_syn_backlog使之增大可以接受更多的网络连接;

    4. net.core.somaxconn = 2048

    -->指服务端所能accept即处理数据的最大客户端数量,即完成连接上限;

    -->net.core.somaxconn 与net.ipv4.tcp_max_syn_backlog的关系:用以下形象的比喻

    某某发布公告要邀请四海之内若干客人到场参加酒席。客人参加酒席分为两个步骤:
    1、到大厅;
    2、找到座位(吃东西,比如糖果、饭菜、酒等)。
    tcp_max_syn_backlog用于指定酒席现场面积允许容纳多少人进来;
    somaxconn用于指定有多少个座位。
    显然tcp_max_syn_backlog>=somaxconn。
    如果要前来的客人数量超过tcp_max_syn_backlog,那么多出来的人虽然会跟主任见面握手,但是要在门外等候;
    如果到大厅的客人数量大于somaxconn,那么多出来的客人就会没有位置坐(必须坐下才能吃东西),只能等待有人吃完有空位了才能吃东西。

    4. net.ipv4.tcp_fin_timeout = 30

    -->修改time_wait状的存在时间

  • 相关阅读:
    连续两天写论文
    既然杂事比较多,索性统统处理一下
    Power symbol
    不要被一些无谓的事情烦扰
    今天提前回去吧,整理一下,为下周做好准备。
    天气暖和了,我却感冒了
    每天回想一下,今天到底完成了什么
    opensue12.1硬盘升级安装12.2问题解决
    IPmsg(飞鸽传书)协议翻译
    关于交叉验证和过拟合
  • 原文地址:https://www.cnblogs.com/alpha1981/p/9056362.html
Copyright © 2011-2022 走看看