Как перейти на https правильно: зачем, когда и как по шагам

Как открыть порты на компьютере

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

Зачем нужно открывать порты?

Существует множество приложений и игр, которые при использовании интернета подключаются через конкретный порт. Десятая версия Виндоус, в целях безопасности, блокирует свободное их использование.

  Также подобные подключения невозможны без соответствующей настройки роутера или антивирусной программы, если таковая установлена на вашем ПК.

Пользователю нужно самому разрешить доступ, выставив соответствующие настройки.

Проверка порта

Проверить открыт ли тот или иной порт на ПК, можно воспользовавшись специальными сервисами или командной строкой системы. Чтобы сделать это онлайн, потребуется проделать следующее:

  1. Перейдите на сайт и выберите вариант«Проверка порта».
  2. Введите его номер и кликните «Проверить».

Сервис выдаст текущее состояние порта.

Чтобы проверить порт, используя специальную команду вам понадобится:

  1. Запустить командную строку, используя поиск Windows или отыскав её в стартовом меню системы.
  2. Вписать в окно программы netstat –a и нажать Enter.

Перед вами отобразится список открытых на данный момент портов.

Открытие порта в фаерволе

Чтобы настроить порты используя встроенный в систему брандмауэр, потребуется установить правила подключений. Осуществить это можно проделав следующие операции:

  1. Откройте «Панель управления» через поиск в стартовом меню.
  2. В следующем окне зайдите в «Брандмауэр Защитника Windows.
  3. Нажмите «Дополнительные параметры».

В большинстве случаев требуется создать 2 правила – одно для входящих и второе для исходящих соединений.

  1. Выберите ссылку «Правила для входящих подключений» и кликните «Создать правило».
  2. В следующем окне выберите вариант «Для порта».
  3. Нажмите «Далее».
  4. Выберите протокол, через который будет работать приложение, для которого вы открываете порт.
  5. Отметьте вариант «Определенные локальные порты».
  6. Впишите номер порта.
  7. Кликните по кнопке «Далее».
  8. Выберите профили, к которым будет применяться созданное правило.
  9. Нажмите «Далее».
  10. Дайте правилу имя и впишите его описание.
  11. Кликните «Готово».

Те же самые действия нужно проделать с другим протоколом, если приложение для которого вы открываете порт, использует несколько типов соединения.

  1. Далее возвращаемся на главную страницу и выбираем вариант «Правила для исходящего подключения» и опять нажимаем «Создать правило». Создаем его таким же образом, как было описано ранее, для входящих подключений.

Настройки маршрутизатора

Открыв доступ в фаерволе, потребуется также изменить настройки маршрутизатора. Для этого нужно осуществить следующие действия:

  1. Открыть обозреватель и ввести IP адрес вашего роутера.

Обычно это 192.168.1.1 или 192.168.0.1 (точный адрес маршрутизатора можно найти не его панели или в инструкции).

  1. Введите ваш логин и пароль для доступа. (по умолчанию: Имя-admin; пароль-admin)
  2. В открывшемся меню отыщите пункт Forwarding и зайдите в раздел PortTriggering.
  3. В графы TriggerPortи Incoming Portsведите номер порта.
  4. Кликните Save.

По окончании настройки роутер нужно перезагрузить, после чего порты станут доступны.

Открытие порта в антивирусе

Предоставление доступа в настройках фаервола и маршрутизатора может оказаться недостаточным, так как соединение может блокироваться антивирусным программным обеспечением. Рассмотрим, как можно открыть порт на примере антивируса Касперского. Для этого потребуется проделать следующие действия:

  1. Зайдите в настройки приложения, нажав на кнопку с изображением шестеренки.
  2. Выберите раздел «Дополнительно» и перейдите на вкладку «Сеть».
  3. Далее кликните «Выбрать».
  4. В появившемся списке выберите «Добавить».
  5. Впишите описание правила и укажите номер порта.
  6. Кликните «Добавить».

После этого желательно перезагрузить систему. Дополнительно можно добавить приложение, для которого вы настраиваете порт, в исключения, чтобы антивирус его не блокировал. Процедура доступа к определенному порту не является особо сложной операцией. Действуя в соответствии с данной инструкцией, вы сможете осуществить задуманное без особых проблем.

Зачем нужен порт

При работе с интернетом вы как отдаёте, так и получаете данные из сети. Образно говоря, создаются туннели между вашим компьютером и модемом или роутером, отвечающим за передачу и приём информации. Чтобы создать новый туннель, нужно открыть порт. У каждого туннеля свои особенности и характеристики, зависящие от того, какой порт развернут.

В системе заранее определены номера портов. С помощью них определяется, за что отвечает данный порт. Например, увидев номер 443, система поймёт, что используется протокол повышенной безопасности. Порт с номером 80 отвечает за HTTP-соединение, а оно используется при каждом подключении к интернету, так как практически все сайты работают по HTTP-протоколу. Более полный список наиболее часто пригождающихся портов вы можете изучить в пункте «Список портов и их задач».

Проверка состояния портов

Чтобы узнать, в каком состоянии находятся все порты (открыты, закрыты, используются или отключены), можно использовать встроенные средства Windows 10.

  1. Используя системную поисковую строку, отыщите и разверните командную строку с правами администратора.
    Открываем командную строку
  2. Пропишите запрос netstat –aon | more и выполните его.
    Выполняем запрос netstat –aon | more
  3. Через несколько секунд развернётся список. Вас интересуют два последних столбца: в последнем указан номер порта, а в предпоследнем — его состояние.
    Появился список портов и состояний

Есть четыре вида состояния:

  • listening — порт слушается, то есть система следит за ним, опрашивает, проверяет, есть ли запросы на соединение. Если они появятся, начнётся установка соединения по данному порту;
  • established — порт используется успешно, сквозь него текут данные;
  • time wait — произошла ошибка, связанная со временем ожидания. Она может появиться из-за того, что во время соединения или прослушивания порт долго не отвечал;
  • close wait — соединение разрывается, то есть в скором времени порт перестанет использоваться и передавать информацию.

Сетевые порты компьютера и их назначение, как открыть порт или закрыть.

Привет, друзья ! В одной из прошлых статей мы касались компьютерных портов. Сегодня у нас на очереди порты программные, виртуальные. Нет таких прикладных программ сегодня, которые не используют в своей работе сетевые протоколы для обмена данными. Для их передачи данных используются транспортные протоколы, самые популярные — это TCP/IP и UDP. Чтобы ваш браузер «понял», что некая информация поступила для него, она должна попасть на программный порт, который и «прослушивает» ваш браузер.

Важнейшей функцией TCP/IP и UDP является идентификация программы (или процесса), которая сгенерировала переносимые данные. Для этого и используется номер порта, который назначен данному процессу организацией IANA. Тут тоже давно существуют свои стандарты и номера портов опубликованы в RFC 1700. На компьютере список портов можно найти в файле SERVICES клиента TCP/IP.

Когда пакет достигает цели, протокол транспортного уровня (в нашем случае TCP/IP), принимает дейтаграмму, считывает номер порта из соответствующего поля и передает эту информацию программе (или протоколу), которая начинает работу с полученными данными.

Всем основным приложениям в Интернет присвоены определенные номера портов, которые называют «хорошо известными портами». Например, стандартный порт WEB — сервера идет под номером 80, прокси-сервер может иметь номер 8080, FTP сервер работает с портом 21 или 20.

Кратко перечислю хорошо известные номера портов в разрезе сервисов:

  • ftp-data. Канал данных файлового транспортного протокола, используется для передачи файлов между системами по протоколу TCP. Используется 21 порт;
  • ftp. Управляющий канал FTP. Используется участниками сеанса этого канала для обмена командами и откликами на них по протоколу TCP. Использует 20 порт;
  • telnet. Используется для выполнения команд на удаленном компьютере через порт № 23 через протокол TCP;
  • SMTP. Или — простой почтовый протокол для передачи данных по email. Раньше использовался порт под номером 25, сейчас используется шифрование и номер порта уже другой. Зависит от поставщика услуг;
  • Domain. Использует 53 порт по протоколам UDP и TCP для получения запросов на разрешение имен хостов;
  • http. Транспортный протокол для гипертекстовой разметки. Используется для передачи запросов от браузера (например, ваши запросы в Яндексе). Используется 80 порт;
  • POP3 (почтовый офисный протокол версии 3). Используется для получения электронной почты. до шифрования использовал 110 порт, сейчас номер изменился. Номера портов нужно уточнять у поставщика услуг.

Когда трафик перенаправляется другой системе, TCP/IP использует комбинацию IP адреса и определенного порта. Такая связка называется «Сокет». К примеру, из Интернета или локальной сети можно получить доступ к папке фтп-сервера, указав через двоеточие IP- адрес и порт: 192.168.0.3:21.

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

5 последних уроков рубрики «Разное»

  • Выбрать хороший хостинг для своего сайта достаточно сложная задача. Особенно сейчас, когда на рынке услуг хостинга действует несколько сотен игроков с очень привлекательными предложениями. Хорошим вариантом является лидер рейтинга Хостинг Ниндзя — Макхост.

  • Как разместить свой сайт на хостинге? Правильно выбранный хороший хостинг — это будущее Ваших сайтов

    Проект готов, Все проверено на локальном сервере OpenServer и можно переносить сайт на хостинг. Вот только какую компанию выбрать? Предлагаю рассмотреть хостинг fornex.com. Отличное место для твоего проекта с перспективами бурного роста.

  • Создание вебсайта — процесс трудоёмкий, требующий слаженного взаимодействия между заказчиком и исполнителем, а также между всеми членами коллектива, вовлечёнными в проект. И в этом очень хорошее подспорье окажет онлайн платформа Wrike.

  • Подборка из нескольких десятков ресурсов для создания мокапов и прототипов.

Commonly used TCP ports

For those responsible for configuring and managing web hosting, it’s useful to know the numbers for common services, such as an SSL port. Use the tables below to quickly look up port numbers and their basic functions.

Email

Port # Function
110 POP – Incoming
995 POP SSL – Incoming
143 IMAP – Incoming
993 IMAP SSL – Incoming
25, 80, 3535 SMTP – Outgoing
465 SMTP SSL – Outgoing

cPanel

Port # Function
2082 cPanel TCP inbound
2083 cPanel SSL TCP inbound
2086 WHM TCP inbound
2087 WHM SSL TCP inbound
2089 WHM SSL TCP inbound
2095 Webmail TCP inbound
2096 Webmail SSL TCP inbound

You can see which ports GoDaddy uses for cPanel in the GoDaddy Help Center.

Почему порт может быть закрыт?

Итак, почему может быть закрыт порт 443? Тому есть несколько возможных причин:

  • доступ к нему блокирует программа-файрволл (или брандмауэр);
  • порт может быть заблокирован администратором вашей сети;
  • порт может быть не «прописан» на маршрутизаторе.

Утверждая, что порт 443 закрыт, можно иметь в виду несколько вещей: во-первых, это может означать, что программа на вашем компьютере не может получить доступ к порту сервера, а во-вторых, компьютер извне не может получить доступ к порту вашего компьютера. Каждый из данных случаев, а также причины его возникновения требуют довольно подробного рассмотрения, поэтому не ожидайте от нас подробных инструкций. Тем не менее мы можем подсказать вам, куда «копать».

Обслуживание соединения со стороны сервера

В основном сервер прослушивает входящие сообщения и обрабатывает их по мере поступления запросов. Операции сервера включают в себя:

  • создание сокета для начала прослушивания 80-го (или другого) порта,
  • получение запроса и анализ сообщения,
  • обработку ответа,
  • установку заголовка ответа,
  • отправку ответа клиенту,

прерывание соединение, если возникло сообщение: Connection: close.

Естественно, это далеко не полный перечень операций. Для создания наиболее индивидуальных ответов веб-сайты и программы должны “понимать”, кто посылает запросы. За это отвечают процессы идентификации и аутентификации.

How does HTTPS and SSL work?

HTTP is not a separate protocol from HTTPS. Rather, HTTPS works by establishing a secure HTTP connection using SSL. Hence, the protocol stacks for HTTP and HTTPS look similar:

Layer HTTP Protocol Stack HTTPS Protocol Stack
Application Layer HTTP HTTP
Security Layer SSL (TLS)
Transport Layer TCP TCP
Network Layer IP IP
Data Link Layer Network Interfaces Network Interfaces

The only difference is that HTTPS runs over SSL. To create this secure internet connection, an SSL certificate is installed on a web server. The SSL certificate authenticates an organization’s identity to activate the HTTPS protocol so that data can be passed securely from a web server to a web browser.

Обеспечение видимости и контроля трафика DoH

В качестве наилучшего решения для контроля DoH мы рекомендуем настроить в NGFW расшифровку трафика HTTPS и блокировку трафика DoH (название приложения: dns-over-https). 

Во-первых, убедитесь, что NGFW настроен для расшифровки HTTPS, согласно руководству по лучшим методам расшифровки.

Во-вторых, создайте правило для трафика приложения «dns-over-https», как показано ниже:

Правило Palo Alto Networks NGFW для блокировки DNS-over-HTTPS

В качестве промежуточной альтернативы (если ваша организация не полностью реализовала расшифрование HTTPS) NGFW можно настроить для применения действия «запретить» к идентификатору приложения «dns-over-https», но эффект будет ограничен блокировкой определенных хорошо известных серверов DoH по их доменному имени, так как без расшифрования HTTPS трафик DoH не может быть полностью проверен (см.  Applipedia от Palo Alto Networks   и выполните поиск по фразе «dns-over-https»).

Протокол HTTPS протокола безопасности транспорта HTTP (HSTS)

В OWASP, обеспечение безопасности транспорта по протоколу HTTP (HSTS) является расширением безопасности, которое определяется веб-приложением с помощью заголовка ответа. Когда получает этот заголовок:

  • В браузере хранится конфигурация домена, которая предотвращает отправку обмена данными по протоколу HTTP. Браузер принудительно выполняет все связи по протоколу HTTPS.
  • Браузер не разрешает пользователю использовать недоверенные или недопустимые сертификаты. Браузер отключает запросы, позволяющие пользователю временно доверять такому сертификату.

Так как HSTS применяется клиентом, у него есть некоторые ограничения.

  • Клиент должен поддерживать HSTS.
  • HSTS требует по крайней мере одного успешного запроса HTTPS для установки политики HSTS.
  • Приложение должно проверять каждый HTTP-запрос и перенаправлять или отклонять HTTP-запрос.

ASP.NET Core 2,1 и более поздних версий реализует HSTS с помощью метода расширения. Следующий код вызывает, когда приложение не находится в режиме разработки:

не рекомендуется в разработке, так как параметры HSTS очень кэшируются браузерами. По умолчанию исключает локальный петлевой адрес.

Для рабочих сред, которые реализуют протокол HTTPS в первый раз, задайте для свойства Initial хстсоптионс. MaxAge небольшое значение с помощью одного из TimeSpan методов. Задайте в качестве значения в часах не более одного дня на случай, если необходимо вернуть инфраструктуру HTTPS к протоколу HTTP. Убедившись в устойчивости конфигурации HTTPS, увеличьте значение HSTS. часто используемое значение — один год.

Приведенный ниже код:

  • Задает параметр предварительной загрузки заголовка. Предварительная загрузка не является частью спецификации RFC HSTS, но поддерживается веб-браузерами для предварительной загрузки HSTS сайтов при новой установке. Дополнительные сведения см. на веб-сайте https://hstspreload.org/.
  • Включает , который применяет политику HSTS для размещения поддоменов.
  • Явно задает для параметра заголовка значение 60 дней. Если значение не задано, по умолчанию используется значение 30 дней. Дополнительные сведения см. в разделе .
  • Добавляет в список узлов для исключения.

исключает следующие узлы замыкания на себя:

  • : Адрес замыкания на себя IPv4.
  • : Адрес замыкания на себя IPv4.
  • : IPv6-адрес замыкания на себя.

Используем PortQry для сканирования открытых UDP и TCP портов

В Windows 10 вы можете установить portqry через менеджер пакетов Chokolatey:

Скачайте и распакуйте архив PortQryV2.exe. Запустите командную строку и перейдите в каталог с утилитой, например:

Чтобы проверить доступность DNS сервера с клиента, необходимо проверить открыты ли на нем 53 порты TCP и UDP. Формат команды проверки доступности портов на удаленном сервере следующий:

-n – имя или IP адрес сервера, доступ к которому нужно проверить—e –  номер порта для проверки (от 1 до 65535)—r – диапазон портов для проверки  (например, 1:80)—p – по какому протоколу выполняется проверка. Это может быть TCP, UDP или BOTH (по умолчанию используется TCP).

Примечание. В отличии от комадлета PowerShell Test-NetConnection, который может использоваться только для проверки доступности TCP портов, утилита PortQry поддерживает и TCP и UDP протоколы.

В нашем примере команда будет такой:

Утилита Portqry для каждого указанного порта вернет один из трех статусов доступности:

  • Listening – означает, что указанный порт доступен (принимает соединения), ответ от него получен;
  • Not Listening – на целевой системе не запушен процесс (служба), который бы принимал подключения на указанном порту. Portqry получила ответ ICMP «Destination Unreachable — Port Unreachable» при проверке UDP порта, или TCP пакет с флагом Reset;
  • Filtered – утилита PortQry не получала ответа от указанного порта либо ответ был отфильтрован. Т.е. на целевой системе либо не слушается данный порт, либо доступ к нему ограничен файерволом или настройками системы. По умолчанию TCP порты опрашиваются 3 раза, а UDP – один.

В нашем примере, DNS сервер доступен с клиента и по TCP и по UDP.

TCP port 53 (domain service): LISTENING
UDP port 53 (domain service): LISTENING

С помощью атрибута —o, можно указать последовательность портов, которых нужно просканировать:

Следующая команда выполнит сканирование диапазона “низких” TCP портов и вернет список доступных портов, которые принимают подключения (утилита работает в режиме сканера открытых портов):

Можно сохранить результаты сканирования открытых портов в текстовый файл:

В утилите portqry есть интерактивный режим:

Теперь в приглашении PortQry Interactive Mode можете указать имя удаленного компьютера и порт.

Чтобы выполнить проверить порт на указанном сервере нажмите q и Enter.

С помощью аргументов –wport и -wpid можно выполнить мониторинг состояния указанного порта (wport), или всех портов, связанных с указанным процессом (wpid) на локальном хосте.

Например, следующая команда в течении 10 минут будет выполнять проверку доступности указанного локального порта (например, RDP порта 3389), и если его статус изменится, уведомит администратора об этом (подробный лог будет доступен в файле LogFile.txt). Чтобы остановить мониторинг, нажмите :

Можно получить информацию об открытых портах и активных TCP/UDP соединениях на локальном компьютере:

Какая польза от открытия портов роутера?

Если вы собираетесь настроить сервер для чего-то в своей локальной сети, где им необходимо получить к нему доступ из Интернета, вам необходимо открыть порты. Например, для следующих целей необходимо открыть порты:

  • Настройте FTP-сервер для удаленного доступа к вашим файлам.
  • Настройте VPN-сервер для безопасного доступа к локальной сети.
  • Настройте SSH-сервер на своем компьютере, чтобы управлять им удаленно.
  • Настройте почтовый сервер или веб-сервер.
  • Если вы собираетесь использовать частное облако Nextcloud для синхронизации файлов или папок.
  • Если вы собираетесь играть онлайн, в играх необходимо сделать переадресацию портов, потому что мы сами выступаем в роли сервера.
  • Если вы собираетесь загружать через eMule, необходимо открыть порты, чтобы другие узлы могли подключиться к вам.
  • Если вы собираетесь загружать через BitTorrent, необходимо открыть один или несколько портов, чтобы другие узлы могли соединиться с вами, чтобы вы могли быстрее загружать и выгружать.
  • Любое другое использование, которое требует подключения из Интернета к вашей внутренней локальной сети (ПК, сервер, консоль и т. Д.).

Наконец, если вы собираетесь использовать игры на своей консоли, рекомендуется открыть DMZ для консолей, потому что они обычно используют много разных портов для каждой игры, которую мы используем.

Все домашние маршрутизаторы используют NAT для одновременного выхода в Интернет с несколькими устройствами, используя один и тот же общедоступный IP-адрес. Когда компьютер в локальной сети (внутренней сети) пытается получить доступ к Интернету, NAT отвечает за перевод адресов и использование портов TCP / UDP без каких-либо действий, это полностью автоматически и прозрачно для пользователя.

Однако, если связь начинается через Интернет (WAN, внешняя сеть) с локальной сетью, необходимо открыть порт, чтобы правильно перенаправить пакеты к месту назначения. Как вы могли заметить, компьютеры локальной сети используют частную адресацию, которая не маршрутизируется через Интернет. Чтобы сделать их доступными извне, нам нужно будет «открыть порт» в NAT, чтобы все пакеты, которые достигают общедоступного IP-адреса и определенного порта, были правильно перенаправлены их получателю.

Прежде чем мы начнем объяснять, как проверять открытые порты на вашем маршрутизаторе, давайте начнем с объяснения классов IP, которые мы имеем в домашней сети. Чтобы выполнить сканирование портов, чтобы проверить открытые порты на вашем маршрутизаторе, вы должны сделать это в отношении определенного типа IP, в частности публичного IP, который предоставляет нам наш оператор.

Как открыть порт на роутере

Если после проделанных действий ПО все еще не работает, то остается проверить только роутер. Главная проблема в этом случае – это то, что модели роутеров отличаются интерфейсом и функциональными настройками

Приведённые советы подходят для нескольких, самых распространенных марок.

Введи в адресной строке любого браузера стандартный IP адрес – 192.168.1.1, откроется административный интерфейс роутера, вписываете данные для авторизации. В редких случаях производители используют другой IP, если стандартный не подошел, то нужный можно посмотреть на обратной стороне роутера, где написан его адрес и логин/пароль.

После того, как попали в веб интерфейс необходимо ввести логин и пароль. Дальнейший путь может меняться в зависимости от производителя и модели.

TENDA

«Дополнительно» (Advanced) ? «Расширенная настройка» (Advanced Setup) ? NAT ? «Виртуальный сервер» (Virtual Servers Setup).

  1. Нажать кнопку «добавить» (add), в пункте «Выбор услуги» (Select a Service) выбрать один из готовых шаблонов, в строке «IP адрес сервера» указать IP ПК в виде маски: «192.168.1.» без последней цифры.
  2. В «External Port Start» указать требуемый порт, в выпадающем списке «Protocol» выбрать «TCP», «UDP» или «TCP/UDP» – применить изменения «APPLE/SAVE». Остальные строки пропишутся автоматически.

D-Link

«Расширенные настройки»? «Межсетевой экран» ?»Виртуальный сервер» ? «Добавить».

Далее заполняем настройки:

  1. В шаблоне выставляем Custom,
  2. Начальный /конечный внешний порт – выставляем номер который нужно открыть или диапазон,
  3. Внутренний IP- пишем адрес компьютера, посмотрите в сетевых настройках windows,
  4. Протокол – лучше ставить TCP, но если программа требует «UDP» выбирайте его.

Затем кнопка «Изменить» и «Сохранить»

TP-Link

Переадресация? Виртуальные сервера? «Добавить».

  • Порт сервиса – пишем то, что хотим открыть,
  • IP адрес- IP компьютера.

ASUS

Интернет? Переадресация? внизу в колонке «добавить/удалить» нажмите на плюс.

  • Имя службы – любое имя, роутер перенаправляет пришедшие пакеты данных,
  • Протокол – то же, что и в предыдущих пунктах.

Проделав все это, не забудьте добавить вашу программу в исключения антивируса, он тоже может блокировать выход в интернет.

Выводы

  • Как реально работает сеть, и что TCP можно повторить поверх UDP и сделать лучше. 
  • Что TCP не так плох, если его правильно настроить, но он реально сдался и больше уже почти не развивается.
  • Не верьте хейтерам UDP, которые говорят, что в user space работать не будет. Все эти проблемы можно решить. Пробуйте — это ближайшее будущее.
  • Если не верите, то сеть можно и нужно трогать руками. Я показывал, как почти все можно проверить.

Настраивайте протокол (TCP, UDP — неважно) под ситуацию (профиль сети + профиль нагрузки).
Используйте рецепты TCP, которые я вам рассказал: TFO, send/recv buffer, TLS1.3, CC… 
Делайте свои UDP-протоколы, если есть ресурсы. 
Если сделали свой UDP, проверьте UDP check list, что вы сделали все, что надо. Забудете какую-нибудь ерунду типа pacing, не будет работать.

Полезные ссылки

  • Миллион видеозвонков в сутки или «Позвони маме!».
  • Пишем свой протокол поверх UDP.
  • Подкаст про сетевую оптимизацию.
  • Увеличение скорости передачи данных в плохих сетях.