Predstavljen je bil modul jedra, ki lahko znatno pospeši OpenVPN

Razvijalci paketa za navidezno zasebno omrežje OpenVPN so predstavili jedrni modul ovpn-dco, ki lahko znatno pospeši delovanje VPN. Kljub dejstvu, da se modul še vedno razvija s pogledom le na vejo linux-next in ima eksperimentalni status, je že dosegel raven stabilnosti, ki omogoča njegovo uporabo za zagotavljanje delovanja storitve OpenVPN Cloud.

V primerjavi s konfiguracijo, ki temelji na vmesniku tun, je uporaba modula na strani odjemalca in strežnika, ki uporablja šifro AES-256-GCM, omogočila 8-kratno povečanje prepustnosti (s 370 Mbit/s na 2950 Mbit). /s). Pri uporabi modula samo na strani odjemalca se je prepustnost povečala za trikrat pri odhodnem prometu in se ni spremenila pri dohodnem prometu. Pri uporabi modula samo na strani strežnika se je prepustnost povečala za 4-krat pri dohodnem prometu in za 35% pri odhodnem prometu.

Predstavljen je bil modul jedra, ki lahko znatno pospeši OpenVPN

Pospešek je dosežen s premikanjem vseh operacij šifriranja, obdelave paketov in upravljanja komunikacijskih kanalov na stran jedra Linuxa, kar odpravlja stroške, povezane s preklapljanjem konteksta, omogoča optimizacijo dela z neposrednim dostopom do API-jev notranjega jedra in odpravlja počasen prenos podatkov med jedrom in uporabniški prostor (šifriranje, dešifriranje in usmerjanje izvaja modul brez pošiljanja prometa upravljavcu v uporabniškem prostoru).

Ugotovljeno je bilo, da negativen vpliv na delovanje VPN povzročajo predvsem operacije šifriranja, ki zahtevajo veliko virov, in zamude, ki jih povzroči preklapljanje konteksta. Razširitve procesorja, kot je Intel AES-NI, so bile uporabljene za pospešitev šifriranja, vendar so kontekstna stikala ostala ozko grlo do pojava ovpn-dco. Poleg uporabe ukazov procesorja za pospešitev šifriranja, modul ovpn-dco dodatno poskrbi za razdelitev šifrirnih operacij na ločene segmente in obdelavo v večnitnem načinu, kar omogoča uporabo vseh razpoložljivih CPU jeder.

Trenutne omejitve izvajanja, ki bodo obravnavane v prihodnosti, vključujejo podporo samo za načine AEAD in »brez« ter šifre AES-GCM in CHACHA20POLY1305. Podpora DCO naj bi bila vključena v izdajo OpenVPN 2.6, ki je predvidena za 4. četrtletje tega leta. Modul je trenutno podprt v beta testiranju odjemalca OpenVPN3 Linux in eksperimentalnih različicah strežnika OpenVPN za Linux. Podoben modul, ovpn-dco-win, se razvija tudi za jedro Windows.

Vir: opennet.ru

Dodaj komentar