TCP против UDP: в чем разница?

Содержание:

Anonim

Что такое TCP?

TCP / IP помогает вам определить, как конкретный компьютер должен быть подключен к Интернету и как вы можете передавать данные между ними. Это помогает вам создать виртуальную сеть, когда подключено несколько компьютерных сетей.

TCP / IP означает протокол управления передачей / Интернет-протокол. Он специально разработан как модель, предлагающая высоконадежный сквозной поток байтов в ненадежной межсетевой сети.

В этом руководстве вы узнаете:

  • Что такое TCP?
  • Что такое UDP?
  • Как работает TCP?
  • Как работает UDP?
  • Особенности TCP
  • Разница между TCP и UDP
  • Применение TCP
  • Применение UDP
  • Преимущество TCP
  • Преимущество UDP
  • Недостатки TCP
  • Недостатки UDP
  • Когда использовать UDP и TCP?

Что такое UDP?

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

КЛЮЧЕВЫЕ ОТЛИЧИЯ:

  • TCP - это протокол с установлением соединения, тогда как UDP - протокол без установления соединения.
  • Скорость TCP ниже, а скорость UDP выше
  • TCP использует протокол установления связи, такой как SYN, SYN-ACK, ACK, в то время как UDP не использует протоколы установления связи.
  • TCP выполняет проверку ошибок, а также выполняет восстановление после ошибок, с другой стороны, UDP выполняет проверку ошибок, но отбрасывает ошибочные пакеты.
  • TCP имеет сегменты подтверждения, но UDP не имеет сегментов подтверждения.
  • TCP тяжелый, а UDP легкий.

Как работает TCP?

TCP-соединение устанавливается с помощью трехстороннего рукопожатия. Это процесс установления и подтверждения соединения. Как только соединение установлено, начинается передача данных, а когда процесс передачи завершается, соединение завершается закрытием установленного виртуального канала.

Как работает UDP?

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

Особенности TCP

Вот некоторые важные особенности TCP.

  • Благодарности за доставку
  • Повторная передача
  • Задерживает передачу, когда сеть перегружена
  • Простое обнаружение ошибок

Вот некоторые важные особенности UDP:

  • Поддерживает приложения с интенсивной полосой пропускания, допускающие потерю пакетов
  • Меньше задержки
  • Он отправляет большое количество пакетов.
  • Возможность потери данных
  • Разрешает небольшую транзакцию (поиск DNS)

Разница между TCP и UDP

Вот различия между TCP и UDP.

TCP UDP
Это протокол с установлением соединения. Это протокол без установления соединения.
TCP считывает данные как потоки байтов, и сообщение передается на границы сегмента. Сообщения UDP содержат пакеты, которые были отправлены один за другим. Он также проверяет целостность во время прибытия.
Сообщения TCP передаются через Интернет с одного компьютера на другой. Он не основан на соединении, поэтому одна программа может отправлять большое количество пакетов другой.
TCP переупорядочивает пакеты данных в определенном порядке. Протокол UDP не имеет фиксированного порядка, потому что все пакеты независимы друг от друга.
Скорость TCP ниже. UDP работает быстрее, так как не предпринимается попыток исправления ошибок.
Размер заголовка 20 байт. Размер заголовка 8 байт.
ПТС тяжеловесен. TCP требуется три пакета для установки сокетного соединения, прежде чем какие-либо пользовательские данные могут быть отправлены. UDP легкий. Нет отслеживания подключений, упорядочивания сообщений и т. Д.
TCP выполняет проверку ошибок, а также исправляет ошибки. UDP выполняет проверку ошибок, но отбрасывает ошибочные пакеты.
Сегменты подтверждения Нет сегментов подтверждения
Использование протокола рукопожатия, такого как SYN, SYN-ACK, ACK Без рукопожатия (протокол без установления соединения)
TCP надежен, поскольку он гарантирует доставку данных к маршрутизатору назначения. Доставка данных в пункт назначения не может быть гарантирована в UDP.
TCP предлагает обширные механизмы проверки ошибок, поскольку он обеспечивает управление потоком и подтверждение данных. UDP имеет только единственный механизм проверки ошибок, который используется для контрольных сумм.

Применение TCP

Вот плюсы / преимущества использования модели TCP / IP:

  • Это поможет вам установить / установить соединение между разными типами компьютеров.
  • Работает независимо от операционной системы
  • Поддерживает множество протоколов маршрутизации.
  • Это обеспечивает межсетевое взаимодействие между организациями.
  • Его можно эксплуатировать независимо.
  • Поддерживает несколько протоколов маршрутизации.
  • TCP может использоваться для установления соединения между двумя компьютерами.

Применение UDP

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

Преимущество TCP

Вот плюсы / преимущества TCP:

  • Это поможет вам установить / установить соединение между разными типами компьютеров.
  • Он работает независимо от операционной системы.
  • Он поддерживает множество протоколов маршрутизации.
  • Это обеспечивает межсетевое взаимодействие между организациями.
  • Модель TCP / IP имеет хорошо масштабируемую архитектуру клиент-сервер.
  • Его можно эксплуатировать независимо.
  • Поддерживает несколько протоколов маршрутизации.
  • Его можно использовать для установления соединения между двумя компьютерами.

Преимущество UDP

Вот плюсы / преимущества UDP:

  • Он никогда не ограничивает вас коммуникативной моделью, основанной на подключении; поэтому задержка запуска в распределенных приложениях низкая.
  • Получатель пакетов UDP делает их неуправляемыми, что также включает границы блоков.
  • Широковещательная и многоадресная передача также доступны с UDP.
  • Возможна потеря данных
  • Небольшая транзакция (поиск DNS)
  • Приложение с интенсивным использованием полосы пропускания, которое выдерживает потерю пакетов

Недостатки TCP

Вот недостатки использования TCP:

  • TCP никогда не завершает передачу без явного запроса всех данных в движении.
  • Вы не можете использовать для широковещательной или многоадресной передачи.
  • TCP не имеет границ блоков, поэтому вам нужно создать свои собственные.
  • TCP предлагает множество функций, которые вам не нужны. Это может привести к потере полосы пропускания, времени или усилий.
  • В этой модели транспортный уровень не гарантирует доставку пакетов.
  • Заменить протокол в TCP / IP непросто.
  • Он не предлагает четкого разделения от своих сервисов, интерфейсов и протоколов.

Недостатки UDP

Вот важные минусы / недостатки UDP:

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

Когда использовать UDP и TCP?

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