Код
#статьи

Всё про интернет: как он устроен, когда появился и чем отличается от Всемирной паутины

Без него мы бы никогда не увидели мемы про волков и скибиди-туалеты. А вы даже не знаете, как он работает...

Иллюстрация: UCLA Samueli / DARPA / Tohamina / Pexels / Wikimedia Commons / Colowgee для Skillbox Media

Что будет, если перестанет работать интернет? У большинства людей, скорее всего, начнётся паника. Рабочие процессы встанут, доставка не приедет… Интернет — это неотъемлемая часть мира, глобальная сеть, объединяющая миллионы устройств. Сложно представить, что когда-то его не было.

Содержание

Эксперт

Дмитрий Зайцев

CTO Flocktory, программный директор профессии «DevOps-инженер» в Skillbox, директор программного комитета DevOpsConf.

Что такое интернет

Интернет — это множество компьютеров, серверов и роутеров, объединённых в сеть. Если вы читаете эту статью, то наверняка понимаете, в чём его прелесть: можно за секунду получить любые знания, созвониться с другом на другом конце света, отправить деньги маме, сгенерировать кота в нейросети…

За всю эту магию отвечает целая плеяда разных технологий. От Wi-Fi-роутеров до подводных кабелей, от маршрутизаторов до серверов — всё это заточено на постоянную обработку данных. В 2023 году общий объём генерируемых данных в интернете достиг 123 зеттабайт, а количество пользователей перевалило за 5 млрд.

Конечно, в одной статье мы вряд ли сможем рассказать об интернете всё. Вместо этого мы пройдёмся по главным реперным точкам его истории и коротко расскажем об основных «подкапотных» технологиях.

Как появился интернет и кто его придумал

Это сейчас интернет — самая крупная глобальная сеть в мире. А началось всё с одного-единственного спутника, который, правда, никакого отношения к интернету не имел и вряд ли работал так же быстро, как нынешние Starlink. Речь идёт о первом искусственном спутнике, запущенном СССР в 1957 году.

Этот запуск так сильно впечатлил американское Минобороны, что в ответ они основали целое агентство передовых технологий — DARPA, которое некоторые историки технологий называют агентством, «создавшим современный мир».

Из горнила DARPA вышли прообразы GPS, дронов и даже космических шаттлов. Но одним из самых значимых проектов ведомства стала ARPANET — национальная сеть компьютеров, способная пережить ядерный удар.

За основу для ARPANET взяли идеи Ричарда Ликлайдера — человека, который грезил о международной Галактической сети (по сути, прообразе интернета) ещё в конце 1950-х. Правда, космический размах его затеи слегка урезали, решив сначала опробовать глобальный онлайн «в отдельно взятой стране».

29 октября 1969 года состоялся первый сеанс связи по ARPANET между Стэнфордским и Калифорнийским университетами — переговорщики смогли передать на расстояние 640 км сообщение «LOGIN». Этот день считается официальной датой основания интернета.

Один из первых двух узлов ARPANET, расположенный в Калифорнийском университете
Фото: UCLA Samueli School Of Engineering

Чтобы сеть была устойчивой к нагрузкам, её построили по набиравшей тогда ход технологии коммутации пакетов. Её смысл в том, что данные передаются не единым потоком, а как бы фасуются на пакеты, таким образом, их можно отправить сразу по нескольким маршрутам и быстро возобновить передачу в случае сбоя.

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

Леонард Клейнрок за интерфейсным процессором сообщений (IMP), который использовался для отправки первого сообщения в интернете в 1969 году
Фото: UCLA Samueli School Of Engineering

Почему дедушкой? Потому что под его началом в Калифорнийском университете выросли легендарные Винт Сёрф и Роберт Кан, авторы протоколов TCP и IP, на которых до сих пор работает современный интернет. И вот эти ребята уже абсолютно легитимно считаются отцами-основателями этих ваших интернетов :)

Мы подробно писали про эти протоколы в отдельной статье. Если коротко:

  • IP — протокол, идентифицирующий устройство в сети и ответственный за то, чтобы информацию получил именно тот компьютер, который отправлял запрос.
  • TCP — протокол, контролирующий, дошла ли информация до получателя и была ли она доставлена полностью.

Паутина ARPANET плелась быстро: если в 1977 году к ней было подключено 100 машин, то к 1983-му — уже больше 4000. Вскоре к ARPANET начали по спутнику присоединяться компьютеры из Европы и с Гавайев — так сеть, изначально создававшаяся для своих, постепенно стала выходить за пределы материка.

Сеть ARPANET в 1970 году
Изображение: Semaforo GMS / Wikimedia Commons

Впрочем, победная поступь продлилась недолго. Уже в 1984 году у ARPANET появился соперник — межвузовская сеть NSFNET, созданная Национальным фондом науки США.

Мало того что «научная» сеть работала куда быстрее «армейской», так ещё и стоила гораздо меньше — электронное письмо можно было отправить всего за 50 центов. В итоге в начале 1990-х создатели ARPANET решили «усыпить» своё детище, передав все свои 6000 хостов в пользу победителя.

А сама NSFNET чуть позже объединилась с коммерческими провайдерами, став основой для будущей Всемирной паутины.

Всемирная паутина: почему она ≠ интернет

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

А придумал всё это практически в одиночку британский компьютерщик Тим Бернерс-Ли, на тот момент сотрудник европейской организации по ядерным исследованиям ЦЕРН, за что в 2004 году был даже посвящён в рыцари.

Тимоти Бернерс-Ли (справа) и его коллега Роберт Кайо — создатели WWW
Фото: CERN

И, надо сказать, вполне заслуженно — с лёгкой руки сэра Бернерса-Ли появились все технологии, на которых сплетена сегодняшняя Всемирная паутина:

  • Язык разметки HTML — стандартизированный язык, который отображает элементы веб-страницы в браузере.
  • Протокол HTTP для обмена HTML-страницами между клиентом и сервером.
  • Система адресов URL — единообразные указатели, по которым можно найти нужную страницу.
  • Веб-браузер — программа, которая получает HTML-документы с сервера и отрисовывает их на компьютере пользователя.
  • Веб-сервер — серверное ПО для обработки HTTP-запросов.

Понятия «интернет» и «Всемирная паутина» сегодня переплетены так сильно, что не искушённые в технологиях люди часто их уравнивают. Что, конечно, не совсем верно: Всемирная паутина — это лишь способ просмотра информации с помощью браузеров и страниц. Помимо неё, на сетях интернета работает целая плеяда протоколов и алгоритмов, которые никак не связаны с WWW.

Чтобы лучше в этом разобраться, посмотрим на пример.

Допустим, мы хотим отправить email. Чтобы это сделать, мы открываем в браузере сайт условной «Яндекс Почты», набираем сообщение, нажимаем кнопку «Отправить». Это пока ещё Всемирная паутина: у нас есть какой-то интерфейс, сайт, кнопки. А дальше письмо улетает отправителю по своим протоколам, которые никак не связаны с WWW. Мы не видим, как это происходит, — максимум, сообщение «Письмо отправлено» и кнопку «Отменить».

Такая же история с видеозвонками, отправкой файлов через FTP и удалённым рабочим столом — всё это использует интернет, но не является частью Всемирной паутины.

Как устроен интернет: аппаратная часть

Чтобы понять, как работает интернет, сперва разберёмся с аппаратной частью.

Кабели

То, с помощью чего все наши картинки, мемы и сообщения непосредственно перемещаются по Сети. Огромная сеть оптоволоконных щупалец оплетает всю поверхность планеты (за исключением Антарктиды), доставляя данные от континента к континенту, от города к городу, от дома к дому.

Часть из этих кабелей проложены на дне океана. Так, первый трансокеанский оптоволоконный кабель ТАТ-8, соединивший в 1988 году Европу и США, фактически сделал интернет глобальной сетью. Сейчас под водой пролегает около 500 кабелей общей длиной 1,5 млн километров — по ним беспрерывно несётся львиная доля всего мирового интернет-трафика.

Несмотря на сложные условия, их работе почти ничего не угрожает — кроме разве что акул :)

Карта подводных интернет-кабелей
Скриншот: Submarine Cable Map / Skillbox Media

Маршрутизаторы

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

Маршрутизаторы бывают разные — они есть у провайдеров, операторов связи, крупных компаний и даже у вас дома, если вы используете Wi-Fi-роутер.

Провайдеры

Провайдеры — это поставщики интернета, и они тоже бывают разного уровня. Так, магистральными кабелями под водой и на суше владеют провайдеры первого уровня (например, AT& T и MCI), которые совокупно составляют «ядро интернета».

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

Пример провайдера второго уровня — российский Ростелеком.

Иерархия провайдеров
Инфографика: Майя Мальгина для Skillbox Media

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

Примеры таких провайдеров — «Билайн», «Акадо» и МТС.

Серверы

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

В одном таком дата-центре могут быть установлены сотни серверов, общий объём данных на которых исчисляется петабайтами. А ещё они постоянно бэкапят данные на резервные серверы, чаще всего даже в реальном времени.

Однако технически сервером может быть любое устройство, при условии, что на него можно накатить серверный софт, — даже дряхлый системник, годами пылящийся у вас на антресоли :)

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

Инфографика: Майя Мальгина для Skillbox Media

Клиенты

Любое устройство, через которое пользователь запрашивает доступ к данным в интернете, называется клиентом. Под определение попадают и программы: веб-браузер, почтовый клиент или мобильные приложения.

Беспроводные устройства

Всё, что позволяет вашим гаджетам подключаться к интернету без провода, — это может быть модем, связанный с вышкой сотовой связи, или Wi-Fi-роутер. Правда, ни один из этих способов не является полностью беспроводным, ведь передача данных в конечном счёте происходит по всё тому же оптоволокну. И даже развитие спутникового интернета, о котором так часто говорят, не сделает его полностью «воздушным».

Как устроен интернет: программная часть

То, что с виду кажется молниеносной загрузкой страницы, на самом деле сложный, поэтапный процесс, задействующий множество технологий и протоколов.

Поиск IP-адреса

Когда пользователь вводит адрес сайта в адресную строку и нажимает Enter, браузер начинает поиск IP-адреса сервера, на котором размещён сайт. Делает он это с помощью системы DNS — своего рода контактной книги интернета, где «айпишники» всех сайтов в интернете записаны напротив их URL-адресов.

Работа DNS-сервера
Инфографика: Майя Мальгина для Skillbox Media

Но перед тем как обратиться к DNS, браузер проверяет, нет ли уже известных записей внутри него самого, ведь пользователь уже мог посещать сайт ранее. Если и это не принесло плода, запрос уходит операционной системе, а потом и роутеру, который кэширует информацию о последних действиях за N времени.

И только после этого браузер идёт к ближайшему DNS-серверу (например, у провайдера) с просьбой отдать ему нужный IP-адрес. Тот в свою очередь может отправить запрос ещё дальше — и так по цепочке наш Вакула может дойти аж до корневых DNS-серверов, какие есть, например, у NASA.

А что поделать? Надо же как-то получить этот злосчастный IP-адрес. Тем более что для пользователя вся эта история займёт от силы пару секунд — скорость света как-никак, можно себе позволить.

Соединение с сервером

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

Установление соединения по протоколам TCP/IP
Инфографика: Майя Мальгина для Skillbox Media

Соединение браузера с сервером происходит в три этапа:

  • Клиент отправляет SYN — пакет, который запрашивает разрешение на соединение с сервером.
  • Сервер, если он доступен, в ответ присылает SYN/ACK-пакет подтверждения.
  • Устройство пользователя, получив SYN/ACK-пакет от сервера отправляет обратно пакет ACK. С этого момента можно считать соединение установленным.

HTTP-запрос

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

На этом этапе задача браузера как можно подробнее объяснить серверу, какую информацию он хочет получить. Для этого используется HTTP-запрос, внутри которого есть два основных метода:

  • GET — для запроса данных с сервера. Например, текста, картинки, видео, кулинарного мастер-класса от Юлии Высоцкой — чего угодно :)
  • POST — для отправки данных из браузера на сервер. Например, при отправке сообщения, выгрузки документа или другого файла.
Работа HTTP-запроса
Инфографика: Майя Мальгина для Skillbox Media

Помимо этого, HTTP-запрос должен содержать информацию о типе браузера, временных файлах, которые уже были загружены ранее, информацию о соединении, уникальный идентификатор устройства и многое другое.

Стоит отметить, что чистый HTTP сейчас можно встретить довольно редко. Вместо этого используется его версия «на стероидах», протокол HTTPS, усиленный протоколами безопасности SSL и TLS. Безопасность подключения при такой передаче подтверждается специальными сертификатами.

Сервер работает с запросом

Дальше сервер обрабатывает полученный запрос при помощи специального софта, который называется веб-сервером. Задача этого софта — понять, чего хочет клиент, достать необходимые данные из базы и подготовить ответ. Самые популярные веб-серверы сейчас — Apache и Nginx.

Путь запроса от сервера в браузер
Инфографика: Майя Мальгина для Skillbox Media

После подготовки сервер отправляет пакеты данных браузеру. В них содержится не только контент, но и информация о методе сжатия и кэширования данных, необходимые для записи в файлы cookie.

Браузер отображает страницу

Теперь дело за малым — показать пользователю запрашиваемую страницу.

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

  • Браузер получает от сервера HTML-код.
  • На основе этого кода он рисует каркас страницы.
  • Далее браузер смотрит на теги внутри HTML-разметки и понимает, каких данных ему не хватает, чтобы сделать красиво.
  • Браузер формирует новые GET-запросы к серверу: здесь, мол, мне нужна картинка, здесь — видео, здесь — скрипт, а здесь вообще целой пачки CSS-стилей не хватает, давай-давай, шевели поршнями.
  • Вуаля! Пользователь созерцает нужную ему страничку.
Отображение страницы сайта в браузере
Скриншот: Skillbox Media

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

Вот и всё: один маленький запрос, а под капотом — целая история.

Кто управляет интернетом

Удивительно, но такая глобальная вещь, как интернет, не имеет управленцев. Есть организации, которые задают тренды на используемые технологии и стараются регулировать рамки работы Глобальной сети. Например:

ISOC (Общество интернета). Выступает за свободный доступ к Сети для людей по всему земному шару. Состоит из двух подразделений: IAB — Совет по архитектуре интернета и IETF — Инженерный совет интернета, а если точнее — международное комьюнити разработчиков, провайдеров и инженеров.

Корпорация ICANN — присваивает уникальные IP-адреса устройствам. Если бы не она, сёрфинг в Сети был бы похож на русскую рулетку — ввёл адрес и попал на одну из тысячи страниц, носящих один и тот же идентификатор.

МСЭ — Международный союз электросвязи. Помимо интернета, занимается телефонией, спутниками, телевидением и радио: устанавливает правила и стандарты, используемые в средствах связи.

Стандарты подключения к интернету

За много лет способы подключения к Сети сильно эволюционировали — это сейчас мы грезим о повсеместном 5G, а когда-то использовали интернет по телефонному проводу и радовались этому.

Давайте разберём действующие сейчас стандарты подключения.

Метод подключенияТехнологияОписаниеСкорость
ПроводнойDial-upПочти не используемый сейчас стандарт, подключается через телефонную линию. Сигнал аналоговый56 кбит/с
xDSLПочти то же самое, что и Dial-up, но сигнал цифровой. Также почти не используется сегодня24 Мбит/с
FTTB (ETTH)Сигнал передаётся от сетевого коммутатора посредством витой пары1 Гбит/с
xPONОптоволоконный кабель. Используется крупными компаниями для отправки большого объёма данных2,5 Гбит/с
Wi-Fi и WiMAXТехнологии доступа в интернет по беспроводным каналам1 Гбит/с
Мобильные сети3G, LTE, 5GТехнологии доступа в интернет, работающие в мобильных сетях3G — 42,2 Мбит/с

LTE — 100 Мбит/с

5G — 10 Гбит/с
СпутниковыйСпутниковый интернетБеспроводной интернет по всей планете. Чтобы подключиться, требуется особое оборудование1 Гбит/с

Вместо заключения

Напоследок — парочка интересных фактов про интернет:

  • День интернета ежегодно отмечается в России 30 сентября. Впервые праздник прошёл в 1998 году по инициативе фирмы IT Infoart. Тогда же прошла и первая перепись «интернет-населения»: глобальной сетью уже в то время пользовались около миллиона россиян.
  • Сейчас этот показатель составляет порядка 100 млн человек ежедневно.
  • В некоторых странах День интернета отмечается 4 апреля — в день «покровителя интернета» Исидора Севильского, средневекового святого энциклопедиста. А ещё дата 4.04 похожа на ошибку 404 — одну из самых часто встречаемых проблем в интернете.
  • День без интернета отмечается с начала нулевых в последнее воскресенье января для того, чтобы напомнить, что реальная жизнь может быть интереснее виртуальной и стоит хоть иногда выходить на улицу 🙂

Больше интересного про код — в нашем телеграм-канале. Подписывайтесь!

Изучайте IT на практике — бесплатно

Курсы за 2990 0 р.

Я не знаю, с чего начать
Научитесь: Профессия Python-разработчик Узнать больше
Понравилась статья?
Да

Пользуясь нашим сайтом, вы соглашаетесь с тем, что мы используем cookies 🍪

Ссылка скопирована