Web-серверы и TCP

Перед тем как завершить разговор о мультиплексировании и демультиплексировании, необходимо сказать несколько слов о web-серверах и об использовании ими номеров портов. Предположим, что на хосте выполняется web-сервер (например, Apache) с портом номер 80. Когда клиенты (к примеру, браузеры) формируют сегменты для передачи серверу, во всех сегментах номер порта получателя получает значение 80. Как упоминалось выше, сервер различает подобные сегменты по IP-адресам и номерам портов отправителей.

Как правило, для каждого нового соединения с клиентом сервер либо порождает новый процесс, либо создает поток выполнения в рамках существующего процесса. Сервер, представленный на рис. 3.5, относится к первому из типов. Как видно, каждый из процессов имеет собственный сокет соединения, с помощью которого сервер обменивается данными с клиентом. Необходимо отметить, что сокеты соединения и процессы не всегда состоят в отношениях «один к одному».

Современные высокопроизводительные web-серверы зачастую используют единственный процесс, создающий потоки выполнения для соединений с клиентами, при этом каждый поток располагает собственным сокетом (поток выполнения можно рассматривать как упрощенный процесс в рамках «нормального» процесса). В первом задании по программированию главы 2 требовалось создать сервер, который функционирует именно таким образом. Подобные серверы позволяют одному процессу задействовать несколько сокетов соединения с разными идентификаторами.
Если клиент и сервер используют протокол HTTP с постоянными ТСР-соединени-ями, то они могут многократно обмениваться сообщениями через один и тот же сокет сервера. В противном случае для каждой пары запрос/ответ устанавливается новое TCP-соединение, которое разрывается по окончании процесса передачи ответа. Такой механизм привносит дополнительную нагрузку на сервер, ухудшая качество обслуживания (несмотря на то, что некоторые операционные системы имеют средства борьбы с этой проблемой).

Ознакомившись с мультиплексированием и демультиплексированием на транспортном уровне, перейдем к подробному рассмотрению UDP — протокола транспортного уровня, используемого в Интернете. Как вскоре станет ясно, службы протокола UDP помимо мультиплексирования и демультиплексирования предоставляют приложениям некоторые дополнительные услуги.

организация дней рождений

Данная статья "Web-серверы и TCP" размещена на сайте Компьютерные сети и многоуровневая архитектура интернета (conlex.kz) в ознакомительных целях.

Уточнения, корректировки и обсуждения статьи "Web-серверы и TCP" - под данным текстом, в комментариях.

Ответственность, за все изменения, внесённые в систему по советам данной статьи, Вы берёте на себя.

Копирование статьи "Web-серверы и TCP", без указания ссылки на сайт первоисточника Компьютерные сети и многоуровневая архитектура интернета (conlex.kz), строго запрещено.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *