Протокол IP : Протокол EIGRP

Введение в EIGRP

5 апреля 2016 - Машинный перевод
Другие версии: PDF-версия:pdf | Перевод, выполненный профессиональным переводчиком (20 мая 2008) | Английский (22 августа 2015) | Отзыв


Содержание


Введение

Настоящий документ содержит общие сведения о протоколе внутренней маршрутизации между шлюзами (Interior Gateway Routing Protocol – IGRP), в состав которого входят протоколы маршрутизации, спроектированные и разработанные компанией Cisco Systems. Этот документ нужно использовать только как информационный, назначением которого является введение в технологию, но не перечисление технических характеристик протокола или описание продукта.

Предварительные условия

Требования

Для этого документа отсутствуют особые требования.

Используемые компоненты

Настоящий документ не имеет жесткой привязки к каким-либо конкретным версиям программного обеспечения и оборудования.

Условные обозначения

Дополнительные сведения об условных обозначениях см. в документе Условные обозначения технических терминов Cisco.

Что такое IGRP?

IGRP используется в Интернет-подключениях TCP/IP и OSI. Первая IP-версия была разработана и успешно внедрена в 1986 году. Эта версия протокола называется IGP (протокол внутренних шлюзов), однако она широко применялась в качестве протокола внешних шлюзов (Exterior Gateway Protocol – EGP) для междоменной маршрутизации. В протоколе IGRP используется метод дистанционно-векторной маршрутизации. Суть этого метода заключается в том, что каждому маршрутизатору не обязательно знать обо всех связях "маршрутизатор-канал" в масштабах всей сети. Каждый маршрутизатор объявляет пункты назначения с указанием соответствующего расстояния. Каждый маршрутизатор, получающий информацию, корректирует расстояние и передает ее соседним маршрутизаторам.

Сведения о расстоянии представлены в IGRP в виде комбинации таких показателей, как доступная полоса пропускания, задержка, использование нагрузки и надежность канала. Благодаря этому можно точно настраивать характеристики канала для получения оптимальных путей.

Что такое EIGRP?

Протокол EIGRP является улучшенной версией протокола IGRP. В EIGPR используется такая технология вектора расстояния, что и в IGPR, и основные данные о расстоянии остаются неизменными. Свойства сходимости и операционная эффективность этого протокола существенно улучшены. Это позволяет усовершенствовать архитектуру, сохранив текущие вложения в IGRP.

Технология схождения основана на исследовании, проведенном компанией SRI International. Алгоритм диффузионного обновления (DUAL) позволяет обеспечить отсутствие петель в любой момент времени на протяжении всего процесса расчета маршрута. Благодаря этому при изменении топологии все задействованные маршрутизаторы синхронизируются одновременно. Маршрутизатор, не затронутые изменениями топологии, не включены в перерасчет. Время сходимости с DUAL соизмеримо с любым другим протоколом маршрутизации.

EIGRP был расширен и стал независимым от протокола сетевого уровня, поэтому DUAL может поддерживать другие наборы протоколов.

Как работает EIGRP?

У EIGRP четыре основных компонента:

  • Обнаружение/восстановление соседей

  • Надежный транспортный протокол

  • Блок конечных состояний алгоритма DUAL

  • Зависимые от протокола модули

Обнаружение/восстановление соседей – это процесс, используемый маршрутизаторами для динамического распознавания других маршрутизаторов в сетях, к которым они непосредственно подключены. Маршрутизаторы должны определять доступность и исправность своего окружения. Этот процесс реализуется с небольшими издержками путем периодической отправки маленьких пакетов приветствия. Пока приходят пакеты приветствия, маршрутизатор может определить, что сосед активен и функционирует. Когда это определено, соседние маршрутизаторы могут обмениваться данными маршрутизации.

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

Блок конечных состояний DUAL объединяет процесс принятия решения для всех расчетов маршрута. Она отслеживает все маршруты, объявленные соседними устройствами. Сведения о расстоянии, или метрика, используются DUAL для выбора кратчайшего пути без петель. DUAL выбирает маршруты, которые нужно поместить в таблицу маршрутизации на основе вероятных наследников. Преемник – соседний маршрутизатор, используемый для пересылки пакетов с наименее затратным путем к адресату, гарантированно не входящим в циклы маршрутизации. Если вероятные заместители отсутствуют, но при этом имеются соседи, объявляющие требуемый пункт назначения, обязательно происходит перерасчет маршрута. В ходе этой процедуры определяется новый заместитель. Время пересчета маршрутов влияет на время сходимости. Даже если повторные вычисления не требуют интенсивной работы процессора, выгодно избежать повторных вычислений, если они не являются необходимыми. Когда происходит изменение топологии, DUAL проводит проверку на наличие вероятных наследников. Если вероятных заместителей нет, тогда алгоритм будет использовать любой маршрутизатор, чтобы избежать ненужных перерасчетов. Подробные сведения о возможных преемниках приведены ниже в данном документе.

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

Общее представление о протоколе EIGRP

В данном разделе представлено более подробное описание реализации протокола EIGRP. Здесь обсуждаются структура данных и принципы работы алгоритма DUAL.

Таблица соседей

Каждый маршрутизатор хранит информацию о состоянии его ближайших соседей. Когда исследуются вновь обнаруженные соседние узлы, регистрируются их адреса и интерфейсы. Эта информация хранится в структуре данных соседей. Таблица соседей хранит эти элементы. Для каждого модуля, зависящего от протокола, существует одна таблица соседей. При отправке hello-пакета сосед объявляет время удержания. HoldTime (время удержания) – это время, в течение которого маршрутизатор считает соседа доступным и действующим. Другими словами, если в течение времени удержания пакет приветствия не был воспринят, тогда время удержания истекает. По истечении HoldTime DUAL будет проинформирован об изменении топологии.

Запись таблицы соседей также включает информацию, необходимую для надежного механизма переноса. Для сопоставления подтверждений приема с пакетами данных используются порядковые номера. Последний порядковый номер, полученный от соседа, записывается, чтобы можно было выявить поврежденные пакеты. Список передачи используется для создания очереди пакетов для возможной повторной передачи соседним узлам. Таймеры приема-передачи сигнала находятся в соседней структуре данных, они служат для оценки оптимального интервала повторной передачи.

Таблица топологии

Таблица топологии заполнена протоколозависимыми модулями и испытывает влияние конечного автомата DUAL. Она содержит все конечные адреса, объявленные соседними маршрутизаторами. Связь с каждой записью – адрес назначения и список соседей, информирующий о пункте назначения. Для каждого соседнего устройства записывается объявленная метрика. Эта метрика хранится в таблице маршрутизации соседнего устройства. Если соседний узел объявляет этот адрес назначения, он должен использовать маршрут для переадресации пакетов. Это важное правило, которому должны следовать протоколы вектора расстояния.

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

Подходящие преемники

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

Подходящие преемники рассматриваются маршрутизатором как соседи, которые находятся в нисходящем окружении относительно адреса назначения. Эти соседи и связанные метрики помещаются в таблицу пересылки.

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

Состояния маршрутов

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

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

Когда связь с соседним узлом, который является единственным подходящим преемником, прерывается, начинается перерасчет всех маршрутов, проходящих через этот соседний узел, и все они переходят в активное состояние.

Форматы пакетов

В протоколе EIGRP используется пять типов пакетов:

  • Hello/Acks

  • Обновления

  • Запросы

  • Ответы

  • Запросы

Как говорилось ранее, приветствия являются многоадресными для восстановления и обнаружения соседей. Они не требуют подтверждения. Приветственный пакет без данных также используется в качестве подтверждения (ack). Пакеты подтверждения всегда отправляются на индивидуальный адрес и имеют номер подтверждения больше нуля.

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

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

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

Маркировка маршрута

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

Внешние маршруты снабжаются следующими маркерами:

  • Идентификатор маршрутизатора EIGRP, которые перераспределил этот маршрут.

  • Номер AS, где находится расположение.

  • Настраиваемый тег администратора.

  • Идентификатор внешнего протокола.

  • Метрика из внешнего протокола.

  • Биты флагов для маршрута по умолчанию.

В качестве примера предположим, имеется AS с тремя граничными маршрутизаторами. Пограничный маршрутизатор – это маршрутизатор, работающий более чем по одному протоколу маршрутизации. В качестве протокола маршрутизации наша система AS использует протокол EIGRP. Предположим, два из граничных маршрутизаторов BR1 и BR2 используют первоочередное открытие кратчайших маршрутов (OSPF), а другие, BR3, используют протокол информации маршрутизации (RIP).

Маршруты, полученные одним из граничных маршрутизаторов OSPF, BR1, могут быть условно перераспределены в EIGRP. Это означает, что EIGRP, работающий на BR1, объявляет маршруты OSPF в пределах собственной AS. Тем самым данный маршрутизатор объявляет маршрут и маркирует его как маршрут, полученный от протокола OSPF и имеющий метрику, равную метрике маршрутной таблицы OSPF-маршрута. Идентификатор маршрутизатора устанавливается как BR1. Маршрут EIGRP распространяется на другие граничные маршрутизаторы. Допустим, BR3, пограничный маршрутизатор RIP, также передает те же адреса назначения, что и BR1. Поэтому BR3 перераспределяет маршруты RIP в EIGRP AS. Тогда BR2 получает достаточно информации, чтобы определить точку входа AS для маршрута, изначально использованный протокол маршрутизации и метрику. Далее, сетевой администратор может присвоить значения меток определенным назначениям при перераспределении маршрута. BR2 может использовать любые из этих сведений для выбора маршрута или извещения о нем на OSPF.

Использование EIGRP-тегирования маршрута может предоставить в распоряжение администратора сети гибкие правила управления политиками и может помочь настроить маршрутизацию. Маркировка маршрута особенно полезна на транзитных AS, где EIGRP обычно взаимодействует с протоколом междоменной маршрутизации, в котором применяется больше глобальных политик. Это создает масштабируемую маршрутизацию на основе политики.

Режим совместимости

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

В EIGRP используется механизм автоматического перераспределения. Благодаря этому механизму маршруты IGRP можно импортировать в EIGRP и наоборот. Поскольку для метрик обоих протоколов используется прямое преобразование, эти метрики легко поддаются сравнению, как если бы они были маршрутами, которые были созданы в своих собственных системах AS. Кроме того, маршруты IGRP обрабатываются как внешние маршруты в EIGRP, так что возможности маркировки доступны для пользовательской настройки.

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

Пример DUAL

На следующей сетевой диаграмме изображена сходимость DUAL. Данный пример сосредоточен только на назначении N. Каждый узел показывает свои затраты до пункта N, выраженную количеством сегментов. Данная стрелка указывает на заместителя данного узла. Например, С использует А, чтобы достичь Н, и затраты составляют 2.

/image/gif/paws/13669/1a.gif

Если связь между А и В потеряна, то В отправляет своим соседям запрос, сообщающий о потере возможного преемника. D получает этот запрос и смотрит, может ли он предложить каких-либо других вероятных заместителей. Если нет, он должен начать вычисление маршрута и перейти в активное состояние. Однако в данном случае C является допустимым приемником, поскольку его нагрузка (2) меньше, чем текущая нагрузка D (3) к назначению N. D может переключиться на C в качестве преемника. Следует учесть, что A и C не участвовали, так как изменение на них не повлияло.

Вызовем функцию вычисления маршрута. В этом сценарии предположим отказ канала между A и C. C определяет, что он потерял своего наследника, и других подходящих наследников нет. Устройство D не рассматривается в качестве вероятного наследника, так как его объявленная метрика (3) больше текущей стоимости устройства достижение точки назначения N для устройства C (2). Устройство C должно выполнить расчет маршрута до точки назначения N. Устройство C отправляет запрос своему единственному соседу – D. Устройство D отвечает на запрос, так как его преемник не изменился. От D не требуется производить вычисление маршрута. Когда C получает ответ, это знает, что все соседние узлы обработали новости о сбое к N. На этом этапе C может выбрать своего нового возможного преемника Д со стоимостью (4) для достижения назначения Н. Обратите внимание на то, что A и B были незатронутыми изменением топологии, и D должен был просто ответить на C.

Вопросы и ответы

Настройка EIGRP настолько же проста, как настройка IGRP?

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

Есть ли у меня возможности отладки, подобные IGRP?

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

Доступны ли в IP-EIGRP те же функции, что и в IP-IGRP?

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

Сколько ресурсов полосы пропускания и процессора используется для протокола EIGRP?

Проблема расходования пропускной способности была решена за счет введения частичных и инкрементных обновлений. Это означает, что передача информации осуществляется только в случае изменения топологии. Что касается загрузки процессора, то технология вероятных заместителей позволяет значительно уменьшить общую загрузку процессора системы AS. Это обеспечивается за счет того, что перерасчет маршрута выполняют только маршрутизаторы, которые были затронуты изменениями в топологии. Кроме того, перерасчет осуществляется только для маршрутов, которые были затронуты изменениями. При этом используются только те структуры данных, которые относятся к таким маршрутам. Это в значительной степени позволяет уменьшить время поиска при работе с комплексными структурами данных.

Поддерживает ли IP-EIGRP агрегирование и маски подсети переменной длины?

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

EIGRP поддерживает области?

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

Связанные обсуждения сообщества поддержки Cisco

В рамках сообщества поддержки Cisco можно задавать и отвечать на вопросы, обмениваться рекомендациями и совместно работать со своими коллегами.


Дополнительные сведения


Document ID: 13669