Skip to content

Suggested parameters

wangyu- edited this page Feb 26, 2018 · 31 revisions

For non-game usage

For watching video, downloading and web browsing. It sends 10 redundant packets for every 20 packets, so the bandwidth usage is 1.5 times as normal. It may introduce 8ms+8ms round trip latency at most.

./speederv2 -s -l0.0.0.0:4096 -r127.0.0.1:7777   -k "passwd"  -f20:10  --timeout 8
./speederv2 -c -l0.0.0.0:3333 -r44.55.66.77:4096 -k "passwd"  -f20:10  --timeout 8

-f20:10 and --timeout 8 is the default value,you dont need to write them out explicitly.

If you network is very lossy,you may change -f20:10 to -f20:10.

If you want to save cpu usage, you may change -f20:10 to -f10:5.

For game usage

Sends 4 redundant packets for every 2 packets, with extra round-trip latency of at most 1ms+ 1ms.

./speederv2 -s -l0.0.0.0:4096 -r127.0.0.1:7777   -k "passwd"  -f2:4 --timeout 1
./speederv2 -c -l0.0.0.0:3333 -r44.55.66.77:4096 -k "passwd"  -f2:4 --timeout 1

You can also change -f2:4 to -f2:2,if you network quality is not too poor.

Its strongly suggested to not change the 2 in -f2:x, the reason will be explained later.

compromise plan

make compromise between bandwidth usage and latency.

./speederv2 -s -l0.0.0.0:4096 -r127.0.0.1:7777   -k "passwd"  -f10:6 --timeout 3
./speederv2 -c -l0.0.0.0:3333 -r44.55.66.77:4096 -k "passwd"  -f10:6 --timeout 3

Sure, you can change -f10:6 to something like -f10:10.

meaning of parameter

-fx:y send y redundant packets for every x packets. (Its not suggest to use x=1, with x=1 you have to pay attention to mtu problem)

--timeout t means the max latency allowed(for one direction)

Small t must be used with small x value, otherwise the overhead will be huge, and the bandwidth/cpu usage will become unpredictable.

you can use different parameters for client and server.

other parameters

anti burst packet-loss

you can use -i option to defend against burst packet loss. -i 10means enable interleaving FEC, and packets of each FEC group will be scattered into a inverval of 10ms.

For example, for the parameters mentioned above:

./speederv2 -s -l0.0.0.0:4096 -r127.0.0.1:7777   -k "passwd"  -f20:10 --timeout 8
./speederv2 -c -l0.0.0.0:3333 -r44.55.66.77:4096 -k "passwd"  -f20:10 --timeout 8

Add -i option into them, then they become:

./speederv2 -s -l0.0.0.0:4096 -r127.0.0.1:7777   -k "passwd"  -f20:10 --timeout 8 -i 10
./speederv2 -c -l0.0.0.0:3333 -r44.55.66.77:4096 -k "passwd"  -f20:10 --timeout 8 -i 10

Now burst packet-loss may be significantly reduced, at the cost of most 10ms +10ms,