Predstavljen je kernel modul koji može značajno ubrzati OpenVPN

Programeri paketa za virtualno privatno umrežavanje OpenVPN predstavili su kernel modul ovpn-dco, koji može značajno ubrzati rad VPN-a. Unatoč činjenici da se modul još uvijek razvija s osvrtom samo na granu linux-next i ima eksperimentalni status, već je dosegao razinu stabilnosti koja mu omogućuje da se koristi za osiguranje rada usluge OpenVPN Cloud.

U usporedbi s konfiguracijom koja se temelji na tun sučelju, upotrebom modula na strani klijenta i poslužitelja koji koristi šifru AES-256-GCM omogućeno je povećanje propusnosti od 8 puta (sa 370 Mbit/s na 2950 Mbit). /s). Kada se modul koristi samo na strani klijenta, propusnost se utrostručila za odlazni promet i nije se promijenila za dolazni promet. Kada se modul koristi samo na strani poslužitelja, propusnost se povećala za 4 puta za dolazni promet i za 35% za odlazni promet.

Predstavljen je kernel modul koji može značajno ubrzati OpenVPN

Ubrzanje se postiže premještanjem svih operacija enkripcije, obrade paketa i upravljanja komunikacijskim kanalima na stranu Linux kernela, što eliminira opterećenje povezano s prebacivanjem konteksta, omogućuje optimiziranje rada izravnim pristupom internim API-jima kernela i eliminira spor prijenos podataka između kernela i korisnički prostor (šifriranje, dešifriranje i usmjeravanje obavlja modul bez slanja prometa rukovatelju u korisničkom prostoru).

Napominje se da je negativan utjecaj na performanse VPN-a uglavnom uzrokovan operacijama enkripcije koje zahtijevaju velike resurse i kašnjenjima uzrokovanim prebacivanjem konteksta. Procesorska proširenja kao što je Intel AES-NI korištena su za ubrzanje enkripcije, ali su kontekstni prekidači ostali usko grlo sve do pojave ovpn-dco. Osim korištenja instrukcija koje daje procesor za ubrzanje enkripcije, ovpn-dco modul dodatno osigurava da su operacije enkripcije podijeljene u zasebne segmente i obrađene u višenitnom načinu rada, što omogućuje korištenje svih dostupnih CPU jezgri.

Trenutna ograničenja implementacije koja će se riješiti u budućnosti uključuju podršku samo za AEAD i 'none' načine, te AES-GCM i CHACHA20POLY1305 šifre. DCO podrška planira se uključiti u izdanje OpenVPN 2.6, zakazano za 4. kvartal ove godine. Modul je trenutno podržan u beta testiranju OpenVPN3 Linux klijenta i eksperimentalnim verzijama OpenVPN poslužitelja za Linux. Sličan modul, ovpn-dco-win, također se razvija za Windows kernel.

Izvor: opennet.ru

Dodajte komentar