ПРОТОКОЛ МАРШРУТИЗАЦИИ EIGRP | NetConfig

ПРОТОКОЛ МАРШРУТИЗАЦИИ EIGRP

ПРОТОКОЛ МАРШРУТИЗАЦИИ EIGRP

Протокол EIGRP (Enhanced Interior Gateway Routing Protocol) –был представлен в 1994 году, как усовершенствованная версия протокола маршрутизации IGRP (Interior Gateway Routing Protocol) , эти два протокола разработаны компанией Cisco. В отличие от протокола IGRP, который использует классовую маршрутизацию, протокол EIGRP поддерживает бесклассовую маршрутизацию CIDR (classless interdomain routing) и маски переменной длинны VLSM (variable-length subnet mask). От IGRP отличается более быстрой конвергенцией, повышенной масштабируемостью и более эффективной обработкой петель маршрутизации.Протокол EIGRP является дистанционно-векторным протоколом маршрутизации, хотя его еще называют гибридным, он сочетает в себе лучшие черты дистанционно-векторных алгоритмов и алгоритмов по состоянию канала.

Типы сообщений протокола EIGRP
Hello (пакеты приветствия) – эти пакеты используются для обнаружения соседей, их тестирования и повторного обнаружения в случае сбоя. Для отправки пакетов используется многоадресная рассылка muilticast-адрес 224.0.0.10.
Acknowledgment — пакеты, которые подтверждают получение пакетов update, query, reply. ACK-пакеты отправляются unicast и содержат в себе acknowledgment number.
Update (пакеты обновления маршрутов) – в этих пакетах содержится информация об изменении маршрутов. Эти пакеты могут быть отправлены конкретному маршрутизатору (unicast) или группе маршрутизаторов (multicast). Получение update-пакета подтверждается отправкой ACK.
Query (пакеты запросов) – эти пакеты используются когда маршрутизатор пересчитывает какой либо маршрут в сеть и у него нет резервного маршрута (feasible successor), он отправляет query запрос своим соседям, если у них еть етот маршрут, то они отвечают сообщением reply (ответ на запрос), если нет маршрута, то они направляют query запрос своим соседям. При получении пакета запроса (query) отправляют пакет ACK.
Reply (пакеты ответа на запросы) – маршрутизатор отправляет reply-пакет в ответ на полученный query-пакет. Reply-пакеты отправляются unicast тому маршрутизатору, который отправил query-пакет. Получение reply-пакета подтверждается отправкой ACK.

Для гарантии получения отправленных сообщений EIGRP использует фирменный протокол гарантии доставки – RTP.
RTP обеспечивает гарантированную доставку пакетов. Для этого используется проприетарный алгоритм Cisco, reliable multicast. Пакеты отправляются на muilticast-адрес 224.0.0.10. Каждый сосед получивший такой пакет отправляет подтверждение отправителю пакета. Сохранение порядка пакетов. В каждом пакете используется два номера последовательности (sequence). Каждый пакет включает в себя номер присвоенный ему отправителем. Этот номер увеличивается на единицу каждый раз, когда маршрутизатор отправляет новый пакет. Кроме того, отправитель помещает в пакет номер, последнего полученного пакета от получателя.

ТАБЛИЦА СОСЕДНИХ УСТРОЙСТВ.
Таблица соседних устройств (neighbor table) – является важной таблицей в протоколе EIGRP. Каждый маршрутизатор EIGRP поддерживает свою таблицу соседних устройств, в которой перечислены непосредственно подключенные маршрутизаторы. Для установления отношений соседства EIGRP использует пакеты hello. По умолчанию на ethernet-интерфейсах и point-to-point интерфейсах hello-пакеты отправляются каждые 5 секунд, но с небольшим случайным отклонением, которое используется для того, чтобы между маршрутизаторами не было синхронизации в отправке hello-пакетов.
Если за период удержания (hold time, по умолчанию 15 секунд, 3 hello-интервала) от соседнего маршрутизатора не пришел ни один hello пакет, то он считается недоступным.
Для того, чтоб маршрутизаторы могли установить отношения соседства, должны выполниться некоторые условия:
маршрутизаторы должны пройти аутентификацию
маршрутизаторы должны быть в одной AS,
должны совпадать значения K-коэффициентов
Вид таблицы соседних устройств:

IP-EIGRP neighbors for process 1
 
H   Address         Interface      Hold Uptime    SRTT   RTO   Q       Seq
 
                                    (sec)         (ms)        Cnt      Num
 
0   10.0.0.6           Fa0/1  11   00:00:30        40   1000   0       24
 
1   10.0.0.1           Fa0/0  12   00:00:25        40   1000   0       25


В таблице соседних устройств содержаться следующие поля:
Address – IP адрес соседнего устройства.
Interface – интерфейс к которому подключено соседнее устройство.
Hold Uptime (Время удержания) – время по истечении которого, в случае если нет каких либо сообщений от соседнего устройства, канал рассматривается как неработоспособный. Сначала в качестве ожидаемого пакета был пакет HELLO, однако в современных версиях CISCO IOS любой пакет протокола EIGRP полученный после первого пакета HELLO сбрасывает этот таймер. На каналах Ethernet по умолчанию 15 секунд.
SRTT (Таймер цикла обмена сообщениями) – Среднее время требуемое для отправки пакета соседнему устройству и получению ответного пакета от него. С помощью этого интервала определяется интервал повторной передачи RTI(Retransmit Interval).
RTO (retransmission timeout) — интервал между отправкой unicast-пакетов, которые отправляются после того как от соседа не было получено подтверждение о получении multicast-пакета.
Q Cnt (Queue count, Счетчик очереди) – показывает число пакетов которые находятся в очереди и ожидают передачи. Обычно это число равно нулю, если нет, то значит маршрутизатор испытывает перегрузку.
Sec Num (Sequence Number, Номер последовательности) – Номер последнего пакета полученного от соседнего устройства. Протокол EIGRP использует это поле для подтверждения приема пакета. Таблица соседних устройств обеспечивает надежную и упорядоченную доставку пакетов.

МЕТРИКА
Протокол EIGRP считает метрику с помощью коэффициентов. По умолчанию они равны К1=1;К2=0;К3=1;К4=0;К5=0.Общая метрика вычисляется с помощью значений bandwidth (пропускной способности) и delay (задержки). Bandwidth вычисляется по формуле:
bandwidth = (10000000/bandwidth(m)) * 256
где bandwidth(m) – это минимальная пропускная способность канала на всем пути следования к сети назначения.
Delay:
delay = delay(s) * 256
где delay(s) – это суммарная задержка на всех маршрутизаторах по пути следования к сети назначения.
Эти значения использует протокол EIGRP для подсчета метрики :
Metric=[K1*bandwidth+(K2* bandwidth)/(256-load)+K3*delay]*[K5/(reliability+K4)]
Если коэффициенты не менялись, то формула получает вид:
Metric=K1*bandwidth+ K3*delay
Количество переходов в протоколе EIGRP равно 224, чего более чем достаточно для современных сетей.

ОБНОВЛЕНИЯ МАРШРУТОВ
После того как маршрутизаторы установили отношения соседства, они начинают обмениваться информацией о маршрутах (обновления, Update).
Обновления могут быть адресованы одному маршрутизатору, а могут быть направлены группе маршрутизаторов(muilticast-адрес 224.0.0.10).
Обмен обновлениями:
Сначала соседи отправляют друг другу все известные маршруты, за исключением тех, что попали под правило split horizon.
После завершения обмена маршрутами, полные обновления больше не посылаются.
Далее посылаются обновления только об изменившемся маршруте, или маршрутах (частичные обновления).
Если отношения соседства теряются, а затем снова устанавливаются, то обмен маршрутами начинается заново.

Виды обновлений протокола EIGRP:
Непериодические (Nonperiodic) — обновления отправляются не через регулярные интервалы времени, а при изменении топологии или метрики.
Частичные (Partial) — в обновлениях передается не вся информация из таблицы маршрутизации, а только изменения.
Ограниченные (Bounded) — обновления отправляются только задействованным маршрутизаторам.
Алгоритм вычисления маршрута DUAL
Diffusing Update Algorithm (DUAL) – алгоритм который использует протокол EIGRP для вычисления маршрутов.
Терминология:
Successor – это маршрутизатор через который проходит оптимальный маршрут в какую то сеть.
Feasible Successor (FS) – это резервный маршрутизатор через который можно попасть в некоторую сеть, если выйдет из строя Successor.
Feasible distance (FD) – это метрика для маршрута в некоторую сеть.
Reported distance(RD) или Advertised distance (AD) – это метрика маршрута в сеть, для того маршрутизатора который объявляет об етом маршруте.
Feasible Condition (FC) – для того, чтоб роутер мог быт выбран в качестве Feasible Successor(заместитель) для какого то маршрута, необходимо, чтоб Advertised distance (AD) для этого роутера было меньше чем  Feasible distance (FD) для основного маршрута. То есть, маршрутизатор заместитель должен быть ближе к сети получателя, чем маршрутизатор для которого он будет заместитилем.

ТАБЛИЦА ТОПОЛОГИИ
В таблице топологии находятся все известные роутеру маршруты в сети.

IP-EIGRP Topology Table for AS 1
Codes: P - Passive, A - Active, U - Update, Q - Query, R - Reply,
r - Reply status
P 20.0.0.0/16, 1 successors, FD is 128256
via Connected, Loopback0
P 10.0.0.0/30, 1 successors, FD is 28160
via Connected, FastEthernet0/0
P 10.0.0.4/30, 1 successors, FD is 28160
via Connected, FastEthernet0/1
P 30.0.0.0/8, 1 successors, FD is 156160
via 10.0.0.6 (156160/128256), FastEthernet0/1
P 192.168.30.0/24, 1 successors, FD is 156160
via 10.0.0.1 (156160/128256), FastEthernet0/0

Если сосед сообщает локальному маршрутизатору о маршруте, то сосед должен использовать этот маршрут для передачи трафика. Это правило обязательно должно соблюдаться для всех дистанционно-векторных протоколов.
В таблице топологии также хранится метрика, которую сообщает каждый сосед для каждой сети назначения (AD) и метрика, которую локальный маршрутизатор будет использовать для того чтобы достигнуть какую либо сеть через соседа (FD).
Например для сети 192.168.30.0/24 сообщенная соседом метрика (AD) будет 128256, а метрика которую будет использовать данный маршрутизатор (FD) 156160.
Записи в таблице топологии могут находится в двух состояниях Passive и Active.
PPassive – означает что все в порядке, маршрут используется, пересчет маршрута не осуществляется.
AActive – запись в это состоянии, когда осуществляется пересчет маршрута для сети, алгоритм DUAL производит пересчет маршрута если нет запасного маршрута в сеть FS. Маршрутизатор инициирует пересчет отправляя запрос (отправляет query packet) каждому соседнему маршрутизатору. Если у соседа есть маршрут к сети назначения, то он отвечает (отправляет reply packet), если маршрута нет — сосед отправляет запрос своим соседям.
Если есть несколько маршрутов в одну сеть, то алгоритм DUAL сравнивает их и маршрут с наименьшей метрикой помещает в таблицу маршрутизации.

Настройка маршрутов в EIGRP
Типы маршрутов:
internal – внутренние маршруты EIGRP. AD – 90.
external – маршруты, перераспределенные в процесс EIGRP из других источников. AD – 170.
summary – суммарные маршруты EIGRP. AD – 5.
Administrative distance (AD, административное расстояние) – это степень доверия к источнику маршрута, чем оно меньше, тем доверие выше .Например у протокола маршрутизации RIP оно равно 120, OSPF 110, EIGRP 90, у статических маршрутов 1, но его можно поменять вручную.

Маршрут по умолчанию.
Для настройки маршрута по умолчанию необходимо ввести следующую команду:
R2(config)#ip default-network <адрес сети>
Результат этой команды:

R3#show ip route
Gateway of last resort is 10.0.0.5 to network 20.0.0.0
10.0.0.0/30 is subnetted, 2 subnets
D       10.0.0.0 [90/30720] via 10.0.0.5, 00:01:37, FastEthernet0/1
C       10.0.0.4 is directly connected, FastEthernet0/1
*   20.0.0.0/16 is subnetted, 1 subnets
D*      20.0.0.0 [90/156160] via 10.0.0.5, 00:01:37, FastEthernet0/1
C    30.0.0.0/8 is directly connected, Loopback0
D    192.168.30.0/24 [90/158720] via 10.0.0.5, 00:01:37, FastEthernet0/1

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

Суммирование маршрутов
По умолчанию протокол EIGRP суммирует маршруты. Минимальная метрика (лучшая метрика) из всех маршрутов, которые суммируются, используется в качестве метрики суммарного маршрута. При создании суммарного маршрута, маршрутизатор автоматически добавляет в таблицу маршрутизации этот суммарный маршрут с next-hop указывающим на null0. Автоматическое суммирование можно отключить командой:

R2(config-router)#no auto-summary

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

R2(config-if)#ip summary-address eigrp
<address>  [admin-distance]</address>

эта команда вводится в настройке интерфейса. По умолчанию у суммарного маршрута EIGRP administrative distance – 5.

Изменение таймеров и коэффициентов протокола EIGRP.
Изменение интервалов hello пакетов.
По умолчанию время отправки hello пакетов зависит от полосы пропускания канала. Например для канала Multipoint Frame Relay с полосой пропускания 1,544 Мбит/с или менее интервал отправки 60 секунд, а время удержания 3 hello интервала (180секунд), для линии Т1, соединения точка – точка с полосой пропускания более 1,544 Мбит/с интервал равен 5 секунд, а таймер удержания соответственно 15 секунд.Hello инервал меняется командой:

R2(config-if)# ip hello-interval eigrp &lt; AS-number &gt;

Hold down таймер или таймер удержания командой:

R2(config-if)# ip hold-time eigrp &lt; AS-number &gt;

Изменение K коэффициентов.
По умолчанию коэффициенты равны К1=1;К2=0;К3=1;К4=0;К5=0,
Для изменения вводим команду:

R2(config-router)# metric weights

TOS (Type Of Service) – диапазон значений от 0 до 8. Поддерживается только значение 0.
K1 – K5 – K-коэффициенты, у каждого коэффициента диапазон значений от 0 до 255.




Тэги: , , , , , , , , , , , , ,



8 Responses to “ПРОТОКОЛ МАРШРУТИЗАЦИИ EIGRP”

  1. Nikita 01. Oct, 2010 at 14:57 #

    Very nice. Wikipedia.org smokes nervously

  2. skaM 05. Dec, 2010 at 23:11 #

    Отличная статья !!! 🙂
    помогла внести ясность 🙂
    Побольше бы таких ) например по STP и VTP 🙂

  3. Fynjy 27. Jan, 2011 at 13:14 #

    Для того, чтоб маршрутизаторы могли установить отношения соседства, должны выполниться некоторые условия:

    – а как же совпадение hello и hold интервалов

  4. :-) 31. Jan, 2011 at 15:18 #

    совпадение интервальных значений необязательно :-)))

  5. stepmail 31. Jan, 2011 at 16:20 #

    ну как “необязательно” если у одного соседа хелло 5 секунд, а у другого скажем 20, то соседи будут постоянно up-down туда-сюда. У первого то соседа на 15 секундах уже hold таймер сработает.

  6. Гапон Анатолий 31. Jan, 2011 at 17:48 #

    Таймеры должны соответствовать в обязательном порядке. stepmail + 1

  7. stepmail 01. Feb, 2011 at 12:45 #

    Анатолий, на самом деле очень неплохие статьи. Сжато, понятно и без лишних заморочек. Местами правда не хватает некоторой конкретики. Было бы побольше статей) я бы своим студентам рекомендовал ваш ресурс.

  8. Гапон Анатолий 01. Feb, 2011 at 19:15 #

    Мы постоянно добавляем новые статьи , но нашему скромному коллективу сложно написать о всем и сразу. Желающие могут писать свои статьи и получить статус “автор”

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


iTuts dakulov Free CDN NetConfig