Какой протокол лучше WireGuard или OpenVPN

11 декабря 2025 г.
Просмотров: 77

WireGuard против OpenVPN

Какой протокол работает лучше?

Возможно, вы видели WireGuard и OpenVPN в списке доступных протоколов в вашем VPN-клиенте, но задумывались ли вы, в чём между ними разница? Мы хотели увидеть, как они работают в реальных условиях, поэтому провели контролируемое сравнение «бок о бок» с четырьмя идентичными, новыми ноутбуками. В этой статье мы обсудим основные технические различия между WireGuard и OpenVPN и поделимся результатами нашего сравнения производительности.

Что такое VPN-протокол?

VPN-протоколы — это наборы правил, которые определяют, как ваше устройство взаимодействует с VPN-сервером, к которому вы пытаетесь подключиться. Они определяют, как ваши данные шифруются, маршрутизируются и аутентифицируются до и когда они прибывают на VPN-сервер. Каждый протокол работает по-разному и может привести к значительным различиям в скорости, безопасности и использовании ресурсов, поэтому важно выбирать с умом.

Что такое OpenVPN?

Обзор

Помимо того, что это название самого протокола, OpenVPN — это программный проект и название компании, которая им управляет, OpenVPN Inc., основанной в 2001 году. Протокол OpenVPN является бесплатным и открытым (open source), что означает, что любой может изучить код и проверить его на уязвимости. Это важная деталь, потому что это означает, что больше глаз может изучать протокол, снижая шансы, что уязвимости в кодовой базе останутся надолго. Однако его чрезвычайно большая кодовая база (сотни тысяч строк) означает, что для отдельных лиц крайне непрактично её анализировать, и у неё гораздо более широкая «поверхность атаки» для появления ошибок. Тем не менее, это не значит, что он небезопасен. Десятилетия его существования сопровождались многочисленными обширными проверками безопасности, и он по-прежнему широко считается одним из лучших доступных VPN-протоколов.

Гибкость и режимы

OpenVPN высокогибкий и настраиваемый. Он может работать в двух транспортных режимах:

  • TCP: Отдаёт приоритет стабильности, отправляя пакеты по порядку и проверяя наличие ошибок каждый раз при отправке или получении, гарантируя, что данные достигают места назначения в целости. В результате он может быть медленным и требующим большой пропускной способности.

  • UDP: Отправляет данные в неупорядоченном потоке без какого-либо подтверждения от получателя об отсутствии ошибок или потерянных пакетов. Он значительно быстрее и имеет меньшую задержку, чем TCP, но более подвержен ошибкам и потере пакетов.

Возможность выбора между двумя режимами — это плюс, потому что каждый хорош в своей области. Если вы играете в игры или транслируете видео, UDP лучше, поскольку приоритетом является скорость, но если вы отправляете электронные письма или текстовые сообщения, TCP гарантирует, что эти сообщения прибудут полностью.

Криптография, безопасность и производительность
OpenVPN использует OpenSSL в качестве основной библиотеки шифрования. Это ещё один проект с открытым исходным кодом, который часто обновляется и поддерживает множество криптографических шифров, хешей и криптографии с открытым ключом. Вы можете настроить дополнительные уровни безопасности, включая PFS (Perfect Forward Security) и TLS (Transport Layer Security). Все эти опции делают OpenVPN чрезвычайно гибким для различных сценариев использования и профилей риска.

Хотя настраиваемость может быть преимуществом, она также может быть недостатком. Важно отметить, что как подписчик VPN-сервиса вы зависите от того, как ваш VPN-провайдер настраивает свои серверы OpenVPN, поэтому опыт использования может сильно различаться от сервера к серверу. У него также более высокая нагрузка (overhead), чем у WireGuard, поэтому он, как правило, медленнее с худшей задержкой.

Что такое WireGuard?

Обзор

Джейсон А. Доненфельд впервые выпустил WireGuard в середине 2010-х годов. Его цель — быть проще, быстрее и безопаснее, чем другие протоколы, используя один набор фиксированных криптографических примитивов. Как и OpenVPN, он имеет открытый исходный код, и его код может просмотреть любой. Однако, в отличие от OpenVPN, у него всего около 4000 строк кода, что делает возможным для отдельных лиц проводить аудит и находить потенциальные уязвимости.

Простота

Большая часть причины, по которой у WireGuard так мало строк кода, заключается в том, что он «криптографически принципиален». Это означает, что он поддерживает только один криптографический набор: ChaCha20 для шифрования, Poly1305 для аутентификации и Curve25519 для обмена ключами. Это одни из самых новых и безопасных криптографических технологий, без известных уязвимостей безопасности. Другая причина его компактности в том, что протокол не обрабатывает аутентификацию так же, как другие. Вместо этого каждый узел настраивается с открытым ключом другого, и после шифрования трафик отправляется дальше. VPN-клиенты обычно автоматизируют этот шаг и генерируют файлы конфигурации за вас. В отличие от OpenVPN, WireGuard работает только в режиме UDP и не предлагает режим TCP.

Соображения производительности

Поскольку доступен только один набор криптографических примитивов, WireGuard не предлагает и близко того уровня гибкости, который есть у OpenVPN, но это сделано намеренно. Одно из преимуществ — более высокая пропускная способность и потенциал производительности благодаря меньшей нагрузке в пользовательском пространстве. Благодаря меньшей кодовой базе у него меньшая «поверхность атаки», то есть в целом меньше мест для появления ошибок и уязвимостей.

Его нехватка гибкости может быть очевидным препятствием для конкретных сценариев, где вам требуются возможности настройки OpenVPN. Распространённый сценарий — если вам нужно использовать TCP, поскольку некоторые сети полностью блокируют UDP-трафик.

WireGuard против OpenVPN: какой лучше?

Чтобы выяснить это, мы проверили оба протокола.

Настройка

Мы настроили четыре одинаковых новых ноутбука Lenovo ThinkPad P14s Gen 6 под управлением Windows 11 с установленным CLI (интерфейсом командной строки) от Speedtest.net. Первый ноутбук был контрольным, где мы запускали тесты скорости напрямую из нашей сети в Монреале на сервер Speedtest в Лондоне, Англия. Мы настроили второй и третий ноутбуки на подключение к серверам Mullvad OpenVPN в Лондоне с использованием клиента OpenVPN Community, в соответствии с руководством по установке Mullvad. Второй ноутбук был настроен на использование TCP, а третий — UDP. Наконец, мы настроили четвёртый ноутбук на подключение к серверам Mullvad WireGuard в Лондоне с использованием клиента WireGuard. Мы решили использовать нативный клиент каждого протокола вместо приложения Mullvad, чтобы исключить потенциальные переменные, связанные с приложением, и попытаться сделать тест более сопоставимым для разных VPN-сервисов. Тем не менее, результаты по-прежнему сильно зависят от VPN-провайдера, его серверной инфраструктуры и нагрузки.

Ограничения настройки

Также важно отметить, что наши результаты сильно зависят от физических характеристик сети, например, от того, где расположен сервер, к которому вы пытаетесь подключиться. Если бы мы, к примеру, подключились к VPN-серверам в Монреале, мы, скорее всего, получили бы значительно другие результаты. Тем не менее, наши результаты хорошо иллюстрируют общие тенденции между двумя протоколами и сравнимы друг с другом.

Результаты

В таблице ниже показаны средние результаты, которые мы получили при сравнении OpenVPN и WireGuard.

Протокол Скорость
загрузки
(Мбит/с)
Скорость
отдачи
(Мбит/с)
Пинг
Джиттер
(мс)
Задержка
пинга
(мс)
Задержка
загрузки
IQM
(мс)
Задержка
отдачи
IQM
(мс)
Джиттер
задержки
загрузки
(мс)
Джиттер
задержки
отдачи
(мс)
Потеря
пакетов
(%)
Контроль 897.0 918.5 0.4 80.6 171.3 174.6 62.2 57.1 0
OpenVPN TCP 44.1 39.2 0.3 92.7 360.5 143.8 89.5 44.7 0
OpenVPN UDP 149.1 125.8 2.9 84.0 323.4 161.9 89.8 56.0 15.2
WireGuard 353.6 366.0 0.6 90.1 611.6 253.2 102.1 77.8 0

Мы провели в общей сложности 19 тестов скорости для каждого протокола, за одним исключением: OpenVPN UDP. Десять тестов скорости завершились неудачей, поэтому результаты имеют меньший размер выборки — 9 вместо 19 для остальных. Мы не можем сказать наверняка, почему это произошло. Сбои могли быть вызваны ошибками в самой программе Speedtest CLI или, возможно, высоким уровнем потери пакетов.

WireGuard значительно быстрее OpenVPN.

Как и ожидалось, WireGuard является явным победителем, когда речь идёт о чистой скорости. Это наглядно иллюстрирует, как его простой, низконагруженный дизайн способствует высокой пропускной способности.

У WireGuard выше загруженная задержка, чем у OpenVPN.

Хотя между протоколами нет значительной разницы в незагруженной задержке пинга, WireGuard демонстрирует более высокую задержку загрузки IQM (интерквартильное среднее), чем другие протоколы. Возможно, поскольку WireGuard имеет значительно более высокую пропускную способность, чем OpenVPN, он слишком быстро заполняет сетевой буфер на стороне сервера, что приводит к «раздуванию буфера» (bufferbloat) и увеличению задержки. Другая вероятная причина высокой задержки может быть в маршрутизации сети. Поскольку мы запускали тест скорости на трансатлантический сервер, данные проходят физически долгий путь до сервера, и незначительные различия в маршрутизации могут повлиять на конечную задержку.

На практике вы заметили бы более высокую загруженную задержку только если бы делали что-то чувствительное к задержкам (например, играли или были на видеозвонке) и одновременно загружали что-то на полной скорости.

У WireGuard немного больше загруженного джиттера, чем у OpenVPN.

Хотя у каждого протокола незначительное количество незагруженного джиттера пинга, WireGuard работает немного хуже, когда речь идёт о загруженном джиттере задержки загрузки и отдачи. Опять же, это может быть вызвано высокой пропускной способностью WireGuard, что приводит к временным вариациям между пакетами, которые перерастают в измеримый джиттер. Тем не менее, различия между протоколами недостаточно значительны, чтобы оказать заметное влияние на повседневное использование.

Заключение

Благодаря своему простому, лёгкому дизайну WireGuard обеспечивает значительно более высокую скорость загрузки, чем OpenVPN в любом режиме (TCP или UDP), без потери пакетов. Это делает его лучшим выбором для быстрой загрузки больших файлов или потоковой передачи видео с высоким битрейтом.

Тем не менее, мы наблюдали более высокую задержку и джиттер у WireGuard под нагрузкой. Это может быть связано с тем, как протокол отдаёт приоритет быстрой отправке пакетов по UDP, потенциально заполняя сетевые буферы и вызывая задержки в очереди. На практике это было бы заметно только в том случае, если бы вы полностью насыщали своё интернет-соединение, одновременно делая что-то чувствительное к задержкам, например, играя в игры или находясь на видеозвонке.

В конечном счёте, WireGuard, вероятно, является лучшим протоколом, если вы используете коммерческий VPN-провайдер и ваше устройство его поддерживает. Его более простая конфигурация и простота делают его лёгким для безопасной настройки, а его лёгкий дизайн создаёт меньшую нагрузку для лучшей скорости. Тем не менее, OpenVPN определённо имеет своё место, и если вам нужна его гибкость или, особенно, резервный вариант TCP, он справляется со своей задачей.

Комментарии
Ваш комментарий:
Имя:
Отправляя форму, я даю согласие на обработку персональных данных.
— Поля, обязательные для заполнения
Читайте еще
На этом сайте используются файлы cookie. Продолжая просмотр сайта, вы разрешаете их использование. Подробнее. Закрыть