logo
Компьютерные коммуникации и сети

Маршрутизаторы

Согласно определению крупнейшего производителя маршрутизаторов компании Cisco маршрутизатор - это устройство третьего уровня, использующее одну и более метрик для определения оптимального пути передачи сетевого трафика на основе информации сетевого уровня. По существу маршрутизатор представляет собой компьютер с необходимым программным обеспечением и устройствами ввода/вывода. В простейшем случае маршрутизатор имеет два сетевых интерфейса.

Маршрутизатор обеспечивает маршрутизацию, т.е. доставку данных адресату, которую можно разбить на три. Во-первых, сбор информации о других маршрутизаторах и хостах в сети. Для этого маршрутизатор в целях определения маршрута использует тот или иной протокол маршрутизации. Во-вторых, он сохраняет полученную информацию о маршрутах в таблицах маршрутизации. В-третьих, маршрутизатор выбирает наилучший маршрут для каждого конкретного пакета, при этом он передает пакет со входного интерфейса на соответствующий выходной интерфейс. Данные функции он выполняет с помощью протоколов маршрутизации, в основе которых лежат алгоритмы маршрутизации.

Алгоритм маршрутизации - это часть программного обеспечения маршрутизатора, отвечающая за выбор выходной линии, на которую поступивший пакет должен быть передан. Алгоритмы маршрутизации можно разделить на две большие группы: неадаптивные (статические) и адаптивные (динамические). При использовании статических алгоритмов выбор маршрутов осуществляют заранее и прописывают их вручную в таблицу маршрутизации, где хранится информация о том, на какой интерфейс отправить пакет с соответствующей адресной информацией. При использовании динамических алгоритмов таблица маршрутизации меняется автоматически при изменении топологии сети или трафика в ней.

Динамические алгоритмы отличаются по способу получения информации (например, от соседних маршрутизаторов, от всех маршрутизаторов в сети и т.д.), моменту изменения маршрутов (через регулярные интервалы, при изменении топологии и т.п.) и используемой метрике (расстояние, число транзитных узлов и т.д.). Наиболее популярными алгоритмами маршрутизации являются два алгоритма: вектора расстояния и состояния канала.

При использовании алгоритма вектора расстояния каждый маршрутизатор ведет таблицу, т.е. вектор, с указанием кратчайшего расстояния и выходной линии для каждого адресата. В качестве метрики может использоваться также число транзитных узлов, время задержки, совокупная длина очередей и прочее. Таблица содержит информацию обо всех маршрутизаторах в сети. Периодически каждый маршрутизатор рассылает соседям свою таблицу. Одним из основных недостатков этого алгоритма является медленное распространение информации о недоступности той или иной линии или выходе того или иного маршрутизатора из строя. Данный алгоритм используется в таких протоколах, как RIP, IGRP и др.

В случае алгоритма состояния канала маршрутизатор собирает информацию о своих непосредственных соседях, измеряя задержку (пропускную способность). Вместо таблиц маршрутизации он осуществляет широковещательную рассылку информации только о своих непосредственных соседях, причем рассылка инициируется только при изменении информации. При получении изменений маршрутизатор определяет заново кратчайший путь до всех адресатов с помощью алгоритма Э. Дейкстры. Алгоритм состояния канала лежит в основе таких протоколов маршрутизации, как OSPF и IS-IS.

Маршрутизаторы могут поддерживать как один протокол сетевого уровня (например, IP, IPX или DECnet), так и множество таких протоколов. В последнем случае они называются многопротокольными маршрутизаторами. Чем больше протоколов сетевого уровня поддерживает маршрутизатор, тем лучше он подходит для корпоративной сети.

Большая вычислительная мощность позволяет маршрутизаторам наряду с основной работой по выбору оптимального маршрута выполнять и ряд вспомогательных высокоуровневых функций.