You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
> *Disclaimer: kcptun maintains a single website — [github.com/xtaci/kcptun](https://github.com/xtaci/kcptun). Any websites other than [github.com/xtaci/kcptun](https://github.com/xtaci/kcptun) are not endorsed by xtaci.*
25
23
24
+
### Requirements
25
+
26
+
| Target | Minimum | Recommended |
27
+
| --- | --- | --- |
28
+
| System | aix darwin dragonfly freebsd linux netbsd openbsd solaris windows | linux |
29
+
| Memory | >20MB | >32MB |
30
+
| CPU | ANY | amd64 with AES-NI & AVX2 |
31
+
32
+
26
33
### QuickStart
27
34
28
35
Increase the number of open files on your server, as:
@@ -59,10 +66,13 @@ which tunnels the original connection:
59
66
60
67
> Application -> Target Server(8388/tcp)
61
68
62
-
### Install from source
69
+
### Build from source
63
70
64
71
```
65
-
$go get -u github.com/xtaci/kcptun/...
All precompiled releases are genereated from `build-release.sh` script.
@@ -105,6 +115,8 @@ All precompiled releases are genereated from `build-release.sh` script.
105
115
Since streams are multiplexed into a single physical channel, head of line blocking may appear under certain circumstances, by
106
116
increasing `-smuxbuf` to a larger value (default 4MB) may mitigate this problem, obviously this will costs more memory.
107
117
118
+
For versions >= v20190924, you can switch to smux version 2, smux v2 has options to limit per-stream memory usage, now set `-smuxver 2` to enable smux v2, and adjust `-streambuf` to limit per-stream memory usage, eg: `-streambuf 2097152` can limit per-stream memory usage to 2MB. By limiting stream buffer on the receiver side, a back-pressure will be conducted to the sender and limits reading, and finally prevent source from sending too much data to occupy every bits of buffer along the link. (Setting -smuxver **MUST** be **IDENTICAL** on both side, default is 1. )
119
+
108
120
#### Slow Devices
109
121
110
122
kcptun made use of **ReedSolomon-Codes** to recover lost packets, which requires massive amount of computation, a low-end ARM device cannot satisfy kcptun well. To unleash the full potential of kcptun, a multi-core x86 homeserver CPU like AMD Opteron is recommended.
@@ -119,18 +131,18 @@ If you insist on running under some ARM routers, you'd better turn off `FEC` and
0 commit comments