Что такое протокол TCP?

TCP (протокол управления передачей) определяется как стандарт, который объясняет, как устанавливать, а также поддерживать сетевой диалог, с помощью которого прикладные программы могут обмениваться данными. Этот протокол работает вместе с IP, то есть интернет-протоколом, который сообщает, как компьютер отправляет пакеты данных между собой. В целом, TCP и IP считаются основными правилами, которые определяют Интернет. Протокол TCP был определен IETF, то есть Целевой группой по Интернету (IETF).

Понимание протокола TCP

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

Давайте возьмем пример. Когда веб-сервер отправляет клиенту файл HTML, он использует протокол HTTP. Затем уровень программы HTTP запрашивает уровень TCP, чтобы установить соединение, а затем отправить файл. Затем стек TCP делит файл в виде пакетов, нумерует их и, наконец, направляет их на уровень Интернет-протокола для доставки. Хотя каждый из пакетов в передаче имеет один и тот же источник и IP-адреса назначения, пакеты по-прежнему отправляются по различным маршрутам. Программный уровень TCP на клиентском компьютере всегда ожидает до тех пор, пока не будут получены все пакеты, и затем он подтверждает те, которые он получил, и затем запрашивает повторную передачу.

Преимущества протокола TCP

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

Область протокола TCP

Минимальная длина заголовка TCP составляет 20 байтов, а максимальная длина 60 байтов.

  • Source Port (Порт источника). Он является 16-разрядным и определяет порт источника процесса приложения при отправке устройства.
  • Порт назначения. Он также является 16-разрядным и определяет порт назначения процесса приложения при получении устройства.
  • Смещение данных (4 бита) - это 4 бита, в котором указывается размер заголовка TCP, а также смещение данных в текущем пакете во всем сегменте TCP.
  • Зарезервировано (3 бита) - по умолчанию все установлено на ноль и зарезервировано для будущего использования.
  • ЕЭК - У него есть две интерпретации:
    1. Если бит SYN равен 0, это означает, что ECE означает, что IP-пакет получил опыт перегрузки, то есть установлен бит CE.
    2. Если бит SYN равен 1, это означает, что ECE означает, что устройство способно к ECT.
  • URG - URG означает, что поле Urgent Pointer содержит важные данные и что оно должно быть обработано.
  • ACK - ACK означает, что поле Подтверждение имеет значение. Если ACK равен 0, это означает, что пакет не имеет подтверждения.
  • PSH - когда установлен режим PSH, это означает, что он запрашивает приемную станцию, чтобы передавать данные всякий раз, когда речь идет о приемном приложении, но без буферизации.
  • RST - флаг сброса имеет следующие функции:
  1. RST необходим для запрета входящего соединения.
  2. RST также необходим для отклонения сегмента.
  3. RST необходим для перезапуска соединения.
  • SYN - флаг SYN необходим для установки соединения между хостами.

Что вы можете сделать с протоколом TCP?

Протокол TCP работает в модели сервера или клиента. Клиент всегда запускает соединение, и сервер либо принимает его, либо отклоняет его. Это трехстороннее подтверждение связи по существу требуется для управления соединением.

Клиент устанавливает соединение, а затем отправляет сегмент вместе с порядковым номером. Затем сервер подтвердил бы его вместе со своим SN (порядковый номер) и с ACK сегмента клиента, который на один больше по сравнению с порядковым номером клиента. Теперь клиент после получения ACK сегмента отправляет подтверждение ответа Сервера.

Как сервер, так и клиент могут отправлять сегмент TCP вместе с флагом FIN, установленным в 1. Каждый раз, когда принимающая сторона возвращает его обратно путем подтверждения FIN, это конкретное направление связи TCP закрывается, а затем соединение освобождается.

Работа с протоколом TCP

TCP использует номера портов для того, чтобы узнать, какие процессы приложения ему нужно для передачи сегмента данных. Наряду с этим, он использует порядковые номера для синхронизации с удаленным хостом. Каждый сегмент данных затем отправляется и принимается вместе с SN. Отправитель проверяет последний из сегмента данных, который был получен Получателем при получении подтверждения. Получатель знает о последнем сегменте, который был отправлен отправителем, указав порядковый номер (SN) самого последнего принятого пакета.

Вывод

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

Рекомендуемая статья

Это было руководство к Что такое протокол TCP? Здесь мы обсудили сферу применения и работу вместе с преимуществами протокола TCP. Вы также можете посмотреть следующие статьи, чтобы узнать больше -

  1. Каковы применения HTML
  2. Введение в Что такое VFX?
  3. Что такое интерфейс командной строки?
  4. Что такое архитектура JVM