Modul kernel telah diperkenalkan yang boleh mempercepatkan OpenVPN dengan ketara

Pembangun pakej rangkaian peribadi maya OpenVPN telah memperkenalkan modul kernel ovpn-dco, yang boleh mempercepatkan prestasi VPN dengan ketara. Walaupun hakikatnya modul itu masih dibangunkan dengan hanya melihat kepada cawangan linux-seterusnya dan mempunyai status percubaan, ia telah mencapai tahap kestabilan yang membolehkan ia digunakan untuk memastikan operasi perkhidmatan OpenVPN Cloud.

Berbanding dengan konfigurasi berdasarkan antara muka tun, penggunaan modul pada sisi klien dan pelayan menggunakan sifir AES-256-GCM memungkinkan untuk mencapai peningkatan 8 kali ganda dalam daya pemprosesan (daripada 370 Mbit/s kepada 2950 Mbit /s). Apabila menggunakan modul hanya pada bahagian pelanggan, daya pengeluaran meningkat tiga kali ganda untuk trafik keluar dan tidak berubah untuk trafik masuk. Apabila menggunakan modul hanya pada bahagian pelayan, daya pengeluaran meningkat sebanyak 4 kali ganda untuk trafik masuk dan sebanyak 35% untuk trafik keluar.

Modul kernel telah diperkenalkan yang boleh mempercepatkan OpenVPN dengan ketara

Pecutan dicapai dengan mengalihkan semua operasi penyulitan, pemprosesan paket dan pengurusan saluran komunikasi ke bahagian kernel Linux, yang menghapuskan overhed yang berkaitan dengan penukaran konteks, memungkinkan untuk mengoptimumkan kerja dengan mengakses terus API kernel dalaman dan menghapuskan pemindahan data yang perlahan antara kernel dan ruang pengguna (penyulitan, penyahsulitan dan penghalaan dilakukan oleh modul tanpa menghantar trafik kepada pengendali dalam ruang pengguna).

Adalah diperhatikan bahawa kesan negatif terhadap prestasi VPN adalah disebabkan terutamanya oleh operasi penyulitan intensif sumber dan kelewatan yang disebabkan oleh penukaran konteks. Sambungan pemproses seperti Intel AES-NI digunakan untuk mempercepatkan penyulitan, tetapi suis konteks kekal sebagai hambatan sehingga kemunculan ovpn-dco. Selain menggunakan arahan yang disediakan oleh pemproses untuk mempercepatkan penyulitan, modul ovpn-dco juga memastikan operasi penyulitan dibahagikan kepada segmen berasingan dan diproses dalam mod berbilang benang, yang membolehkan penggunaan semua teras CPU yang tersedia.

Had pelaksanaan semasa yang akan ditangani pada masa hadapan termasuk sokongan untuk mod AEAD dan 'tiada' sahaja, dan sifir AES-GCM dan CHACHA20POLY1305. Sokongan DCO dirancang untuk disertakan dalam keluaran OpenVPN 2.6, yang dijadualkan pada suku ke-4 tahun ini. Modul ini kini disokong dalam klien OpenVPN3 Linux ujian beta dan binaan percubaan pelayan OpenVPN untuk Linux. Modul serupa, ovpn-dco-win, juga sedang dibangunkan untuk kernel Windows.

Sumber: opennet.ru

Tambah komen