SkillGridИзучай computer science на практике

Сетевой стек: зачем нужны уровни

Как сообщение превращается в кадр и обратно, и почему уровни превращают «интернет сломался» в решаемую задачу.

12 мин · 40 XP

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

Четыре уровня ведут от клика до провода. Приложений: что ты вообще имеешь в виду (HTTP, DNS, SMTP). Транспортный: какой программе на машине и нужна ли гарантия доставки (TCP, UDP, порты). Сетевой: как найти машину в любой точке планеты (IP-адреса, маршрутизация). Канальный: как передать байты через один физический прыжок (Ethernet, Wi-Fi, MAC-адреса).

Приложение   "привет"                                  <- данные
Транспорт    [TCP | порт 443 | привет]                   <- сегмент
Сеть         [IP | 93.184.216.34 | TCP | порт 443 | ...]  <- пакет
Канальный    [Ethernet | MAC роутера | IP | TCP | ...]    <- кадр

На каждом слое добавляется свой заголовок.
Получив кадр, приёмник снимает заголовки в обратном порядке.
БраузерСерверСтек на машинеapplication: запросtransport: порт и надёжностьinternet: IP-адресlink: кадр в сеть0101010101снимает заголовки по очередиapplication: ответ

Практика

  1. Расставь уровни в том порядке, в котором сообщение идёт от приложения вниз, к проводу.

    Подсказки
    • Начни с того, что создаёт человек: текст, клик, запрос.
    • Порт — это транспорт, IP-адрес — сеть, MAC-адрес — канальный уровень.

    12 XP

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

    Подсказки
    • IP-адрес не гарантирует доставку — он только указывает, куда идти.
    • DNS и HTTP делает само приложение, а не сеть.

    12 XP

  3. Пакет уходит с ноутбука на сервер в другой стране. Какое устройство решает, какому соседу отдать пакет дальше?

    Подсказки
    • Подумай, кто выбирает следующий прыжок пакета.
    • Коммутатор работает только внутри одной локальной сети.

    16 XP