Meningkatkan pengalaman pengguna VPN

Halaman ini memberikan panduan bagi operator jaringan untuk memastikan bahwa aplikasi virtual private network (VPN) konsumen dan perusahaan memberikan pengalaman pengguna akhir yang baik di jaringan mereka. Android menyediakan class VpnManager bagi developer untuk membuat solusi VPN, yang digunakan oleh konsumen dan perusahaan untuk mengenkripsi komunikasi mereka atau merutekannya ke jaringan yang berbeda.

Sebaiknya operator jaringan mengikuti panduan berikut:

  • Mendukung paket protokol IPv6 Encapsulating Security Payload (ESP) (Header Berikutnya 50) di jaringan Anda, sehingga traffic ini memiliki performa yang sebanding dengan koneksi user datagram protocol (UDP) atau transmission control protocol (TCP). Sesi ESP harus diizinkan masuk ke perangkat, atau disetel ke waktu tunggu yang sangat tinggi, dan diteruskan pada kecepatan saluran.
  • Tetapkan waktu tunggu (timeout) firewall stateful dan network address translation (NAT) minimal 600 detik untuk koneksi UDP pada port 4500 guna memastikan solusi VPN dapat mempertahankan konektivitas yang andal tanpa menimbulkan biaya daya yang berlebihan.

Mendukung paket protokol ESP IPv6 (Header Berikutnya 50)

Encapsulating Security Payload (ESP) adalah format paket yang ditentukan sebagai bagian dari rangkaian protokol Internet Protocol Security (IPSec) untuk mengenkripsi dan mengautentikasi paket dalam solusi VPN. OS Android menerapkan protokol keamanan standar ini dalam solusi VPN bawaannya.

Pada jaringan yang kompatibel dengan IPv6, paket ESP dibawa langsung dalam paket IPv6 dengan kolom Header Berikutnya 50. Jika jaringan tidak mendukung jenis paket ini dengan benar, hal ini dapat menyebabkan kurangnya konektivitas untuk solusi VPN yang bertujuan menggunakan protokol ini tanpa enkapsulasi lebih lanjut dari paket. Jaringan mungkin menghentikan paket ini karena konfigurasi firewall. Atau, paket ESP mungkin menghantam jalur lambat di jaringan, dengan performa throughput yang sangat menurun dibandingkan dengan koneksi TCP atau UDP.

Internet Engineering Task Force (IETF) merekomendasikan untuk mengizinkan IPsec melalui firewall yang digunakan oleh layanan akses internet konsumen. Misalnya, lihat RFC 6092 bagian 3.2.4. Paket ESP dapat diizinkan dengan aman melalui firewall di kedua arah karena jika perangkat menerima paket ESP yang bukan bagian dari asosiasi keamanan yang ada, perangkat akan membuang paket tersebut. Akibatnya, perangkat tidak perlu mengirim paket keepalive untuk mempertahankan konektivitas VPN, sehingga menghemat masa pakai baterai. Sebaiknya jaringan mengizinkan paket ESP ke perangkat setiap saat, atau menghentikan sesi ESP setelah lama tidak ada aktivitas (misalnya, 30 menit).

Sebaiknya operator jaringan mendukung paket protokol ESP (paket IPv6 dengan Header Berikutnya 50) di jaringan mereka dan meneruskan paket tersebut di hardware dengan kecepatan saluran. Hal ini memastikan solusi VPN tidak mengalami masalah konektivitas dan memberikan performa yang sebanding dengan koneksi UDP atau TCP.

Menetapkan waktu tunggu firewall stateful dan NAT yang memadai

Untuk menjaga keandalan koneksi, solusi VPN harus mempertahankan koneksi yang berlangsung lama ke server VPN yang menyediakan konektivitas keluar dan masuk (misalnya, untuk menerima notifikasi push masuk, pesan chat, dan panggilan audio atau video). Sebagian besar aplikasi VPN IPsec menggunakan ESP yang dienkapsulasi dalam paket UDP IPv4 dengan port tujuan 4500, seperti yang dijelaskan dalam RFC 3948.

Untuk mempertahankan koneksi ini, perangkat harus mengirim paket secara berkala ke server. Paket ini harus dikirim pada frekuensi yang lebih tinggi daripada waktu tunggu NAT dan firewall yang diterapkan oleh operator jaringan. Keep-alive yang sering dilakukan akan menguras daya di sisi klien, dan berdampak besar pada daya tahan baterai. Aplikasi ini juga menghasilkan traffic sinyal yang besar di jaringan, meskipun perangkat sedang tidak aktif.

Sebaiknya operator menaikkan waktu tunggu firewall stateful dan NAT hingga cukup tinggi untuk menghindari dampak pada baterai. Waktu tunggu yang direkomendasikan untuk enkapsulasi UDP IPsec (port 4500) adalah 600 detik atau lebih.

Di jaringan seluler, waktu tunggu NAT UDP sering kali dijaga tetap rendah karena kelangkaan alamat IPv4 memaksakan faktor penggunaan ulang port yang tinggi. Namun, saat VPN dibuat, jaringan perangkat tidak perlu mendukung koneksi TCP yang berlangsung lama, seperti yang digunakan untuk mengirimkan notifikasi masuk. Jadi, jumlah koneksi yang berjalan lama yang perlu didukung oleh jaringan sama atau lebih rendah saat VPN berjalan dibandingkan saat VPN tidak berjalan.