2016-01-08 9 views
0

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

Разве разрешение IP-адреса недостаточно для этой цели?

В принципе, мне нужно знать причину установления соединения TCP.

заранее спасибо

ответ

1

Вы используете устройство с именем A и сервер называется B

узел A посылает пакет TCP синхронизироваться с хост B

Хост B получает SYN в

Хост B отправляет подтверждение SYN-синхронизации

Хост A получает B SYN-ACK

Хост A отправляет подтверждение ACK

Хост B получает ACK. Соединение сокетов TCP установлено.

0

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

В отличие от этого, например, UDP работает быстро. Нет подтверждения квитирования. Но UDP-пакеты не упорядочены, также могут потеряться пакеты (без автоматической повторной передачи), и нет контроля перегрузки.

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

Если вы не заботитесь о потерях или о переносе не по порядку, вам, вероятно, не нужен TCP. (Например, видео в реальном времени)

-

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

1

Поскольку для передачи HTTP-сообщений требуется TCP-соединение, а TCP имеет трехстороннее квитирование.

В принципе, мне нужно знать причину установления соединения TCP.

Поскольку HTTP работает через TCP. Это не существует в вакууме.

+0

Pdf был очень полезен. Однако он не упомянул о причине рукопожатия. Поэтому я спросил. – KawaiKx

+0

Вы спрашивали, как здесь, так и в других вопросах, почему существует TCP-соединение вообще, и почему «разрешение IP-адреса» недостаточно.Если вы действительно спрашиваете, почему TCP имеет трехстороннее рукопожатие, вы не в тему. В любом случае, вы все равно не в тему. – EJP

Смежные вопросы