Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Вычисл.машины,системы и сети АТПlast .doc
Скачиваний:
2
Добавлен:
01.05.2025
Размер:
17.31 Mб
Скачать

Типы алгоритмов

Алгоритмы маршрутизации могут быть классифицированы по типам. Например, алго­ритмы могут быть:

  • Одномаршрутными или многомаршрутными;

  • Одноуровневыми или иерархическими;

  • С интеллектом в главной вычислительной машине или в маршрутизаторе;

  • Внутридоменными и междоменными;

  • Алгоритмами состояния канала или вектора расстояний;

  • Статические или динамические алгоритмы.

Статические алгоритмы маршрутизации вообще вряд ли являются алгоритмами. Распределение статических таблиц маршрутизации устанавливается администратором сети до начала маршрутизации. Оно не меняется, если только администратор сети не изменит его. Алго­ритмы, использующие статические маршруты, просты для разработки и хорошо работают в окружениях, где трафик сети относительно предсказуем, а схема сети относительно проста. Статические таблицы маршрутизации применяются в основном в тех случаях, когда сетевой трафик заранее предопределен или когда топология сети относительно проста.

Динамические алгоритмы маршрутизации подстраиваются к изменяющимся обстоятельствам сети в масштабе реального времени. Они выполняют это путем анализа поступающих сообщений об обновлении маршрутизации. Если в сообщении указывается, что имело место изменение сети, программы маршрутизации пересчитывают маршруты и рассылают новые со­общения о корректировке маршрутизации. Такие сообщения пронизывают сеть, стимулируя маршрутизаторы заново прогонять свои алгоритмы и соответствующим образом изменять таблицы маршрутизации. Динамические алгоритмы маршрутизации могут дополнять стати­ческие маршруты там, где это уместно. Например, можно разработать «маршрутизатор по­следнего обращения» (т. е. маршрутизатор, в который отсылаются все неотправленные по оп­ределенному маршруту пакеты). Такой маршрутизатор играет роль хранилища неотправ­ленных пакетов, гарантируя, что все сообщения будут хотя бы определенным образом обра­ботаны.

Одномаршрутные или многомаршрутные алгоритмы

Некоторые сложные протоколы маршрутизации обеспечивают множество маршрутов к одному и тому же пункту назначения. Такие многомаршрутные алгоритмы делают возможной мультиплексную передачу трафика по многочисленным линиям; одномаршрутные алгоритмы не могут делать этого. Преимущества многомаршрутных алгоритмов очевидны – они могут обеспечить значительно большую пропускную способность и надежность.

Одноуровневые или иерархические алгоритмы

Некоторые алгоритмы маршрутизации оперируют в плоском пространстве, в то время как другие используют иерархии маршрутизации. В одноуровневой системе маршрутизации все маршрутизаторы равны по отношению друг к другу. В иерархической системе маршрутиза­ции некоторые маршрутизаторы формируют то, что составляет основу (backbone – базу) маршрутизации. Пакеты из небазовых маршрутизаторов перемещаются к базовым маршрутиза­торам и пропускаются через них до тех пор, пока не достигнут общей области пункта назна­чения. Начиная с этого момента, они перемещаются от последнего базового маршрутизатора через один или несколько небазовых маршрутизаторов до конечного пункта назначения.

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

Основным преимуществом иерархической маршрутизации является то, что она имитирует организацию большинства компаний и, следовательно, очень хорошо поддерживает их схемы трафика. Большая часть сетевой связи имеет место в пределах групп небольших компаний (доменов). Внутридоменным маршрутизаторам необходимо знать только о других маршрути­заторах в пределах своего домена, поэтому их алгоритмы маршрутизации могут быть упро­щенными. Соответственно может быть уменьшен и трафик обновления маршрутизации, зави­сящий от используемого алгоритма маршрутизации.

Алгоритмы с интеллектом в главной вычислительной машине или в маршрутизаторе

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

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

Компромисс между маршрутизацией с интеллектом в главной вычислительной машине и маршрутизацией с интеллектом в маршрутизаторе достигается путем сопоставления оптимальности маршрута с непроизводительными затратами трафика. Системы с интеллектом в главной вычислительной машине чаще выбирают наилучшие маршруты, т. к. они, как пра­вило, находят все возможные маршруты к пункту назначения прежде, чем пакет будет дейст­вительно отослан. Затем они выбирают наилучший маршрут, основываясь на определении оп­тимальности данной конкретной системы. Однако акт определения всех маршрутов часто требует значительного трафика поиска и большого объема времени.

Внутридоменные или междоменные алгоритмы

Некоторые алгоритмы маршрутизации действуют только в пределах доменов; другие – как в пределах доменов, так и между ними. Природа этих двух типов алгоритмов различна. По­этому понятно, что оптимальный алгоритм внутридоменной маршрутизации не обязательно будет оптимальным алгоритмом междоменной маршрутизации.

Основные алгоритмы динамической маршрутизации:

  • При использовании в качестве маршрутной метрики величины «количества путей» сущест­вуют два основных класса алгоритмов динамической маршрутизацииалгоритмы состояния канала LSA (Link State Algorithms);

  • алгоритмы векторов расстояний DVA (Distance Vector Algorithms).

LSA, называемый также алгоритмом «первый путь – самый короткий», направляет информацию о маршрутизации во все узлы сети. Однако каждый маршрутизатор посылает только ту часть таблицы маршрутизации, которая описывает состояние его каналов.

DVA, известный также как алгоритм Бэлмана-Форда (Bellmand-Ford), направляет всю таблицу маршрутиза­ции (или ее часть) только в соседние маршрутизаторы.

Из-за более быстрой сходимости в LSA меньше вероятность появления циклов, но вследствие сложности этот алгоритм требует больше вычислительных ресурсов и соответст­венно является более дорогим при реализации и сопровождении, чем DVA. Сети, исполь­зующие LSA, быстрее приспосабливаются к изменениям и более устойчивы, чем сети с ис­пользованием DVA.

Алгоритмы состояния каналов фактически направляют небольшие корректировки по всем направлениям, в то время как алгоритмы вектора расстояний отсылают более крупные корректировки только в соседние маршрутизаторы.

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

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

Решение о пересылке данных по определенному маршруту принимается на основании сведений о том, какие адреса сетей (или идентификаторы (коды) сетей) доступны в объединенной сети. Эти сведения содержатся в базе данных, называемой таблицей маршрутизации. Таблица маршрутизации представляет собой набор записей, называемых маршрутами, которые содер­жат информацию о расположении сетей с данными идентификаторами в объединенной сети. Таблицы маршрутизации могут существовать не только на маршрутизаторах. Узлы, не яв­ляющиеся маршрутизаторами, могут также вести свои таблицы маршрутизации для опреде­ления оптимальных маршрутов.