Полсекунды до бабушки

Ты фотографируешь кота, нажимаешь «отправить», и через полсекунды бабушка в другом городе смотрит на этого кота. Если бабушка живёт за три тысячи километров — всё равно полсекунды.

Пешком туда идти месяц. На поезде — почти сутки. А фотография долетела быстрее, чем ты успел моргнуть дважды.

Многие думают, что фотография улетела «в облако». Слово красивое, но неправильное. На самом деле она пробежала по проводам — настоящим, толстым, лежащим в земле и на дне океанов. Давай проследим её путь шаг за шагом.

Интернет — это просто провода

Начнём с главного и самого скучного факта: интернет — это сеть из соединённых между собой компьютеров. Больше ничего.

Слово «интернет» так и собрано: inter — «между», net — «сеть». Сеть между сетями. У тебя дома есть маленькая сеть: телефон, ноутбук, телевизор и роутер. У соседа своя. У школы своя. Интернет — это когда все эти маленькие сети соединили друг с другом.

Соединили в основном кабелем. Немного — радиоволнами: Wi-Fi дома, мобильная связь на улице, спутники там, где кабель не протянуть. Но радио работает только на последнем коротком отрезке. Дальше всё равно провод.

Фотографию режут на кусочки

Твоя фотография кота не летит целиком. Её разрезают.

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

Письмо режут на кусочки, и каждый едет своей дорогой
Письмо режут на кусочки, и каждый едет своей дорогой

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

На другом конце телефон бабушки смотрит на номера и складывает всё по порядку. Если какого-то кусочка не хватает — он просит прислать заново. Именно поэтому иногда картинка загружается наполовину, а потом «доползает».

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

Как пакет понимает, куда ехать

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

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

Этим занимается специальная служба — огромный телефонный справочник интернета. Твой компьютер спрашивает у неё: «какой адрес у этого имени?» — и получает числа. Обычно на это уходят сотые доли секунды.

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

От твоего дома до сервера пакет обычно проходит через 10–20 таких перекрёстков.

Кабели на дне океана

Вот факт, который удивляет даже взрослых. Между материками интернет идёт по дну морей.

Главные дороги интернета лежат на дне океана
Главные дороги интернета лежат на дне океана

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

Через океаны проложены сотни таких кабелей общей длиной больше миллиона километров. Почти весь международный интернет идёт именно по ним, а не через спутники: свет по стеклу добирается быстрее и дешевле.

Сайты живут в больших шумных залах

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

Сайты живут не в облаке, а в больших шумных залах с компьютерами
Сайты живут не в облаке, а в больших шумных залах с компьютерами

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

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

Почему иногда всё тормозит

Пакеты движутся почти со скоростью света, но не мгновенно. У задержки есть три причины.

  • Расстояние. До сервера на другом конце Земли свет по стеклу идёт около 0,1 секунды в одну сторону — значит, вопрос и ответ займут вдвое больше. Быстрее физика не разрешает.
  • Пробки. Если по одному кабелю одновременно ломится слишком много данных, пакеты ждут своей очереди — совсем как машины на перекрёстке.
  • Слабое последнее звено. Чаще всего тормозит не океанский кабель, а Wi-Fi через две бетонные стены.

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

Главное в трёх строчках

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