Обработка протокола в браузере что это такое

Обновлено: 01.07.2024

В сети протокол представляет собой стандартизированный набор правил форматирования и обработки данных. Протоколы позволяют компьютерам взаимодействовать друг с другом.

Цели обучения

Прочитав эту статью, вы сможете:

  • Определить «протокол» в контексте сети
  • Связать протоколы с уровнями модели OSI
  • Узнайте о наиболее часто используемых протоколах в Интернете.

Скопировать ссылку на статью

Что такое сетевой протокол?

В сети протокол представляет собой набор правил форматирования и обработки данных. Сетевые протоколы — это как общий язык для компьютеров. Компьютеры в сети могут использовать совершенно разное программное и аппаратное обеспечение; однако использование протоколов позволяет им взаимодействовать друг с другом в любом случае.

Стандартизированные протоколы подобны общему языку, который могут использовать компьютеры, подобно тому, как два человека из разных частей мира могут не понимать родные языки друг друга, но они могут общаться, используя общий третий язык. Если один компьютер использует Интернет-протокол (IP), а второй компьютер также использует его, они смогут общаться — точно так же, как Организация Объединенных Наций полагается на свои 6 официальных языков для общения между представителями со всего мира. Но если один компьютер использует IP, а другой не знает этого протокола, они не смогут обмениваться данными.

В Интернете существуют разные протоколы для разных типов процессов. Протоколы часто обсуждаются с точки зрения того, к какому уровню модели OSI они принадлежат.

Каковы уровни модели OSI?

Модель взаимодействия открытых систем (OSI) представляет собой абстрактное представление о том, как работает Интернет. Он содержит 7 уровней, каждый из которых представляет отдельную категорию сетевых функций.

Протоколы делают возможными эти сетевые функции. Например, Интернет-протокол (IP) отвечает за маршрутизацию данных, указывая, откуда поступают пакеты данных* и каков их пункт назначения. IP делает возможной связь между сетями. Следовательно, IP считается протоколом сетевого уровня (уровня 3).

В качестве другого примера можно привести протокол управления передачей (TCP), который обеспечивает бесперебойную передачу пакетов данных по сети. Таким образом, TCP считается протоколом транспортного уровня (уровня 4).

*Пакет — это небольшой сегмент данных; все данные, отправляемые по сети, делятся на пакеты.

Какие протоколы работают на сетевом уровне?

Как описано выше, IP — это протокол сетевого уровня, отвечающий за маршрутизацию. Но это не единственный протокол сетевого уровня.

IPsec: безопасность интернет-протокола (IPsec) устанавливает зашифрованные IP-соединения с проверкой подлинности через виртуальную частную сеть (VPN). Технически IPsec — это не протокол, а скорее набор протоколов, включающий протокол инкапсуляции безопасности (ESP), заголовок аутентификации (AH) и сопоставления безопасности (SA).

ICMP. Протокол управляющих сообщений Интернета (ICMP) сообщает об ошибках и обновляет статус. Например, если маршрутизатор не может доставить пакет, он отправит сообщение ICMP обратно источнику пакета.

IGMP. Протокол управления группами Интернета (IGMP) устанавливает сетевые соединения «один ко многим». IGMP помогает настроить многоадресную рассылку, то есть несколько компьютеров могут получать пакеты данных, направленные на один IP-адрес.

Какие еще протоколы используются в Интернете?

TCP. Как описано выше, TCP — это протокол транспортного уровня, обеспечивающий надежную доставку данных. TCP предназначен для использования с IP, и эти два протокола часто упоминаются вместе как TCP/IP.

UDP: протокол пользовательских дейтаграмм (UDP) — более быстрая, но менее надежная альтернатива TCP на транспортном уровне. Он часто используется в таких сервисах, как потоковое видео и игры, где первостепенное значение имеет быстрая доставка данных.

Какие протоколы используют маршрутизаторы?

Сетевые маршрутизаторы используют определенные протоколы для обнаружения наиболее эффективных сетевых путей к другим маршрутизаторам. Эти протоколы не используются для передачи пользовательских данных. К важным протоколам сетевой маршрутизации относятся:

BGP. Протокол пограничного шлюза (BGP) — это протокол прикладного уровня, который сети используют для широковещательной рассылки IP-адресов, которые они контролируют. Эта информация позволяет маршрутизаторам решать, через какие сети должны проходить пакеты данных на пути к месту назначения.

EIGRP: расширенный протокол маршрутизации внутренних шлюзов (EIGRP) определяет расстояния между маршрутизаторами. EIGRP автоматически обновляет запись каждого маршрутизатора о лучших маршрутах (называемую таблицей маршрутизации) и рассылает эти обновления другим маршрутизаторам в сети.

OSPF: протокол Open Shortest Path First (OSPF) рассчитывает наиболее эффективные сетевые маршруты на основе различных факторов, включая расстояние и пропускную способность.

RIP: протокол информации о маршрутизации (RIP) — это старый протокол маршрутизации, определяющий расстояния между маршрутизаторами. RIP — это протокол прикладного уровня.

Как протоколы используются в кибератаках?

Как и в случае любого другого аспекта вычислительной техники, злоумышленники могут использовать то, как работают сетевые протоколы, для компрометации или перегрузки систем. Многие из этих протоколов используются в распределенных атаках типа «отказ в обслуживании» (DDoS). Например, при атаке с SYN-флудом злоумышленник использует способ работы протокола TCP. Они отправляют пакеты SYN для неоднократной инициации установления связи TCP с сервером до тех пор, пока сервер не сможет обслуживать законных пользователей, поскольку его ресурсы заняты всеми фальшивыми TCP-соединениями.

Cloudflare предлагает ряд решений для предотвращения этих и других кибератак. Cloudflare Magic Transit способен смягчить атаки на уровнях 3, 4 и 7 модели OSI. В примере с SYN-флудом Cloudflare обрабатывает процесс рукопожатия TCP от имени сервера, чтобы ресурсы сервера никогда не перегружались открытыми TCP-соединениями.

Как работает Интернет?

С чего начать? Интернет-адреса

Поскольку Интернет представляет собой глобальную сеть компьютеров, каждый компьютер, подключенный к Интернету, должен иметь уникальный адрес. Интернет-адреса имеют вид nnn.nnn.nnn.nnn, где nnn должно быть числом от 0 до 255. Этот адрес известен как IP-адрес. (IP означает Интернет-протокол; подробнее об этом позже.)

На рисунке ниже показаны два компьютера, подключенных к Интернету. ваш компьютер с IP-адресом 1.2.3.4 и другой компьютер с IP-адресом 5.6.7.8. Интернет представлен как абстрактный объект между ними. (По мере продвижения этой статьи Интернет-часть Диаграммы 1 будет объясняться и перерисовываться несколько раз по мере раскрытия деталей Интернета.)

Диаграмма 1

Если вы подключаетесь к Интернету через интернет-службу Провайдер (ISP), вам обычно назначается временный IP-адрес на время вашего сеанса телефонного подключения. Если вы подключаетесь к Интернету из локальной сети (LAN), ваш компьютер может иметь постоянный IP-адрес или может получить временный IP-адрес от сервера DHCP (протокол динамической конфигурации хоста). В любом случае, если вы подключены к Интернету, ваш компьютер имеет уникальный IP-адрес.

Стеки и пакеты протоколов


Уровень протокола Комментарии
Приложение Уровень протоколов Протоколы, специфичные для таких приложений, как WWW, электронная почта, FTP и т. д.
Уровень протокола управления передачей TCP направляет пакеты определенному приложению на компьютере, используя номер порта.
Уровень протокола Интернета IP направляет пакеты на определенный компьютер, используя IP-адрес .
Аппаратный уровень Преобразует двоичные пакетные данные в сетевые сигналы и обратно.
(Например, сетевая карта Ethernet, модем для телефонных линий и т. д. .)

Если бы мы пошли по пути, то сообщение "Привет, компьютер 5.6.7.8!" брал с нашего компа на комп с IP адресом 5.6.7.8, получилось бы примерно так:

<ПР>
  • Сообщение будет начинаться с вершины стека протоколов на вашем компьютере и продвигаться вниз.
  • Если отправляемое сообщение длинное, каждый уровень стека, через который проходит сообщение, может разбивать сообщение на более мелкие фрагменты данных. Это связано с тем, что данные, отправляемые через Интернет (и большинство компьютерных сетей), отправляются управляемыми фрагментами. В Интернете эти фрагменты данных называются пакетами .
  • Пакеты будут проходить через прикладной уровень и переходить на уровень TCP. Каждому пакету присваивается номер порта. Порты будут объяснены позже, но достаточно сказать, что многие программы могут использовать стек TCP/IP и отправлять сообщения. Нам нужно знать, какая программа на целевом компьютере должна получить сообщение, потому что она будет прослушивать определенный порт.
  • После прохождения уровня TCP пакеты переходят на уровень IP. Здесь каждый пакет получает адрес назначения 5.6.7.8.
  • Теперь, когда у наших пакетов сообщений есть номер порта и IP-адрес, они готовы к отправке через Интернет. Аппаратный уровень заботится о преобразовании наших пакетов, содержащих буквенный текст нашего сообщения, в электронные сигналы и их передаче по телефонной линии.
  • На другом конце телефонной линии ваш интернет-провайдер имеет прямое подключение к Интернету. Маршрутизатор провайдера проверяет адрес назначения в каждом пакете и определяет, куда его отправить. Часто следующей остановкой пакета является другой маршрутизатор. Подробнее о маршрутизаторах и интернет-инфраструктуре позже.
  • В конце концов пакеты достигают компьютера 5.6.7.8.Здесь пакеты начинаются с нижней части стека TCP/IP целевого компьютера и идут вверх.
  • По мере продвижения пакетов вверх по стеку все данные маршрутизации, добавленные стеком отправляющего компьютера (например, IP-адрес и номер порта), удаляются из пакетов.
  • Когда данные достигают вершины стека, пакеты снова собираются в исходную форму: "Привет, компьютер 5.6.7.8!"
  • Сетевая инфраструктура

    Теперь вы знаете, как пакеты передаются с одного компьютера на другой через Интернет. Но что между ними? Из чего на самом деле состоит Интернет? Давайте посмотрим на другую диаграмму:

    Диаграмма 3

    Здесь мы видим, что Диаграмма 1 перерисована с большей детализацией. Физическое подключение через телефонную сеть к интернет-провайдеру было легко догадаться, но помимо этого могло быть какое-то объяснение.

    У поставщика услуг Интернета есть пул модемов для своих клиентов с коммутируемым доступом. Это управляется каким-либо компьютером (обычно выделенным), который управляет потоком данных от модемного пула к магистральному или выделенному маршрутизатору. Эту настройку можно назвать сервером портов, поскольку она «обслуживает» доступ к сети. Здесь также обычно собирается информация об оплате и использовании.

    После того как ваши пакеты проходят через телефонную сеть и локальное оборудование вашего интернет-провайдера, они перенаправляются на магистральную сеть интернет-провайдера или на магистральную сеть, у которой интернет-провайдер покупает пропускную способность. Отсюда пакеты обычно проходят через несколько маршрутизаторов и по нескольким магистралям, выделенным линиям и другим сетям, пока не найдут пункт назначения — компьютер с адресом 5.6.7.8. Но было бы неплохо, если бы мы знали точный маршрут, по которому наши пакеты проходят через Интернет? Как оказалось, способ есть.

    Интернет-инфраструктура

    Магистральная сеть Интернета состоит из множества крупных сетей, которые соединяются друг с другом. Эти крупные сети известны как поставщики сетевых услуг или NSP. Одними из крупных NSP являются UUNet, CerfNet, IBM, BBN Planet, SprintNet, PSINet и другие. Эти сети взаимодействуют друг с другом для обмена пакетным трафиком. Каждый NSP должен подключаться к трем точкам доступа к сети или NAP. В точках NAP пакетный трафик может переходить из одной магистрали NSP в магистральную сеть другого NSP. NSP также соединяются на городских биржах или MAE. MAE служат той же цели, что и NAP, но находятся в частной собственности. NAP были первоначальными точками подключения к Интернету. И NAP, и MAE называются точками обмена интернет-трафиком или IX. NSP также продают полосу пропускания более мелким сетям, таким как интернет-провайдеры и более мелкие поставщики полосы пропускания. На рисунке ниже показана эта иерархическая инфраструктура.

    Диаграмма 4

    Это не точное представление реального фрагмента Интернета. Диаграмма 4 предназначена только для демонстрации того, как поставщики сетевых услуг могут взаимодействовать друг с другом и более мелкими интернет-провайдерами. Ни один из компонентов физической сети не показан на диаграмме 4 так, как на диаграмме 3. Это связано с тем, что магистральная инфраструктура отдельного NSP сама по себе представляет собой сложный рисунок. Большинство поставщиков сетевых услуг публикуют карты своей сетевой инфраструктуры на своих веб-сайтах, и их легко найти. Нарисовать реальную карту Интернета было бы почти невозможно из-за его размера, сложности и постоянно меняющейся структуры.

    Иерархия интернет-маршрутизации

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

    Маршрутизаторы — это коммутаторы пакетов. Маршрутизатор обычно подключается между сетями для маршрутизации пакетов между ними. Каждый маршрутизатор знает о своих подсетях и используемых ими IP-адресах. Маршрутизатор обычно не знает, какие IP-адреса находятся «над ним». Изучите диаграмму 5 ниже. Черные ящики, соединяющие магистрали, — это маршрутизаторы. Более крупные магистрали NSP наверху подключаются к NAP. Под ними несколько подсетей, а под ними еще подсетей. Внизу две локальные сети с подключенными компьютерами.

    Диаграмма 5

    Когда пакет поступает на маршрутизатор, маршрутизатор проверяет IP-адрес, помещенный туда уровнем протокола IP на исходном компьютере. Маршрутизатор проверяет свою таблицу маршрутизации. Если сеть, содержащая IP-адрес, найдена, пакет отправляется в эту сеть.Если сеть, содержащая IP-адрес, не найдена, маршрутизатор отправляет пакет по маршруту по умолчанию, обычно вверх по магистральной иерархии к следующему маршрутизатору. Будем надеяться, что следующий маршрутизатор будет знать, куда отправить пакет. Если это не так, пакет снова направляется вверх, пока не достигнет магистрали NSP. Маршрутизаторы, подключенные к магистралям NSP, содержат самые большие таблицы маршрутизации, и здесь пакет будет перенаправлен на правильную магистраль, откуда он начнет свое путешествие «вниз» через все более и более мелкие сети, пока не найдет пункт назначения.

    Доменные имена и разрешение адресов

    Многие компьютеры, подключенные к Интернету, содержат часть базы данных DNS и программное обеспечение, позволяющее другим пользователям получать к ней доступ. Эти компьютеры называются DNS-серверами. Ни один DNS-сервер не содержит всю базу данных; они содержат только его подмножество. Если DNS-сервер не содержит доменного имени, запрошенного другим компьютером, DNS-сервер перенаправляет запрашивающий компьютер на другой DNS-сервер.

    Диаграмма 6

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

    При настройке подключения к Интернету (например, для локальной сети или удаленного доступа к сети в Windows) в процессе установки обычно указываются один первичный и один или несколько вторичных DNS-серверов. Таким образом, любые интернет-приложения, которым требуется разрешение доменных имен, смогут работать правильно. Например, когда вы вводите веб-адрес в свой веб-браузер, браузер сначала подключается к вашему основному DNS-серверу. После получения IP-адреса для введенного вами доменного имени браузер подключается к целевому компьютеру и запрашивает нужную веб-страницу.

    Проверить — отключить DNS в Windows Если вы используете Windows 95/NT и имеете доступ к Интернету, вы можете просмотреть свой DNS сервер(ы) и даже отключить их.

    Если вы используете удаленный доступ к сети:
    Откройте окно удаленного доступа к сети (которое можно найти в проводнике Windows под дисководом компакт-дисков и над сетевым окружением). Щелкните правой кнопкой мыши свое подключение к Интернету и выберите «Свойства». Внизу окна свойств подключения нажмите Настройки TCP/IP. кнопка.

    Если у вас есть постоянное подключение к Интернету:
    щелкните правой кнопкой мыши Сетевое окружение и выберите Свойства. Щелкните Свойства TCP/IP. Выберите вкладку Конфигурация DNS вверху.

    Теперь вы должны посмотреть на IP-адреса ваших DNS-серверов. Здесь вы можете отключить DNS или установить для своих DNS-серверов значение 0.0.0.0. (Сначала запишите IP-адреса ваших DNS-серверов. Возможно, вам также придется перезагрузить Windows.) Теперь введите адрес в веб-браузере. Браузер не сможет разрешить доменное имя, и вы, вероятно, получите неприятное диалоговое окно, объясняющее, что DNS-сервер не найден. Однако, если вы введете соответствующий IP-адрес вместо имени домена, браузер сможет получить нужную веб-страницу. (Используйте ping для получения IP-адреса перед отключением DNS.) Другие операционные системы Microsoft аналогичны.

    Пересмотр интернет-протоколов

    Как упоминалось ранее в разделе о стеках протоколов, можно предположить, что в Интернете используется множество протоколов. Это верно; существует множество протоколов связи, необходимых для работы Интернета. К ним относятся протоколы TCP и IP, протоколы маршрутизации, протоколы управления доступом к среде, протоколы прикладного уровня и т. д. В следующих разделах описываются некоторые из наиболее важных и часто используемых протоколов в Интернете. Сначала обсуждаются протоколы более высокого уровня, а затем протоколы более низкого уровня.

    Когда вы вводите URL-адрес в веб-браузере, происходит следующее:

    Протоколы приложений: SMTP и электронная почта

    Когда вы открываете почтовый клиент для чтения электронной почты, обычно происходит следующее:

    <ПР>
  • Почтовый клиент (Netscape Mail, Lotus Notes, Microsoft Outlook и т. д.) открывает соединение со своим почтовым сервером по умолчанию. IP-адрес или доменное имя почтового сервера обычно настраиваются при установке почтового клиента.
  • Почтовый сервер всегда будет передавать первое сообщение, чтобы идентифицировать себя.
  • Клиент отправит команду SMTP HELO, на которую сервер ответит сообщением 250 OK.
  • В зависимости от того, проверяет ли клиент почту, отправляет почту и т. д., соответствующие SMTP-команды будут отправлены на сервер, который ответит соответствующим образом.
  • Эта транзакция запроса/ответа будет продолжаться до тех пор, пока клиент не отправит SMTP-команду QUIT. Затем сервер попрощается, и соединение будет закрыто.
  • Протокол управления передачей

    Под прикладным уровнем в стеке протоколов находится уровень TCP. Когда приложения открывают соединение с другим компьютером в Интернете, отправляемые ими сообщения (используя определенный протокол прикладного уровня) передаются по стеку на уровень TCP. TCP отвечает за маршрутизацию протоколов приложений к правильному приложению на целевом компьютере. Для этого используются номера портов. Порты можно рассматривать как отдельные каналы на каждом компьютере. Например, вы можете просматривать веб-страницы, читая электронную почту. Это связано с тем, что эти два приложения (веб-браузер и почтовый клиент) использовали разные номера портов. Когда пакет поступает на компьютер и продвигается вверх по стеку протоколов, уровень TCP решает, какое приложение получит пакет, основываясь на номере порта.

    TCP работает следующим образом:

    <УЛ>
  • Когда уровень TCP получает данные протокола прикладного уровня сверху, он сегментирует их на управляемые «фрагменты», а затем добавляет к каждому «фрагменту» заголовок TCP с определенной информацией TCP. Информация, содержащаяся в заголовке TCP, включает номер порта приложения, которому необходимо отправить данные.
  • Когда уровень TCP получает пакет от нижележащего уровня IP, уровень TCP удаляет данные заголовка TCP из пакета, при необходимости выполняет некоторую реконструкцию данных, а затем отправляет данные нужному приложению, используя номер порта. из заголовка TCP.
  • TCP не является текстовым протоколом. TCP — это ориентированная на соединение, надежная служба потока байтов. Ориентированность на соединение означает, что два приложения, использующие TCP, должны сначала установить соединение перед обменом данными. TCP надежен, потому что для каждого полученного пакета отправителю отправляется подтверждение доставки. TCP также включает в свой заголовок контрольную сумму для проверки полученных данных на наличие ошибок. Заголовок TCP выглядит следующим образом:

    Диаграмма 7

    Обратите внимание, что здесь нет места для IP-адреса в заголовке TCP. Это потому, что TCP ничего не знает об IP-адресах. Задача TCP заключается в надежной передаче данных уровня приложения от приложения к приложению. Задача передачи данных от компьютера к компьютеру — это работа IP.

    Проверьте это — общеизвестные номера интернет-портов Ниже перечислены номера портов для некоторых наиболее часто используемых интернет-сервисов.

    Интернет-протокол

    В отличие от TCP, IP является ненадежным протоколом без установления соединения. IP не важно, дойдет ли пакет до адресата или нет. IP также не знает о соединениях и номерах портов. Работа IP также заключается в отправке и маршрутизации пакетов на другие компьютеры. IP-пакеты являются независимыми объектами и могут поступать не по порядку или вообще не поступать. Задача TCP состоит в том, чтобы убедиться, что пакеты прибывают и находятся в правильном порядке. Единственное, что у IP общего с TCP, — это то, как он получает данные и добавляет свою собственную информацию заголовка IP к данным TCP. Заголовок IP выглядит следующим образом:

    Диаграмма 8

    Выше мы видим IP-адреса отправителя и принимающие компьютеры в заголовке IP. Ниже показано, как выглядит пакет после прохождения через прикладной уровень, уровень TCP и уровень IP. Данные прикладного уровня сегментируются на уровне TCP, добавляется заголовок TCP, пакет передается на уровень IP, добавляется заголовок IP, а затем пакет передается через Интернет.

    Подведение итогов

    Теперь вы знаете, как работает Интернет. Но как долго он будет оставаться таким? Версия IP, используемая в настоящее время в Интернете (версия 4), позволяет использовать только 232 адреса. В конце концов свободных IP-адресов не останется. Удивлен? Не волнуйтесь. IP версии 6 в настоящее время тестируется на исследовательской базе консорциумом исследовательских институтов и корпораций. И после этого? Кто знает. Интернет прошел долгий путь с момента его создания в качестве исследовательского проекта министерства обороны. Никто на самом деле не знает, чем станет Интернет. Однако одно можно сказать наверняка. Интернет объединит мир, как никакой другой механизм. Информационная эра в самом разгаре, и я рад быть ее частью.

    Рус Шулер, 1998 г.
    Обновления 2002 г.

    Ресурсы

    Ниже приведены некоторые интересные ссылки, связанные с некоторыми обсуждаемыми темами. (Надеюсь, они все еще работают. Все открываются в новом окне.)

    Библиография

    Следующие книги являются отличным источником информации и очень помогли в написании этой статьи. Я считаю, что книга Стивенса является лучшим справочником по TCP/IP и может считаться библией Интернета. Книга Шелдона охватывает гораздо более широкий круг вопросов и содержит огромное количество информации о сетях.

    Веб-документ представляет собой композицию различных ресурсов

    Клиенты и серверы общаются, обмениваясь отдельными сообщениями (в отличие от потока данных). Сообщения, отправляемые клиентом, обычно веб-браузером, называются запросами, а сообщения, отправляемые сервером в качестве ответа, называются ответами.

    Каждый отдельный запрос отправляется на сервер, который обрабатывает его и предоставляет ответ, называемый ответом. Между клиентом и сервером существует множество объектов, которые вместе называются прокси-серверами, которые выполняют различные операции и действуют, например, как шлюзы или кэши.

    Клиентский сервер цепочка

    Клиент: пользовательский агент

    агент пользователя — это любой инструмент, который действует от имени пользователя. Эту роль в основном выполняет веб-браузер, но ее также могут выполнять программы, используемые инженерами и веб-разработчиками для отладки своих приложений.

    Браузер всегда инициирует запрос. Он никогда не является сервером (хотя с годами были добавлены некоторые механизмы для имитации сообщений, инициированных сервером).

    Чтобы отобразить веб-страницу, браузер отправляет исходный запрос на получение HTML-документа, представляющего страницу. Затем он анализирует этот файл, делая дополнительные запросы, соответствующие сценариям выполнения, информации о макете (CSS) для отображения и подресурсам, содержащимся на странице (обычно изображения и видео). Затем веб-браузер объединяет эти ресурсы, чтобы представить полный документ, веб-страницу. Сценарии, выполняемые браузером, могут извлекать больше ресурсов на более поздних этапах, и браузер соответствующим образом обновляет веб-страницу.

    Веб-сервер

    На противоположной стороне канала связи находится сервер, который обслуживает документ по запросу клиента. Сервер виртуально выглядит как одна машина; но на самом деле это может быть набор серверов, разделяющих нагрузку (балансировка нагрузки), или сложная часть программного обеспечения, опрашивающая другие компьютеры (например, кеш, сервер БД или серверы электронной коммерции), полностью или частично генерирующая документ по требованию.

    Прокси

    • кеширование (кэш может быть общедоступным или частным, как кеш браузера)
    • фильтрация (например, антивирусное сканирование или родительский контроль)
    • балансировка нагрузки (чтобы несколько серверов могли обслуживать разные запросы)
    • аутентификация (для управления доступом к различным ресурсам)
    • ведение журнала (позволяющее хранить историческую информацию)

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

    Запросы

    Основной HTTP-запрос

    Запросы состоят из следующих элементов:

    Ответы

    Пример ответа:

    Изображение ответа HTTP

    Ответы состоят из следующих элементов:

    Заключение

    Как работает Интернет предоставляет упрощенное представление о том, что происходит, когда вы просматриваете веб-страницу в веб-браузере на компьютере или телефоне.

    Эта теория не обязательна для краткосрочного написания веб-кода, но вскоре вы действительно начнете получать пользу от понимания того, что происходит в фоновом режиме.

    Клиенты и серверы

    Компьютеры, подключенные к Интернету, называются клиентами и серверами. Упрощенная схема их взаимодействия может выглядеть так:

    Два круга представляет клиент и сервер. Стрелка, помеченная как запрос, идет от клиента к серверу, а стрелка, помеченная как ответы, идет от сервера к клиенту

    • Клиенты – это подключенные к Интернету устройства типичного веб-пользователя (например, ваш компьютер, подключенный к сети Wi-Fi, или ваш телефон, подключенный к вашей мобильной сети) и программное обеспечение для доступа в Интернет, доступное на этих устройствах (обычно веб-браузер, такой как Firefox или Chrome).
    • Серверы — это компьютеры, на которых хранятся веб-страницы, сайты или приложения. Когда клиентское устройство хочет получить доступ к веб-странице, копия веб-страницы загружается с сервера на клиентский компьютер для отображения в веб-браузере пользователя.

    Другие части набора инструментов

    Клиент и сервер, которые мы описали выше, не рассказывают всей истории. Здесь задействовано много других частей, и мы опишем их ниже.

    На данный момент давайте представим, что сеть — это дорога. На одном конце дороги находится клиент, который как ваш дом. На другом конце дороги находится сервер, который является магазином, в котором вы хотите что-то купить.


    Помимо клиента и сервера, нам также нужно поздороваться с:

    Так что именно происходит?

    Когда вы вводите веб-адрес в браузере (по аналогии с походом в магазин):

    1. Браузер обращается к DNS-серверу и находит реальный адрес сервера, на котором живет веб-сайт (вы находите адрес магазина).
    2. Браузер отправляет сообщение HTTP-запроса на сервер с просьбой отправить копию веб-сайта клиенту (вы идете в магазин и заказываете товары). Это сообщение и все другие данные, передаваемые между клиентом и сервером, передаются через ваше подключение к Интернету с использованием протокола TCP/IP.
    3. Если сервер одобряет запрос клиента, сервер отправляет клиенту сообщение "200 OK", что означает "Конечно, вы можете посмотреть этот веб-сайт! Вот он", а затем начинает отправлять файлы веб-сайта в браузер. в виде серии небольших фрагментов, называемых пакетами данных (магазин дает вам ваши товары, а вы приносите их домой).
    4. Браузер собирает небольшие фрагменты в полноценную веб-страницу и отображает ее вам (товары доставляются к вашей двери — новые блестящие вещи, круто!).

    Порядок, в котором анализируются файлы компонентов

    Когда браузеры отправляют запросы на серверы для HTML-файлов, эти HTML-файлы часто содержат элементы, ссылающиеся на внешние таблицы стилей CSS, и

    Читайте также: