使用kcptun对ss服务器进行优化加速
发布:海南企划行业交流平台 来源:谷粉学术 日期:2019年11月07日 阅读:0
KCP 是一个疾速靠得住和谈,能以比 TCP白费10%-20%的带宽的价格,换取均匀延迟落低 30%-40%,且最年夜延迟落低三倍的传输结果。纯算法实现,其实不 担任底层和谈(如UDP)的收发,需求利用者本身界说基层数据包的发送体例,以 callback的体例供给给 KCP。连时钟都需求外部传递出去,内乱部不会有任何一次系统挪用。
1. 先下载Kcptun
mkdir kcptun
cd kcptun
wget https://github.com/xtaci/kcptun/releases/download/v20160701/kcptun-linux-amd64-20160701.tar.gz
tar -zxf kcptun-linux-amd64-20160701.tar.gz
提示:wget时依据当地 系统下载。32位下载 kcptun-linux-386-*.tar.gz,64位下载 kcptun-linux-amd64-*.tar.gz
2.建立 start.sh
vi /root/kcptun/start.sh
写入以下内乱容:
./server_linux_amd64 -l :29900 -t 127.0.0.1:8388 -key test -mtu 1400 -sndwnd 2048 -rcvwnd 2048 -mode fast2 > kcptun.log 2>&1 &
server_linux_amd64 对应办事端文件名,请对应点窜。
-l 暗示 Kcptun 的办事端监听端口,用于领受外部恳求和发送数据,默许 29900; -t 暗示 要加快的地址,我这里设置的是我办事器的 Shadowsocks 端口;
-key 是 Kcptun 的验证密钥,办事端和当地 必需 分歧才干经由过程验证,请自行设置;
-mode 为加快形式,默许 fast,这里利用 fast2。
3.建立 stop.sh
vi /root/kcptun/stop.sh
写入以下内乱容:
#!/bin/sh
PID=`ps -ef | grep server_linux_amd64 | grep -v grep | awk '{print $2}'`
if [[ "" != "$PID" ]]; then
echo "killing $PID"
kill -9 $PID
fi
4.建立 restart.sh
#!/bin/sh
cd /root/kcptun/
echo "Stopping Kcptun..."
sh stop.sh
sh start.sh
echo "Kcptun started."
添加开机启动:
echo "sh /root/kcptun/start.sh" >> /etc/rc.d/rc.local
下面是办事器端设置装备摆设,上面设置装备摆设客户端
1. 先下载客户端文件,以windows为例
http://download.csdn.NET/detail/per_son/9583356 kcptun64位下载
http://download.csdn.Net/detail/per_son/9583352 kcptun32位下载
因为 Kcptun 是操纵台法式 ,所以我选择利用 vbs 足本,来到达后台运转的怒目 的:新建 run.vbs
Dim RunKcptun
Set fso = CreateObject("Scripting.FileSystemObject")
Set WshShell = WScript.CreateObject("WScript.Shell")
'猎取文件途径
currentPath = fso.GetFile(Wscript.ScriptFullName).ParentFolder.Path & "\"
'软件运转参数
exeConfig = "client_windows_amd64.exe -l :12948 -r 10.10.10.10:29900 -key test -mtu 1400 -sndwnd 256 -rcvwnd 2048 -mode fast2 -dscp 46"
'日记文件
logFile = "kcptun.log"
'拼接号令行
cmdLine = "cmd /c " & currentPath & exeConfig & " > " & currentPath & logFile & " 2>&1"
'启动软件
WshShell.Run cmdLine, 0, False
'WScript.Sleep 1000
'打印运转号令
'Wscript.echo cmdLine
Set WshShell = Nothing
Set fso = Nothing
'退出足本
WScript.quit
当地 监听端口为 12948;办事器 IP 地址 10.10.10.10 端口 29900;验证密钥和办事端分歧。其他参数申明见下面办事端设置装备摆设的申明。
v20160616 新增参数:-conn,利用多线程毗连。可测验考试 添加 -conn 4 以利用4线程毗连办事器。
新建 stop.bat
taskkill /f /im client_windows_amd64.exe
把stop.bat 和 run.vbs 放到kcptun解压的阿谁文件里,双击 run.vbs 运转法式 ,利用 stop.bat 来遏制法式 ,kcptun.log 为输出的日记信息。
然后是Shadowsocks 客户端设置装备摆设
在客户端中新建办事器:
办事器 IP 填写:127.0.0.1
办事器端口填写:12948
准确填写你的 Shadowsocks 密码,加密体例,和谈和混合体例。
切换到该办事器上,测试能否准确运转。