使用 Net-Speeder 加速高丢包率环境下的网络连接

使用 Net-Speeder 加速高丢包率环境下的网络连接

使用美国 VPS 搭建个人梯子最令人难以忍受的问题是什么?

丢包率。

使用 cn2 线路的节点不足 200ms 的延迟只要你不是用来玩游戏之外都不会有太大感知, 10Gbps 的带宽也绝对不会对你的连接速度造成瓶颈,但从自由大陆漂洋过海的数据很难保证没有丢失。

所以诞生了很多解决方案,比如锐速。

但众所周知的是锐速并不支持 OpenVZ 的 Container 式虚拟化方案(而且它不开源), BBR 的效果又难以让人满意,所以对于使用 OpenVZ 的用户(穷人)来说只剩了两个令人满意的优化方案:Net Speeder 和 KCPtun。

本篇主要讲前者的使用。

推荐 Net Speeder 的理由很简单:

-极小的占用
-开源且简单到只有 NOIp 水平的代码

安装

从 GitHub 下载源码

wget https://raw.githubusercontent.com/snooda/net-speeder/master/net_speeder.c

安装依赖

RedHat 系:

yum install -y libnet libnet-devel libpcap libpcap-devel gcc

Debian 系:

apt-get install -y libpcap-dev libnet-dev libnids-dev gcc

进行编译

OpenVZ:

gcc ./net_speeder.c -o net_speeder -O2 -lpcap -lnet -DCOOKED

KVM:

gcc ./net_speeder.c -o net_speeder -O2 -lpcap -lnet

(相信玄学的人和强迫症可以使用 O3 优化)

启动 Net Speeder

OpenVZ:

nohup ./net_speeder venet0 "ip" > /dev/null 2>&1 &

KVM:

nohup ./net_speeder eth0 "ip" > /dev/null 2>&1 &

加入开机启动:

vim /etc/profile.d/net_speeder.sh

输入

#! /bin/sh
你 VPS 类型对应的启动命令(需要绝对地址)

:wq 保存并退出即可。

ping -c 4 google.com

若显示有 duplicate 则配置成功。

但 Net Speeder 并不是没有缺点的,由于它强制双倍发包的策略,在丢包率低的时候,反而可能会减慢网络速度。

评论

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×

keyboard_arrow_up 回到顶端