Условие
На каком уровне OSI работает протокол, обеспечивающий основу и ограничения для существования REST?
- Сеансовый
- Транспортный
- Прикладной
- Сетевой
Решение
Правильный ответ — Прикладной.
REST построен поверх HTTP/HTTPS, а HTTP относится к прикладному (Application) уровню модели OSI.
Модель OSI (7 уровней)
| Уровень | Название | Примеры протоколов |
|---|---|---|
| 7 | Прикладной (Application) | HTTP, FTP, SMTP, DNS, SSH |
| 6 | Представления (Presentation) | TLS/SSL (шифрование), MIME |
| 5 | Сеансовый (Session) | NetBIOS, RPC |
| 4 | Транспортный (Transport) | TCP, UDP |
| 3 | Сетевой (Network) | IP, ICMP |
| 2 | Канальный (Data Link) | Ethernet, Wi-Fi |
| 1 | Физический (Physical) | кабели, сигналы |
REST как архитектурный стиль (Roy Fielding, 2000) использует HTTP-методы (GET, POST, PUT, DELETE), коды состояния, URL-схему. Это всё на 7-м уровне.
Стек для типичного REST-запроса
Application: HTTP (REST поверх него)
Presentation: TLS (если HTTPS)
Session: —
Transport: TCP (порт 80/443)
Network: IP
Data Link: Ethernet
Physical: провод/радио
TCP/IP vs OSI
В упрощённой модели TCP/IP:
- Application = OSI 5+6+7
- Transport = OSI 4
- Internet = OSI 3
- Link = OSI 1+2
В этой модели HTTP/REST — тоже Application.
Подводные камни
- Путать REST и HTTP. REST — архитектурный стиль (правила: stateless, ресурсы, единый интерфейс). HTTP — конкретный протокол. REST обычно реализуют поверх HTTP, но теоретически возможны и другие транспорты.
- «Транспортный» — общая ошибка. На транспортном уровне работают TCP/UDP. HTTP над ними — это application.
- HTTPS на каком уровне. HTTPS = HTTP + TLS. HTTP — прикладной, TLS — представления (или сессионный, по разным интерпретациям).
Эталонный ответ
Прикладной (Application). REST использует HTTP/HTTPS — это 7-й уровень OSI.