SS:服务端(加速)

来自Wikioe
跳到导航 跳到搜索


关于

安装锐速需要降级系统内核,而安装 Google BBR 则需要升级系统内核,故两者不能同时安装。

锐速

BBR、BBR PLUS、魔改BBR、锐速的脚本安装要求:
   1、适用架构:KVM / Xen,不支持OpenVZ(OVZ)。
   2、适用系统:CentOS 7、Debian 8、Debian 9、Ubuntu 16.04、Ubuntu 18.04。

锐速安装一键包

安装:(现在不知道哪一个可以用)

# 使用一键安装脚本
wget -N --no-check-certificate https://raw.githubusercontent.com/91yun/serverspeeder/master/serverspeeder-all.sh && bash serverspeeder-all.sh

# 或:
wget -N --no-check-certificate https://github.com/91yun/serverspeeder/raw/master/serverspeeder.sh && bash serverspeeder.sh
  • 不需要任何配置。“vi /serverspeeder/etc/config”

卸载:

chattr -i /serverspeeder/etc/apx* && /serverspeeder/bin/serverSpeeder.sh uninstall -f

操作:

service serverSpeeder start|stop|restart|status

# 或

/serverspeeder/bin/serverSpeeder.sh start|stop|restart|status

BBR

TCP BBR 是一种 TCP 拥塞控制算法,可以大大提高连接速度。

Google 开源了其 TCP BBR 拥塞控制算法,并提交到了 Linux 内核,从 4.9 开始,Linux 内核已经用上了该算法。根据以往的传统,Google 总是先在自家的生产环境上线运用后,才会将代码开源,此次也不例外。

安装/开启:【两种情况】

  1. (如果 Linux 内核在 4.9 以下)需要安装并开启 BBR:(可使用一键安装脚本)
    # 安装并开启 BBR(同样是使用脚本)
    wget --no-check-certificate https://github.com/teddysun/across/raw/master/bbr.sh && chmod +x bbr.sh && ./bbr.sh
    
  2. (如果 Linux 内核在 4.9 及以上)只需开启 BBR 即可:
    1. 修改配置文件:
      vim /etc/sysctl.conf
      
      # 添加如下内容
      net.core.default_qdisc = fq
      net.ipv4.tcp_congestion_control = bbr
      
    2. 加载系统参数:
      sysctl -p
      

验证 BBR 是否已经开启:

  1. # 检查使用中的拥塞控制算法
    sysctl net.ipv4.tcp_available_congestion_control
    
    若返回如下信息则说明已开启:
    net.ipv4.tcp_available_congestion_control = bbr
    
  2. lsmod | grep bbr
    
    若返回如下信息则说明已开启:
    tcp_bbr                16384  1
    tcp_bbr                20480  0
    

TFO

您可以通过启用 TCP 快速打开(fast_open)来加快 Shadowsocks 的速度。 TCP 是面向连接的协议,这意味着只能在建立连接后才能交换数据,这是通过三向握手完成的。换句话说,传统上,数据只能在三向握手完成后才能交换。

TCP 快速打开(TFO)是一种机制,它允许在三向握手完成之前交换数据,最多可节省 1 个往返时间(RTT)。

从 3.7 版开始,TCP 快速打开支持已合并到 Linux 内核,从 3.13 版开始默认启用。

检查服务器的 TFO 配置:(从 3.13 版内核开始默认启用)

cat /proc/sys/net/ipv4/tcp_fastopen
  • 0:表示禁用。
  • 1:表示已启用传出连接(作为客户端)。
  • 2:表示已启用传入连接(作为服务器)。
  • 3:表示已启用传出和传入连接。


启用 TCP 的“fast_open”:

  1. 修改配置文件:
    sudo vi /etc/sysctl.conf
    
    net.ipv4.tcp_fastopen=3     # 插入内容
    
  2. 重新加载 sysctl 设置以使更改生效:
    sudo sysctl -p
    
  3. 在 Shadowsocks 服务器配置文件中启用 TFO:
    vi /etc/shadowsocks-libev/config.json
    
    "fast_open": true     # 插入内容