Маршрутизация является одной из важнейших операций в объединенных сетях IP. Маршрутизацией называется процесс построения, сравнения и выбора маршрута в сети к произвольному IP-адресу. Устройства, выполняющие эти функции, называют маршрутизаторами. Основные функции маршрутизаторов следующие:
· обмен информации о локально подключенных хостах и сетях;
· сравнение альтернативных путей;
· согласование топологии сети.
Маршрутизаторы выполняют свои функции в двух режимах: либо используют заранее запрограммированные статические маршруты, либо строят маршруты с использованием протоколов динамической маршрутизации.
В свою очередь, протоколы динамической маршрутизации делятся на две категории: дистанционно-векторные и топологические протоколы. Основные различия между ними в алгоритмах поиска и построения новых маршрутов.
Статическая маршрутизация основана на статических, заранее запрограммированных маршрутах. Преимущества статической маршрутизации заключаются:
· в повышении надежности сети;
· эффективном расходовании ресурсов;
· возможности применения для диагностики и временного разрешения проблем в сети;
· обеспечении безопасности сети.
Основными недостатками такого вида маршрутизации являются необходимость ручного изменения маршрутов в случае возникновения сбоев, увеличение ручной работы в случае возрастания объемов сети.
Дистанционно-векторная маршрутизация основана на алгоритмах Беллмана-Форда, согласно которым копии таблиц маршрутизации периодически передаются узлам, находящимся в непосредственном соседстве. Каждый получатель добавляет в таблицу значение дистанции и передает его своим непосредственным соседям. Процесс повторяется по всем направлениям и в результате каждый маршрутизатор получает сведения о других маршрутизаторах и накапливает информацию о соседях.
Недостатки дистанционно-векторной маршрутизации следующие:
· в случае сбоя или изменений в сети необходимо некоторое время на согласование, в течение которого сеть может быть перегружена;
· маршрутизатор ничего не знает о фактической топологии сети и других маршрутизаторах;
· периодически происходят рассылки информации о состоянии маршрутизаторов, что может загружать сеть.
Основным достоинством дистанционно-векторных протоколов является их простота. Эти протоколы эффективны в очень мелких сетях с минимальным количеством альтернативных путей и отсутствием жестких требований к производительности. Типичным представителем таким протоколов является протокол RIP (описан в документе RFC1058).
Алгоритмы топологической маршрутизации ведут сложную базу данных, описывающую топологию сети. В отличие от дистанционно-векторных протоколов, топологические протоколы располагают полной информацией о маршрутизаторах сети и о способах их соединения. Эта задача решается с использованием обмена сообщениями (LSA) с другими маршрутизаторами. Обмен такими сообщениями инициируется только событиями в сети, а не периодически, что существенно ускоряет распространение из
менений в сети. Топологическая маршрутизация обладает двумя существенными недостатками:
1) на стадии сбора первоначальной информации по сети передается большой объем информации, существенно снижая возможности сети по передаче данных;
2) топологическая маршрутизация требует больших затрат памяти и процессорных ресурсов.
Решаются эти проблемы посредством планирования и технического оснащения сети.
Топологическая маршрутизация приносит пользу в сетях любого размера, в хорошо спроектированной сети она позволяет корректно адаптировать к эффектам неожиданных топологических изменений. Применение механизма сообщений позволяет повысить эффективность передачи данных, что, в свою очередь, позволяет упростить масштабирование сети. Типичным представителем топологической маршрутизации является протокол OSPF (описание приведено в RFC2328).
При создании TCP/IP была выбрана иерархическая архитектура, позволяющая эффективно объединять различные сети. При пересылке между различными сетями дейтаграмма проходит через устройства, выполняющие маршрутизацию. Если адрес получателя совпадает с адресом локальной сети, то маршрутизатор передает дейтаграмму в сеть для доставки, иначе дейтаграмма пересылается следующему маршрутизатору в объединенной сети. В глобальных сетях используются многочисленные специальные устройства, предназначенные для выполнения маршрутизации. Они различаются по выполняемым функциям:
· шлюз (gateway) – компьютер, выполняющий преобразование протоколов. Шлюзы работают на уровнях модели OSI с 4 по 7 (например, шлюз электронной почты). Шлюзы очень часто выполняют преобразование нескольких протоколов в зависимости от сетевых подключений, например, также они могут выполнять шифрование/дешиф-рование данных;
· мост (bridge) – компьютер, соединяющий две сети и более, использующий один протокол. Мост работает на уровне 2 модели OSI и использует адреса канального уровня (а не адреса IP);
· маршрутизатор (router) – компьютер, пересылающий дейтаграммы в сети. Маршрутизаторы работают на уровне 3 модели OSI и дополнительно могут выполнять другие функции, например, преобразование сетевых адресов (NAT) или обеспечение безопасности.
Каждое из этих устройств, согласно своим функциям, выполняет передачу данных по объединенным сетям.