mirror of
https://github.com/wangyu-/UDPspeeder.git
synced 2025-01-19 06:19:34 +08:00
Merge branch 'master' of https://github.com/wangyu-/UDPspeeder
This commit is contained in:
commit
0e1b86b237
19
README.md
19
README.md
@ -80,7 +80,7 @@ To run stably,pay attention to MTU.
|
|||||||
### Full Options
|
### Full Options
|
||||||
```
|
```
|
||||||
UDPspeeder V2
|
UDPspeeder V2
|
||||||
git version:f479ca2779 build date:Oct 19 2017 01:37:08
|
git version:8e7a8aed92 build date:Oct 25 2017 02:00:54
|
||||||
repository: https://github.com/wangyu-/UDPspeeder
|
repository: https://github.com/wangyu-/UDPspeeder
|
||||||
|
|
||||||
usage:
|
usage:
|
||||||
@ -91,8 +91,8 @@ common option,must be same on both sides:
|
|||||||
-k,--key <string> key for simple xor encryption. if not set,xor is disabled
|
-k,--key <string> key for simple xor encryption. if not set,xor is disabled
|
||||||
main options:
|
main options:
|
||||||
-f,--fec x:y forward error correction,send y redundant packets for every x packets
|
-f,--fec x:y forward error correction,send y redundant packets for every x packets
|
||||||
--timeout <number> how long could a packet be held in queue before doing fec,unit: ms
|
--timeout <number> how long could a packet be held in queue before doing fec,unit: ms,default :8ms
|
||||||
--mode <number> fec-mode,available values: 0,1 ; 0 cost less bandwidth,1 cost less latency
|
--mode <number> fec-mode,available values: 0,1 ; 0 cost less bandwidth,1 cost less latency(default)
|
||||||
--report <number> turn on send/recv report,and set a period for reporting,unit:s
|
--report <number> turn on send/recv report,and set a period for reporting,unit:s
|
||||||
advanced options:
|
advanced options:
|
||||||
--mtu <number> mtu. for mode 0,the program will split packet to segment smaller than mtu_value.
|
--mtu <number> mtu. for mode 0,the program will split packet to segment smaller than mtu_value.
|
||||||
@ -105,6 +105,9 @@ advanced options:
|
|||||||
--random-drop <number> simulate packet loss ,unit:0.01%. default value: 0
|
--random-drop <number> simulate packet loss ,unit:0.01%. default value: 0
|
||||||
--disable-obscure <number> disable obscure,to save a bit bandwidth and cpu
|
--disable-obscure <number> disable obscure,to save a bit bandwidth and cpu
|
||||||
developer options:
|
developer options:
|
||||||
|
--fifo <string> use a fifo(named pipe) for sending commands to the running program,so that you
|
||||||
|
can change fec encode parameters dynamically,check readme.md in repository for
|
||||||
|
supported commands.
|
||||||
-j ,--jitter jmin:jmax similiar to -j above,but create jitter randomly between jmin and jmax
|
-j ,--jitter jmin:jmax similiar to -j above,but create jitter randomly between jmin and jmax
|
||||||
-i,--interval imin:imax similiar to -i above,but scatter randomly between imin and imax
|
-i,--interval imin:imax similiar to -i above,but scatter randomly between imin and imax
|
||||||
-q,--queue-len <number> max fec queue len,only for mode 0
|
-q,--queue-len <number> max fec queue len,only for mode 0
|
||||||
@ -119,6 +122,16 @@ log and help options:
|
|||||||
--log-position enable file name,function name,line number in log
|
--log-position enable file name,function name,line number in log
|
||||||
--disable-color disable log color
|
--disable-color disable log color
|
||||||
-h,--help print this help message
|
-h,--help print this help message
|
||||||
|
|
||||||
|
```
|
||||||
|
#### `--fifo` option
|
||||||
|
Use a fifo(named pipe) for sending commands to the running program. For example `--fifo fifo.file`,you can use following commands to change parameters dynamically:
|
||||||
|
```
|
||||||
|
echo fec 19:9 >fifo.file
|
||||||
|
echo mtu 1100 >fifo.file
|
||||||
|
echo timeout 5 >fifo.file
|
||||||
|
echo queue-len 100 >fifo.file
|
||||||
|
echo mode 0 >fifo.file
|
||||||
```
|
```
|
||||||
### Speed-Up any traffic with OpenVPN+UDPspeeder
|
### Speed-Up any traffic with OpenVPN+UDPspeeder
|
||||||
|
|
||||||
|
@ -80,7 +80,7 @@ https://github.com/wangyu-/UDPspeeder/releases
|
|||||||
### 命令选项
|
### 命令选项
|
||||||
```
|
```
|
||||||
UDPspeeder V2
|
UDPspeeder V2
|
||||||
git version:99f6099e86 build date:Oct 19 2017 13:35:38
|
git version:8e7a8aed92 build date:Oct 25 2017 02:00:54
|
||||||
repository: https://github.com/wangyu-/UDPspeeder
|
repository: https://github.com/wangyu-/UDPspeeder
|
||||||
|
|
||||||
usage:
|
usage:
|
||||||
@ -105,6 +105,9 @@ advanced options:
|
|||||||
--random-drop <number> simulate packet loss ,unit:0.01%. default value: 0
|
--random-drop <number> simulate packet loss ,unit:0.01%. default value: 0
|
||||||
--disable-obscure <number> disable obscure,to save a bit bandwidth and cpu
|
--disable-obscure <number> disable obscure,to save a bit bandwidth and cpu
|
||||||
developer options:
|
developer options:
|
||||||
|
--fifo <string> use a fifo(named pipe) for sending commands to the running program,so that you
|
||||||
|
can change fec encode parameters dynamically,check readme.md in repository for
|
||||||
|
supported commands.
|
||||||
-j ,--jitter jmin:jmax similiar to -j above,but create jitter randomly between jmin and jmax
|
-j ,--jitter jmin:jmax similiar to -j above,but create jitter randomly between jmin and jmax
|
||||||
-i,--interval imin:imax similiar to -i above,but scatter randomly between imin and imax
|
-i,--interval imin:imax similiar to -i above,but scatter randomly between imin and imax
|
||||||
-q,--queue-len <number> max fec queue len,only for mode 0
|
-q,--queue-len <number> max fec queue len,only for mode 0
|
||||||
@ -158,6 +161,16 @@ UDPspeeder默认情况下会对每个发出的数据包随机填充和异或一
|
|||||||
|
|
||||||
##### `-q,--queue-len`
|
##### `-q,--queue-len`
|
||||||
编码器在做FEC前最多积攒多少个数据包,只对mode 0有效。除非是使用下文`V2版如何多倍发包`里面提到的用法,不建议改动。
|
编码器在做FEC前最多积攒多少个数据包,只对mode 0有效。除非是使用下文`V2版如何多倍发包`里面提到的用法,不建议改动。
|
||||||
|
#### `--fifo` option
|
||||||
|
用fifo(命名管道)向运行中的程序发送command. 例如`--fifo fifo.file`,可用的command有:
|
||||||
|
```
|
||||||
|
echo fec 19:9 >fifo.file
|
||||||
|
echo mtu 1100 >fifo.file
|
||||||
|
echo timeout 5 >fifo.file
|
||||||
|
echo queue-len 100 >fifo.file
|
||||||
|
echo mode 0 >fifo.file
|
||||||
|
```
|
||||||
|
可以动态改变fec编码器参数。
|
||||||
|
|
||||||
# 使用经验
|
# 使用经验
|
||||||
|
|
||||||
@ -202,6 +215,10 @@ FEC算法很吃CPU,初次使用建议关注UDPspeeder的CPU占用。如果CPU被
|
|||||||
|
|
||||||
另外,fec分组大小不宜过大,否则不但很耗CPU,还有其他副作用,建议x+y<50。
|
另外,fec分组大小不宜过大,否则不但很耗CPU,还有其他副作用,建议x+y<50。
|
||||||
|
|
||||||
|
### 改变FEC参数而不断线
|
||||||
|
|
||||||
|
`--fifo`选项可以在运行时无缝改变FEC参数,无需重启程序,也不会断线。
|
||||||
|
|
||||||
### 为什么使用之后效果反而变差了?
|
### 为什么使用之后效果反而变差了?
|
||||||
|
|
||||||
有可能是你用了mode 0参数,而又没调好参数。
|
有可能是你用了mode 0参数,而又没调好参数。
|
||||||
@ -221,7 +238,7 @@ UDPspeeder和Kcptun配合,UDPspeeder和Kcptun可以并联也可以串联。
|
|||||||
|
|
||||||
并联的情况下,让kcptun负责加速TCP,UDPspeeder负责加速UDP。见下文的`UDPspeeder + kcptun + $*** 同时加速tcp和udp流量`。
|
并联的情况下,让kcptun负责加速TCP,UDPspeeder负责加速UDP。见下文的`UDPspeeder + kcptun + $*** 同时加速tcp和udp流量`。
|
||||||
|
|
||||||
串联的情况。UDPspeeder的FEC跟Kcptun自带的相比:可以对两个方向设置不通的FEC参数、有一个更省流量的mode 0模式、可以调整的FEC参数多一些;但是UDPspeeder本身不优化拥塞和重传算法。所以UDPspeeder和Kcptun也可以配合使用,结合两者的优点。
|
串联的情况。UDPspeeder的FEC跟Kcptun自带的相比:可以对两个方向设置不同的FEC参数、有一个更省流量的mode 0模式、可以动态改变FEC参数;但是UDPspeeder本身不优化拥塞和重传算法。所以UDPspeeder和Kcptun也可以配合使用,结合两者的优点。
|
||||||
|
|
||||||
串联时可以关掉Kcptun的FEC,让UDPspeeder接管FEC功能。这样UDPspeeder工作在UDP层负责降低丢包率,Kcptun工作在应用层用kcp算法负责优化拥塞和重传,能起到和`UDPspeeder+BBR/锐速`类似的效果。
|
串联时可以关掉Kcptun的FEC,让UDPspeeder接管FEC功能。这样UDPspeeder工作在UDP层负责降低丢包率,Kcptun工作在应用层用kcp算法负责优化拥塞和重传,能起到和`UDPspeeder+BBR/锐速`类似的效果。
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user