Протокол управления передачей (TCP)

Протокол управления передачей данных (TCP) является наиболее распространенным протоколом, используемым в Интернете. Он ориентирован на соединение, т.е. данные могут быть отправлены двунаправленно, как только соединение установлено.[1] Протокол управления передачей данных используется чаще, чем протокол User Datagram Protocol (UDP). В отличие от UDP, она включает в себя автоматическую систему проверки ошибок, чтобы убедиться, что каждый пакет доставлен в соответствии с запросом. Протокол User Datagram Protocol, с другой стороны, не предоставляет такую систему, которая требует подтверждения того, что пакетная передача прошла успешно. Эта встроенная проверка ошибок, хотя и более эффективна, но замедляет работу по сравнению с UDP, так как она определяет приоритеты точной передачи данных между системами.

Поэтому TCP очень предпочтительна при передаче большинства типов данных, таких как файлы и веб-страницы, через сетевые системы. UDP, с другой стороны, более идеально подходит для онлайн-медиа и потоковой передачи, поскольку не требует, чтобы все пакеты были функциональными.[2]

Функциональность

Протокол управления передачей работает, когда пользователи загружают веб-страницу в свой веб-браузер, что подразумевает отправку TCP-пакетов с компьютера на адрес хост-сервера веб-сайта. Эти пакеты посылают запрос на получение содержимого страницы сайта с хост-сервера для доступа пользователя. Поток TCP-пакетов отправляется пользователю или оконечному устройству в качестве ответа веб-сервера. Затем веб-браузер отвечает за склеивание этих пакетов для считывания отображаемых данных, чтобы пользователь мог их увидеть. Когда пользователи регистрируются на определенном веб-сайте или размещают комментарии в Интернете, они полагаются на ПТС. Система подразумевает не только отправку пакетов, но и подтверждение того, что эти пакеты также получены. Это гарантировано системой нумерации.

Через систему, получение неверного ответа вызовет повторное получение пакетов, чтобы убедиться, что запрашивающие получатели получат правильные данные, запрошенные для получения. Пакеты, отправляемые в рамках TCP, делают соединение более надежным, так как эти данные отслеживаются, т.е. данные не повреждаются и не теряются при передаче. Вот почему пользователи все еще могут получить полный и бесперебойный файл даже в периоды, когда сеть испытывает икоту или помехи. В некоторых случаях, когда приемник находится в автономном режиме, компьютер посылает сообщение об ошибке, в котором говорится, что он не смог связаться с удаленным узлом.[3]

Эффекты

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

Преимущества

Это надежно, так как получение и подтверждение пакетов гарантировано. Он также ориентирован на подключение, т.е. требует от конечных точек создания защищенного канала перед передачей сообщений.[4] Пакеты не будут повреждены или утеряны во время транзита, то есть вы получите то, о чем просили.

Недостатки

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

Порты и протоколы

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

Протокол передачи файлов (FTP RFC 959: Порты 20/21)

Это один из наиболее часто используемых протоколов в Интернете и даже в частных сетях. Любой, у кого мало знаний о работе в сети, может настроить FTP-сервер. Это обеспечит простое перемещение файлов из одной системы в другую. Управление осуществляется через порт TCP 21, в то время как порт передачи данных - через порт TCP 20.

Протокол передачи гипертекста (RFC 2616: порт 80)

HTTP является одним из наиболее широко используемых протоколов в большинстве сетей и в Интернете. Это основной протокол, используемый веб-браузерами и наиболее часто используемый клиентами во всем мире.

Протокол передачи гипертекста по протоколу SSL/TLS (HTTPS RFC 2818: порт 443)

В сочетании с HTTP, основная роль HTTPS заключается в предоставлении тех же услуг через защищенное соединение, которое осуществляется либо с помощью Secure Sockets Layer, либо с помощью Transport Layer Security.

Защищенная оболочка (RFC 4250-4256: порт 22)

Secure Shell (SSH) - это протокол командного уровня, который в первую очередь управляет используемыми сетевыми устройствами. Это обычно используется в качестве альтернативы Telnet, который не обеспечивает безопасное соединение.

Telnet (RFC 854 - порт 23)

В отличие от Secure Shell, Telnet не обеспечивает защищенное соединение. По сути, он обеспечивает незащищенность. Поскольку он незащищен, большинство сетевых устройств более низкого уровня используют его вместо SSH, что требует дополнительной обработки. Справедливое предупреждение: использование Telnet через публичные сети может показать ваши учетные данные для входа в систему под открытым небом.

Протокол простой почтовой передачи (SMTP - порт 25)

SMTP используется в основном для двух функций. Используя порт 25 TCP, он в основном предназначен для передачи почты (электронной почты) от источника к получателю между почтовыми серверами, а также конечным пользователям для отправки почты в почтовую систему.[6]

История

Первоначально разработанные в рамках исследовательской сети в рамках передовых исследовательских проектов обороны США или DARPA, протоколы управления передачей или ранее известные как Программа управления передачей, были разработаны и запущены в 1974 году учеными Винтоном Грей "Винт" Серфом и Робертом Эллиотом Каном. Позже их назвали "Отцами Интернета".[7] ARPAnet был затем разработан как зрелая система межсетевых протоколов с TCP в качестве основного основного протокола. Написанная в 1973 году, она является первой версией предшественницы современной TCP. Он был пересмотрен и официально задокументирован в запросе на комментарии 675, озаглавленном Спецификация Программы контроля за передачей через Интернет, в декабре 1974 года.[8] Протокол управления передачей данных является одним из наиболее широко используемых протоколов вместе с Интернет-протоколом. С момента своего создания в 1974 году, многие изменения, дополнения и нововведения, внесенные в настоящее время в Запрос комментариев (RFC), привели к тому, что многие из них стали реальностью.


  1. https://www.diffen.com/difference/TCP_vs_UDP ↩︎

  2. https://techterms.com/definition/tcp ↩︎

  3. https://support.holmsecurity.com/hc/en-us/articles/212963869-What-is-the-difference-between-TCP-and-UDP- ↩︎

  4. https://www.itprotoday.com/strategy/tcp-vs-udp-ports ↩︎

  5. https://web.archive.org/web/20110503193100/http://academic.research.microsoft.com/Paper/3352358.aspx ↩︎

  6. http://www.pearsonitcertification.com/articles/article.aspx?p=1868080 ↩︎

  7. http://history-computer.com/Internet/Maturing/TCPIP.html ↩︎

  8. http://www.tcpipguide.com/free/t_TCPIPOverviewandHistory.htm ↩︎