Экспресс-курс · No. 14
Каждый раз, когда грузится страница, машины ведут быстрый, точный разговор: находят адрес друг друга, открывают линию, задают вопрос и запечатывают ответ в конверт, который больше никто не прочитает. Ничего из этого не магия — это горстка ясных идей с пугающими именами. Выучи имена, и весь веб становится читаемым.
21 понятие · схема у каждого · шпаргалка в конце
Сними жаргон — и сеть окажется одной простой вещью: машины шлют друг другу сообщения. Всё остальное — детали о том, как эти сообщения находят путь и доходят надёжно.
Карта: 21 понятие в шести группах
Карта метро: сначала видишь линии целиком, потом едешь по станциям.
Все слова курса делятся на шесть групп. Каждая группа — один шаг разговора: основы (кто с кем говорит), имена (как найти адрес), соединение (как открыть линию), HTTP (на каком языке спрашивать), HTTPS (как запечатать) и скорость (почему бывает медленно).
Как читать каждое понятие
Паспорт: одинаковые поля у всех, поэтому их легко сравнивать.
У каждого понятия дальше одно и то же: английское название (запомни его — это термин из документации), образ из жизни, схема и карточка с полями: что это, как работает, пример, подвох и связи с другими понятиями. В последней главе все слова складываются в один клик — от адресной строки до готовой страницы.
Packet — данные едут кусками
Огромная почтовая система: любое здание может послать записку любому другому, лишь бы на конверте был правильный адрес.
Сеть (network) — это просто компьютеры, соединённые так, чтобы слать друг другу данные. Данные едут маленькими пакетами (packets) — как записка, разбитая на открытки, каждая с пометкой, откуда и куда. Интернет — то же самое в масштабе планеты: миллиарды машин, любая из которых может передать пакет любой другой. Это весь фундамент; остальное — как сделать его надёжным и осмысленным.
- Что это
- Маленький кусок данных с пометкой «откуда» и «куда».
- Как работает
Большое сообщение режется на пакеты; каждый едет по сети сам; на месте их собирают обратно.
- Пример
- Одна веб-страница приезжает к тебе как много пакетов.
- Подвох
- Пакеты могут теряться и приходить не по порядку — это решает TCP.
- Связи
- Адрес на пакете — это IP address.
IP Address — у каждой машины есть адрес
У каждого здания на Земле уникальный почтовый адрес. Без него почтальону некуда доставить и некуда слать ответ.
Чтобы пакет дошёл, у получателя нужен адрес. Это IP-адрес (IP address) — число, которое опознаёт машину в сети, например 142.250.74.78. Он есть у каждого устройства онлайн. Когда твой ноутбук шлёт запрос, он ставит свой IP как обратный адрес, чтобы ответ знал, куда возвращаться. Нет адреса — нет разговора.
- Что это
- Число, которое опознаёт машину в сети.
- Как работает
На каждом пакете есть адрес получателя и адрес отправителя — чтобы ответ знал, куда идти.
- Пример
142.250.74.78— адрес сервера, к которому идёт твой запрос.- Подвох
- Числа никто не помнит — поэтому нужны имена и DNS.
- Связи
- Ведёт к машине, а к нужному сервису на ней ведёт port.
Client–Server — клиент спрашивает, сервер отвечает
Зал ресторана и кухня. Одна сторона делает заказы; другая готовит и отправляет назад. Роли на время обеда фиксированы.
Бо́льшая часть веба работает по модели клиент–сервер (client–server). Клиент (client) — твой браузер или приложение — делает запрос; сервер (server) — машина, на которой работает сайт или сервис, — шлёт ответ. Твой телефон — клиент, который просит «дай мне эту страницу»; сервер где-то отвечает страницей. Держи эту пару в уме — каждая идея ниже о том, как заставить этот запрос и ответ работать.
- Что это
- Модель, где одна сторона спрашивает, а другая отвечает.
- Как работает
- Клиент шлёт запрос; сервер его обрабатывает и шлёт ответ.
- Пример
- Телефон просит страницу — сервер где-то в дата-центре её отдаёт.
- Подвох
Роли зависят от разговора: сервер сам может быть клиентом другого сервера.
- Связи
- Язык этого разговора в вебе — HTTP.
Сеть — это машины, передающие адресованные сообщения. Клиент спрашивает, сервер отвечает — всё остальное делает это надёжным.
Ты печатаешь имя вроде example.com, но сеть умеет вести только к числам. Что-то должно перевести имя, которое ты помнишь, в адрес, который нужен машине. Это что-то — DNS.
Domain Name — имена для людей, числа для машин
Друга ты помнишь по имени, но телефонная сеть набирает только номера — поэтому у тебя есть список контактов, который превращает одно в другое.
Люди помнят wikipedia.org; сети нужен IP-адрес вроде 198.35.26.96. Доменное имя (domain name) — удобная человеку метка; IP — удобный машине адрес. Их надо связать: никто не хочет зубрить числа, а ни один роутер не умеет вести к имени. Этот разрыв закрывает целая система, которая работает постоянно и незаметно, на каждом клике.
- Что это
- Читаемое имя сайта, которое удобно человеку.
- Как работает
- Само по себе никуда не ведёт — его сначала переводят в IP-адрес.
- Пример
wikipedia.org→198.35.26.96.- Подвох
- Роутеры не понимают имён — только числа.
- Связи
- Переводит имя в адрес DNS.
DNS — телефонная книга интернета
Гигантский справочник, открытый круглые сутки: ты даёшь ему имя, он отдаёт номер для набора. Ты никогда не видишь, как он работает, — просто получаешь номер.
DNS (Domain Name System) — сервис, который переводит доменное имя в IP-адрес. Прежде чем браузер достанет example.com, он спрашивает DNS: «какой адрес у этого имени?» — и получает число. Этот поиск (lookup), или резолвинг (resolution), случается первым, каждый раз, за миллисекунды. Это незаметный шаг, без которого не было бы читаемых веб-адресов.
- Что это
- Сервис, который переводит доменное имя в IP-адрес.
- Как работает
- Браузер спрашивает «какой IP у этого имени?» и получает число.
- Пример
example.com→ IP-адрес → только потом соединение с сервером.- Подвох
- Это первый шаг каждой загрузки: если DNS сломан, сайт «не существует».
- Связи
- Его ответы хранит DNS caching с TTL.
DNS Caching и TTL — ответ запоминают
Ты один раз находишь номер друга и пишешь его на стикер — в следующий раз просто читаешь стикер, а не открываешь весь справочник.
Искать каждое имя с нуля было бы медленно, поэтому DNS-ответы кэшируются (caching) — их на время запоминают браузер, операционная система и сеть. Адрес приходит с TTL (time to live) — сколько его безопасно переиспользовать до новой проверки. Поэтому адрес знакомого сайта находится мгновенно, и поэтому смена DNS расходится не сразу.
- Что это
- Запомненный ответ DNS и срок, сколько ему можно верить.
- Как работает
Браузер, ОС и сеть хранят ответ; пока TTL не истёк, адрес берут из памяти.
- Пример
- Сайт, где ты уже был, находится мгновенно — адрес лежит в кэше.
- Подвох
Поменял DNS — старый ответ ещё живёт в кэшах, пока не истечёт TTL. Изменение расходится не сразу.
- Связи
- Тот же приём, что у CDN: держать ответ ближе.
DNS — это телефонная книга: превращает имя, которое ты помнишь, в IP-адрес, который нужен сети, и кэширует его, чтобы в следующий раз было мгновенно.
Знать адрес — ещё не значит вести разговор. Прежде чем сообщения пойдут надёжно, две машины открывают соединение — и договариваются, в какую «дверь» сервера стучать.
TCP — надёжная линия по порядку
Телефонный звонок с подтверждениями: ты говоришь фразу, собеседник отвечает «понял», и ничего не идёт дальше, пока каждая часть не подтверждена и не встала по порядку.
TCP (Transmission Control Protocol) — самый частый способ слать данные надёжно. Он открывает соединение быстрым рукопожатием (handshake) — обе стороны соглашаются говорить, — а потом гарантирует, что каждый пакет дойдёт, по порядку, а потерянные будут отправлены снова. Ты отдаёшь немного скорости за уверенность, что ничего не потеряно и не перепутано. Веб, почта и большинство приложений работают поверх TCP именно ради этой надёжности.
- Что это
- Надёжная линия: всё дойдёт, ничего не потеряется, всё по порядку.
- Как работает
Рукопожатие открывает соединение; получатель подтверждает пакеты; потерянные шлют снова.
- Пример
- Веб-страницы, почта, большинство приложений.
- Подвох
- Надёжность стоит скорости: рукопожатие и ожидание подтверждений.
- Связи
- Быстрая альтернатива — UDP; поверх TCP едет HTTP.
UDP — скорость вместо надёжности
Выкрикивать новости через шумную комнату — часть слов теряется, но ты не останавливаешься подтвердить каждое: успевать важнее, чем поймать каждое слово.
UDP (User Datagram Protocol) — быстрая альтернатива без гарантий: он шлёт пакеты без рукопожатия и не переотправляет потерянные. Ты теряешь надёжность, но выигрываешь скорость и малые накладные расходы. Это верный размен для живого видео, голосовых звонков и игр, где упавший кадр терпим, а ожидание — нет. Сам факт, что есть оба, говорит главное: у сети всегда есть регулятор «скорость против надёжности».
- Что это
- Быстрая линия без гарантий доставки и порядка.
- Как работает
- Без рукопожатия и без повторов: отправил и забыл.
- Пример
- Живое видео, голосовые звонки, онлайн-игры.
- Подвох
- Пакеты теряются — приложение должно это терпеть.
- Связи
- Противоположный конец регулятора от TCP.
Port — пронумерованные двери машины
Одно здание, много дверей, у каждой номер под свою цель — доставка в дверь 80, офис в другую. Один адрес, разные входы.
На одной машине работает много сервисов, поэтому одного IP-адреса мало — нужен ещё порт (port), число, которое выбирает, к какому сервису стучаться. Веб по соглашению использует порт 80 (HTTP) или 443 (HTTPS); база данных может слушать другой. Адрес приводит к зданию, порт — к нужной двери. Вместе IP плюс порт называют точное место назначения.
- Что это
- Номер, который выбирает сервис на машине.
- Как работает
- Каждый сервис «слушает» свой порт; запрос идёт на IP:порт.
- Пример
80— HTTP,443— HTTPS; база данных слушает свой порт.- Подвох
- Правильный IP с неправильным портом — стук не в ту дверь.
- Связи
- Дополняет IP address; используется и TCP, и UDP.
TCP — надёжная линия по порядку; UDP — быстрый и теряющий. IP находит здание, порт выбирает дверь.
Когда линия открыта, двум сторонам нужен общий язык, чтобы спрашивать и отвечать. В вебе этот язык — HTTP, простой и строгий формат каждого запроса и ответа.
HTTP — запрос и ответ
Обмен официальными письмами: уходит чётко оформленный запрос, возвращается чётко оформленный ответ, оба по одному согласованному шаблону.
HTTP (HyperText Transfer Protocol) — язык веба. Клиент шлёт запрос (request) — что он хочет, — а сервер шлёт ответ (response) — результат. Каждая страница, картинка и вызов API — один такой обмен. Он текстовый и структурированный, поэтому на нём говорит столько инструментов. Пойми форму одного запроса и ответа — и поймёшь, как движется весь веб.
- Что это
- Язык запросов и ответов в вебе.
- Как работает
Клиент шлёт запрос, сервер возвращает ответ; один обмен — одна вещь.
- Пример
- Страница, картинка, вызов API — каждый это отдельный обмен HTTP.
- Подвох
- Обычный HTTP не зашифрован — его может прочитать любой по пути.
- Связи
Состоит из methods, headers + body, status codes; защищённая версия — HTTPS.
HTTP Methods — глагол говорит, что ты хочешь
У стойки библиотеки можно взять книгу, вернуть её или попросить добавить новую. Стойка одна, намерения разные — и персонал обрабатывает каждое по-своему.
У каждого запроса есть метод (method) — глагол. GET достаёт данные (загрузить страницу). POST шлёт новые данные (отправить форму). PUT обновляет что-то; DELETE удаляет. Метод сразу говорит серверу твоё намерение, и хорошие системы обрабатывают их по-разному: GET ничего не должен менять, а POST как раз ожидаемо меняет. Эти глаголы — хребет того, как проектируют API.
- Что это
- Слово в начале запроса, которое говорит, что ты хочешь сделать.
- Как работает
- GET — достать, POST — создать, PUT — обновить, DELETE — удалить.
- Пример
- Открыл страницу — GET; отправил форму — POST.
- Подвох
- GET, который что-то меняет, — ошибка проектирования.
- Связи
- Стоит в первой строке запроса, перед headers.
Headers и Body — детали и груз
На конверте снаружи есть пометки — кому, что внутри, как обращаться, — а внутри лежит само письмо.
У каждого запроса и ответа есть заголовки (headers) — подписанные строки метаданных: тип содержимого, язык, кто спрашивает, токены аутентификации — и необязательное тело (body), сам груз: данные формы туда, страница или JSON обратно. Заголовками две стороны договариваются о деталях, не трогая груз. Бо́льшая часть «как» в обмене живёт в заголовках.
- Что это
- Заголовки — метаданные о сообщении; тело — сами данные.
- Как работает
- Заголовки идут строками «имя: значение», тело — после них.
- Пример
Content-Type: application/jsonговорит, что в теле JSON; тело — данные формы.- Подвох
- Тело есть не всегда: у обычного GET его нет.
- Связи
В заголовках едут cookies — так работает вход на stateless HTTP.
Status Codes — как всё прошло
Светофор для ответов: зелёный — всё хорошо, редирект указывает в другое место, а красный говорит, что пошло не так — и чья это вина.
Каждый ответ несёт статус-код (status code). 2xx — успех (200 OK). 3xx — редирект: смотри вон там. 4xx — ошибся клиент: 404 Not Found, 403 Forbidden — ты спросил не так. 5xx — ошибся сервер: 500 — он сломался. Первая цифра сразу говорит, сработало ли, кто виноват и куда смотреть. Это самый полезный навык отладки в вебе.
- Что это
- Трёхзначное число в ответе, которое говорит, как всё прошло.
- Как работает
2xx — успех, 3xx — редирект, 4xx — ошибка клиента, 5xx — ошибка сервера.
- Пример
404— такой страницы нет;500— сервер сломался.- Подвох
- Путать 4xx и 5xx — значит искать баг не на той стороне.
- Связи
- Первое, что смотришь в каждом HTTP-ответе.
Stateless и Cookies — HTTP забывает тебя
Клерк за стойкой не помнит твой прошлый визит — каждый раз ты заново представляешься и снова показываешь талон.
HTTP без состояния (stateless): каждый запрос стоит сам по себе, и сервер по умолчанию ничего не помнит с прошлого раза. Поэтому, чтобы оставаться залогиненным, каждый запрос должен нести доказательство, кто ты, — cookie или токен в заголовках. Именно отсутствие состояния позволяет вебу масштабироваться до миллиардов запросов — и объясняет, почему твоя личность едет вместе с каждым вызовом.
- Что это
- Сервер не помнит прошлых запросов; cookie несёт память с собой.
- Как работает
Браузер прикладывает cookie или токен к каждому запросу в заголовках.
- Пример
- Ты залогинен, потому что каждый запрос несёт твою cookie сессии.
- Подвох
- Нет cookie — для сервера ты незнакомец.
- Связи
Cookie едет в headers; отсутствие состояния помогает load balancer.
HTTP — это запрос и ответ: метод для намерения, заголовки для деталей, тело для груза и статус-код, который точно говорит, как всё прошло.
Обычный HTTP — это открытка: любой, кто её несёт, может прочитать. HTTPS — тот же разговор, запечатанный в конверт, который откроет только нужный сервер, и подписанный, чтобы ты знал, с кем говоришь.
TLS и HTTPS — шифрование запечатывает сообщение
Вместо читаемой открытки — запертый ящик, ключ от которого есть только у получателя. Курьеры его несут, но никто не может прочитать, что внутри.
HTTPS — это HTTP, обёрнутый в шифрование (encryption) через TLS (Transport Layer Security). Оно перемешивает содержимое так, что любой между тобой и сервером — Wi-Fi в кафе, провайдер, атакующий — видит лишь бессмыслицу, а не твой пароль или сообщение. Замок в адресной строке значит, что печать на месте. В современном вебе это по умолчанию, потому что незапечатанный разговор может прочитать кто угодно.
- Что это
- Шифрование линии; HTTPS — это HTTP поверх TLS.
- Как работает
После TLS-рукопожатия всё содержимое перемешано — по пути видна только бессмыслица.
- Пример
- Замок в адресной строке; порт
443. - Подвох
- Шифрования мало — надо ещё знать, что сервер настоящий.
- Связи
- Личность сервера доказывает certificate.
Certificate — доказательство, с кем ты говоришь
Паспорт, который проверила доверенная инстанция: он доказывает, что человек тот, кем себя называет, а не самозванец под его именем.
Одного шифрования мало: надо ещё знать, что сервер правда yourbank.com, а не подделка. Сертификат (certificate) — цифровое удостоверение, подписанное доверенным удостоверяющим центром (certificate authority, CA). Он доказывает, что сервер владеет именем, которое заявляет. Браузер проверяет его автоматически и предупреждает, если сертификата нет или он неверный. Это и не даёт атакующему выдать себя за сайт даже на зашифрованном соединении.
- Что это
- Цифровое удостоверение: «этот сервер владеет этим именем».
- Как работает
CA подписывает сертификат; сервер показывает его; браузер проверяет подпись сам.
- Пример
- Браузер предупреждает, когда у сайта нет сертификата или он не тот.
- Подвох
- Не игнорируй предупреждение о сертификате — это может быть подделка.
- Связи
- Закрывает дверь для man-in-the-middle.
Man-in-the-Middle — почему замок важен
Разница между отправкой запечатанного, проверенного письма и выкрикиванием своих банковских данных в людной комнате.
Без HTTPS любой на пути может читать и даже менять твой трафик — это человек посередине (man-in-the-middle, MITM), который тихо сидит между тобой и сервером. С HTTPS сообщение запечатано, а отправитель проверен. Поэтому страницы входа, платежи и теперь почти всё работает через HTTPS, а браузеры помечают обычный HTTP как «небезопасно». Замок — маленькая иконка за большой гарантией.
- Что это
- Атакующий между тобой и сервером, который читает или меняет трафик.
- Как работает
- Ты думаешь, что говоришь с сервером, а говоришь через него.
- Пример
- Чужой Wi-Fi, который подсматривает обычный HTTP.
- Подвох
- Он невидим: всё «работает», пока данные утекают.
- Связи
- Защита — TLS (печать) + certificate (проверка личности).
HTTPS запечатывает сообщение шифрованием и доказывает личность сервера сертификатом — приватность и доверие в одном замке.
Веб кажется мгновенным, но расстояние и физика всегда берут свою плату. Два слова — задержка и пропускная способность — объясняют бо́льшую часть того, почему всё кажется быстрым или медленным.
Latency и Bandwidth — ожидание и ширина
Водопроводная труба: сколько ждать первой капли — одно; сколько воды течёт в секунду — другое. У широкой трубы тоже есть задержка, пока вода дойдёт до дальнего конца.
Задержка (latency) — время до начала ответа, то есть время туда и обратно для сообщения. Пропускная способность (bandwidth) — сколько данных можно передать в секунду. Они независимы: соединение может быть широким и при этом с большой задержкой. Большим загрузкам важна пропускная способность; быстрому, отзывчивому сайту — задержка. Из-за путаницы между ними людей и удивляет: «интернет быстрый, а сайт тормозит».
- Что это
- Latency — сколько ждать ответа; bandwidth — сколько данных в секунду.
- Как работает
Они не зависят друг от друга: можно иметь много ширины и долгое ожидание.
- Пример
Большой файл качается быстро, но каждый клик на далёком сайте тормозит.
- Подвох
«Быстрый интернет, медленный сайт» — обычно проблема задержки, а не ширины.
- Связи
- Задержка растёт с каждым round trip; её срезает CDN.
Round Trip — каждый круг стоит времени
Задать вопрос человеку на другом континенте: даже со скоростью света у обмена туда и обратно есть нижняя граница, которую не побить.
Запрос к далёкому серверу совершает физический круг туда и обратно (round trip), а свет через планету идёт не мгновенно: путь через полмира стоит минимум десятки миллисекунд. Хуже того, загрузка страницы часто требует много кругов. Поэтому «болтливые» (chatty) системы вялые на расстоянии, и поэтому сократить число кругов — один из старейших трюков производительности.
- Что это
- Путь сообщения до сервера и обратно.
- Как работает
Каждый шаг — DNS, рукопожатия, запрос — стоит минимум одного круга.
- Пример
- Путь через полмира — десятки миллисекунд даже для света.
- Подвох
- Много мелких запросов («болтливый» дизайн) складывают задержку.
- Связи
- Меньше кругов или короче путь (CDN) — меньше latency.
CDN — положи ответ ближе
Популярная книга стоит в местных библиотеках по всему миру, а не в одном центральном архиве, куда надо писать письмо, — копия рядом приходит куда быстрее.
CDN (content delivery network) — сеть серверов по всему миру, которые держат копии твоего контента рядом с пользователями. Когда кто-то в Токио открывает твой сайт, его обслуживает ближний город, а не твой исходный сервер (origin) за океаном, — и задержка резко падает. CDN — это кэширование, применённое к географии; так глобальные сайты кажутся местными везде.
- Что это
- Сеть серверов по миру с копиями твоего контента.
- Как работает
- Пользователь получает ответ с ближайшего сервера, а не с origin.
- Пример
- Пользователь в Токио получает страницу из ближнего города.
- Подвох
- Копии — это кэш: обновления доходят не мгновенно.
- Связи
Режет latency и число долгих round trips; родня DNS caching.
Load Balancer — распределить работу
Администратор очереди в банке направляет клиентов к свободному окну, чтобы ни одно не захлёбывалось, пока другие простаивают.
Когда один сервер не справляется со всем трафиком, перед несколькими серверами ставят балансировщик нагрузки (load balancer), который распределяет запросы между ними. Так большие сайты держат миллионы пользователей — просто добавь серверов за балансировщик — и так переживают отказ одного сервера: балансировщик просто обходит его. Название говорит ровно то, что он делает: балансирует нагрузку.
- Что это
- Посредник, который раздаёт запросы между несколькими серверами.
- Как работает
Каждый запрос уходит на один из живых серверов; упавший пропускается.
- Пример
- Растёт трафик — добавляешь серверы за балансировщик.
- Подвох
- Если сервер хранит сессию в памяти, другой сервер о ней не знает.
- Связи
- Легко работает потому, что HTTP — stateless.
Задержка — это ожидание; пропускная способность — это ширина. Расстояние всегда берёт плату — CDN переносит ответ ближе, балансировщик распределяет работу.
Теперь сложи все слова вместе: проследи один клик от адресной строки до готовой страницы. Если можешь это пересказать — ты понимаешь, как разговаривает веб.
Что происходит, когда ты открываешь URL
Полный путь одного письма: найти адрес, открыть линию, запечатать конверт, задать вопрос, получить ответ — всё меньше чем за секунду.
Ты печатаешь example.com. DNS превращает имя в IP-адрес. Браузер открывает TCP-соединение к этому IP на порт 443, и они делают TLS-рукопожатие, чтобы линия была зашифрована, а сертификат сервера проверен. По этой запечатанной линии браузер шлёт HTTP-запрос с методом GET; сервер отвечает статус-кодом и телом. Страница может прийти с ближнего CDN, чтобы срезать задержку. Браузер читает ответ и рисует страницу. Каждый термин этого курса просто назвал один шаг этой обычной секунды.
Как понятия связаны между собой
Матрёшка: каждый слой лежит внутри следующего, и снаружи видно только верхний.
Понятия не живут поодиночке — они ложатся слоями. Внизу IP с пакетами и адресами. На нём едут TCP или UDP с портами. Поверх TCP — TLS, а на самом верху — HTTP, язык запросов и ответов. Сбоку стоят помощники: DNS даёт адрес для нижнего слоя, а CDN и load balancer борются с задержкой и нагрузкой.
- DNS превращает доменное имя в IP-адрес.
- Открывается TCP-соединение к этому IP на порт (443 для HTTPS).
- TLS-рукопожатие шифрует линию и проверяет сертификат сервера.
- Клиент шлёт HTTP-запрос — метод, заголовки, может быть тело.
- Сервер возвращает статус-код, заголовки и тело.
- CDN может отдать ответ из ближнего места; балансировщик может выбрать сервер.
- 404 против 500 сразу говорит, чья вина — твоя или сервера.
- «Быстрый интернет, а сайт медленный» читается как проблема задержки, а не пропускной способности.
- Замок значит зашифровано и личность проверена — ты знаешь, что он гарантирует.
- Можешь объяснить, почему для входа нужна cookie на каждом stateless-запросе.
- Смог бы пересказать весь путь URL выше, не подглядывая.
Шпаргалка: все 21 понятие
Основы
- Packetпакет
Кусок данных с пометкой «откуда» и «куда».
- IP AddressIP-адрес
Число, которое опознаёт машину в сети.
- Client–Serverклиент–сервер
Клиент спрашивает, сервер отвечает.
Имена
- Domain Nameдоменное имя
Читаемое имя сайта для людей.
- DNSDomain Name System
Телефонная книга: имя → IP-адрес.
- DNS Caching · TTLкэш DNS
Ответ запоминают; TTL говорит, сколько ему верить.
Соединение
- TCPTransmission Control Protocol
Надёжная линия: рукопожатие, всё по порядку, потери пересылаются.
- UDPUser Datagram Protocol
Быстрая линия без гарантий: отправил и забыл.
- Portпорт
Номер двери: какой сервис на машине.
HTTP
- HTTPHyperText Transfer Protocol
Язык веба: запрос и ответ.
- HTTP MethodsGET · POST · PUT · DELETE
Глагол запроса — твоё намерение.
- Headers · Bodyзаголовки и тело
Детали сообщения и сам груз.
- Status Codesстатус-коды
2xx успех, 3xx редирект, 4xx твоя ошибка, 5xx ошибка сервера.
- Stateless · Cookieбез состояния
Сервер не помнит тебя; cookie едет с каждым запросом.
HTTPS
- TLS · HTTPSшифрование
Запечатывает разговор; HTTPS = HTTP + TLS.
- Certificateсертификат, CA
Подписанное удостоверение: сервер владеет своим именем.
- Man-in-the-MiddleMITM
Атакующий посередине; от него защищает HTTPS.
Скорость
- Latency · Bandwidthзадержка и ширина
Сколько ждать и сколько данных в секунду. Это разные вещи.
- Round TripRTT
Путь туда и обратно; каждый круг стоит времени.
- CDNContent Delivery Network
Копии контента рядом с пользователями.
- Load Balancerбалансировщик
Раздаёт запросы между серверами и обходит упавшие.
Загрузка страницы — это один быстрый разговор: найти адрес, открыть линию, запечатать, спросить, ответить. Каждое пугающее слово — просто один шаг этой секунды.