Saya sudah mencoba untuk meningkatkan kinerja OpenVPN saya dan ini adalah pengaturan saya saat ini:
cat /etc/openvpn/server.conf
port 443 #- port
proto tcp #- protocol
dev tun
#tun-mtu 1500
tun-mtu-extra 32
#mssfix 1450
tun-mtu 64800
mssfix 1440
reneg-sec 0
ca /etc/openvpn/easy-rsa/2.0/keys/ca.crt
cert /etc/openvpn/easy-rsa/2.0/keys/server.crt
key /etc/openvpn/easy-rsa/2.0/keys/server.key
dh /etc/openvpn/easy-rsa/2.0/keys/dh1024.pem
plugin /etc/openvpn/openvpn-auth-pam.so /etc/pam.d/login
#plugin /usr/share/openvpn/plugin/lib/openvpn-auth-pam.so /etc/pam.d/login #- Comment this line if you are using FreeRADIUS
#plugin /etc/openvpn/radiusplugin.so /etc/openvpn/radiusplugin.cnf #- Uncomment this line if you are using FreeRADIUS
client-to-client
client-cert-not-required
username-as-common-name
server 10.8.0.0 255.255.255.0
push "redirect-gateway def1"
push "dhcp-option DNS 8.8.8.8"
push "dhcp-option DNS 8.8.4.4"
keepalive 5 30
comp-lzo
persist-key
persist-tun
status 1194.log
verb 3
KLIEN:
client
dev tun
proto tcp
remote 18.4.26.8 443
resolv-retry infinite
nobind
tun-mtu 64800
tun-mtu-extra 32
mssfix 1440
persist-key
persist-tun
auth-user-pass
comp-lzo
verb 3
Saya membuat beberapa perubahan pada MTU dan MSSFIX dari apa yang saya temukan di web.
Apakah ada perubahan kernel yang bisa saya lakukan? Ini adalah kotak CentOS 6.x. Saya menemukan beberapa hal untuk berbasis BSD tetapi tidak ada yang berhasil untuk Linux.
Saya tahu TCP lebih lambat daripada UDP tetapi saya harus dapat terlihat seperti lalu lintas SSL untuk mendapatkan melalui firewall di jaringan.
Ide lain?
PING ke klien lain di jaringan yang saya masuki RDP.
Pinging 10.8.0.6 with 32 bytes of data:
Reply from 10.8.0.6: bytes=32 time=152ms TTL=128
Reply from 10.8.0.6: bytes=32 time=565ms TTL=128
Reply from 10.8.0.6: bytes=32 time=152ms TTL=128
Reply from 10.8.0.6: bytes=32 time=782ms TTL=128
Ping statistics for 10.8.0.6:
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 152ms, Maximum = 782ms, Average = 412ms
Apakah ada cara untuk meningkatkan kinerja atau menghentikan beberapa ping?
EDIT: Apakah pengaturan pengaturan fragmentasi membantu?
I know TCP is slower then UDP but I need to be able to look like SSL traffic to get thru a firewall on the network.
Mengapa tidak meminta administrator jaringan Anda untuk membuka port openvpn di tempat kerja? Pada catatan terkait, pertanyaan ini karena dapat melanggar ketentuan FAQ yangLicensing, legal advice, and *circumvention of security or policy*
akan saya klarifikasi.Jawaban:
Jawaban singkat: nonaktifkan
comp-lzo
.Saya menyadari ini adalah posting lama, tetapi saya juga menderita kinerja OpenVPN yang buruk. Saya telah mencoba segalanya, menyesuaikan MTU, mengubah buffer snd dan rcv, penjepit mss, apa saja. Beban CPU dapat diabaikan.
Saat itu, saya menonaktifkan kompresi (dihapus
comp-lzo
dari klien dan server) dan kinerja meningkat 2-4x.Jadi, dengan
comp-lzo
mengaktifkan kinerja maksimal saya sekitar 25-30 Mbit / s, dan tanpa itu saya menekan 120 Mbit / s (kecepatan koneksi internet saya).Server adalah Xeon E5-2650, klien adalah Core i5-3320M. Keduanya menjalankan OpenVPN 2.3.10, AES-256-CBC, SHA512. Chromebook Intel saya juga memaksimalkan kecepatan internet saya. Kinerja meningkat dua kali lipat pada klien Android saya (14 Mbit / s -> 30 Mbit / s), yang cocok dengan kecepatan terowongan IKEv2.
sumber
TCP akan / lebih / lebih lambat dari UDP, yang disebabkan oleh masalah TCP-over-TCP . Pada dasarnya, TCP bergantung pada penurunan paket / kemacetan untuk mengidentifikasi parameter koneksi, dan koneksi TCP-over-OpenVPN Anda tidak mengalami salah satu dari itu. Tapi Anda sudah mengatakan itu bukan pilihan.
Anda juga dapat mencoba
mtu-disc
opsi untuk secara otomatis menemukan pengaturan MTU optimal untuk koneksi Anda. Ada sedikit ketidakcocokan di tempat yang berbeda, seperti pengaturan MTU OpenVPN termasuk ukuran header Ethernet. [ 1 ]tun-mtu
Pengaturan Anda sangat besar, karena paket 65KB akan memiliki banyak masalah latensi melalui internet (paket jumbo IPv4 berukuran sekitar 9000 byte, dan sebagian besar bekerja pada jaringan lokal). Cobalah sesuatu di bawah 1460, seperti 1300, untuk melihat apakah MTU adalah masalah Anda.sumber
Meskipun ini mungkin agak terlambat, Anda dapat mencoba apa yang saya lakukan:
hapus semua opsi terkait mss, mtu, dll
lakukan pemindaian port di institusi Anda dan pilih port UDP, umumnya 53 port GRE / 123 NDP harus terbuka:
Tambahkan baris ini ke konfigurasi server Anda (ref disini )
Saya tidak sepenuhnya memahami pengaturan ini tetapi mereka tentu saja membantu, beberapa mengatakan itu membantu banyak, dalam pengalaman saya, itu meningkatkan throughput saya dengan +/- 30%
Mulai server pada salah satu port tersebut dan Anda harus siap: P
Semoga ini membantu!
sumber
sndbuf dan rcvbuf mengoreksi pengaturan ANCIENT di linux / unix / openvpn dari hari-hari dialup untuk optmimize untuk pengaturan yang lebih lambat meskipun OS dioptimalkan untuk yang lebih cepat
sndbuf / rcvbuf yang diatur ke 0 hanya akan menggunakan pengaturan OS
push digunakan untuk memastikan klien diatur dengan benar tetapi di sana Anda perlu nilai.
sumber