Сетевой уровень
Сетевой уровень (англ. Network Layer) — это третий уровень эталонной модели взаимодействия открытых систем (OSI), отвечающий за логическую адресацию устройств, маршрутизацию пакетов данных между различными сетями и обеспечение передачи данных от узла-отправителя к узлу-получателю через составную сеть. Сетевой уровень является ключевым для объединения множества локальных и глобальных сетей в единую структуру, такую как Интернет. В отличие от канального уровня (L2), который обеспечивает передачу данных в пределах одного сегмента сети (например, Ethernet), сетевой уровень (L3) работает с логическими адресами (IP-адресами) и принимает решения о наилучшем пути доставки пакетов через промежуточные маршрутизаторы.
Функции
Основные функции сетевого уровня включают логическую адресацию, маршрутизацию, фрагментацию и сборку пакетов, а также обработку ошибок.
Логическая адресация
Сетевой уровень присваивает каждому устройству в сети уникальный логический адрес (например, IPv4 или IPv6-адрес). В отличие от физических MAC-адресов, которые назначаются производителем оборудования, логические адреса являются иерархическими и позволяют объединять устройства в подсети. Это даёт возможность маршрутизаторам определять, в какую сеть следует направить пакет, не зная точного расположения каждого узла.
Маршрутизация
Маршрутизация — это процесс выбора оптимального пути для передачи пакета данных через сеть. Маршрутизаторы, работающие на сетевом уровне, анализируют заголовки пакетов, содержащие IP-адреса отправителя и получателя, и на основе таблиц маршрутизации принимают решение о следующем узле (хопе) на пути к цели. Таблицы маршрутизации могут быть статическими (задаются администратором вручную) или динамическими (обновляются автоматически с помощью протоколов маршрутизации, таких как OSPF, BGP или RIP).
Фрагментация и сборка
Различные сети могут иметь разные максимальные размеры передаваемых блоков данных (MTU). Сетевой уровень способен разбивать (фрагментировать) пакеты, превышающие MTU промежуточной сети, на более мелкие части. На стороне получателя эти фрагменты собираются обратно в исходный пакет. В протоколе IPv4 фрагментация может выполняться как на узле-отправителе, так и на промежуточных маршрутизаторах. В IPv6 фрагментация возлагается только на отправителя.
Обработка ошибок и диагностика
Сетевой уровень обеспечивает базовую диагностику соединений. Например, протокол ICMP (Internet Control Message Protocol) используется для передачи сообщений об ошибках (например, «узел недоступен» или «превышено время жизни пакета») и для утилит диагностики, таких как ping и traceroute.
Протоколы
На сетевом уровне работает несколько ключевых протоколов, наиболее известными из которых являются IP (Internet Protocol), ICMP, ARP (в некоторых моделях его относят к сетевому уровню), а также протоколы маршрутизации.
Internet Protocol (IP)
IP — основной протокол сетевого уровня в стеке TCP/IP. Он обеспечивает негарантированную доставку пакетов (best-effort delivery) без установления соединения. Существуют две версии:
- IPv4 — использует 32-битные адреса (около 4,3 миллиарда уникальных адресов). Из-за исчерпания адресного пространства широко применяется технология NAT (трансляция сетевых адресов).
- IPv6 — использует 128-битные адреса, что обеспечивает практически неограниченное количество адресов. Внедрение IPv6 активно продолжается в России и мире, особенно в мобильных сетях и новых дата-центрах.
ICMP (Internet Control Message Protocol)
ICMP используется для передачи служебных сообщений и диагностики сети. Типичные сообщения: Echo Request и Echo Reply (основа утилиты ping), Destination Unreachable (узел или сеть недоступны), Time Exceeded (превышено время жизни пакета). ICMPv6 является неотъемлемой частью IPv6 и выполняет функции, которые в IPv4 возлагались на ARP (обнаружение соседей).
Протоколы маршрутизации
Для автоматического построения таблиц маршрутизации используются протоколы, которые делятся на два основных типа:
- Дистанционно-векторные (Distance Vector) — например, RIP (Routing Information Protocol). Маршрутизаторы обмениваются информацией о расстоянии до сетей, измеряемом в хопах.
- Состояния каналов (Link State) — например, OSPF (Open Shortest Path First). Каждый маршрутизатор знает топологию всей сети и самостоятельно вычисляет кратчайшие пути.
- Протоколы внешней маршрутизации — например, BGP (Border Gateway Protocol), используемый для обмена маршрутной информацией между автономными системами (AS) в Интернете. BGP является ключевым для работы глобальной сети.
Устройства
Основными устройствами, работающими на сетевом уровне, являются маршрутизаторы (роутеры). Маршрутизатор анализирует IP-адрес получателя в заголовке пакета и, сверяясь с таблицей маршрутизации, определяет, на какой интерфейс и какому следующему маршрутизатору отправить пакет. В некоторых случаях функции сетевого уровня могут выполнять многоуровневые коммутаторы (L3-коммутаторы), которые совмещают скорость коммутации канального уровня с возможностями маршрутизации.
Сетевой уровень в модели OSI и стеке TCP/IP
В модели OSI сетевой уровень является третьим, располагаясь между канальным (L2) и транспортным (L4) уровнями. В практической модели TCP/IP, на которой построен Интернет, сетевой уровень соответствует уровню Internet (межсетевому взаимодействию). В этой модели он отвечает за передачу дейтаграмм между любыми узлами сети, независимо от их физического расположения.
Особенности в России
В российских сетях и дата-центрах активно используются как IPv4, так и IPv6. Согласно данным Координационного центра доменов .RU/.РФ, доля IPv6-трафика в России постепенно растёт, особенно в сетях крупных операторов связи (например, «Ростелеком», МТС). В государственных информационных системах и в рамках программы «Цифровая экономика» стимулируется переход на IPv6. Маршрутизация внутри российского сегмента Интернета осуществляется в том числе с использованием BGP, причём российские автономные системы зарегистрированы в глобальной базе данных RIPE NCC.
Критика и ограничения
Основные недостатки сетевого уровня связаны с протоколом IPv4: ограниченное адресное пространство и сложность конфигурации (необходимость DHCP или ручного назначения адресов). IPv6 решает эти проблемы, но его внедрение сдерживается необходимостью модернизации оборудования и программного обеспечения. Кроме того, маршрутизация в глобальном масштабе (особенно с использованием BGP) уязвима для атак типа hijacking (угон маршрутов), когда злоумышленник объявляет ложные префиксы и перехватывает трафик.
Источники
- Таненбаум Э., Уэзеролл Д. «Компьютерные сети» (5-е издание). — СПб.: Питер, 2012.
- Куроуз Дж., Росс К. «Компьютерные сети: нисходящий подход» (6-е издание). — М.: Эксмо, 2016.
- RFC 791 — Internet Protocol (IPv4).
- RFC 2460 — Internet Protocol, Version 6 (IPv6).
- RFC 792 — Internet Control Message Protocol (ICMP).
- RFC 4271 — A Border Gateway Protocol 4 (BGP-4).
- Материалы Координационного центра доменов .RU/.РФ о внедрении IPv6 в России (2020–2023).
BFOmetr — база данных и аналитика по компаниям России.
На главную BFOmetr →