-
Notifications
You must be signed in to change notification settings - Fork 835
Suggested parameters
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
.
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.
You can also use --timeout 0
to get zero latency, but its not suggested.
Its strongly suggested to not change the 2
in -f2:x
, the reason will be explained later.
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
.
-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.
you can use -i
option to defend against burst packet loss. -i 10
means 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 at most 10ms +10ms additional round-trip latency (compared with original parameters).