UDP и TCP VPN — Обзор и Сравнение
Пытаясь выбрать подходящий протокол VPN, вы можете потратить часы на поиски идеального варианта. К счастью, VPN Unlimited предлагает множество современных VPN-протоколов, которые можно настроить лично.
Чтобы выбрать правильный баланс между безопасностью и скоростью, вам нужно знать, какой протокол поддерживается вашим устройством. По умолчанию VPN Unlimited будет использовать оптимальный протокол VPN, но вы всегда можете зайти в настройки приложения и проверить все возможные варианты. Продолжайте читать, чтобы узнать больше о протоколах UDP и TCP VPN и понять, почему вам следует использовать тот или иной протокол.
Коротко о UDP и TCP
UDP и TCP: Разница в безопасности и скорости
Главное о UDP и TCP
Протоколы UDP и TCP VPN — Заключение
FAQ об UDP и TCP
Безопасность или скорость? Получите и то, и другое с VPN Unlimited!
Коротко о UDP и TCP
В целом, оба протокола широко используются в современных сетях. Они позволяют гарантировать доставку сообщения адресату и сохранять правильную последовательность передачи данных. В то же время эти протоколы имеют некоторые отличия, что позволяет использовать их для решения различных задач.
Что такое TCP?
TCP (Transmission Control Protocol) — это сетевой протокол, который позволяет не терять данные при передаче, запрашивает подтверждение получения у принимающей стороны и, при необходимости, повторно отправляет данные. Прежде чем начать обмен данными, этот протокол должен установить соединение между двумя серверами. Недостатком этого протокола является низкая скорость передачи данных, поскольку выполнение надежной и упорядоченной передачи занимает больше времени, чем в альтернативном протоколе UDP.
Что такое UDP?
Протокол UDP (User Datagram Protocol) проще. Для передачи данных ему не требуется устанавливать соединение между отправителем и получателем. Информация передается без предварительной проверки готовности принимающей стороны. Это делает протокол менее надежным — некоторые фрагменты данных могут быть потеряны во время передачи. Но скорость передачи данных для этого протокола будет выше.
Скачайте наше решение и ознакомьтесь с преимуществами протоколов TCP и UDP
Получите 30-дневную гарантию возврата денег и 7-дневную бесплатную пробную версию VPN Unlimited!
OpenVPN: udp vs tcp
есть 15 офисов в казных городах связанных при помощи OpenVPN. Используется в качестве протокола upd. Бегает по сети разный трафик в тоv числе и VoIP.
Если смысл вместо upd использовать tcp? Повысит ли переход на tcp в реальных условиях?
alex-123
11.12.09 02:55:21 MSK
При наличии статических IP у каждого клиента, TCP для VPN хуже чем UDP
no-dashi ★★★★★
( 11.12.09 06:51:02 MSK )
Ответ на: комментарий от no-dashi 11.12.09 06:51:02 MSK
Openvpn
расскажите подробнее, почему?
AndreyU
( 11.12.09 10:42:52 MSK )
Ответ на: комментарий от no-dashi 11.12.09 06:51:02 MSK
> При наличии статических IP у каждого клиента, TCP для VPN хуже чем UDP
да клиенты имеют статику
alex-123
( 11.12.09 10:52:03 MSK ) автор топика
Ответ на: Openvpn от AndreyU 11.12.09 10:42:52 MSK
Re: Openvpn
У TCP больше накладных расходов на установку и поддержку соединений. UDP в данном случае будет работать быстрее.
Steel901 ★
( 11.12.09 11:19:35 MSK )
Говорят, есть люди, считающие, что для VPN TCP заруливает UDP.
Правда, лично я ни одного такого товарища живым не видел.
Сам юзаю TCP для VPN только когда надо пройти через CONNECT/SOCKS прокси. В остальных случаях — UDP.
nnz ★★★★
( 11.12.09 14:33:25 MSK )
Ответ на: комментарий от nnz 11.12.09 14:33:25 MSK
наблюдал проблемы с UDP когда клиенты сидели за 2 NATами. С TCP все ОК. Ну и никаких заморочек с MTU, что очень удобно.
LKplusplus
( 12.12.09 12:50:27 MSK )
Ответ на: комментарий от no-dashi 11.12.09 06:51:02 MSK
> При наличии статических IP у каждого клиента, TCP для VPN хуже чем UDP
А при динамических TCP лучше? Ваша фраза непонятна.
LKplusplus
( 12.12.09 12:51:45 MSK )
Вообще, вопрос очень не простой. На первый взгляд очевидно что порождается двойной оверхед при использовании tcp. А на второй ищи в гугле доку why tcp over tcp not so bad idea где приведены бенчмарки и даже некоторые математические обоснования результатов. Оттуда будет понятно почему tcp или udp с точки зрения эффективности использования канала в большиенстве случаев равноценны.
true_admin ★★★★★
( 12.12.09 16:40:17 MSK )
Ответ на: комментарий от true_admin 12.12.09 16:40:17 MSK
У меня, например, при работе ssh over OpenVPN/TCP иногда рвется связь, когда сервер ВНЕЗАПНО начинает отправлять много текста. Например, при запуске пакетного менеджера. Лично меня это нифига не радует.
nnz ★★★★
( 12.12.09 17:15:41 MSK )
Ответ на: комментарий от nnz 12.12.09 17:15:41 MSK
cat /dev/zero воспроизводит эту проблему? Могу проверить у себя.
true_admin ★★★★★
( 12.12.09 18:24:51 MSK )
Ответ на: комментарий от true_admin 12.12.09 18:24:51 MSK
[nnz@aleph ~]$ cat /dev/zero | uuencode -m - begin-base64 644 - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA . AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA Read from remote host aleph: Connection reset by peer Connection to aleph closed.
nnz ★★★★
( 12.12.09 19:20:30 MSK )
Ответ на: комментарий от nnz 12.12.09 19:20:30 MSK
20метров трафика(iptraf) прогнал на консоль тем способом что ты сказал, всё в норме. На одном конце 2.1~rc11-1(дебиан), на другом 2.1~rc19-1ubuntu2
Посмотри снифером что за «connection reset by peer» прилетает.
true_admin ★★★★★
( 12.12.09 20:53:54 MSK )
Ответ на: комментарий от true_admin 12.12.09 20:53:54 MSK
>20метров трафика(iptraf) прогнал на консоль тем способом что ты сказал, всё в норме.
Здесь принципиально важна ВНЕЗАПНОСТЬ. Например, если до этого тоже передавать относительного много трафика, то обрыва не произойдет.
В данном случае я ввел команду, подождал примерно 15 минут, и только потом нажал Enter (связь оборвалась через секунду). Условия, конечно, отдают искусственностью, но и на практике подобное порою происходит.
Посмотри снифером что за «connection reset by peer» прилетает.
А что конкретно там нужно смотреть? Это же шифрованное соединение. Пакет с флагом RST что ли?
nnz ★★★★
( 12.12.09 21:23:58 MSK )
В твоем случае лучше не будет, а хуже — с очень большой вероятностью. Во всяком случае, про VoIP через tcp-based_VPN можешь забыть.
И вообще, одмин, который все это сделал и отладил — знал толк в своем деле. Не надо в первые же месяцы работы на новом месте ломать работающую схему.
ansky ★★★★★
( 13.12.09 05:57:00 MSK )
Ответ на: комментарий от nnz 12.12.09 21:23:58 MSK
А что конкретно там нужно смотреть? Это же шифрованное соединение. Пакет с флагом RST что ли?
tcpdump -i vpn работает как надо :). Ну и логи openvpn я бы глянул.
Why does OpenVPN use UDP and TCP?
The OpenVPN protocol itself functions best over just the UDP protocol. And by default the connection profiles that you can download from the Access Server are preprogrammed to always first try UDP, and if that fails, then try TCP. Unfortunately, on some more restrictive networks, all traffic except very commonly used ports are simply blocked.
For example on a public network it can be quite normal to see that only traffic for protocols such as HTTP, FTP, SMTP, POP3, and IMAP, are allowed, with usually some additional ports for SSL secured versions of those protocols, like HTTPS. Those protocols are almost all TCP-only and not UDP. On such networks it’s useful to also support TCP connections, even though this is less ideal due to the possibility of the TCP Meltdown phenomenon. But given the choices between something that works reasonably well or not at all, we’ve chosen to be practical and also support TCP. By default we choose the port TCP 443 which is the same port as HTTPS traffic, which is usually allowed even on restrictive networks.
- Plugins
- Release Notes
- Documentation
- Features
- Cyber Shield
- Quick Start Guide
- Documentation
- Support Center
- What is a VPN?
- Resource Center
© Copyright 2023 OpenVPN | OpenVPN is a registered trademark of OpenVPN, Inc. | CloudConnexa is a registered trademark of OpenVPN, Inc.
Про протоколы TCP и UDP простыми словами
Скорость и надёжность передачи данных зависит от того, какой сетевой протокол вы используете: UDP или TCP. Они выполняют одну и ту же задачу, но по-разному. Один из них более надежный, а другой – более быстрый. Как понять, какой из них подходит вам? Узнайте об этом в нашей статье.
Jan 29, 2023
Время чтения: 5 мин.
Что такое TCP
TCP (Transmission Control Protocol) – это сетевой протокол, передающий данные с устройства пользователя на веб-сервер. Всякий раз, когда вы общаетесь с друзьями по Skype, отправляете электронные письма, смотрите онлайн-видео или просто просматриваете сайты, используется протокол TCP.
Перед отправкой данных протокол TCP сначала обязательно установит соединение между получателем и отправителем и будет поддерживать его в течение всего процесса передачи данных. Это гарантирует, что данные передаются в целости и сохранности. Благодаря своей надежности, TCP является самым популярным сетевым протоколом.
Что такое UDP
UDP расшифровывается как User Datagram Protocol. По сравнению с TCP, сетевой протокол UDP менее надежен, но быстрее и проще. Он часто используется в ситуациях, когда высокая скорость имеет решающее значение, например, при просмотре потокового телевидения или во время онлайн-игр.
В отличие от TCP, протокол UDP не устанавливает предварительную связь между двумя сторонами. Ввиду этого иногда какие-то данные могут потеряться в пути, зато у вас будет высокая скорость.
Принцип работы TCP и UDP
Протокол TCP работает надежнее, чем UDP. Он передает пакеты данных с устройства на веб-сервер. UDP быстрее и проще, но не даёт гарантии, что пакет по дороге не потеряется.
Принцип работы TCP такой:
- TCP присваивает каждому пакету данных уникальный идентификатор и порядковый номер. Это позволяет получателю определить, какой пакет был получен и какой поступает следующим.
- Как только пакет данных получен в правильном порядке, получатель отправляет подтверждение отправителю.
- Теперь отправитель может отправить следующий пакет.
- Если пакет потерян или отправлен в неправильном порядке, получатель молчит, сигнализируя о том, что тот же пакет данных нужно отправить снова.
Последовательная отправка данных решает сразу несколько задач: контроль над перегрузками, больше возможностей управлять потоком, а также легче обнаруживать и исправлять ошибки. К тому же данные, отправленные через TCP, с большей вероятностью достигнут места назначения в полном объеме. Однако наряду с преимуществами у протокола TCP есть и недостаток: из-за постоянной «переклички» между сторонами установление соединения и обмен данными занимает больше времени.
Протокол UDP также передаёт данные, но без уникальных идентификаторов и строгой очередности. Отправляя данные в потоке, он гарантирует доставку только общего количества пакетов. Исправлять ошибки UDP почти не умеет и проблему потерянных пакетов никак не решает. В нем чаще случаются ошибки, зато данные передаются намного быстрее, чем через TCP.
Безопасен ли UDP? Почти невозможно настроить брандмауэр, позволяющий только определенные соединения UDP и блокирующий остальные. Хотя протокол TCP в этом отношении гораздо надежнее, существуют меры защиты и UDP-соединений. Например, для определенных приложений можно использовать прокси или устанавливать туннельное соединение между удаленным пользователем и внутренней сетью компании.
Основное различие между TCP и UDP
UDP быстрее, чем TCP, потому что пользователю не нужно разрешать или подтверждать получение данных перед отправкой следующего пакета. Поэтому через протокол UDP и установка соединения, и передача данных происходит быстрее. В то же время вызывает опасения вопрос безопасности протокола UDP. Если сравнивать протоколы UDP с TCP VPN, OpenVPN лучше всего работает на UDP-порте, хотя его можно настроить на любом порте.
Вот сравнительная таблица их характеристик:
TCP | UDP | |
---|---|---|
Надежность | Высокая | Меньшая |
Скорость | Меньшая | Высокая |
Способ передачи | Пакеты доставляются в строгой очередности | Пакеты доставляются в хаотичном порядке |
Обнаружение и исправление ошибок | Да | Нет |
Отслеживание перегрузок TCP | Да | Нет |
Подтверждение | Да | Только контрольная сумма |
Как UDP, так и TCP делят поток данных на меньшие блоки – пакеты данных. К ним относятся IP-адреса отправителя и получателя, различные конфигурации, фактическая отправляемая информация и трейлер – данные, указывающие на конец пакета.
Так какой же протокол лучше: UDP или TCP? Как и в других подобных случаях, все зависит от того, для чего вы их используете. Если нужна быстрая и постоянная передача данных для правильной работы приложения, вам придется использовать UDP. В других же случаях лучше пользоваться TCP, он гарантированно доставит все данные без потерь.