Основы маршрутизации.
Компоненты маршрутизации
Маршрутизация включает в себя два основных компонента: определение
оптимальных трактов маршрутизации и транспортировка информационых групп
(обычно называемых пакетами) через объединенную сеть. В настоящей работе
последний из этих двух компонентов называется коммутацией. Коммутация
относительно проста. С другой стороны, определение маршрута может быть
очень сложным процессом.
Коммутация
Алгоритмы коммутации сравнительно просты и в основном одинаковы для
большинства протоколов маршрутизации. В большинстве случаев главная
вычислительная машина определяет необходимость отправки пакета в другую
главную вычислительную машину. Получив определенным способом адрес
роутера, главная вычислительная машина-источник отправляет пакет,
адресованный специально в физический адрес роутера (уровень МАС), однако с
адресом протокола (сетевой уровень) главной вычислительной машины пункта
назначения.
После проверки адреса протокола пункта назначения пакета
роутер определяет, знает он или нет, как передать этот пакет к следующему
роутеру. Во втором случае (когда роутер не знает, как переслать пакет)
пакет, как правило, игнорируется. В первом случае роутер отсылает пакет к
следующей роутеру путем замены физического адреса пункта назначения на
физический адрес следующего роутера и последующей передачи пакета.
Следующая пересылка может быть или не быть главной вычислительной
машиной окончательного пункта назначения. Если нет,то следующей
пересылкой, как правило, является другой роутер, который выполняет такой
же процесс принятия решения о коммутации. По мере того, как пакет
продвигается через объединенную сеть, его физический адрес меняется,
однако адрес протокола остается неизменным. Этот процесс иллюстрируется на
Рис. 2-2.
В изложенном выше описании рассмотрена коммутация между
источником и системой конечного пункта назначения. Международная
Организация по Стандартизации (ISO) разработала иерархическую
терминологию, которая может быть полезной при описании этого процесса.
Если пользоваться этой терминологией, то устройства сети, не обладающие
способностью пересылать пакеты между подсетями, называются конечными
системами (ЕS), в то время как устройства сети, имеющие такую способность,
называются промежуточными системами (IS). Промежуточные системы далее
подразделяются на системы, которые могут сообщаться в пределах «доменов
маршрутизации» («внутридоменные» IS), и системы, которые могут сообщаться
как в пределах домена маршрутизации, так и с другими доменами
маршрутизации («междоменные IS»). Обычно считается, что «домен
маршрутизации» - это часть объединенной сети, находящейся под общим
административным управлением и регулируемой определенным набором
административных руководящих принципов. Домены маршрутизации называются
также «автономными системами» (AS). Для определенных протоколов домены
маршрутизации могут быть дополнительно подразделены на «участки
маршрутизации», однако для коммутации как внутри участков, так и между
ними также используются внутридоменные протоколы маршрутизации.
Алгоритмы маршрутизации
Алгоритмы
маршрутизации можно дифференцировать, основываясь на нескольких ключевых
характеристиках. Во-первых, на работу результирующего протокола
маршрутизации влияют конкретные задачи, которые решает разработчик
алгоритма. Во-вторых, существуют различные типы алгоритмов маршрутизации,
и каждый из них по-разному влияет на сеть и ресурсы маршрутизации. И
наконец, алгоритмы маршрутизации используют разнообразные показатели,
которые влияют на расчет оптимальных маршрутов. В следующих разделах
анализируются эти атрибуты алгоритмов маршрутизации.
Простота и
низкие непроизводительные затраты
Алгоритмы маршрутизации
разрабатываются как можно более простыми. Другими словами, алгоритм
маршрутизации должен эффективно обеспечивать свои функциональные
возможности, с мимимальными затратами программного обеспечения и
коэффициентом использования. Особенно важна эффективность в том случае,
когда программа, реализующая алгоритм маршрутизации, должна работать в
компьютере с ограниченными физическими ресурсами.
Типы
алгоритмов
Алгоритмы маршрутизации могут быть
классифицированы по типам. Например, алгоритмы могут быть:
1.
Статическими или динамическими
2. Одномаршрутными или многомаршрутными
3. Одноуровневыми или иерархическими
4. С интеллектом в главной
вычислительной машине или в роутере
5. Внутридоменными и междоменными
6. Алгоритмами состояния канала или вектора расстояний
Статические
или динамические алгоритмы
Статические алгоритмы маршрутизации вообще
вряд ли являются алгоритмами. Распределение статических таблиц
маршрутизации устанавливется администратором сети до начала маршрутизации.
Оно не меняется, если только администратор сети не изменит его. Алгоритмы,
использующие статические маршруты, просты для разработки и хорошо работают
в окружениях, где трафик сети относительно предсказуем, а схема сети
относительно проста.
Т.к. статические системы маршрутизации не могут
реагировать на изменения в сети, они, как правило, считаются непригодными
для современных крупных, постоянно изменяющихся сетей. Большинство
доминирующих алгоритмов маршрутизации 1990гг. - динамические.
Динамические алгоритмы маршрутизации подстраиваются к изменяющимся
обстоятельствам сети в масштабе реального времени. Они выполняют это путем
анализа поступающих сообщений об обновлении маршрутизации. Если в
сообщении указывается, что имело место изменение сети, программы
маршрутизации пересчитывают маршруты и рассылают новые сообщения о
корректировке маршрутизации. Такие сообщения пронизывают сеть, стимулируя
роутеры заново прогонять свои алгоритмы и соответствующим образом изменять
таблицы маршрутизации. Динамические алгоритмы маршрутизации могут
дополнять статические маршруты там, где это уместно. Например, можно
разработать «роутер последнего обращения» (т.е. роутер, в который
отсылаются все неотправленные по определенному маршруту пакеты). Такой
роутер выполняет роль хранилища неотправленных пакетов, гарантируя, что
все сообщения будут хотя бы определенным образом обработаны.
Алгоритмы состояния канала или вектора расстояния
Алгоритмы состояния канала (известные также как
алгоритмы «первоочередности наикратчайшего маршрута») направляют потоки
маршрутной информации во все узлы объединенной сети. Однако каждый роутер
посылает только ту часть маршрутной таблицы, которая описывает состояние
его собственных каналов. Алгоритмы вектора расстояния ( известные также
как алгоритмы Бэлмана-Форда) требуют от каждогo роутера посылки всей или
части своей маршрутной таблицы, но только своим соседям. Алгоритмы
состояния каналов фактически направляют небольшие корректировки по всем
направлениям, в то время как алгоритмы вектора расстояний отсылают более
крупные корректировки только в соседние роутеры.
Отличаясь более
быстрой сходимостью, алгоритмы состояния каналов несколько меньше склонны
к образованию петель маршрутизации, чем алгоритмы вектора расстояния. С
другой стороны, алгоритмы состояния канала характеризуются более сложными
расчетами в сравнении с алгоритмами вектора расстояний, требуя большей
процессорной мощности и памяти, чем алгоритмы вектора расстояний.
Вследствие этого, реализация и поддержка алгоритмов состояния канала может
быть более дорогостоящей. Несмотря на их различия, оба типа алгоритмов
хорошо функционируют при самых различных обстоятельствах.
Задержка
Под задержкой маршрутизации
обычно понимают отрезок времени, необходимый для передвижения пакета от
источника до пункта назначения через объединенную сеть. Задержка зависит
от многих факторов, включая полосу пропускания промежуточных каналов сети,
очереди в порт каждого роутера на пути передвижения пакета,
перегруженность сети на всех промежуточных каналах сети и физическое
расстояние, на которое необходимо переместить пакет. Т.к. здесь имеет
место конгломерация нескольких важных переменных, задержка является
наиболее общим и полезным показателем.
Полоса пропускания
Полоса пропускания относится к имеющейся мощности
трафика какого-либо канала. При прочих равных показателях, канал Ethernet
10 Mbps предпочтителен любой арендованной линии с полосой пропускания 64
Кбайт/сек. Хотя полоса пропускания является оценкой максимально достижимой
пропускной способности канала, маршруты, проходящие через каналы с большей
полосой пропускания, не обязательно будут лучше маршрутов, проходящих
через менее быстродействующие каналы.