| ... | ... | @@ -18,13 +18,6 @@ |
|
|
|
|
|
|
|
https://github.com/wangyu-/UDPspeeder/wiki/推荐设置
|
|
|
|
|
|
|
|
## `-f`参数和丢包的关系;是否发包倍数越多效果就越好?
|
|
|
|
比如`-f20:10`,表示对每20个原始包发送10个冗余包,流量消耗1.5倍。这样,只要30个包中有20个到达,数据就可以被完全恢复。
|
|
|
|
|
|
|
|
比如`-f1:2`,表示对每1个原始包发送2个冗余包,也就是3倍发包,流量消耗3倍。这样,只要3个包中有1个包到达,数据就可以被完全恢复。
|
|
|
|
|
|
|
|
`-20:10`的1.5倍流量的效果是否差于`-f1:2`的3倍流量呢? 只要做简单的概率计算就可以知道,一般情况下`30个包中有20个到达`的概率远高于`3个包中有1个包到达`的概率。比如在丢包率10%的情况下,`30个包中有20个到达`的概率是 99.99% ,而3个包中有1到达的概率只有99.9%, 所以在这个例子中1.5倍流量的效果远好于3倍流量(丢包率低10倍)。所以不要迷信于多倍发包,并不是消耗的流量倍数更多效果就一定更好。多倍发包的意义基本只在于可以省几毫秒的延迟,只对游戏有用。 对于下载和看视频,FEC不但更省流量,效果也更好。
|
|
|
|
|
|
|
|
## 根据网络丢包合理设置FEC参数
|
|
|
|
|
|
|
|
默认的FEC参数为-f20:10,对每20个包,额外发送10个冗余包,也就是1.5倍发包(1.5倍冗余度)。已经可以适应绝大多数的网络情况了,对于10%的网络丢包,可以降低到0.01%以下;对于20%的网络丢包,可以降低到2.5%。
|
| ... | ... | @@ -35,6 +28,13 @@ https://github.com/wangyu-/UDPspeeder/wiki/推荐设置 |
|
|
|
|
|
|
|
另外,对于`--mode 0`模式,建议冗余度不要低于1.1,否则效果可能很差;`--mode 1`模式无特殊要求,即使是用`-f40:1`也可以(1.03倍冗余度)。
|
|
|
|
|
|
|
|
## FEC参数和丢包的关系;是否发包倍数越多效果就越好?
|
|
|
|
比如`-f20:10`,表示对每20个原始包发送10个冗余包,流量消耗1.5倍。这样,只要30个包中有20个到达,数据就可以被完全恢复。
|
|
|
|
|
|
|
|
比如`-f1:2`,表示对每1个原始包发送2个冗余包,也就是3倍发包,流量消耗3倍。这样,只要3个包中有1个包到达,数据就可以被完全恢复。
|
|
|
|
|
|
|
|
`-20:10`的1.5倍流量的效果是否差于`-f1:2`的3倍流量呢? 只要做简单的概率计算就可以知道,一般情况下`30个包中有20个到达`的概率远高于`3个包中有1个包到达`的概率。比如在丢包率10%的情况下,`30个包中有20个到达`的概率是 99.99% ,而3个包中有1到达的概率只有99.9%, 所以在这个例子中1.5倍流量的效果远好于3倍流量(丢包率低10倍)。所以不要迷信于多倍发包,并不是消耗的流量倍数更多效果就一定更好。多倍发包的意义基本只在于可以省几毫秒的延迟,只对游戏有用。 对于下载和看视频,FEC不但更省流量,效果也更好。
|
|
|
|
|
|
|
|
## 如何测试网络本身的丢包率
|
|
|
|
|
|
|
|
比如你配置好了UDPspeeder+OpenVPN,但是不知道网络本身的丢包情况。有两种方法:
|
| ... | ... | |
| ... | ... | |