Маршрутизатор
Маршрутиза́тор (также ро́утер, или ру́тер, или ра́утер — от англ. router) — устройство для объединения пользователей локальной сети или Интернета, которое (на основании информации о сетевой топологии и определённых правил) принимает решения о пересылке пакетов сетевого уровня (уровень 3 модели OSI — то есть работает на более высоком уровне, нежели коммутатор или сетевой мост).
Принцип работы[править | править код]
Обычно маршрутизатор использует адрес получателя, указанный в пакетах данных, и определяет (по таблице маршрутизации) тот путь, по которому следует передать данные. Если же в таблице маршрутизации для этого адреса нету описанного маршрута, пакет отбрасывается.
Существуют и другие способы определения маршрута пересылки пакетов, когда, например, используется адрес отправителя, используемые протоколы верхних уровней и другая информация, содержащаяся в заголовках пакетов сетевого уровня. Нередко маршрутизаторы могут осуществлять трансляцию адресов отправителя и получателя, фильтрацию транзитного потока данных на основе определённых правил с целью ограничения доступа, шифрование/дешифрование передаваемых данных и т. д.
Все маршрутизаторы зависят от протокола. Они поддерживают протокол Сетевого уровня, который использует каждый пакет. Широкое распространение имеет протокол Сетевого уровня - InternetProtocol (IP, межсетевой протокол), он лежит в основе Интернета и большинства частных сетей. Компьютер, который присоединен к двум или более сетям, принято называть групповой системой или multihomedsystem ( на английском ).
Таблица маршрутизации[править | править код]
Таблица маршрутизации содержит информацию, на основе которой маршрутизатор принимает решение о дальнейшей пересылке пакетов. Таблица состоит из некоторого числа записей — маршрутов, в каждой из которых содержится адрес сети получателя, адрес следующего узла, которому следует передавать пакеты и некоторый вес записи — метрика. Метрики записей в таблице играют роль в вычислении кратчайших маршрутов к различным получателям. В зависимости от модели маршрутизатора и используемых протоколов маршрутизации, в таблице может содержаться некоторая дополнительная служебная информация. Например:
192.168.64.0/16 [110/49] via 192.168.1.2, 00:34:34, FastEthernet0/0.1 где 192.168.64.0/16 — сеть назначения, 110/- административное расстояние /49 — метрика маршрута, 192.168.1.2 — адрес следующего маршрутизатора, которому следует передавать пакеты для сети 192.168.64.0/16, 00:34:34 — время, в течение которого был известен этот маршрут, FastEthernet0/0.1 — интерфейс маршрутизатора, через который можно достичь «соседа» 192.168.1.2.
Таблица маршрутизации может составляться двумя способами:
- статическая маршрутизация — когда записи в таблице вводятся и изменяются вручную. Такой способ требует вмешательства администратора каждый раз, когда происходят изменения в топологии сети. С другой стороны, он является наиболее стабильным и требующим минимума аппаратных ресурсов маршрутизатора для обслуживания таблицы.
- динамическая маршрутизация — когда записи в таблице обновляются автоматически при помощи одного или нескольких протоколов маршрутизации — RIP, OSPF, IGRP, EIGRP, IS-IS, BGP, и др. Кроме того, маршрутизатор строит таблицу оптимальных путей к сетям назначения на основе различных критериев — количества промежуточных узлов, пропускной способности каналов, задержки передачи данных и т. п. Критерии вычисления оптимальных маршрутов чаще всего зависят от протокола маршрутизации, а также задаются конфигурацией маршрутизатора. Такой способ построения таблицы позволяет автоматически держать таблицу маршрутизации в актуальном состоянии и вычислять оптимальные маршруты на основе текущей топологии сети. Однако динамическая маршрутизация оказывает дополнительную нагрузку на устройства, а высокая нестабильность сети может приводить к ситуациям, когда маршрутизаторы не успевают синхронизировать свои таблицы, что приводит к противоречивым сведениям о топологии сети в различных её частях и потере передаваемых данных.
Зачастую для построения таблиц маршрутизации используют теорию графов.
Применение[править | править код]
Маршрутизаторы помогают уменьшить загрузку сети, благодаря её разделению на домены коллизий и широковещательные домены, а также благодаря фильтрации пакетов. В основном их применяют для объединения сетей разных типов, зачастую несовместимых по архитектуре и протоколам, например для объединения локальных сетей Ethernet и WAN-соединений, использующих протоколы xDSL, PPP, ATM, Frame relay и т. д. Нередко маршрутизатор используется для обеспечения доступа из локальной сети в глобальную сеть Интернет, осуществляя функции трансляции адресов и межсетевого экрана.
В качестве маршрутизатора может выступать как специализированное (аппаратное) устройство (характерные представители Cisco, Juniper), так и обычный компьютер, выполняющий функции маршрутизатора. Существует несколько пакетов программного обеспечения (в большинстве случаев на основе ядра Linux) с помощью которого можно превратить ПК в высокопроизводительный и многофункциональный маршрутизатор, например GNU Zebra.
См. также[править | править код]
Ссылки[править | править код]
- Как работают маршрутизаторы (русск.)
- Маршрутизаторы (русск.)
Литература[править | править код]
- Аллан Леинванд, Брюс Пински Конфигурирование маршрутизаторов Cisco = Cisco Router Configuration . — 2-е изд. — М.: «Вильямс», 2001. — С. 368. — ISBN 1-57870-241-0о книге