Протоколы



Предыдущая | Следующая
Протоколы
Люди, чтобы понимать друг друга, должны разговаривать на одном языке. Точно так и с компьютерами, подключенными к сети, неважно какой — всемирной или локальной. Обмен данными по этим сетям должен проходить по единым стандартам, иначе начнется новое вавилонское столпотворение.
Стандарт, по которому кодируются данные для отправки по сети, называется протоколом. В Интернете для обмена данными используются несколько протоколов, которые мы здесь вкратце рассмотрим.
Самый главный, если так можно сказать, протокол Интернета — это TCP/IP (Transfer Control Protocol/Internet Protocol, протокол управления передачей/протокол Интернета). Это так называемый протокол низкого уровня, определяющий только самые основные параметры передаваемых данных: длина отдельных порций (пакетов) данных, способ кодирования, указания адресов получателя и отправителя, а также защита от ошибок. Можно сказать, что TCP/IP занимается исключительно передачей данных по каналам Интернета, не вникая, что же именно он передает.
На протоколе TCP/IP базируются другие протоколы, уже высокого уровня. Эти протоколы описывают формат клиентских запросов и серверных ответов: особые команды, пересылаемые клиентом серверу при запросе или передаче данных, и способ представления передаваемой информации. Кодированием передаваемой информацией особым помехоустойчивым кодом, разбиением ее на пакеты и собственно передачей занимается "чернорабочий" TCP/IP.
Примечание
Строго говоря, существуют еще протоколы физического уровня, располагающиеся "ниже" даже TCP/IP. Они определяют электрические параметры сигнала, кабелей, разъемов и пр.
Каждый сервис Интернета использует свой собственный высокоуровневый протокол (а то и несколько, предназначенных для разных задач или разработанных конкурирующими организациями). Давайте рассмотрим протоколы, с которыми мы столкнемся в будущем.
Начнем мы, конечно, с WWW. Для передачи данных Всемирная Паутина использует протокол HTTP (HyperText Transfer Protocol, протокол передачи гипертекста). Он задает набор команд для запроса данных и управления ими, пересылаемых клиентом (Web-обозревателем) Web-серверу, и способы представления пересылаемых в обе стороны данных. Пожалуй, это самый широкоизвестный протокол Интернета — всем более-менее грамотным интернетчикам знакомы эти четыре буквы.
Сервис пересылки файлов FTP использует протокол, который так и называется — FTP. Он также определяет набор команд для управления файлами на сервере (загрузка, помещение на сервер, копирование, перемещение, удаление и т. д.) и способы кодирования файлов для пересылки по каналам связи. В этом смысле протоколы HTTP и FTP весьма похожи.
А вот электронная почта использует целых два протокола. Первый протокол — SMTP (Simple Mail Transfer Protocol, простой протокол пересылки почты) — используется для пересылки почты клиентом серверу. Для получения же почты от сервера клиент общается с ним по протоколу РОРЗ (Post-Office Protocol, протокол почты).
Замечание
Нужно также упомянуть протокол IMAP (Internet Message Access Protocol, протокол доступа к почте Интернета), применяемый также для получения клиентом почты от сервера. По сравнению с более старым РОРЗ он предоставляет больше возможностей, но распространен не так широко.
Сервис новостей использует для работы протокол NNTP (Network News Transfer Protocol, протокол передачи сетевых новостей). Остальные сервисы используют свои протоколы. Но мы не будем на них останавливаться.
С понятием протокола очень тесно связано понятие порта TCP/IP. Порт — это своего рода воображаемый канал, по которому передаются данные с использованием одного из протоколов высокого уровня. Можно сказать, что любой канал передачи данных Интернета разделен на 65 535 небольших пронумерованных "канальчика" — именно столько портов предусматривает протокол TCP/IP.
Каждый существующий протокол высокого уровня использует для передачи данных свой собственный порт (так называемый порт по умолчанию). В табл. 1.1 перечислены некоторые протоколы и "занимаемые" ими порты.
Таблица 1.1. Порты TCP/IP, используемые по умолчанию для передачи данных
некоторых протоколов высокого уровня
Протокол Используемый порт
HTTP 80
FTP 21
SMTP 25
РОРЗ 110
Но почему такое странное название — "порт по умолчанию"? Давайте разберемся.
Дело в том, что все более-менее серьезные серверы предоставляют возможность изменить порт, используемый протоколом, который они обслуживают, на другой. Например, Web-сервер может быть настроен так, чтобы использовать для "общения" с клиентами не 80-й порт, а, скажем, 8000-й. (Автору этой книги время от времени встречаются Web-серверы, настроенные таким образом.) Это вполне возможно, но не рекомендуется, чтобы не обескураживать пользователей, и поэтому применяется очень редко, только в крайних случаях.
Если же сервер специально не настраивать на использование другого порта, то он будет использовать именно порт по умолчанию. Так изначально задано в его настройках.

 

Содержание Книга по php и mysql