<|||>
Как работает интернет. Часть 6 | Назначение протокола http - Инкапсуляция протоколов
Глобальные компьютерные сети и интернет
Оглавление
Как работает интернет. Часть 6 | Назначение протокола http
Что за методы GET, POST и Cookie
Ответ HTTP
Инкапсуляция протоколов
Все страницы

Протоколы могут «инкапсулироваться» друг в друга. Что это значит? Это значит, что в одном протоколе есть поле «данные», и в это поле вставляется другой протокол. Примерно так:

Инкапсуляция протокола

Это значит, что, на самом деле, самым главным является отнюдь не протокол HTTP, как мы думали ранее, наоборот, он является самым «наименее значимым». Главным является протокол Ethernet, так как именно он осуществляет передачу данных по проводам. Но чтобы передать что-то по проводам, нужно знать, ЧТО передавать. На самом деле передается еще один протокол, IP. Именно этот протокол отвечает за IP-адреса, передачу пакетов и их доставку. Что же за пакеты доставляет протокол IP? А доставляет он протокол TCP. Протокол TCP осуществляет установку соединения, поддержание его, коррекцию ошибок, и многие другие вещи. Но что же передает протокол TCP в своем «соединении»? Он передает протокол HTTP. А что находится в протоколе HTTP? А в протоколе HTTP, как мы уже знаем, находятся запросы сайтов и ответы сервера.

Если нарисовать картинку, какие протоколы в какие можно вложить, то получится следующее развесистое дерево:


В протоколе HTTP находятся запросы сайтов и ответы сервера.

Некоторые протоколы из этого списка мы уже знаем, например, HTTP, а некоторые нет – IMAP, FTP, и другие (не волнуйтесь, скоро мы их изучим). Главное понять принцип инкапсуляции – между серверами посылаются не данные HTTP, а пакет Ethernet, в котором находятся данные IP, в которых находятся данные TCP, в которых находятся данные HTTP.

Что же делает сервер, когда получает такой «слоеный пирог»? Обратную операцию. Откусывает заголовок Ethernet, и читает в нем какой протокол ему ждать дальше. Видит, что IP. Читает заголовок IP (кстати, именно там записано, какой это IP – IPv4 или IPv6), видит, что дальше идет TCP, и отбрасывает IP. Читает заголовок TCP, видит, что дальше идет HTTP, отбрасывает заголовок TCP. Читает HTTP, видит, что нужна страница такая-то, получает ее (что тоже довольно неочевидно, у нас будет много статей по поводу того, как сервер получает нужный файл), и… отправляет обратно.

Отправляет обратно он точно так же. Берет HTTP-ответ, кладет его в пакет TCP, получившийся симбиоз кладет в пакет IP, что получилось – в пакет Ethernet, и его отправляет по проводу какому-либо компьютеру.

Кстати… а какому? Если для нас, домашних пользователей, вполне логично выходить в Интернет через некий «шлюз», то вряд ли Яндекс или Гугл имеют какой-то шлюз, через который они выходят в Интернет. Если бы это было так, то ему достаточно было бы сломаться, и Яндекса или Гугла стало бы не видно в Интернете. Конечно, это не так. За маршрутизацию в Интернете отвечают другие протоколы, например, OSPF или BGP.
Их мы тоже будем рассматривать, но уже гораздо позже.

А как же шифрование? В последнее время, особенно после скандала с АНБ, многие задумываются о том, будут ли их пакеты зашифрованы. Да, и тут есть свои протоколы, например TLS, IPSec, HTTPS. Но это тоже позже. А вот в следующей статье мы будем разбирать протокол TCP, и смотреть, как же в него можно встроить тот HTTP-запрос, который нам нужен.



Понравилась полезная статья? Подпишитесь на RSS и получайте больше нужной информации!




Комментарии
Добавить новый RSS
ы   |2013-10-12 22:43:14
Фраза: "языках HTTP и HTML" не верна. HTTP - протокол, а HTML - язык
Оставить комментарий
Имя:
Email:
 
Тема:
 
Пожалуйста, введите проверочный код, который Вы видите на картинке.

3.26 Copyright (C) 2008 Compojoom.com / Copyright (C) 2007 Alain Georgette / Copyright (C) 2006 Frantisek Hliva. All rights reserved."

 
Все права защищены. Copyright 2008-2016 © Мой компьютер плюс