Протокол – это система правил, которые определяют, как что-то делать. В компьютерной терминологии, протокол – это, как правило, согласованный или стандартизированный метод передачи данных и/или установления связи между различными устройствами. Просто как два человека должны иметь общий язык для общения между ними, прежде чем они смогут начать обмениваться идеями и информацией, так и компьютеры имеют свой распространенный способ передачи информации между ними.
В Интернет протокол часто используется в качестве примера успешных протоколов – системы, в которых реализация ключевых качеств протоколов, например исправление ошибок и форматирование сообщений, используются в широком спектре аппаратного и программного обеспечения.
Для демонстрации общего использования популярного протокола, мы можем рассмотреть протокол TCP/IP. Компьютеры могут взаимодействовать с различными типами информации через TCP/IP, такими как текст, изображения, технологии VoIP (голосовые сообщения по Интернет-протоколу), и многое другое. Чтобы указать, что пользователь хочет открыть страницу «protocol.html» с веб-сайта What-Is-What, веб-браузер Firefox подключается к серверу What-Is-What и отправляет эту информацию: «GET /what_is/protocol.html HTTP / 1.1″ . Сервер знает, что запрос разделён на три части пробелами и знает, какие значения ожидать в каждом разделе. В первом разделе указан тип запроса, в данном случае – запрос GET. Следующий раздел – запрос местоположения, в данном случае – файл «protocol.html», который находится в каталоге «what_is». Последний раздел – это транспортный протокол, который браузер будет использовать, в этом случае версия 1.1 HTTP (HyperText Transfer Protocol). Если Firefox будет запрашивать эти свойства в другом порядке, скажем, в разделе GET в конце, а не в начале, веб-сервер не сможет понять запрос. Порядок и тип запроса определяются в наборе протоколов TCP/IP.
В предыдущем примере мы видели, как один протокол TCP/IP используется для указания использования другого протокола-http. Это пример высокоуровнего и низкоуровневого протоколов и как они взаимодействуют. TCP и IP – это протоколы низкого уровня, которые используются при установлении базового соединения между двумя компьютерами в сети. Но простое подключение практически ничего не делает, так как информация должна быть фактически передана. Так как низкоуровневый протокол определяет свойства соединения, высокоуровневый протокол (например, HTTP) определяет свойства передачи данных. В дополнение к известному протоколу HTTP есть и другие распространенные интернет-протоколы которые включают FTP (протокол передачи файлов), DHCP (протокол динамической конфигурации хоста), SMTP (простой протокол передачи почты), POP3 (протокол почтового отделения версии 3) и IMAP ( Протокол доступа к интернет-сообщениям). Вы, наверное, заметили, что все эти аббревиатуры заканчиваются буквой «P». Фактически, всякий раз, когда встречаются незнакомые компьютерные сокращения, заканчивающиеся на «P», существует очень хороший шанс, что он определяет протокол.