48 lines
1.2 KiB
Markdown
48 lines
1.2 KiB
Markdown
# tcp-cca-const
|
|
|
|
The fastest as well as the most wicked TCP congestion control "algorithm". There shouldn't be too many people knowing this secret or the world will be ruined.
|
|
|
|
<b>You need root privilege to run all following commands.</b>
|
|
|
|
## Build:
|
|
```bash
|
|
make
|
|
insmod tcp_const.ko # Require root privilege
|
|
```
|
|
|
|
## Prerequisites:
|
|
|
|
For Debian-based distros(Debian/Ubuntu/Linux Mint/Kali,etc):
|
|
```bash
|
|
apt install build-essential linux-headers-$(uname -r)
|
|
```
|
|
For Redhat distro(CentOS/RHEL/Fedora/openEuler,etc):
|
|
```bash
|
|
# If you don't have dnf, use yum instead
|
|
dnf groupinstall "Development Tools"
|
|
dnf in kernel-devel kernel-headers
|
|
```
|
|
For Arch Linux:
|
|
```bash
|
|
pacman -S base-devel linux-headers
|
|
```
|
|
For OpenSUSE:
|
|
```bash
|
|
zypper in make automake gcc gcc-c++ kernel-devel kernel-default-devel
|
|
```
|
|
|
|
## Troubleshooting:
|
|
|
|
If compilation failed and it said the function signature does not match, simply delete those two unnamed parameters in `static void const_main(struct sock *sk,u32,int,const struct rate_sample *rs)`
|
|
|
|
## Next steps:
|
|
|
|
You can change the size of constant cwnd for even better performance.
|
|
```bash
|
|
echo 2000 >/sys/module/tcp_const/parameters/const_cwnd
|
|
```
|
|
|
|
## See also:
|
|
|
|
https://zhuanlan.zhihu.com/p/555328566
|