Помимо удовлетворения любопытства, кажется, что, учитывая важную роль, которую Интернет играет в нашей жизни, мы должны лучше понимать, как он работает. Благодаря современным высокоскоростным интернет-соединениям веб-сайты и онлайн-сервисы загружаются за секунды. Это может скрыть, сколько всего происходит за кулисами, когда вы подключаетесь к Интернету и покидаете свою домашнюю страницу.
Упрощенное объяснение того, как работает Интернет, будет следующим: вы (клиент) отправляете запрос на веб-сайт (хост). Веб-сайт отправляет результат, который затем отображается в вашем веб-браузере. Все это происходит так быстро, что вы можете не осознавать, что под капотом происходит несколько вещей, когда вы подключаетесь к веб-сайту.
Большинство веб-сайтов состоят из множества различных элементов, каждый из которых нужно запрашивать индивидуально. Базовый код веб-страницы, написанный на HTML (язык гипертекстовой разметки), сообщает браузеру, что ему нужно запросить для отображения веб-страницы, а также общие инструкции по ее правильному отображению. Это позволяет динамическим веб-сайтам, которые отображаются по-разному в зависимости от используемого устройства.
Прежде чем данные будут отправлены обратно клиенту с хоста, они разбиваются на тысячи пакетов. Каждый пакет содержит крошечный бит информации о файле, которую браузер затем собирает заново. Эти файлы можно разделить на две категории — файлы ресурсов и файлы кода.
Эти файлы содержат код, который может быть написан на нескольких языках — HTML, CSS, Perl, JavaScript и т. д. Активы включают изображения, видео, аудио и любые другие носители для отображения или загрузки.
Веб-сайты, к которым вы подключаетесь, размещены на серверах. Вы можете думать о сервере как о большом компьютере, подключенном к Интернету. Серверы, которым просто необходимо обслуживать данные веб-сайтов, могут быть довольно простыми с точки зрения вычислительной мощности. Однако вы также можете арендовать серверы, которые соответствуют характеристикам высококлассной игровой установки.
Для более сложных веб-сайтов требуются более мощные серверы, а веб-сайты, которые испытывают огромные объемы трафика, часто используют несколько серверов с протоколами автоматической маршрутизации, которые направляют новых пользователей на серверы, где нагрузка минимальна.
На серверах установлены операционные системы — обычно специальные версии Linux или Windows. Эти операционные системы предназначены для размещения на серверах и обработки их соединений. Думайте об операционной системе как об одном из операторов коммутатора, который использовался для маршрутизации телефонных звонков. Когда клиент подключается к хост-серверу, операционная система знает, что делать с входящим подключением.
Когда сервер получает HTTP-запрос, он знает, как его обработать, и в случае успеха вернуть соответствующий ответ.
Чтобы клиент мог взаимодействовать с хостом, они оба должны использовать общий набор протоколов. Эти общие протоколы гарантируют, что любые устройства, которым необходимо подключиться к Интернету, смогут это сделать. Без этой стандартизации для доступа к разным частям Интернета потребовалось бы разное программное обеспечение. И наоборот, можно использовать разные протоколы, как в случае с TOR, для создания сетей, которые ведут себя по-разному.
Существует два протокола, которые имеют фундаментальное значение для работы Интернета — протокол передачи гипертекста, протокол управления передачей и Интернет-протокол. В совокупности это протоколы, которые позволяют онлайн-устройствам взаимодействовать друг с другом.
Рассмотрим URL-адрес http://www.example.com/pogs/boglins. Часть URL-адреса example.com содержит информацию о местоположении и личности хоста. Часть адреса «/ pogs / boglins» указывает, к какой части веб-сайта вы хотите получить доступ. Вы можете думать о первой части как о номере телефона, который соединяет вас с конкретным бизнесом, а о последней части как о добавочном номере, позволяющем напрямую подключаться к нужному телефону.
Но компьютеры работают не со словами, они работают с числами. URL example.com приятный и легкий для чтения человеком, но это не то, что нужно вашему компьютеру. Чтобы подключиться к хосту, вашему браузеру необходимо знать IP-адрес сервера, к которому вы пытаетесь получить доступ.
Чтобы найти IP-адрес, ваш браузер выполняет поиск в службе доменных имен (DNS). Этот процесс похож на поиск телефонного номера в телефонной книге.
Когда вы регистрируете доменное имя, вам присваивается IP-адрес. Таким образом, когда example.com зарегистрирован, он добавляется в реестр доменных имен вместе со связанным IP-адресом. Когда браузер выполняет поиск в DNS для example.com, он находит связанный IP-адрес сервера, на котором хранится веб-сайт, и устанавливает соединение перед отправкой запроса пользователя.
Основным компонентом большинства веб-страниц является файл HTML. Это исходный код веб-страницы; он содержит все инструкции, необходимые браузеру для правильного отображения страницы. Он также сообщает браузеру, какие ресурсы ему нужно запросить у хоста.
Каждый дополнительный актив представляет собой отдельный запрос между клиентом и хостом. Иногда код HTML вызывает внешний скрипт, возможно, скрипт Python или Perl. В этом сценарии могут быть последующие вызовы других ресурсов. Никакие ресурсы не загружаются, если они не запрашиваются, однако многие веб-браузеры кэшируют определенные элементы, поэтому при повторном посещении страницы вам нужно будет загрузить только измененный контент.
Давайте посмотрим, как все эти отдельные компоненты объединяются при загрузке веб-сайта.
Когда вы щелкаете гиперссылку или вводите URL-адрес в свой веб-браузер, ваш веб-браузер выполняет поиск в DNS, который сообщает ему IP-адрес сервера, на котором размещен запрашиваемый вами веб-сайт. Затем он устанавливает соединение с хостом, используя протокол TCIP/IP.
Как только соединение установлено, клиент отправляет HTTP-запрос на хост, запрашивая либо домашнюю страницу, либо конкретную страницу или файл.
Если запрос клиента успешен, хост отправит запрошенные данные. Прежде чем данные будут отправлены обратно в веб-браузер клиента, они разбиваются на пакеты. Затем веб-браузер берет все эти отдельные части и объединяет их в отдельные файлы. Первоначально это обычно исходный HTML-код веб-страницы, который сообщает веб-браузеру, какие ресурсы запрашивать и как их отображать. Затем браузер отображает веб-сайт, который вы видите.
Каждый раз, когда вы подключаетесь к веб-сайту, происходит гораздо больше, чем кажется на первый взгляд. Подумайте, сколько отдельных элементов составляют веб-сайты, которые вы посещали каждый день. Несмотря на то, что это происходит в мгновение ока, вашему веб-браузеру и серверу приходится много взаимодействовать.
Заполните форму и наш менеджер перезвонит Вам в самое ближайшее время!
Спасибо! Ваша заявка принята
Спасибо! Ваша заявка принята