WireGuard получава собствен порт към ядрото на Windows

Ако използвате Windows, ще се радвате да чуете, че протоколът за VPN тунелиране от следващо поколение, WireGuard, получава собствен порт на ядрото на Windows.

Ако често използвате VPN (виртуални частни мрежи), ще бъдете развълнувани да чуете за нов проект, наречен WireGuardNT. За тези, които не са запознати, WireGuard е сравнително нов VPN протокол за тунелиране, който използва съвременни криптографски стандарти, има сигурна кодова база и има страхотна производителност. Той е интегриран в Linux ядро ​​с версия 5.6, но към днешна дата е имало внедряване на потребителско пространство само в Windows. Това е мястото, където се намесва WireGuardNT: Това е роден порт на WireGuard към ядрото на Windows и обещава да направи нещата много по-бързи.

WireGuard в Windows в момента използва споделена Go кодова база с TUN драйвер, наречен Уинтун. Работи в потребителското пространство и като съобщение казва, че "пастира пакети към и от интерфейса на Wintun". С WireGuardNT целият протокол се внедрява директно в мрежовия стек на Windows, точно както в Linux.

Докато производителността на WireGuard в Windows вече е доста добра, планът е тя да се подобри с WireGuardNT. Този проект все още е в начален етап, но дори преди да бъдат направени допълнителни настройки и оптимизации, той все още е по-бърз, тъй като е естествен в ядрото. Това може да се отдаде отчасти на намалените режийни разходи и латентност от всички контекстни превключвания, случващи се със старата реализация на wireguard-go/Wintun.

Но колко по-бързо е новото внедряване на WireGuardNT спрямо старата версия на потребителското пространство? При кабелна връзка разработчиците виждат скорости до 7,5 Gbps; разработчиците също са забелязали значителни подобрения в производителността и при Wi-Fi. Например, един тестер с WiFi карта Intel AC9560 получи ~600Mbps без WireGuard, ~95Mbps със старата версия на потребителското пространство през WiFi и ~600Mbps с внедряването на WireGuardNT през WiFi. По принцип ударът на безжичната производителност от старата версия на потребителското пространство е елиминиран благодарение на новия естествен порт на ядрото, а производителността на кабела е подобрена значително.

Както споменахме, проектът все още е в начален етап. За да бъде готов за пускане, има три фази на проекта във версия 0.4.z на клиента WireGuard за Windows. Първият етап, в който се намираме в момента, вижда WireGuardNT скрит зад копчето на регистъра „ExperimentalKernelDriver“, така че ако не го включите, той няма да бъде активиран. Във втората фаза внедряването на собственото ядро ​​ще бъде активирано по подразбиране. Третата и последна фаза ще види премахването на старата имплементация на потребителско пространство wireguard-go/Wintun от клиента на Windows, въпреки че тя все още ще се поддържа, за да поддържа други приложения и употреби.

Както е в случая с експериментални издания като това, разработчикът Джейсън Доненфелд се надява, че хората ще го изпробват, за да намерят грешки и да оставят отзиви. WireGuardNT вече е част от WireGuard клиента за Windows и е във версия 0.4. Можеш изтеглете го тук, или можете да прочетете повече за проекта тук.

В по-ранна версия на тази статия се посочва, че подобренията в мрежовата производителност са значителни само при безжична връзка.