Добавить в корзинуПозвонить
Найти в Дзене

Как работает интернет: простыми словами о сложном

Вы сейчас читаете этот текст. Он как-то попал с моего компьютера на ваш экран. Между нами могут быть тысячи километров, но вы видите каждую букву мгновенно. Как это вообще работает? Я программирую уже лет пятнадцать, но долго не понимал, что реально происходит, когда нажимаю Enter в браузере. Сейчас объясню простыми словами, без занудства про протоколы и OSI-модели. Каждый компьютер в сети имеет адрес. Как номер дома на улице. Называется IP-адрес - четыре числа через точку, типа 192.168.1.1. Но мы же не вводим цифры, когда хотим зайти на сайт? Правильно. Вводим понятные имена: google.com, youtube.com. А дальше работает штука под названием DNS - Domain Name System. Это как телефонная книга интернета. Вы говорите "хочу на youtube.com", а DNS отвечает "окей, это адрес 142.250.185.206". И браузер уже обращается по конкретному адресу. Кстати, DNS-серверы иногда ложатся, и тогда сайты перестают открываться по именам. Но если знать IP-адрес, можно ввести его напрямую - и всё работает. Я так п
Оглавление

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

Как работает интернет: простыми словами о сложном
Как работает интернет: простыми словами о сложном

Я программирую уже лет пятнадцать, но долго не понимал, что реально происходит, когда нажимаю Enter в браузере. Сейчас объясню простыми словами, без занудства про протоколы и OSI-модели.

Адреса вместо имён

Каждый компьютер в сети имеет адрес. Как номер дома на улице. Называется IP-адрес - четыре числа через точку, типа 192.168.1.1.

Но мы же не вводим цифры, когда хотим зайти на сайт? Правильно. Вводим понятные имена: google.com, youtube.com. А дальше работает штука под названием DNS - Domain Name System.

Это как телефонная книга интернета. Вы говорите "хочу на youtube.com", а DNS отвечает "окей, это адрес 142.250.185.206". И браузер уже обращается по конкретному адресу.

Кстати, DNS-серверы иногда ложатся, и тогда сайты перестают открываться по именам. Но если знать IP-адрес, можно ввести его напрямую - и всё работает. Я так пару раз выходил из положения, когда провайдер косячил.

Пакеты, а не файлы целиком

Когда вы скачиваете фотку или открываете страницу, данные не летят одним куском. Они разбиваются на маленькие пакеты - обычно по 1500 байт. Каждый пакет идёт своим путём через сеть.

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

Зачем так сложно? Потому что если один пакет потеряется (а это бывает), не нужно пересылать всю книгу - только недостающую страницу. Плюс пакеты могут идти параллельно, что ускоряет передачу.

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

Роутеры - почтальоны сети

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

Роутеры - почтальоны сети
Роутеры - почтальоны сети

Как почтальон смотрит на адрес письма: "О, это в Москву. Значит, отправляю на московский сортировочный центр". Следующий роутер думает: "Москва, район Митино. Кину на местную станцию". И так далее, пока пакет не дойдёт до получателя.

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

Есть команда traceroute (в Windows - tracert), которая показывает весь путь пакетов. Попробуйте ради интереса - увидите, через сколько промежуточных точек идут ваши данные.

Серверы - обычные компьютеры

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

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

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

HTTPS - чтобы соседи не подглядывали

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

HTTPS - чтобы соседи не подглядывали
HTTPS - чтобы соседи не подглядывали

Потом придумали шифрование. HTTPS - это когда данные между вами и сервером зашифрованы. Даже если кто-то перехватит пакеты, увидит только кашу из символов.

Особенно критично для паролей и платёжных данных. Поэтому все нормальные сайты сейчас используют HTTPS. Если видите в браузере "соединение не защищено" - задумайтесь, стоит ли там вводить чувствительную информацию.

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

Кеш - память интернета

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

Когда заходите на сайт повторно, браузер проверяет: есть ли у меня уже эти файлы? Если есть и они не устарели - использует локальные копии. Сайт грузится быстрее.

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

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

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

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

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

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

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

Ещё влияет физическое расстояние. Свет в оптоволокне идёт быстро, но не мгновенно. Запрос из Москвы в Австралию и обратно займёт минимум 200-300 миллисекунд просто из-за расстояния. Добавьте обработку на серверах, задержки у провайдеров - и вот вам полсекунды или больше.

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

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

Кто владеет интернетом: правда о контроле над сетью

Кто на самом деле придумал интернет?

История появления API