Как устроен интернет: адреса, DNS и передача данных
Интернет соединяет множество сетей с помощью общих правил передачи данных. Здесь представлены адресация, доменные имена, маршрутизация и веб-протоколы; браузер выступает пользовательским средством доступа к веб-ресурсам.
Устройство интернета
Сеть сетей
Интернет объединяет сети, которыми управляют разные организации, при помощи совместимых протоколов. Пакеты могут проходить через несколько сетей; единого владельца всей инфраструктуры и одного центрального узла у интернета нет.
IP-адреса
IP-адрес обозначает сетевой интерфейс в системе адресации IPv4 или IPv6 и используется при доставке пакетов. Адрес может меняться или совместно использоваться через трансляцию; он не является надёжным постоянным идентификатором человека.
Доменные имена
Доменное имя — последовательность меток в иерархическом пространстве имён DNS. Оно позволяет обращаться к ресурсам по имени и получать связанные записи; домен, IP-адрес и полный URL веб-страницы обозначают разные вещи.
DNS
DNS (Domain Name System, система доменных имён) — распределённая система, которая связывает доменные имена с данными. Записи DNS могут содержать IP-адрес, имя почтового сервера, псевдоним или параметры зоны.
Данные зоны публикуют авторитативные серверы. Резолвер ищет нужные записи и может сохранить ответ в кэше; TTL задаёт срок такого хранения. Например, браузер запрашивает адрес для имени сайта через DNS, а соединение с веб-сервером устанавливает отдельно.
Маршрутизация в интернете
Маршрутизация определяет, через какие сети передавать IP-пакеты к месту назначения. Между автономными системами BGP обменивается сведениями о достижимости маршрутов.
Оператор выбирает путь по техническим и административным правилам, поэтому он не обязательно географически кратчайший. BGP сообщает о достижимости префикса, но не гарантирует качество или безопасность сервиса.
HTTP
HTTP задаёт обмен запросами и ответами: метод, целевой ресурс, статус, заголовки и содержимое. Протокол не равен веб-странице и сам по себе не шифрует соединение. Методы и коды статуса помогают программам согласованно читать, создавать или менять ресурсы, но смысл API зависит от приложения.
HTTPS
HTTPS — HTTP поверх защищённого TLS-соединения. При обычном полном TLS-рукопожатии стороны согласуют параметры, сервер предъявляет сертификат, клиент проверяет его по модели доверия; затем протокол защищает данные от чтения и незаметного изменения в пути.
Шифрование не доказывает честность сайта, точность содержимого или безопасность устройства: защищён канал между участниками.
Браузеры
Браузер получает ресурсы по сети и превращает разметку, стили и сценарии в страницу. Он разбирает HTML, применяет CSS, рассчитывает расположение элементов и обрабатывает действия пользователя.
В Chromium эти задачи распределены между процессами и потоками. Например, основной поток процесса рендеринга работает с разметкой и сценариями, а поток композиции помогает выводить готовые слои и обрабатывать прокрутку. Компонент композиции не следует считать отдельным процессом во всех случаях; устройство других браузеров может отличаться.
Управление и координация Интернета
Управление Интернетом — процессы, через которые технические организации, государства, бизнес, гражданское общество и исследователи обсуждают правила и координируют работу сети. Разные организации решают разные задачи: ICANN координирует систему уникальных идентификаторов, а IETF разрабатывает интернет-стандарты.
Участие нескольких сторон позволяет согласовывать технические решения и общественные интересы. Координация доменных имён, развитие стандартов и обсуждение политики связаны между собой, но не подчинены одному органу, управляющему всем Интернетом.