22 Commits

Author SHA1 Message Date
wangyu-
0cafbff271 new targets,change to static compile 2017-09-10 04:04:07 -05:00
wangyu-
a04f976c20 Add files via upload 2017-09-03 21:54:11 -05:00
wangyu-
2837f3b955 Update README.md 2017-09-03 18:01:37 -07:00
wangyu-
83ec1296a3 Update README.md 2017-09-03 18:00:25 -07:00
wangyu-
edfc23e273 Update README.md 2017-09-03 17:58:31 -07:00
wangyu-
32c51decad Update README.md 2017-09-03 17:56:28 -07:00
wangyu-
9ce560d9d1 Add files via upload 2017-09-03 17:48:29 -05:00
wangyu-
3c333b59e6 Add files via upload 2017-09-03 17:45:57 -05:00
wangyu-
073eb5fc2d Add files via upload 2017-09-03 17:17:54 -05:00
wangyu-
8388c5dbce Update README.md 2017-09-03 15:12:59 -07:00
wangyu-
24e980069e Update README.md 2017-09-03 15:11:38 -07:00
wangyu-
9a42db3200 Add files via upload 2017-09-03 17:11:19 -05:00
wangyu-
7e0d9f99f2 Update README.md 2017-09-03 15:03:35 -07:00
wangyu-
88564a1f56 Add files via upload 2017-09-03 16:59:29 -05:00
wangyu-
a95c383cc6 Update README.md 2017-08-16 07:55:21 -07:00
wangyu-
f99de500ba Update README.md 2017-08-16 06:02:18 -07:00
wangyu-
aa7c520642 Update README.md 2017-08-16 05:46:34 -07:00
wangyu
a7e31940a0 add arm target in makefile 2017-08-16 20:41:19 +08:00
wangyu-
244f28cb1d Update README.md 2017-08-14 08:26:00 -07:00
wangyu-
39231d7939 Update README.md 2017-08-14 02:27:34 -07:00
wangyu-
e16d993c2e Update README.md 2017-08-14 02:26:46 -07:00
wangyu-
47ae2d94e7 Update README.md 2017-08-12 21:38:41 -07:00
6 changed files with 64 additions and 29 deletions

View File

@@ -1,6 +1,6 @@
# UDPspeeder # UDPspeeder
![image0](images/Capture7.PNG) ![image0](images/Capture7.PNG)
UDP加速工具降低丢包率配合vpn可以加速任何协议尤其适用于加速游戏和网页打开速度同时也是一个UDP连接的调试和统计工具。 UDP双边加速工具降低丢包率配合vpn可以加速任何协议尤其适用于加速游戏和网页打开速度同时也是一个UDP连接的调试和统计工具。
这个是我自己稳定用了一个月的项目用来加速美服的Brawl Stars和亚服的Mobile Legend效果不错。加速前卡得几乎没法玩加速后就没怎么卡过了。 这个是我自己稳定用了一个月的项目用来加速美服的Brawl Stars和亚服的Mobile Legend效果不错。加速前卡得几乎没法玩加速后就没怎么卡过了。
#### 效果 #### 效果
@@ -26,7 +26,7 @@ UDP加速工具降低丢包率配合vpn可以加速任何协议尤其
client支持多个udp连接server也支持多个client client支持多个udp连接server也支持多个client
目前有amd64,x86,ar71xx的binary 目前有amd64,x86,ar71xx,树莓派armv7和android的binary
如果你需要绕过UDP屏蔽/QoS或者需要连接复用/连接保持功能或者是加密。解决方案在另一个repo(可以跟UDPspeeder一起使用) 如果你需要绕过UDP屏蔽/QoS或者需要连接复用/连接保持功能或者是加密。解决方案在另一个repo(可以跟UDPspeeder一起使用)
@@ -35,7 +35,9 @@ https://github.com/wangyu-/udp2raw-tunnel
# 简明操作说明 # 简明操作说明
### 环境要求 ### 环境要求
Linux主机可以使是openwrt路由器也可以是树莓派。在windows和mac上可以开虚拟机(桥接模式测试可用)。 Linux主机可以是桌面版可以是android手机/平板,可以是openwrt路由器也可以是树莓派。在windows和mac上配合虚拟机可以稳定使用speeder跑在Linux里其他应用照常跑在window里桥接模式测试可用)。
android版需要通过terminal运行。
### 安装 ### 安装
下载编译好的二进制文件,解压到本地和服务器的任意目录。 下载编译好的二进制文件,解压到本地和服务器的任意目录。
@@ -115,7 +117,7 @@ other options:
##### --random-drop 选项 ##### --random-drop 选项
随机丢包。模拟恶劣的网络环境时使用。 随机丢包。模拟恶劣的网络环境时使用。
# 包接收选项,两端设置可以不同。只影响本地包接受 ### 包接收选项,两端设置可以不同。只影响本地包接受
##### --disable-filter     ##### --disable-filter    
关闭重复包过滤器。这样配合-d 选项可以模拟有重复包的网络环境。 关闭重复包过滤器。这样配合-d 选项可以模拟有重复包的网络环境。
@@ -131,10 +133,16 @@ kcptun在udp层有RS code也是一种冗余传输通过openvpn把流量转
udp协议本身是ip协议加上了端口之后的直接封装udp继承了ip协议的实时/乱序到达特性更适合中转vpn。 udp协议本身是ip协议加上了端口之后的直接封装udp继承了ip协议的实时/乱序到达特性更适合中转vpn。
#### UDPspeeder + kcptun/finalspeed同时加速tcp和udp流量 #### UDPspeeder + kcptun/finalspeed + ss 同时加速tcp和udp流量
如果你需要用加速的tcp看视频和下载文件这样效果比vpn方案更好。不论是速度还是流量的耗费上。 如果你需要用加速的tcp看视频和下载文件这样效果比vpn方案更好。不论是速度还是流量的耗费上。
![image0](images/Capture3.PNG) ![image0](images/Capture3.PNG)
#### UDPspeeder + openvpn + ss 混合方案
也是我正在用的方案。优点是可以随时在vpn和ss方案间快速切换。
实际部署起来比图中看起来的还要简单。不需要改路由表需要做的只是用openvpn的ip访问ss server。
![image0](images/Capture10.PNG)
(也可以把图中的ss server换成其他的socks5 server这样连ss client也不需要了)
# 编译教程 # 编译教程
暂时先参考udp2raw的这篇教程几乎一样的过程。 暂时先参考udp2raw的这篇教程几乎一样的过程。

BIN
images/Capture10.PNG Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 66 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 73 KiB

After

Width:  |  Height:  |  Size: 73 KiB

BIN
images/Capture9.PNG Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 65 KiB

View File

@@ -1,5 +1,6 @@
#include "common.h" #include "common.h"
#include "log.h" #include "log.h"
#include "git_version.h"
using namespace std; using namespace std;
@@ -923,8 +924,12 @@ int event_loop()
} }
void print_help() void print_help()
{ {
char git_version_buf[100]={0};
strncpy(git_version_buf,gitversion,10);
printf("UDPspeeder\n"); printf("UDPspeeder\n");
printf("version: %s %s\n",__DATE__,__TIME__); printf("git version:%s ",git_version_buf);
printf("build date:%s %s\n",__DATE__,__TIME__);
printf("repository: https://github.com/wangyu-/UDPspeeder\n"); printf("repository: https://github.com/wangyu-/UDPspeeder\n");
printf("\n"); printf("\n");
printf("usage:\n"); printf("usage:\n");

View File

@@ -1,41 +1,63 @@
cc_cross=/home/wangyu/OpenWrt-SDK-ar71xx-for-linux-x86_64-gcc-4.8-linaro_uClibc-0.9.33.2/staging_dir/toolchain-mips_34kc_gcc-4.8-linaro_uClibc-0.9.33.2/bin/mips-openwrt-linux-g++ cc_cross=/home/wangyu/Desktop/arm-2014.05/bin/arm-none-linux-gnueabi-g++
cc_local=g++ cc_local=g++
cc_ar71xx=/home/wangyu/OpenWrt-SDK-ar71xx-for-linux-x86_64-gcc-4.8-linaro_uClibc-0.9.33.2/staging_dir/toolchain-mips_34kc_gcc-4.8-linaro_uClibc-0.9.33.2/bin/mips-openwrt-linux-g++ #cc_mips34kc=/toolchains/OpenWrt-SDK-ar71xx-for-linux-x86_64-gcc-4.8-linaro_uClibc-0.9.33.2/staging_dir/toolchain-mips_34kc_gcc-4.8-linaro_uClibc-0.9.33.2/bin/mips-openwrt-linux-g++
cc_bcm2708=/home/wangyu/raspberry/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian/bin/arm-linux-gnueabihf-g++ cc_mips24kc_be=/toolchains/lede-sdk-17.01.2-ar71xx-generic_gcc-5.4.0_musl-1.1.16.Linux-x86_64/staging_dir/toolchain-mips_24kc_gcc-5.4.0_musl-1.1.16/bin/mips-openwrt-linux-musl-g++
FLAGS= -std=c++11 -Wall -Wextra -Wno-unused-variable -Wno-unused-parameter cc_mips24kc_le=/toolchains/lede-sdk-17.01.2-ramips-mt7621_gcc-5.4.0_musl-1.1.16.Linux-x86_64/staging_dir/toolchain-mipsel_24kc_gcc-5.4.0_musl-1.1.16/bin/mipsel-openwrt-linux-musl-g++
SOURCES=main.cpp log.cpp common.cpp #cc_arm= /toolchains/gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabi/bin/arm-linux-gnueabi-g++ -march=armv6 -marm
NAME=speeder cc_arm= /toolchains/arm-2014.05/bin/arm-none-linux-gnueabi-g++
TAR=${NAME}_binaries.tar.gz ${NAME}_amd64 ${NAME}_x86 ${NAME}_ar71xx ${NAME}_bcm2708 #cc_bcm2708=/home/wangyu/raspberry/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian/bin/arm-linux-gnueabihf-g++
FLAGS= -std=c++11 -Wall -Wextra -Wno-unused-variable -Wno-unused-parameter -Wno-missing-field-initializers
all: SOURCES=main.cpp log.cpp common.cpp
NAME=speeder
TARGETS=amd64 arm mips24kc_be x86 mips24kc_le
TAR=${NAME}_binaries.tar.gz `echo ${TARGETS}|sed -r 's/([^ ]+)/speeder_\1/g'`
all:git_version
rm -f ${NAME} rm -f ${NAME}
${cc_local} -o ${NAME} -I. ${SOURCES} ${FLAGS} -lrt -static -O3 ${cc_local} -o ${NAME} -I. ${SOURCES} ${FLAGS} -lrt -ggdb -static -O3
fast: fast: git_version
rm -f ${NAME} rm -f ${NAME}
${cc_local} -o ${NAME} -I. ${SOURCES} ${FLAGS} -lrt ${cc_local} -o ${NAME} -I. ${SOURCES} ${FLAGS} -lrt -ggdb
debug: debug: git_version
rm -f ${NAME} rm -f ${NAME}
${cc_local} -o ${NAME} -I. ${SOURCES} ${FLAGS} -lrt -Wformat-nonliteral -D MY_DEBUG ${cc_local} -o ${NAME} -I. ${SOURCES} ${FLAGS} -lrt -Wformat-nonliteral -D MY_DEBUG
debug2: git_version
rm -f ${NAME}
${cc_local} -o ${NAME} -I. ${SOURCES} ${FLAGS} -lrt -Wformat-nonliteral -ggdb
ar71xx: mips24kc_be: git_version
${cc_ar71xx} -o ${NAME}_ar71xx -I. ${SOURCES} ${FLAGS} -lrt -lgcc_eh -static -O3 ${cc_mips24kc_be} -o ${NAME}_$@ -I. ${SOURCES} ${FLAGS} -lrt -lgcc_eh -static -O3
bcm2708:
${cc_bcm2708} -o ${NAME}_bcm2708 -I. ${SOURCES} ${FLAGS} -lrt -static -O3
amd64:
${cc_local} -o ${NAME}_amd64 -I. ${SOURCES} ${FLAGS} -lrt -static -O3
x86:
${cc_local} -o ${NAME}_x86 -I. ${SOURCES} ${FLAGS} -lrt -m32 -static -O3
cross: mips24kc_le: git_version
${cc_mips24kc_le} -o ${NAME}_$@ -I. ${SOURCES} ${FLAGS} -lrt -lgcc_eh -static -O3
amd64:git_version
${cc_local} -o ${NAME}_$@ -I. ${SOURCES} ${FLAGS} -lrt -static -O3
x86:git_version
${cc_local} -o ${NAME}_$@ -I. ${SOURCES} ${FLAGS} -lrt -static -O3 -m32
arm:git_version
${cc_arm} -o ${NAME}_$@ -I. ${SOURCES} ${FLAGS} -lrt -static -O3
cross:git_version
${cc_cross} -o ${NAME}_cross -I. ${SOURCES} ${FLAGS} -lrt -O3 ${cc_cross} -o ${NAME}_cross -I. ${SOURCES} ${FLAGS} -lrt -O3
cross2: cross2:git_version
${cc_cross} -o ${NAME}_cross -I. ${SOURCES} ${FLAGS} -lrt -static -lgcc_eh -O3 ${cc_cross} -o ${NAME}_cross -I. ${SOURCES} ${FLAGS} -lrt -static -lgcc_eh -O3
cross3:git_version
${cc_cross} -o ${NAME}_cross -I. ${SOURCES} ${FLAGS} -lrt -static -O3
release: amd64 x86 ar71xx bcm2708 release: ${TARGETS}
tar -zcvf ${TAR} tar -zcvf ${TAR}
clean: clean:
rm -f ${TAR} rm -f ${TAR}
rm -f speeder speeder_cross
rm -f git_version.h
git_version:
echo "const char *gitversion = \"$(shell git rev-parse HEAD)\";" > git_version.h