Если вы сетевой инженер или обычный пользователь, вам может потребоваться найти, открыть или заблокировать виртуальный порт, например TCP или UDP порт для приложения. Виртуальные порты помогают управлять сетевым оборудованием и программным обеспечением в отношении информационного трафика. На языке непрофессионала виртуальные порты служат выделенными полосами для определенного трафика, такого как трафик веб-сайтов, получение электронной почты, передача файлов и так далее.
В основном есть два типа виртуальных портов, а именно TCP и UDP. TCP означает Протокол управления передачей; а UDP означает Протокол пользовательских датаграмм. Порты TCP и UDP используют разные сетевые протоколы при обработке информационного трафика.
Сетевые протоколы — это не что иное, как набор правил и положений о том, как определенная информация должна быть отправлена и получена. Однако в основе порта TCP или UDP лежит IP, т.е. протокол Интернета.
Давайте посмотрим, как эти два порта уступают своим характеристикам и функциям.
КАК ОТКРЫТЬ ПОРТЫ ЗА 3 МИНУТЫ, 100% РАБОЧИЙ СПОСОБ!!! ASUS!!!
Как работает порт TPC?
Порт TCP требует, чтобы пользователи установили соединение между машиной отправителя и машиной получателя. Это очень похоже на телефонный звонок. Как только соединение установлено между отправителем и получателем, информация может передаваться туда и обратно, пока соединение не будет разорвано извне.
Хотя TCP является наиболее сложным протоколом транспортного уровня, он также является наиболее надежным протоколом для получения безошибочной информации. Протокол гарантирует, что конечный компьютер подтвердит получение дейтаграммы. Только после этого он передает информацию. Следовательно, TCP используется чаще, чем UDP.
Как работает порт UDP?
С другой стороны, порт UDP не требует, чтобы пользователи устанавливали соединение между отправителем и получателем для отправки информации. Однако, в отличие от порта TCP, информация, отправляемая через порт UDP, может не доходить до получателя. Это похоже на отправку письма. Необязательно, чтобы пользователь получил письмо.
Следовательно, информация, которую необходимо транслировать, отправляется через порт UDP. Пользователь, настроенный на указанный порт UDP или прослушивающий его, может получать информацию.
UDP имеет низкую задержку и предлагает постоянный поток информации. Таким образом, UDP — идеальный выбор для потокового вещания, онлайн-видеоигр и потоковой передачи голоса по IP (VoIP). В результате порт UDP используется только тогда, когда есть особая потребность в отправляемой информации.
Определение правильных портов
Для любого ПК доступно множество виртуальных портов; которые варьируются от 0 до 65535. Однако каждый из этих портов имеет определенный стандарт и предназначен для определенного приложения. Из них некоторые из следующих портов используют TCP и UDP.
- 20 (TCP): FTP (протокол передачи файлов)
- 22 (TCP): безопасная оболочка (SSH)
- 25 (TCP): простой протокол передачи почты (SMTP)
- 53 (TCP и UDP): Система доменных имен (DNS)
- 80 (TCP): протокол передачи гипертекста (HTTP)
- 110 (TCP): протокол почтового отделения (POP3)
- 143 (TCP): протокол доступа к сообщениям в Интернете (IMAP)
- 443 (TCP): безопасный HTTP (HTTPS).
Можно проверить, какие из портов на вашем ПК с Windows открыты или закрыты. Если вы хотите заблокировать или открыть определенный порт TCP или UDP, то вот процесс.
TCP и UDP | Что это такое и в чем разница?
Поиск открытого порта TCP или UDP
Открой Стартовое меню. (Для Windows 10 нажмите кнопку Windows) и введите CMD. Теперь нажмите на Запустить от имени администратора вариант.
Когда откроется окно командной строки, введите Netstat -ab и нажмите Войти. Список портов TCP и UDP начинает появляться вместе с IP-адресом и другими деталями.
Чем дольше вы ждете, тем больше становится список открытых портов. Подождите, пока в окне не появится полный список. Когда список полностью отобразится, нажмите CTRL + C и CTRL + V скопировать и вставить информацию в Блокнот или любой другой текстовый редактор.
Как вы можете видеть на изображении выше, информация в скобках относится к имени программы, которая использует открытый порт TCP или UDP. Рядом с именем протокола вы можете увидеть IP-адрес и номер порта после двоеточия. Например, в 192.168.0.107: 50741, цифры 192.168.0.107 являются айпи адрес, а число 50741 это номер порта.
Обнаружение заблокированного порта TCP или UDP
Чтобы узнать, какие из портов заблокированы брандмауэром Windows, выполните следующие действия.
Первый шаг такой же, как поиск открытого порта TCP или UDP. Откройте меню «Пуск», нажав кнопку Windows и введите CMD. Теперь нажмите на Запустить от имени администратора вариант.
Когда откроется окно командной строки, введите следующую команду: netsh firewall показывает состояние
Некоторые порты могут быть заблокированы маршрутизатором или интернет-провайдером, и они могут отсутствовать в приведенном выше списке. Чтобы найти эти порты, введите следующую команду: netstat -ano | findstr -i СИНХРОНИЗАЦИЯ
Если эта команда не возвращает никакого списка, это означает, что ни один из портов не заблокирован маршрутизатором или интернет-провайдером.
Как открыть или заблокировать порт TCP или UDP
Теперь, когда вы определили порты TCP и UDP на своем ПК с Windows, самое важное.
Прежде всего, вам может потребоваться открыть порт для бесперебойной работы приложения. С другой стороны, вам может потребоваться заблокировать определенные порты, поскольку они больше не используются и могут выступать в качестве шлюза для угроз. Следовательно, такие порты блокируются брандмауэром.
Выполните следующие действия, чтобы открыть или заблокировать порт TCP или UDP.
Откройте меню «Пуск», нажав клавишу Windows. Тип Брандмауэр Защитника Windows, и выберите Брандмауэр Защитника Windows в режиме повышенной безопасности от результатов.
Откроется следующее окно.
Нажать на Входящие правила вкладка в меню слева.
Нажать на Новое правило… на панели Действия в правом боковом меню. Когда откроется это окно, выберите Порт переключатель и щелкните Следующий.
При нажатии Следующий вкладка, следующее окно Мастер создания нового входящего правила открывается. В этом окне вы можете выбрать тип порта, который хотите открыть или заблокировать. Вы также можете выбрать, хотите ли вы открыть или заблокировать все порты выбранного типа или определенный локальный порт. Укажите количество или диапазон локальных портов, которые вы хотите открыть или заблокировать. И нажмите Следующий.
Следующее окно открывается, когда вы нажимаете Далее. Здесь вы можете открыть порты, выбрав Разрешить соединение или же Разрешить соединение, если оно безопасное Радио-кнопки. Выберите третий переключатель Заблокировать соединение чтобы заблокировать указанные порты.
Теперь выберите, применяется ли правило к Домен, Частный или же Общественные или все это. Нажмите Следующий.
Следующее окно открывается при нажатии Следующий. В этом окне укажите Имя для этого нового правила для входящих подключений. Вы также можете указать, какие порты были заблокированы или открыты в Описание раздел.
Нажмите Заканчивать для создания этого нового правила для входящих подключений.
Обратите внимание, что иногда после блокировки определенного порта приложения могут работать некорректно. Вы также можете столкнуться с проблемами при подключении к определенным ресурсам. Это означает, что заблокированный вами порт может потребоваться открыть. Вы можете отменить блокировку портов в любое время, выполнив тот же процесс.
Читать дальше: Как контролировать TCP, UDP связь в Windows с помощью PortExpert.
Источник: zanz.ru
Отличия TCP- и UDP-протоколов — определяем разницу на примерах
Современный мир завязан на системах связи, когда различные устройства «общаются» между собой посредством «правил», или протоколов модели OSI (Open Systems Interconnection model), определяющей методы взаимодействия. В тексте рассмотрим два самых популярных протокола транспортного уровня — TCP и UDP — и сравним их.
Прежде всего напомним, что такое сетевые протоколы. Сетевые протоколы — это правила взаимодействия устройств в сети, благодаря которым различные девайсы могут работать друг с другом, несмотря на конструктивные различия. На транспортном уровне происходит прием данных с сетевого уровня и передача их на сеансовый уровень.
TCP — протокол транспортного уровня
Первым из рассматриваемых протоколов будет TCP, или Transmission Control Protocol, который используется для транспортировки сообщений между устройствами в сети.
В сети файлы не передаются целиком, а дробятся и передаются в виде относительно небольших сообщений. Далее они передаются другому устройству — получателю, где повторно собираются в файл.
Например, человек хочет скачать картинку. Сервер обрабатывает запрос и высылает в ответ требуемое изображение. Ему, в свою очередь, необходим путь или канал, по которому он будет передавать информацию. Поэтому сервер обращается к сетевому сокету для установки требуемого соединения и отправки картинки.
Сервер дробит данные, инкапсулирует их в блоки, которые передаются на уровень TCP получателя при помощи IP-протокола. Далее получатель подтверждает факт передачи.
У протокола TCP есть несколько особенностей:
- Система нумерации сегментов. TCP отслеживает передаваемые и принимаемые сегменты, присваивая номера каждому из них. Байтам данных, которые должны быть переданы, присваивается определенный номер байта, в то время как сегментам присваиваются порядковые номера.
- Управление потоком. Функция ограничивает скорость, с которой отправитель передает данные. Это делается для обеспечения надежности доставки, в том числе чтобы компьютер не генерировал пакетов больше, чем может принять другое устройство. Если говорить простым языком, то получатель постоянно сообщает отправителю о том, какой объем данных может быть получен.
- Контроль ошибок. Функция реализуется для повышения надежности путем проверки байтов на целостность.
- Контроль перегрузки сети. Протокол TCP учитывает уровень перегрузки в сети, определяемый объемом данных, отправленных узлом.
Примеры применения сетевого протокола TCP
Протокол TCP гарантирует доставку, а также обеспечивает целостность данных, передаваемых в сети. Поэтому он применяется для передачи данных, которые чувствительны к нарушению целостности, — например, текстов, файлов и т.п. Вот несколько протоколов, которые работают по TCP:
- SSH, FTP, Telnet: в данных протоколах TCP используется для обмена файлами.
- SMTP, POP, IMAP: протоколы, где TCP отвечает за передачу сообщений электронной почты.
- HTTP/HTTPS: протоколы, где TCP отвечает за загрузку страниц из интернета.
Эти примеры работают на уровне приложений стека TCP/IP и передают данные вниз к TCP, на транспортный уровень.
Строение протокола TCP
В каждый пакет данных TCP добавляет заголовок общим объемом в 20 байт (или октетов), в котором содержатся 10 обязательных полей:
- Порт источника — порт устройства-отправителя.
- Порт назначения — порт принимающего устройства.
- Порядковый номер. Устройство, инициирующее TCP-соединение, должно выбрать случайный начальный порядковый номер, который затем увеличивается в соответствии с количеством переданных байтов.
- Номер подтверждения. Принимающее устройство увеличивает этот номер с нуля в соответствии с количеством полученных байтов.
- Сдвиг данных TCP. Данный параметр определяет размер заголовка, чтобы система могла понять, где начинаются данные.
- Зарезервированные данные — зарезервированное поле, значение которого всегда равно нулю.
- Флаги управления. TCP использует девять флагов для управления потоком данных в определенных ситуациях — например, при инициировании сброса сессии.
- Размер окна — самая важная часть заголовка TCP. Это поле используется получателем для указания отправителю объема данных, которые он может принять.
- Контрольная сумма. Отправитель генерирует контрольную сумму и передает ее в заголовке каждого пакета. Принимающее устройство может использовать контрольную сумму для проверки ошибок в полученном файле.
- Срочный указатель — это предлагаемая протоколом возможность помечать некоторые байты данных тегом «Срочно» для их пересылки и обработки вне очереди.
- Поле опции. Может использоваться для расширения протокола или его тестирования.
Ускоряем работу протокола TCP при хорошем соединении или выжимаем максимум
TCP используется при передаче данных в таких протоколах, как HTTP, Telnet, FTP, SMTP. При использовании протокола нужно учесть, что при увеличении потери пакетов время, затрачиваемое на доставку файла, увеличивается.
Чтобы достичь максимальной пропускной способности TCP-соединения, можно выполнить следующие шаги:
Увеличить размер окна. Размер окна, или TCP Window Size, — это количество данных, которое может быть передано в данный момент без подтверждения. Это значение устанавливается в начале соединения между устройствами. Однако это значение можно изменить заранее, введя команду regedit в поиске и перейдя по следующему пути:
HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesAFDParametersDefaultSendWindow
Увеличение параметра приведет к тому, что уменьшится количество проверок полученных данных и увеличится эффективность использования полосы пропускания. Также, перейдя по пути:
HKEY_LOCAL_MACHINESystemCurrentControlSetServicesTcpipParameters
, можно добавить значение Tcp1323Opts, которое отвечает за изменение размера окна и управление временной меткой.
Изменение значения SackOpts. SACK, или селективное подтверждение, крайне важно для подключений с большим размером окна. Без этой функции проверка полученных данных выполняется только по последнему номеру последовательности полученных данных. Но с включением этой функции появляется возможность подтверждать получение отдельных блоков. Чтобы изменить данный параметр, можно перейти по пути:
HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesTcpipParameters
и выбрать параметр SackOpts.
Изменение значения TcpMaxDupAcks. Данный параметр отвечает за количество полученных подтверждений о передаче. Стандартное значение состоит из одного подтверждения и двух дубликатов. Параметр можно изменить, перейдя по пути:
HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesTcpipParameters
и выбрав TcpMaxDupAcks. Это позволит вам назначать количество требуемых подтверждений для запуска быстрой повторной передачи, что в результате скажется на скорости передачи данных.
Стоит отметить, что данными манипуляциями выигрываются доли секунд, поэтому сильно прироста скорости вы не увидите.
UDP — протокол транспортного уровня
Если нам очень важна скорость передачи, а вот потеря пакетов не так критична (как, например, в голосовом или видеотрафике), то лучше использовать UDP, или User Datagram Protocol. В отличие от TCP он обеспечивает передачу данных без получения подтверждения от пользователя. Проще говоря, просто отправляет пакеты и не ждет ничего в ответ. Из-за этого достигается высокая скорость в ущерб надежности.
Чаще всего UDP применяется в чувствительных ко времени службах, где потерять пакеты лучше, чем ждать. Звонки в Skype или Google Meet, стриминг видео, онлайн-трансляции используют этот протокол из-за того, что они чувствительны ко времени и рассчитаны на определенный уровень потерь. Вся голосовая связь через интернет работает по протоколу UDP. Также UDP очень часто используется в онлайн-играх. Аналогичная история с DNS-серверами, поскольку они должны быть быстрыми и эффективными.
Примеры использования протокола UDP
Примерами протоколов, использующих UDP-протокол, являются:
- DNS — протокол, преобразующий домены в IP-адреса, чтобы сделать возможной загрузку интернет-ресурса через браузер.
- SNMP — протокол, позволяющий системному администратору проводить мониторинг, контролировать производительность сети и изменять конфигурацию подключенных устройств.
- DHCP — протокол, отвечающий за автоматическое назначение IP-адреса клиенту.
Разница между TCP и UDP
Ключевым различием между TCP и UDP является скорость, поскольку TCP сравнительно медленнее UDP. В целом, UDP является быстрым, простым и эффективным протоколом, однако повторная передача потерянных пакетов данных возможна только в TCP.
Еще одно заметное различие между TCP и UDP заключается в том, что первый обеспечивает упорядоченную доставку данных от пользователя к серверу (и наоборот). UDP, в свою очередь, не проверяет готовность получателя и может доставлять пакеты вразнобой.
TCP vs UDP
Рассмотрим разницу характеристик протоколов TCP и UDP.
TCP | UDP | |
Состояние соединения | Требуется установленное соединение для передачи данных (соединение должно быть закрыто после завершения передачи) | Протокол без соединения, без требований к открытию, поддержанию или прерыванию соединения |
Гарантия доставки | Может гарантировать доставку данных получателю | Не гарантирует доставку данных получателю |
Повторная передача данных | Повторная передача нескольких кадров в случае потери одного из них | Отсутствие повторной передачи потерянных пакетов |
Проверка ошибок | Полная проверка ошибок | Базовый механизм проверки ошибок. Использует вышестоящие протоколы для проверки целостности |
Метод передачи | Данные считываются как поток байтов; сообщения передаются по границам сегментов | UDP-пакеты с определенными границами; отправляются по отдельности и проверяются на целостность по прибытии |
Сферы применения | Используется для передачи сообщений электронной почты, HTML-страниц браузеров | Видеоконференции, потоковое вещание, DNS, VoIP, IPTV |
Отличия TCP и UDP при использовании в VPN
Также нередко возникает вопрос, касающийся использования данных протоколов при VPN-соединениях. К примеру, в OpenVPN существует возможность выбора между TCP- и UDP-протоколами.
Условимся, что VPN заворачивает передаваемые данные в еще один протокол (на самом деле все намного сложнее). Если ваш VPN-туннель использует в качестве транспортного протокола TCP, то передача данных по UDP-протоколу теряет свои преимущества. Как минимум на определенном участке пути. Поэтому для VPN-туннеля советуют использовать UDP-протокол, ведь TCP будет штатно работать внутри UDP-туннеля.
Поднимите VPN на сервере Selectel
Более 100 готовых к работе конфигураций.
Итог сравнения протоколов TCP и UDP
Каждый протокол хорош под свои задачи, недаром они являются одними из самых распространенных в интернете. В завершение сравнения TCP и UDP можно выделить, что TCP применяется там, где важно доставить все данные в определенном порядке. Зона применения UDP, в свою очередь, — это голосовой и видеотрафик, где доставка всех пакетов не является обязательной.
Также серьезным отличием TCP от UDP является размер заголовков. У TCP он составляет 20-60 байт, а у UDP — всего 8 байт. Это показывает, насколько сложнее устроен протокол TCP, ведь он приоритизирует трафик и проверяет блоки данных на наличие ошибок.
Источник: selectel.ru
Самые популярные номера портов TCP и UDP
Некоторые порты могут использоваться для чего угодно, в то время как другие имеют давно установленные цели
Протокол управления передачей (TCP) использует набор каналов связи, называемых портами, для управления системным обменом сообщениями между несколькими различными приложениями, работающими на одном физическом устройстве. В отличие от физических портов на компьютерах, таких как USB-порты или Ethernet-порты, TCP-порты являются виртуально программируемыми записями, пронумерованными от 0 до 65535.
Большинство портов TCP являются каналами общего назначения, которые могут вызываться при необходимости, но в остальном бездействуют. Однако некоторые порты с меньшими номерами предназначены для определенных приложений. Хотя многие TCP-порты принадлежат приложениям, которые больше не существуют, некоторые из них очень популярны.
TCP порт 0
TCP фактически не использует порт 0 для сетевого взаимодействия, но этот порт хорошо известен сетевым программистам. Программы сокетов TCP используют порт 0 по соглашению, чтобы запросить доступный порт, который будет выбран и выделен операционной системой. Это избавляет программиста от необходимости выбирать («жесткий код») номер порта, который может не сработать в данной ситуации.
TCP-порты 20 и 21
FTP-серверы используют TCP-порт 21 для управления своей стороной сеансов FTP. Сервер прослушивает команды FTP, поступающие на этот порт, и отвечает соответствующим образом. В активном режиме FTP сервер дополнительно использует порт 20 для инициирования передачи данных обратно клиенту FTP.
TCP-порт 22
Secure Shell использует порт 22. Серверы SSH прослушивают на этом порту входящие запросы на вход от удаленных клиентов. Из-за характера такого использования порт 22 любого общедоступного сервера часто проверяется сетевыми хакерами и является предметом тщательного изучения в сообществе по сетевой безопасности. Некоторые защитники рекомендуют администраторам перенести установку SSH на другой порт, чтобы избежать этих атак, в то время как другие утверждают, что это лишь незначительный обходной путь.
TCP-порт 23
Порт 23 управляет telnet , текстовой системой для входа в удаленные системы. Хотя современные подходы к удаленному доступу основаны на Secure Shell на порте 22, порт 23 остается зарезервированным для более старого и менее безопасного приложения telnet.
TCP-порты 25, 110 и 143
Электронная почта опирается на несколько стандартных портов. Порт 25 управляет протоколом Simple Mail Transfer Protocol – инструментом, с помощью которого электронная почта на вашем компьютере направляется на почтовый сервер, а затем с этого сервера в более крупный Интернет для маршрутизации и доставки.
На принимающей стороне порт 110 управляет протоколом почтовой связи версии 3, а порт 143 выделен для протокола доступа к почте через Интернет. POP3 и IMAP контролируют поток электронной почты с сервера вашего провайдера на ваш почтовый ящик.
Безопасные версии SMTP и IMAP различаются в зависимости от конфигурации, но порты 465 и 587 являются общими.
UDP порты 67 и 68
Серверы протокола динамической конфигурации хоста используют UDP-порт 67 для прослушивания запросов, в то время как клиенты DHCP обмениваются данными через UDP-порт 68.
TCP-порты 80 и 443
Возможно, самый известный порт в Интернете – TCP-порт 80 – это значение по умолчанию, которое веб-серверы HyperText Transfer Protocol прослушивают для запросов веб-браузера.
Порт 443 по умолчанию для безопасного HTTP.
UDP-порт 88
Интернет-игра Xbox Live использует несколько разных номеров портов, включая UDP-порт 88.
UDP-порты 161 и 162
По умолчанию простой протокол управления сетью использует UDP-порт 161 для отправки и получения запросов в управляемой сети. Он использует UDP-порт 162 по умолчанию для получения прерываний SNMP от управляемых устройств.
TCP-порт 194
Несмотря на то, что такие инструменты, как приложения для обмена сообщениями на смартфонах, такие как Slack и Microsoft Teams, стали использовать Internet Relay Chat, IRC по-прежнему пользуется популярностью среди людей по всему миру. По умолчанию IRC использует порт 194.
Порты выше 1023
Номера портов TCP и UDP между 1024 и 49151 называются зарегистрированными портами . Управление по присвоению номеров в Интернете ведет список услуг, использующих эти порты, чтобы минимизировать конфликты при использовании.
В отличие от портов с меньшими номерами, разработчики новых служб TCP/UDP могут выбирать определенный номер для регистрации в IANA, а не назначать им номер. Использование зарегистрированных портов также позволяет избежать дополнительных ограничений безопасности, которые операционные системы накладывают на порты с меньшими номерами.
Источник: solutics.ru