Открыть сервисСервис

Маршрутизатор: принципы работы и устройство

Маршрутизатор (роутер) — сетевое устройство (или программное обеспечение), предназначенное для пересылки пакетов данных между различными компьютерными сетями на основе информации о маршрутах. Работает на третьем уровне модели OSI (сетевом уровне), в отличие от коммутаторов и хабов, которые оперируют на канальном уровне. Основная задача роутера — определить, куда направить полученный пакет, и передать его по оптимальному пути к конечному получателю.

Устройство и архитектура

Современный бытовой роутер объединяет в себе несколько функциональных блоков:

  • Процессор (CPU) — управляет обработкой пакетов, выполнением протоколов маршрутизации и обслуживанием интерфейсов.
  • Оперативная память (RAM) — хранит таблицы маршрутизации, ARP-кэш, буферы пакетов и загруженное прошивкой программное обеспечение.
  • Постоянная память (Flash) — содержит прошивку (прошивку операционной системы, часто на основе Linux или VxWorks).
  • Сетевые интерфейсы — физические порты (Ethernet, оптические SFP) и беспроводные модули Wi-Fi.
  • Коммутационная матрица — внутренняя шина, соединяющая интерфейсы и обеспечивающая пересылку пакетов между ними.

В корпоративных устройствах (например, линейки Cisco ISR, MikroTik RouterBOARD, Huawei AR) архитектура усложняется: используются отдельные процессоры для плоскости управления и плоскости пересылки, аппаратные ускорители криптографии и модули расширения.

Принцип работы

Приём и анализ пакета

Когда роутер получает пакет с одного из своих интерфейсов, он выполняет следующие действия:

  1. Проверка целостности — контрольная сумма заголовка (в IPv4) проверяется на корректность. Повреждённые пакеты отбрасываются.
  2. Уменьшение TTL — поле Time To Live (время жизни) в заголовке IP-пакета уменьшается на единицу. Если TTL становится равным нулю, пакет отбрасывается, а отправителю отправляется сообщение ICMP Time Exceeded. Это предотвращает бесконечное циркулирование пакетов в сети при наличии петель маршрутизации.
  3. Определение адреса назначения — роутер извлекает из заголовка IP-адрес получателя.

Поиск маршрута

На основе адреса назначения роутер обращается к таблице маршрутизации — списку известных сетей и соответствующих им следующих прыжков (next hop) и выходных интерфейсов. Таблица формируется несколькими способами:

  • Статическая маршрутизация — маршруты вносятся администратором вручную. Проста в настройке, но не адаптируется к изменениям топологии.
  • Динамическая маршрутизация — маршруты обучаются автоматически с помощью протоколов: RIP (Distance Vector), OSPF и IS-IS (Link State), BGP (Path Vector, используется в магистральных сетях и интернете).
  • Запасные (резервные) маршруты — используются при отказе основного канала.

Если подходящего маршрута нет, пакет отбрасывается, а отправителю отправляется ICMP-сообщение Destination Unreachable.

Пересылка

Определив выходной интерфейс и адрес следующего прыжка, роутер инкрементирует TTL, пересчитывает контрольную сумму заголовка и передаёт пакет на соответствующий интерфейс. Для передачи по локальной сети роутер обращается к ARP-кэшу, чтобы сопоставить IP-адрес следующего прыжка с MAC-адресом. Если записи нет, отправляется ARP-запрос.

Таблица маршрутизации

Типичная таблица маршрутизации (вывод команды ip route или show ip route) содержит записи вида:

Сеть назначенияМаска подсетиСледующий прыжокИнтерфейсМетрика
192.168.1.0255.255.255.0—eth00
10.0.0.0255.0.0.0192.168.1.1eth0100
0.0.0.00.0.0.0203.0.113.1eth120

При выборе маршрута используется принцип наиболее длинного совпадения префикса (Longest Prefix Match): если подходит несколько маршрутов, выбирается тот, у которого маска подсети длиннее (то есть сеть более специфична).

Дополнительные функции

Помимо базовой маршрутизации, современные роутеры выполняют:

  • NAT (Network Address Translation) — трансляцию внутренних IP-адресов в публичный адрес и обратно. В бытовых сетях применяется PAT (Port Address Translation), позволяющий множеству устройств использовать один внешний IP.
  • DHCP-сервер — автоматическую выдачу IP-адресов, маски, шлюза и DNS-серверов подключённым устройствам.
  • Брандмауэр (firewall) — фильтрацию трафика по правилам (IP-адреса, порты, протоколы).
  • QoS — приоритизацию трафика (например, голосовой трафик передаётся с высшим приоритетом).
  • VPN-сервер — построение защищённых туннелей (IPsec, OpenVPN, WireGuard).
  • Wi-Fi контроллер — управление беспроводными точками доступа.

Маршрутизация в домашних сетях

В типовой домашней сети роутер выполняет роль шлюза по умолчанию (default gateway). Устройства в локальной сети (192.168.1.0/24) направляют внешний трафик на адрес роутера, который выполняет NAT и пересылает пакеты провайдеру через WAN-интерфейс. Обратный трафик демонстрирует таблицу NAT, сопоставляющую внешние адреса и порты с внутренними.

Интересные факты

  • Термин «роутер» закрепился в обиходе благодаря компании Cisco Systems, выпустившей в 1986 году первый коммерческий маршрутизатор Cisco 7000.
  • В ядре Linux маршрутизация реализована средствами подсистемы Netfilter и утилитами iproute2; программные роутеры на базе Linux (например, на платформах MikroTik RouterOS) широко используются в качестве VPN-серверов и шлюзов.
  • Маршрутизаторы уровня оператора связи (например, Huawei NE, Juniper MX) способны обрабатывать сотни гигабит в секунду и поддерживают таблицы маршрутизации, содержащие более миллиона записей.

Источники:

  • Кьюси Р., Кларк Р., Кэссел К. «Компьютерные сети. Практический подход»
  • Таненбаум Э., Уэзеролл Д. «Компьютерные сети»
  • RFC 791 (IPv4), RFC 2460 (IPv6), RFC 1058 (RIP), RFC 2328 (OSPF)
  • Документация Cisco IOS, MikroTik RouterOS
Заметили ошибку или не согласны с информацией в статье? Напишите нам support@bfometr.ru