Справочное руководство по сетевым протоколам и моделям
Две основные модели описания работы сетевых протоколов: теоретическая OSI и практическая TCP/IP.
| Уровень | Название | Номер |
|---|---|---|
| Прикладной | Application Layer | 7 |
| Представления | Presentation Layer | 6 |
| Сеансовый | Session Layer | 5 |
| Транспортный | Transport Layer | 4 |
| Сетевой | Network Layer | 3 |
| Канальный | Data Link Layer | 2 |
| Физический | Physical Layer | 1 |
| Уровень | Название | Номер |
|---|---|---|
| Прикладной | Application Layer | 4 |
| Транспортный | Transport Layer | 3 |
| Межсетевой | Internet Layer | 2 |
| Канальный | Link Layer | 1 |
| Уровень OSI | Уровень TCP/IP | Назначение |
|---|---|---|
| 7, 6, 5 | 4 — Прикладной | Взаимодействие с приложениями пользователя |
| 4 — Транспортный | 3 — Транспортный | Надежная передача данных между хостами |
| 3 — Сетевой | 2 — Межсетевой | Маршрутизация пакетов между сетями |
| 2, 1 | 1 — Канальный | Физическая передача данных |
Описание: Обеспечивает взаимодействие пользовательских приложений с сетью. Предоставляет сетевые сервисы конечным приложениям.
Протоколы: HTTP, HTTPS, FTP, SMTP, DNS, SSH, Telnet
Описание: Преобразование, сжатие и шифрование данных. Обеспечивает независимость от различий в представлении данных.
Функции: SSL/TLS, JPEG, MPEG, ASCII, EBCDIC, шифрование, сжатие
Описание: Управление сеансами связи между приложениями. Установка, поддержание и завершение соединений.
Протоколы: NetBIOS, RPC, PPTP
Описание: Обеспечивает надежную передачу данных между конечными узлами. Сегментация данных, контроль ошибок, управление потоком.
Протоколы: TCP, UDP, SCTP
Описание: Маршрутизация пакетов через промежуточные узлы. Логическая адресация и определение пути передачи данных.
Протоколы: IP (IPv4, IPv6), ICMP, ARP, IGMP
Описание: Обеспечивает передачу данных между узлами в одной локальной сети. Физическая адресация, обнаружение и исправление ошибок.
Протоколы: Ethernet, Wi-Fi (802.11), PPP, MAC-адресация
Описание: Передача битов по физическим каналам связи. Определяет электрические, механические и функциональные характеристики.
Среды передачи: Витая пара, оптоволокно, радиоволны, коаксиальный кабель
Описание: Объединяет функции прикладного, представления и сеансового уровней OSI. Предоставляет интерфейс между приложениями и сетью.
Протоколы: HTTP, HTTPS, FTP, SMTP, POP3, IMAP, DNS, SSH, Telnet, SNMP
Описание: Обеспечивает передачу данных между приложениями на разных хостах. Выбор между надежностью (TCP) и скоростью (UDP).
Протоколы: TCP (надежный), UDP (быстрый)
Описание: Отвечает за адресацию и маршрутизацию пакетов между сетями. Определяет оптимальный путь доставки данных.
Протоколы: IP (IPv4, IPv6), ICMP, ARP, RARP
Описание: Объединяет функции канального и физического уровней OSI. Определяет способ передачи данных по конкретной физической среде.
Технологии: Ethernet, Wi-Fi, DSL, DOCSIS, PPP
Описание: Протокол с установлением соединения, обеспечивающий надежную упорядоченную передачу данных.
| Параметр | Значение |
|---|---|
| Надежность | Гарантированная доставка |
| Порядок | Данные в правильной последовательности |
| Соединение | Требуется 3-way handshake |
| Контроль ошибок | Автоматическая повторная отправка |
| Скорость | Медленнее из-за overhead |
| Размер заголовка | 20 байт (минимум) |
Описание: Протокол без установления соединения, обеспечивающий быструю передачу данных без гарантий.
| Параметр | Значение |
|---|---|
| Надежность | Не гарантируется |
| Порядок | Может нарушаться |
| Соединение | Не требуется |
| Контроль ошибок | Минимальный, без повторов |
| Скорость | Быстрее, низкая задержка |
| Размер заголовка | 8 байт |
Когда критична целостность данных и можно пожертвовать скоростью. Каждый байт должен быть доставлен в правильном порядке.
Механизм работы:
Установка соединения → Передача с подтверждением →
Повторная отправка при ошибках → Закрытие соединения
Когда критична скорость и низкая задержка. Потеря отдельных пакетов допустима, важна общая производительность.
Механизм работы:
Отправка датаграммы без установки соединения.
Нет подтверждений, нет гарантий, нет повторов.
| Характеристика | TCP | UDP |
|---|---|---|
| Тип протокола | Connection-oriented | Connectionless |
| Гарантия доставки | Да | Нет |
| Порядок данных | Сохраняется | Не гарантируется |
| Проверка ошибок | Обширная | Базовая (checksum) |
| Контроль потока | Да (sliding window) | Нет |
| Контроль перегрузки | Да | Нет |
| Broadcast/Multicast | Нет | Да |
| Скорость | Медленнее | Быстрее |
| Overhead | Высокий | Низкий |
| Использование | HTTP, FTP, SMTP | DNS, VoIP, Gaming |
Уровень: Сетевой уровень (Layer 3)
Описание: Основной протокол межсетевого уровня, обеспечивающий маршрутизацию и доставку пакетов между сетями. Определяет логическую адресацию устройств в сети.
IPv4:
xxx.xxx.xxx.xxx (например, 192.168.1.1)IPv6:
xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxxУровень: Прикладной уровень (Layer 7)
Описание: Система доменных имен, преобразующая человекочитаемые доменные имена в IP-адреса. Работает по протоколу UDP (порт 53) для скорости, TCP для больших запросов.
Пример работы:
example.com → DNS запрос → 93.184.216.34
| Тип | Назначение |
|---|---|
| A | Сопоставление домена с IPv4 адресом |
| AAAA | Сопоставление домена с IPv6 адресом |
| CNAME | Псевдоним для другого домена |
| MX | Почтовый сервер для домена |
| TXT | Текстовая информация (SPF, DKIM) |
| NS | Authoritative name server |
Уровень: Прикладной уровень (Layer 7)
Описание: Протокол передачи файлов между клиентом и сервером. Использует два канала: управляющий (порт 21) и канал данных (порт 20 в активном режиме).
Режимы работы:
Уровень: Прикладной уровень (Layer 7)
Описание: Защищенный протокол для удаленного доступа к компьютерам и безопасной передачи данных. Использует TCP порт 22, обеспечивает шифрование всего трафика.
Аутентификация:
| Протокол | Уровень | Порт | Транспорт | Безопасность |
|---|---|---|---|---|
| IP | Сетевой (L3) | — | — | Нет (требует IPSec) |
| DNS | Прикладной (L7) | 53 | UDP/TCP | Опционально (DNSSEC, DoH, DoT) |
| FTP | Прикладной (L7) | 20, 21 | TCP | Нет (требует FTPS/SFTP) |
| SSH | Прикладной (L7) | 22 | TCP | Полное шифрование |
| Протокол | Порт | Назначение |
|---|---|---|
| HTTP | 80 | Передача гипертекста (веб-страницы) |
| HTTPS | 443 | HTTP с шифрованием SSL/TLS |
| FTP | 20, 21 | Передача файлов |
| SMTP | 25 | Отправка электронной почты |
| POP3 | 110 | Получение почты |
| IMAP | 143 | Доступ к почтовому ящику |
| DNS | 53 | Преобразование доменных имен |
| SSH | 22 | Защищенный удаленный доступ |
| Telnet | 23 | Незащищенный удаленный доступ |
| SNMP | 161 | Управление сетевыми устройствами |
| Протокол | Описание |
|---|---|
| TCP | Надежная доставка с установкой соединения |
| UDP | Быстрая доставка без установки соединения |
| SCTP | Stream Control Transmission Protocol |
| Протокол | Описание |
|---|---|
| IP | Internet Protocol (IPv4, IPv6) |
| ICMP | Internet Control Message Protocol (ping, traceroute) |
| ARP | Address Resolution Protocol (IP → MAC) |
| IGMP | Internet Group Management Protocol (multicast) |
| Технология | Описание |
|---|---|
| Ethernet | Проводная локальная сеть |
| Wi-Fi | Беспроводная локальная сеть (802.11) |
| PPP | Point-to-Point Protocol |
| MAC | Media Access Control (физические адреса) |
Процесс установки TCP-соединения:
1. SYN →
Клиент отправляет запрос на установку соединения
2. ← SYN-ACK
Сервер подтверждает и отправляет свой запрос
3. ACK →
Клиент подтверждает получение
✅ Соединение установлено
Well-Known Ports (0-1023):
Registered Ports (1024-49151):
Dynamic/Private Ports (49152-65535):
| Характеристика | MAC-адрес | IP-адрес |
|---|---|---|
| Уровень | Канальный (L2) | Сетевой (L3) |
| Формат | 48 бит (12 hex цифр) | 32 бита (IPv4) / 128 бит (IPv6) |
| Пример | 00:1A:2B:3C:4D:5E |
192.168.1.1 |
| Изменяемость | Постоянный (прошит) | Динамический/статический |
| Область | Локальная сеть | Глобальная сеть |
Описание: Криптографические протоколы для безопасной передачи данных
Версии:
Использование:
Описание: Набор протоколов для защиты IP-соединений
Режимы:
Применение:
| Метод | Описание | Идемпотентность |
|---|---|---|
| GET | Получить ресурс | Да |
| POST | Создать ресурс | Нет |
| PUT | Обновить ресурс (полностью) | Да |
| PATCH | Обновить ресурс (частично) | Нет |
| DELETE | Удалить ресурс | Да |
| HEAD | Получить заголовки (без тела) | Да |
| OPTIONS | Получить доступные методы | Да |
| Код | Описание |
|---|---|
| 100 | Continue |
| 101 | Switching Protocols |
| Код | Описание |
|---|---|
| 200 | OK |
| 201 | Created |
| 204 | No Content |
| Код | Описание |
|---|---|
| 301 | Moved Permanently |
| 302 | Found (временное перенаправление) |
| 304 | Not Modified |
| Код | Описание |
|---|---|
| 400 | Bad Request |
| 401 | Unauthorized |
| 403 | Forbidden |
| 404 | Not Found |
| 429 | Too Many Requests |
| Код | Описание |
|---|---|
| 500 | Internal Server Error |
| 502 | Bad Gateway |
| 503 | Service Unavailable |
| 504 | Gateway Timeout |
# Проверить доступность
ping google.com
# С ограничением количества пакетов
ping -c 4 google.com
# Трассировка маршрута
traceroute google.com
# Простой запрос A записи
nslookup google.com
# Детальная информация
dig google.com
# Запрос конкретного типа записи
dig google.com MX
dig google.com AAAA
# Проверить открытые порты
netstat -tuln
# Проверить конкретный порт
nc -zv google.com 443
# Сканирование портов (nmap)
nmap -p 80,443 example.com
# GET запрос
curl https://api.example.com/users
# POST запрос с данными
curl -X POST https://api.example.com/users \
-H "Content-Type: application/json" \
-d '{"name":"John","email":"john@example.com"}'
# С заголовками
curl -H "Authorization: Bearer token" \
https://api.example.com/profile
| Утилита | Назначение |
|---|---|
ping |
Проверка доступности хоста (ICMP) |
traceroute |
Отслеживание маршрута пакета |
nslookup |
DNS запросы |
dig |
Детальные DNS запросы |
whois |
Информация о домене |
netstat |
Сетевые подключения и порты |
ss |
Статистика сокетов |
tcpdump |
Захват сетевых пакетов |
wireshark |
Анализ сетевого трафика |
| Утилита | Назначение |
|---|---|
curl |
HTTP клиент для тестирования API |
wget |
Загрузка файлов по HTTP/FTP |
telnet |
Проверка доступности порта |
nc (netcat) |
Чтение/запись через сетевые соединения |
nmap |
Сканирование портов и сетей |
iperf |
Тестирование пропускной способности |