Meningkatkan pengalaman pengguna VPN

Halaman ini memberikan panduan bagi operator jaringan untuk memastikan aplikasi virtual private network (VPN) konsumen dan perusahaan memberikan pengalaman pengguna akhir yang baik di jaringan mereka. Android provides the VpnManager class for developers to create VPN solutions, which are used by consumers and enterprises to encrypt their communications or route them to different networks.

Sebaiknya operator jaringan mengikuti panduan berikut:

  • Mendukung paket protokol Encapsulating Security Payload (ESP) IPv6 (Header Berikutnya 50) di jaringan Anda, memastikan 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 ditetapkan ke waktu tunggu yang sangat tinggi, dan diteruskan pada kecepatan saluran.
  • Menetapkan waktu tunggu firewall stateful dan network address translation (NAT) minimal 600 detik untuk koneksi UDP di 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. Android OS menerapkan protokol keamanan standar ini dalam solusi VPN bawaannya.

Di jaringan yang mendukung 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 akan menghentikan paket ini karena konfigurasi firewall. Atau paket ESP mungkin mengalami 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 menghentikan paket tersebut. Alhasil, perangkat tidak perlu mengirim paket keepalive untuk mempertahankan konektivitas VPN, yang menghemat masa pakai baterai. Sebaiknya jaringan mengizinkan paket ESP ke perangkat setiap saat, atau menghentikan sesi ESP hanya 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 pada 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 mempertahankan keandalan koneksi, solusi VPN perlu mempertahankan koneksi yang tahan 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 perlu mengirim paket ke server secara berkala. Paket ini harus dikirim dengan frekuensi yang lebih tinggi daripada waktu tunggu NAT dan firewall yang ditetapkan oleh operator jaringan. Keepalive yang sering kali intensif daya di sisi klien, dan memiliki dampak besar pada masa pakai baterai. Keepalive juga menghasilkan traffic sinyal yang besar di jaringan, meskipun perangkat dalam keadaan tidak aktif.

Sebaiknya operator meningkatkan waktu tunggu firewall stateful dan NAT yang 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 memberlakukan faktor penggunaan kembali port yang tinggi. Namun, saat VPN dibuat, jaringan perangkat tidak perlu mendukung koneksi TCP yang tahan lama, seperti yang digunakan untuk mengirim notifikasi masuk. Jadi, jumlah koneksi yang tahan lama yang perlu didukung jaringan sama atau lebih rendah saat VPN berjalan dibandingkan saat VPN tidak berjalan.