Buvo pristatytas branduolio modulis, kuris gali žymiai pagreitinti OpenVPN

OpenVPN virtualaus privataus tinklo paketo kūrėjai pristatė ovpn-dco branduolio modulį, kuris gali žymiai pagreitinti VPN veikimą. Nepaisant to, kad modulis vis dar kuriamas žiūrint tik į linux-next atšaką ir turi eksperimentinį statusą, jis jau pasiekė stabilumo lygį, leidžiantį jį naudoti siekiant užtikrinti OpenVPN Cloud paslaugos veikimą.

Palyginti su konfigūracija, pagrįsta tun sąsaja, modulio naudojimas kliento ir serverio pusėse naudojant AES-256-GCM šifrą leido 8 kartus padidinti pralaidumą (nuo 370 Mbit/s iki 2950 Mbit). /s). Naudojant modulį tik kliento pusėje, išeinančio srauto pralaidumas padidėjo tris kartus, o įeinančio srauto nepakito. Naudojant modulį tik serverio pusėje, gaunamo srauto pralaidumas padidėjo 4 kartus, o išeinančio srauto – 35%.

Buvo pristatytas branduolio modulis, kuris gali žymiai pagreitinti OpenVPN

Paspartinimas pasiekiamas perkeliant visas šifravimo operacijas, paketų apdorojimą ir ryšio kanalų valdymą į Linux branduolio pusę, o tai pašalina su konteksto perjungimu susijusias pridėtines išlaidas, leidžia optimizuoti darbą tiesiogiai prisijungiant prie vidinių branduolio API ir pašalina lėtą duomenų perdavimą tarp branduolio. ir vartotojo erdvė (šifravimą, iššifravimą ir maršruto parinkimą atlieka modulis, nesiunčiant srauto į vartotojo erdvėje esančią tvarkyklę).

Pažymima, kad neigiamą poveikį VPN veikimui daugiausia sukelia daug išteklių reikalaujančios šifravimo operacijos ir vėlavimai, atsirandantys dėl konteksto perjungimo. Procesoriaus plėtiniai, tokie kaip Intel AES-NI, buvo naudojami šifravimui paspartinti, tačiau konteksto jungikliai išliko kliūtimi iki pat ovpn-dco atsiradimo. Be to, kad ovpn-dco modulis naudojasi procesoriaus teikiamomis instrukcijomis šifravimui pagreitinti, papildomai užtikrina, kad šifravimo operacijos būtų suskirstytos į atskirus segmentus ir apdorojamos kelių gijų režimu, leidžiančiu naudoti visus turimus procesoriaus branduolius.

Dabartiniai diegimo apribojimai, kurie bus sprendžiami ateityje, apima tik AEAD ir „nėra“ režimų palaikymą bei AES-GCM ir CHACHA20POLY1305 šifrus. Planuojama, kad DCO palaikymas bus įtrauktas į „OpenVPN 2.6“ leidimą, planuojamą šių metų 4 ketvirtį. Modulis šiuo metu palaikomas beta versijos „OpenVPN3 Linux“ kliento ir „Linux“ skirto OpenVPN serverio eksperimentinėse versijose. Panašus modulis ovpn-dco-win taip pat kuriamas Windows branduoliui.

Šaltinis: opennet.ru

Добавить комментарий