Сделать домашней|Добавить в избранное
 

CCIENetLab - Подготовка к экзаменам
CCNA, CCNP и CCIE

 
» » Основы работы протокола EIGRP

Основы работы протокола EIGRP

Автор: Sauron от 8-06-2015, 13:50
EIGRP — усовершенствованный дистанционно-векторный протокол динамической маршрутизации, разработанный компанией Cisco. В хорошо спроектированной сети протокол EIGRP хорошо масштабируется и обеспечивает очень быстрое время конвергенции при минимальном сетевом трафике.

Основные характеристики EIGRP:
  • Быстрая сходимость (по сравнению с другими дистанционно-векторными протоколами)
  • Поддержка VLSM
  • Частичные обновления
  • Поддержка разных протоколов сетевого уровня
  • Одинаковые настройки протокола при использовании различных протоколов канального уровня (например, у OSPF настройки отличаются для Ethernet и Frame Relay)
  • Сложная метрика
  • Использование multicast (224.0.0.10) и unicast адресов, вместо широковещательной рассылки


Типичный дистанционно-векторный протокол сохраняет следующую информацию при вычислении лучшего пути к месту назначения: расстояние (суммарная метрика или расстояние, например, число переходов) и вектор (следующий переход).
Например, на всех маршрутизаторах в сети на рисунке ниже, работает Routing Information Protocol (RIP). Маршрутизатор R2 выбирает путь к сети A, исследуя количество хопов через каждый доступный путь.

Основы работы протокола EIGRP


Так путь через маршрутизатор R3 имеет три хопа, а путь через маршрутизатор R1 - два хопа, маршрутизатор R2 выбирает путь через R1 и отбрасывает информацию, которую он узнал через R3. Если путь между маршрутизатором R1 и сетью A упадет, маршрутизатор R2 потеряет связь с этим приёмником до истечения времени маршрута в таблице маршрутизации (три периода обновления, или 90 секунд), а маршрутизатор R3 повторно анонсирует маршрут (это происходит каждые 30 секунд в RIP). Для маршрутизатора R2 займет от 90 до 120 секунд до переключения пути от маршрутизатора R1 к маршрутизатору R3.

EIGRP, взамен полного периодического обновления, строит таблицу топологии от каждого из своих соседей (вместо отбрасывая данных), и сходится либо посредством поиска вероятного маршрута в таблице топологии без петель, или , если он не знает никакого другого маршрута, опрашивает своих соседей. Маршрутизатор R2 сохраняет информацию, полученную от обоих маршрутизаторов R1 и R3. Он выбирает путь через R1, как лучший путь (successor), и путь через R3, как возможный преемник (feasible successor). Когда путь через маршрутизатор R1 становится недоступным, маршрутизатор R2 исследует свою таблицу топологий и, находя feasible successor , сразу начинает использовать путь через R3.

Метрика.

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

Основы работы протокола EIGRP


EIGRP для расчёта метрики использует 5 K-values, которые являются лишь модификаторами (коэффициентами), и 4 значения метрики. Надёжность (reliability) и загрузка линка (load) являются динамическими параметрами, поэтому эти значения пересчитываются только при изменении в сети. K5 — это дополнительный коэффициент надёжности, и никакого отношения к MTU он не имеет!
Основы работы протокола EIGRP

Основы работы протокола EIGRP

Здесь:
- min_bandwidth — это пропускная способность наихудшего линка в kbps,
- total_delay — это сумма задержек всех линков в мкс (микросекунды).

Для изменения метрики обычно меняют delay, так как bandwidth влияет на QoS, кроме этого, изменение bandwidth не всегда меняет метрику (если наихудший линк не изменился).
K1-K5 это коэффициенты, которые служат для того, чтобы в формулу “включился” тот или иной параметр.
А если K5 = 0, то формула имеет такой вид:

Основы работы протокола EIGRP


На деле же из всех 4 возможных слагаемых формулы, по умолчанию используются только два: bw и delay (коэффициенты K1 и K3=1, остальные нулю), что сильно ее упрощает — мы просто складываем эти два числа (не забывая при этом, что они все равно считаются по своим формулам). Важно помнить следующее: метрика считается по худшему показателю пропускной способности по всей длине маршрута.

Каждый маршрут в EIGRP характеризуется двумя числами: Feasible Distance и Advertised Distance (вместо Advertised Distance иногда можно встретить Reported Distance, это одно и то же). Каждое из этих чисел представляет собой метрику, или стоимость (чем больше-тем хуже) данного маршрута с разных точек измерения: FD это “от меня до места назначения”, а AD- “от соседа, который мне рассказал об этом маршруте, до места назначения”.
У каждой подсети, о которой знает EIGRP, на каждом роутере существует Successor- роутер из числа соседей, через который идет лучший (с меньшей метрикой), по мнению протокола, маршрут к этой подсети. Кроме того, у подсети может также существовать один или несколько запасных маршрутов (роутер-сосед, через которого идет такой маршрут, называется Feasible Successor).

EIGRP- единственный протокол маршрутизации, запоминающий запасные маршруты (в OSPF они есть, но содержатся, так сказать, в “сыром виде” в таблице топологии- их еще надо обработать алгоритмом SPF), что дает ему плюс в быстродействии: как только протокол определяет, что основной маршрут (через successor) недоступен, он сразу переключается на запасной. Для того, чтобы роутер мог стать feasible successor для маршрута, его AD должно быть меньше FD successor’а этого маршрута (вот зачем нам нужно знать AD). Это правило применяется для того, чтобы избежать петель маршрутизации.
Feasibility Condition не всегда легко понять в первый раз. Но логика очень простая: если ты говоришь мне, что у тебя метрика больше, чем метрика моего лучшего пути, значит есть шанс, что твой путь проходит через меня, что в свою очередь означает петлю. Из-за этого часто очевидные для инженера «пути-без-петли» могут не рассматриваются протоколом как feasible successors. Помните, EIGRP не видит всей сети — а лишь то, что говорят соседи.


Соседство

Роутеры не разговаривают о маршрутах с кем попало — прежде чем начать обмениваться информацией, они должны установить отношения соседства. После включения процесса командой router eigrp с указанием номера автономной системы, мы, командой network говорим, какие интерфейсы будут участвовать и одновременно, информацию о каких сетях мы желаем распространять. Незамедлительно, через эти интерфейсы начинают рассылаться hello-пакеты на мультикаст- адрес 224.0.0.10 (по умолчанию каждые 5 секунд для ethernet). Все маршрутизаторы с включенным EIGRP получают эти пакеты, далее каждый маршрутизатор-получатель делает следующее:
  • сверяет адрес отправителя hello-пакета, с адресом интерфейса, из которого получен пакет, и удостоверяется, что они из одной подсети
  • сверяет значения полученных из пакета K-коэффициентов (проще говоря, какие переменные используются в подсчете метрики) со своими. Понятно, что если они различаются, то метрики для маршрутов будут считаться по разным правилам, что недопустимо
  • проверяет номер автономной системы
  • опционально: если настроена аутентификация, проверяет соответствие ее типа и ключей.


Таким образом, для того чтобы маршрутизаторы стали соседями должны выполняться такие условия:
  • маршрутизаторы должны пройти аутентификацию,
  • маршрутизаторы должны быть в одной AS,
  • отношения соседства должны устанавливаться на primary-адресах (когда приходит hello-пакет, маршрутизатор проверяет принадлежит ли адрес отправителя сети на primary-адресе интерфейса),
  • должны совпадать значения K-коэффициентов.

Для того чтобы маршрутизаторы стали EIGRP-соседями у них не обязаны совпадать Hello и Hold time. Маршрутизатор использует значения таймеров полученные от соседа. Если на одном из маршрутизаторов изменены Hello или Hold time, то соседи этого маршрутизатора будут использовать эти значения. Для того чтобы сам маршрутизатор использовал другие значения, необходимо изменить таймер на соответствующем интерфейсе соседа.

Если получателя все устраивает, он добавляет отправителя в список своих соседей, и посылает ему (уже юникастом) update-пакет, в котором содержится список всех известных ему маршрутов (aka full-update). Отправитель, получив такой пакет, в свою очередь, делает то же самое. Для обмена маршрутами EIGRP использует Reliable Transport Protocol (RTP, не путать с Real-time Transport Protocol, который используется в ip-телефонии), который подразумевает подтверждение о доставке, поэтому каждый из роутеров, получив update- пакет, отвечает ack -пакетом (сокращение от acknowledgement- подтверждение).
Итак, отношение соседства установлены, роутеры узнали друг у друга исчерпывающую информацию о маршрутах, что дальше? Дальше они будут продолжать посылать мультикаст hello-пакеты в подтверждение того, что они на связи, а в случае изменения топологии- update-пакеты, содержащие сведения только об изменениях (partial update)

Информация о всех обнаруженных соседях содержится в таблице соседей. Каждый процесс EIGRP обслуживает 3 таблицы:
  • Таблицу соседей (neighbor table), в которой содержится информация о “соседях”, т.е. других маршрутизаторах, непосредственно подключенных к текущему и участвующих в обмене маршрутами. Можно посмотреть с помощью команды show ip eigrp neighbors
  • Таблицу топологии сети (topology table), в которой содержится информация о маршрутах, полученная от соседей. Смотрим командой show ip eigrp topology
  • Таблицу маршрутизации (routing table), на основе которой роутер принимает решения о перенаправлении пакетов. Просмотр через show ip route


L2 Топология

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

Основы работы протокола EIGRP

Данная топология собрана в UNL, или вы можете использовать GNS, например. С помощью такой L2-топологии, можно собирать самые разнообразные логические L3-дизайны, такие как на следующем рисунке , просто перенастроив коммутаторы и маршрутизаторы. В физической топологии, мы имеем 6 маршрутизаторов, каждый и которых подключен к двум VIRL-коммутаторам SW1 и SW2. Коммутаторы работают vIOS-L2 от Cisco VIRL, а маршрутизаторы работают на IOL. Кроме того, каждый маршрутизатор подключен своим serial (S1/0 ) интерфейсом к Frame-Relay свичу. Frame-Relay свич - это обычный IOL маршрутизатор, который имеет только Serial интерфейсы и который сконфигурирован работать только как Frame Relay свитч.


Пример конфигурации EIGRP

Рассмотрим топологию на рисунке ниже:

Основы работы протокола EIGRP

Здесь роутер R1 связан с R2 через Frame Relay канал, а с R3 и R4 - через Ethernet каналы связи. Причем R2 и R4 имеют общую сеть 192.168.2.0/24 за своими интерфейсами.

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

router eigrp <AS>
  network <NETWORK> <reverse NETMASK>


Здесь AS - это номер автономной системы. Произвольное число, но одно должно быть одним и тем же на двух роутерах, чтобы они смогли сформировать соседство.
NETWORK и reverse NETMASK - это сеть и маска, которые описывают интерфейсы на которых мы хотим включить EIGRP или которые будут участвовать в EIGRP. Те интерфейсы, чьи адреса попдают в подсеть ограниченной NETWORK и NETMASK, будут участвовать в EIGRP процессе и маршрутизатор будет анносировать подсети, указанные на этих интерфейсах, своим соседям.


NETMASK - задется в реверсном виде. Т.е, например маска 255.255.255.0, должна быть задана как 0.0.0.255.

Пример конфигурации EIGRP для роутера R1
router eigrp 100
 network 150.1.1.0 0.0.0.255
 network 155.1.0.0 0.0.0.255
 network 155.1.1.0 0.0.0.255
 network 155.1.4.0 0.0.0.255
 no auto-summary


Мы видим из сетевой топологии, что R1 имеет три сетевых интерфейса в сетях 155.1.0.0/24, 155.1.1.0/24 и 155.1.4.0/24. Так же у R1 есть интерфейс Loopback0 с адресом 150.1.1.1/24. Поэтому мы указали все четыре сети в командах network, тем самым говоря, что все интерфейсы маршрутизатора будет участвовать в EIGRP. Если интерфейс в EIGRP не участвует, его линк не анонсируется.

Пример конфигурации EIGRP для роутера R2
router eigrp 100
 network 150.1.2.0 0.0.0.255
 network 155.1.0.0 0.0.0.255
 network 192.168.2.0
 no auto-summary
!


Аналогично, для маршрутизатора R2 мы объявляем три сети в команде network. Номер автономной системы EIGRP устанавливаем такой же как и на маршрутизаторе R1, чтобы они смогли сформировать соседство. Повторим туже самую операцию для маршрутизаторов R3 и R4

Если все сделано правильно, маршрутизаторы будут формировать EIGRP соседство друг с другом. Посмотреть которое можно с помощью команды show ip eigrp neighbors. Выполним ее на роутере R1

Основы работы протокола EIGRP

Здесь мы видим, что R1 держит три соседства - с маршрутизатором R2 через Frame Relay (interface s1/0.1), с маршрутизатором R4 и маршрутизатором R3 через Ethernet каналы.

Посмотрим на роутер R2

Основы работы протокола EIGRP

Маршрутизатор R2 держит соседство с R1 и R4.

Теперь все маршрутизаторы обмениваются между собой маршрутной информацией. Маршрутная информация протокола EIGRP которая будет используется для передачи трафика к месту назначения, можно посмотреть командой show ip route eigrp. Выполним ее на роутере R1

Основы работы протокола EIGRP


Здесь мы видим таблицу маршрутизации R1 протокола EIGRP. Символ D в начале каждой строки означает, что данный маршрут быт выучен протоколом EIGRP. Далее идет префикс маршрута (т.е адрес сети и маска). В квадратных скобочках указана административная дистанция и метрика. Административная дистанция внутренних маршрутов изученных по EIGRP всегда одинакова и составляет 90. Второе число - это метрика, вычисленная протоколом EIGRP по формулам выше. Далее идет адрес шлюза и имя интерфейса куда требуется направлять пакеты предназначенные для искомой сети.

Обратите внимание, что маршрут до сети 192.168.2.0/24 доступен через маршрутизатор R4. а не через R2. Хотя данная сеть находится за обеими маршрутизаторами. Метрика через R4 ниже, чем через R2, так как пропускная способность канала Frame Relay к R2 ниже чем канала Ethernet к R4. Поскольку метрика вычисляется на основе такого параметра как Bandwidth, то чем больше Bandwidth, тем меньше метрика, а это значит тем лучше.

Посмотрим на таблицу маршрутизации R2:

Основы работы протокола EIGRP

Аналогично, сети 192.168.1.0/24 доступна через R4, а не через R1, так как метрика через два Ethernet канала, оказывается лучше, чем метрика через один Frame Relay канал связи.

Остановимся чуть подробнее на вычислении маршрута к сети 192.168.2.0/24 на маршрутизаторе R1. С точки зрения R1, маршрутизатор R4 является Successor’ом для подсети 192.168.2.0/24. Как это получается ? Для того, чтобы достичь искомой сети, нужно проделать путь от R1 через Serial1/0.1 до R2 и далее через E0/0 маршрутизатора R2. Либо от R1 через Eth0/1 до R4 и далее через E0/0 маршрутизатора R4. Чтобы вычислить метрику, надо взять наименьший Bandwidth вдоль всего пути и сложить с общей задержкой на канале.
Посмотрим на интерфейсе Serial1/0.1 маршрутизатора R1. Для этого выполним команду show interface serial1/0.1:
Основы работы протокола EIGRP

Значение Bandwidth для этого интерфейса равно 1544 Kbit/sec, а параметр Delay равен 20000 usec. Теперь посмотрим на интерфейсе Ethernet0/1.
Основы работы протокола EIGRP

Для Ethernet канала, значение Bandwidth равно 10000 Kbit/sec, а парамтер Delay = 1000 usec. Параметры для Ethernet канала маршрутизаторов R2 и R4 - аналогичны параметрам Ethernet канала маршрутизатора R1. Поэтому для пути через R2 наименьший Bandwidth будет 1544 Кбит, и общая задержка составляет 20000 + 1000 = 21000 микросекунд. Для пути через R4 - наименьший Bandwidth равен 10000 Кбит и общий Delay = 1000+ 1000 = 2000 мкс. Теперь легко посчитать метрику через R2 и через R4. FD через R2 = (10^7/1544 + 2100)*256 = 2195456. FD через R4 равна 256 * (10^7/10000 + 200) = 307200.
Так как FD через R4 < R2, то R4 - это Successor, т.е подходящий для сети 192.168.2.0/24 и маршрут через R4 инсталлируется в роутинговую таблицу.
Посмотрим на таблицу топологий EIGRP для сети 192.168.2.0/24 на роутере R1, командой show ip eigrp topology 192.168.2.0/24

Основы работы протокола EIGRP

Все что мы вычислили ранее, можно наблюдать в таблице топологий. Здесь видно, что для этой сети имеется 1 Successor и FD у него 307200. Данный FD получен через роутер 155.1.4.4 (R4). Обратите внимание на композитную метрику (Composite metric). Первое число это наше FD (Feasible Distance), т.е то, что видит роутер R1. Так же указаны минимальный bandwidth и общая задержка вычисленные для пути через R4. Второе число в композитной метрике - это AD. В этой таблице мы видим, что R2 является Feasible Successor (FS). Чтобы стать FS для этой подсети, R2 требуется, чтобы его AD была меньше FD для этого маршрута. FD у нас = 307200. Но AD у R2 ( с его точки зрения - сколько ему стоит добраться до этой сети) = 256 * (10^7/10000 + 100) = 281600.
Все сходится, AD у R2 меньше, чем FD маршрута, он становится FS, т.е запасным.

Давйте представим, что R2 подключен к сети 192.168.2.0/24 не через FastEthernet, а через некий медленный канал связи с BW в 10 раз хуже и Delay в 10 раз больше, т.е задержка для которого составляет не 1000 мкс, а например 10000 usec и соответственно BW = 1000Kbit. Теперь добраться ему стоит 256 * (10^7/1000 + 1000) = 2816000. Это больше, чем FD для этого маршрута, поэтому R2 не станет Feasible Successor’ом. Но это не значит, что EIGRP вообще не будет использовать данный маршрут. Просто переключение на него займет больше времени (подробнее об этом в следующей статье).

В заключении посмотрим на таблицу маршрутизации R4:
Основы работы протокола EIGRP

Обратите внимание на сеть 155.1.0.0/24. Данная сеть доступна как через маршрутизатор R2, так и через маршрутизатор R1. Причем обе метрики одинаковы. В таблице маршрутизации R4 инсталлируется два маршрута к данной сети. Один через маршрутизатор R1, второй через маршрутизатор R2 и трафик будет балансироваться.

При подготовке были использованы материалы статей:
Особенности протокола маршрутизации EIGRP
Сети для самых маленьких
скачать dle 10.6фильмы бесплатно
Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь.
Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.

Комментарии:

Оставить комментарий
 

CCIENetLab (C)