Концепции и принцип работы протокола EIGRP

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

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

EIGRP-соседи

EIGPR-соседи — это маршрутизаторы, в которых запущен процесс EIGRP-маршрутизации и которые подключены к одной и той же подсети. В протоколе EIGRP используются специальные тестовые сообщения, называемые Hello-сообщениями, для динамического обнаружения соседей. Такие сообщения рассылаются по зарезервированному multicast адресу — 224.0.0.10

Маршрутизатор выполняет некоторые базовые проверки параметров соседнего маршрутизатора перед тем, как включить его в свою таблицу соседей. Устройство считается потенциальным EIGRP-соседом в том случае, если от него получено Hello-сообщение. Получив сообщение, маршрутизатор проверяет следующие параметры:

  • Правильность аутентификации (пароль должен совпасть)
  • Совпадает ли номер автономной системы (AS number)
  • IP адрес устройства-отправителя Hello-сообщения должен находиться в той же самой подсети

Значения коэффициентов для расчета метрики (К-коэффициенты) должны совпадать у двух соседних устройств.

Проверить параметры достаточно просто. Если сконфигурирована аутентификация, то в обоих устройствах должен использоваться один и тот же тип аутентификации и один и тот же ключ (пароль). В конфигурации протокола EIGRP используется параметр, называемый номером автономной системы (autonomous system number — ASN), он также должен совпадать. И наконец, IP адрес отправителя Hello-сообщений, т.е адрес интерфейса, должен находиться в диапазоне адресов подсети интерфейса устройства-получателя.

Обмен топологической информацией в протоколе EIGRP

В протоколе EIGRP используются так называемые обновления маршрутов (update messages) для обмена топологической информацией. Такие сообщения рассылаются по broadcast адресу 224.0.0.10, если устройство передает информацию маршрутизаторам в той же самой подсети; если же обновление маршрутов передается устройству в другой подсети, то оно пересылается на unicast адрес конкретного маршрутизатора.

Обновления маршрутов пересылаются посредством надежного транспортного протокола(Reliable Transport ProtocolRTP). Самая важная функция этого протокола (как и в протоколе маршрутизации OSPF) — повторная пересылка маршрутной информации, если сообщение было потеряно. За счет использования механизма RTP в протоколе EIGRP уменьшается вероятность возникновения кольцевых маршрутов.

Не путайте протокол надежный транспортный протокол (RTP), с протоколом транспортировки данных в режиме реального времени (Real-time Transport Protocol — RTP) — используемый для передачи голоса и видео данных.

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

Расчет оптимальных маршрутов для таблицы маршрутизации

Метод расчета метрики — это одна из наиболее интересных особенностей протокола EIGRP (сетевой уровень). В данном протоколе маршрутизации используется композитная метрика, которая стандартно рассчитывается из полосы пропускания и задержки. В метрику также можно включить загрузку интерфейса и его надежность, но компания Cisco не рекомендует так поступать. Используя перечисленные значения, протокол EIGRP рассчитывает метрику для каждого возможного маршрута. Формула расчета метрики протокола EIGRP выглядит следующим образом.

Метрика = ((10000000/МПП) + K3) x 256

В приведенной формуле МПП — это минимальная полоса пропускания, т.е. минимальная полоса «самого медленного» канала на маршруте (в килобитах в секунду), К3 — кумулятивная задержка на маршруте. Например, если полоса пропускания самого низкоскоростного канала составляет 10 Мбит/с, то первое слагаемое в скобках будет равно 1000 (10000000/1000). Кумулятивная задержка представляет собой сумму задержек всех каналов на маршруте и измеряется в десятках микросекунд. Полосу пропускания и задержку для каждого из каналов можно указать с помощью команд bandwidth и delay соответственно в режиме конфигурирования интерфейса.

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

Оптимальное и анонсируемое расстояние маршрута
  • Оптимальное расстояние (Feasible Distance — FD) представляет собой метрику наилучшего маршрута к подсети, рассчитанной текущим маршрутизатором
  • Анонсируемое расстояние (Reported Distance — RD) — метрика маршрута к той же самой подсети от соседнего устройства, т.е. метрика, рассчитанная на основе информации, полученной от соседа в обновлении маршрутной информации
Конвергенция протокола EIGRP

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

Протокол EIGRP обнаруживает кольцевые маршруты, и происходит процесс их уничтожения за счет того, что каждое устройство хранит у себя некоторую базовую топологическую информация, а загрузка центрального процессора (CPU) устройства заметно снижается за счет того, что такая топологическая информация достаточно кратка. Когда маршрутизатор обнаруживает несколько маршрутов к одной и той же IP-подсети, он помещает только наилучший маршрут в таблицу маршрутизации. Топологическая информация о сети нужна протоколу EIGRP для того же, для чего она нужна протоколу маршрутизации OSPF: чтобы после изменения топологии отреагировать на изменение как можно быстрее и использовать новый маршрут, а также избежать возникновения кольцевых (циклических) маршрутов в сети. Фактически протокол маршрутизации EIGRP хранит записи о следующих транзитных маршрутизаторах и некоторые детали маршрутов к ним, но не оперирует топологической информации о сети за ближайшими транзитными маршрутизаторами. Менее подробная информация о топологии сети не требует чего-то похожего на сложный алгоритм SPF, поэтому конвергенция происходит намного быстрее, требует меньше ресурсов и вероятность возникновения кольцевых маршрутов за счет этого уменьшается.

Оптимальный и резервный маршруты в протоколе EIGRP

Как и любой другой протокол маршрутизации, EIGRP рассчитывает метрики для всех маршрутов ко всем подсетям. Маршрут с наилучшей (минимальной) метрикой до какой-либо подсети называется оптимальным (successor), устройство устанавливает такой маршрут в таблицу маршрутизации. Метрику такого маршрута называют оптимальным расстоянием (feasible distance — FD).

К той же самой подсети может вести несколько маршрутов с метрикой, которая больше, чем FD; из таких маршрутов протокол EIGRP пытается выбрать некоторый резервный маршрут, который можно использовать мгновенно для передачи данных после пропадания основного. Для расчетов протокол EIGRP использует некоторый простой алгоритм, с помощью которого помечает резервные маршруты в топологической таблице, на которые будет происходить мгновенное переключение в случает отказа оптимального пути, а также генерирует отсутствие кольцевых маршрутов среди них. Такие альтернативные готовые к использованию маршруты называются резервными (feasible successor). Может ли маршрут использоваться в качестве резервного, определяется следующим правилом. Если расстояние RD для не оптимального маршрута строго меньше, чем FD, такой маршрут будет резервным.

Понять принцип выбора резервного маршрута нам поможет схема сети, представленная ниже. На ней проиллюстрировано, как протокол eigrp выбирает резервные маршруты к подсети 1. В данной сети маршрутизатор Д обнаруживает три маршрута к подсети 1: маршруты через маршрутизаторы Б, В и Г. После того как на основании полосы пропускания и задержки рассчитаны метрики маршрутов для маршрутизатора Д и учтены метрики, полученные в обновлениях маршрутной информации, маршрутизатор Д выбирает маршрут через устройство Г (поскольку у него минимальная метрика) и устанавливает его в таблицу маршрутизации. Рассчитанное значение FD (оптимальная метрика) для этого маршрута равно 14000.

Протокол маршрутизации EIGRP определяет, может ли маршрут быть резервным, на основании метрики к подсети, анонсированной соседом (т.е. анонсируемого расстояния — RD); такая метрика должна быть меньше, чем метрика оптимального маршрута к подсети для данного маршрутизатора (т.е. меньше оптимального расстояния — FD). Если анонсируемая соседним маршрутизатором метрика пути к подсети меньше, чем оптимальная для текущего устройства, то говорят, что для маршрута выполняется условие резервирования (feasibility condition). В нашем примере маршрутизатор Д рассчитал метрику оптимального маршрута (FD) и получил число, равное 14 000 (через маршрутизатор Г). Рассчитанная маршрутизатором В метрика — анонсируемое расстояние маршрута к подсети — (13 000) меньше, чем оптимальное расстояние (14 000). Следовательно, маршрутизатор Д в такой топологии сети по метрики определяет, что маршрут к рассматриваемой подсети для маршрутизатора В не указывает на устройство Д, поэтому в случае пропадания основного маршрута можно переключиться на резервный (через маршрутизатор В), не рискуя получить кольцевой маршрут. После таких расчетов маршрутизатор Д маркирует маршрут через маршрутизатор В в своей топологической таблице как резервный (successor route). Аналогичные расчеты выполняются и для маршрутизатора Б, анонсируемое расстояние до той же самой подсети для которого равно 15 000. Это значение больше оптимального расстояния для устройства Д (14 000), следовательно такой маршрут нельзя использовать в качестве резервного.

Процесс запросов и ответов

Если к какой-либо подсети пропадает маршрут и для него нет резервного (feasible successor), то в протоколе EIGRP запускается специализированный алгоритм, называемый алгоритмом распределенных обновлений (Diffusing Update Algorithm — DUAL). Задача такого алгоритма — разослать запросы соседним устройствам, чтобы обнаружить маршрут к подсети и гарантировать отсутствие петель в маршрутизации. Когда такой маршрут обнаружен, алгоритм DUAL добавляет его в таблицу маршрутизации. Процесс DUAL использует специальный механизм обмена сообщениями, чтобы установить, существует ли альтернативный маршрут, убедиться в том, что такой маршрут не будет создавать маршрутных петель, и заменить нерабочий маршрут в таблице маршрутизации новым. Обратимся к рассматриваемой выше схеме. Представим, что два маршрутизатора В и Г, отказали. У маршрутизатора Д в таком случает не будет резервного (feasible successor) маршрута к подсети 1, но зато в сети есть вполне очевидный путь через маршрутизатор Б. Чтобы использовать этот маршрут, устройство Д сначала должно послать запрос (query) всем соседним устройствам (в данном случае маршрутизатору Б). Маршрут устройства Б к подсети 1 является корректным, поэтому маршрутизатор Б ответит специализированным сообщением-ответом (reply), содержащим информацию о маршруте и подтверждающим его работоспособность. Маршрутизатор Д после этого добавит новый маршрут к подсети 1 в свою таблицу маршрутизации.

Замена отказавшего маршрута резервным (feasible successor) происходит очень быстро и обычно длится 1-2 секунды. Когда же используется механизм запросов и ответов, конвергенция сети может продолжаться дольше, в большинстве сетей время конвергенции обычно составляет порядка 10 секунд.

Резюме по протоколу EIGRP и его сравнение с протоколом OSPF

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



Comments

  1. By Станислав

    Ответить

  2. By admin

    Ответить

  3. By Сергей

    Ответить

  4. By Пётр

    Ответить

  5. By Роман

    Ответить

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Можно использовать следующие HTML-теги и атрибуты: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>