中文请点击这里.
rsock bukanlah akselerator atau vpn. Itu hanya mengubah koneksi udp menjadi beberapa koneksi tcp palsu, atau beberapa koneksi udp normal atau keduanya. Ini sangat mirip dengan udp karena tidak dapat diandalkan dan tidak memiliki kontrol aliran, algoritma transmisi ulang batas waktu, dll. Ini lintas platform . Ini seharusnya digunakan bersama dengan kcptun atau klien udp lainnya dengan ARQ. Tujuan dari rsock adalah untuk mencegah qos ke udp dari ISP jika ada. Ini mendukung Windows, Mac dan Linux . Untuk melihat pengenalan dan penggunaan kcptun klik di sini. Dan kaus kaki bayangan, klik di sini.
ULANGI : Transfer data rsock TIDAK dapat diandalkan. Transfer data yang andal harus ditangani oleh tingkat aplikasi (kcptun).
Gambar berikut secara singkat menunjukkan prinsip-prinsip
Ada binari yang telah dikompilasi untuk Linux 64bit, Mac 64bit, dan windows x86/x64. Mereka dapat diunduh dari sini.
Bagi pengguna Windows harus menginstall winpcap terlebih dahulu. winpcap
Untuk platform lain, Anda dapat mengunduh kode sumber dan mengkompilasinya sendiri. Panduan kompilasi ada di sini
Ingatlah untuk menambahkan aturan firewall jika firewall diaktifkan.
Ambil Linux sebagai contoh:
# port=10000
# while [ $port -le 10010 ]
do
sudo ufw allow $port
port=$[ $port + 1]
done
Artinya izinkan klien terhubung ke server dari port 10000 hingga 10010. ( rsock menggunakan rentang port 10001-10010 secara default. Jika Anda ingin mengubah nilai default, silakan periksa bagian Penjelasan Parameter. )
sudo ./server_rsock_Linux -t 127.0.0.1:9999
Penjelasan parameter:
127.0.0.1:9999, alamat target, alias alamat server kcptun yang sedang bekerja.
Ambil mac sebagai contoh:
sudo ./client_rsock_Darwin --taddr=xxxx -l 127.0.0.1:30000
Penjelasan parameter:
-t xxxx , Alamat server rsock。Perhatian. Ini berbeda dengan server. Ini hanya berisi ip.
-l , alamat udp lokal yang didengarkan, alias alamat target klien kcptun (alamat yang ditentukan oleh -t).
Jika rsock tidak berfungsi, Anda harus memeriksa apakah NIC Anda mendukung winpcap. Dan router juga dapat menyaring paket, terutama bila Anda menggunakan Windows.
Untuk pengguna Windows, kecepatannya jauh lebih lambat dibandingkan rsock di mac/Linux. (500-800KB/s selama pengujian saya) misalnya di Mac/Linux, rsock dapat mendukung menonton video youtube 1080P dengan lancar. Untuk pengguna windows, rsock hanya dapat mendukung video youtube 720P.
ps axu|grep rsock
sudo kill -SIGUSR1 pid # pid is id of rsock. It's 72294 in image above.
-t, --taddr=[addr] target address. e.g. 8.8.8.8:88,7.7.7.7. Required.
-l, --ludp=[addr] local listened udp address. Only valid for client. Required by client.
-d, --dev=[device] name of network interface card of Internet.e.g,eth0, en0. rsock can auto detect right device to work on. Use this when the default can't work.
-h, --help Display help menu. Not available now.
-f json config file
--lcapIp=[ip] Internet IP. Can omit the -d if this parameter sepcified. rsock can auto detect right device to work on. Use this when the default can't work.
--unPath Local unix domain socket. Not available now.
-p, --ports=[...] tcp/udp port list for rsock server. e.g.10001,10010(2 ports); 10001-10010(11 ports); 80,443,10001-10010(12 ports). **NO** white spaces allowed. Default value: 10001-10010
--duration=[timeSec] Time for app connection to persist if no data is transfered in the app connection. unit: seconds. defalt 30s
--hash=[hashKey] Not for encryption. Only for judgement if data belong to rsock. REPEAT: rsock don't encrypt data. Encryption is done by kcptun.
--type=[tcp|udp|all] type of communication. One of tcp, udp or all. Default is tcp.
--daemon=[1|0] Run as daemon. 1 yes. 0 no. default 1.
-v verbose mode. (Better not change default value. There is an unsolved bug that will cause slow speed right now)
--log=[path/to/log] Directory of log. Will create if not exist. Default: /var/log/rsock
--cap_timeout timeout of libpcap. Don't change this value if know what it really means.
Di bawah mode tcp, karena kami tidak mengirim/menerima data dari soket, ia akan mengirimkan ack dengan panjang 0, memberi tahu rekan seq berikutnya yang diharapkannya. Ini karena standar. Dan itu akan membuang-buang bandwidth.
Membandingkan objek:rsock, kcptun
digitalocean NY vps. RAM 1G
rsock (hanya tcp, 11 port). 1,25 juta
rsock (hanya udp, 11 port). 1,5 juta
rsock(doc/tcp dan udp, masing-masing 11 port. 1,1M
kcptun. Paling cepat, sekitar 1,5MB.
rsock (hanya tcp, 11 port). 1,4 juta
rsock (hanya udp, 11 port. 1,7M
rsock(udp dan tcp, masing-masing 11 port)900K. Saya sudah menguji dua kali. Kecepatannya lebih lambat.
kcptun. sangat cepat. Sekitar 2MB.
catatan: Tidak ada bukti bahwa semakin banyak port yang digunakan rsock, semakin cepat. Hal ini terutama ditentukan oleh bandwidth Anda.
rsock hanya memiliki kecepatan kcptun 70%-90%.
Jika Anda tidak menemukan koneksi jaringan, periksa apakah rsock dan kcptun masih berjalan.
Anda dapat menjalankan perintah mengalir untuk memeriksa:
ps axu|egrep 'kcptun|rsock'
Sangat disarankan agar server kcptun dan server rsock berjalan di latar belakang. Untuk server kcptun, jalankan
nohup sudo -u nobody ./server_linux_amd64 -r ":port1" -l ":port2" -mode fast2 -key aKey >/dev/null 2>&1 &
Untuk server rsock, hanya perlu menentukan parameter --daemon=1
Jika server berjalan normal, coba mulai ulang klien kcptun (hidupkan/matikan shadowocks, ini akan memulai ulang kcptun).
rsock TIDAK mengenkripsi data . Enkripsi terjadi di tingkat aplikasi (kcptun).
terowongan udp2raw
kcptun-mentah
icmptunnel
Kode pemfaktoran ulang.
Tambahkan mendengarkan port secara acak.
Tambahkan mode siaga. Jangan berulang kali terhubung ke server jika tidak ada data selama jangka waktu tertentu.
Tambahkan koneksi palsu lainnya. misalnya ICMP, DNS.