4.8.3 Термінологія протоколу EІGRP

Протокол EІGRP у своїй роботі використовує дані трьох таб-лиць: маршрутизації, сусідніх пристроїв та топології. Ці таблиці ще називають базами даних протоколу. Призначення ТМ нам вже відоме. Тому розглянемо призначення двох інших таблиць [5, 15].

Таблиця сусідніх пристроїв

Кожний маршрутизатор EІGRP підтримує таблицю сусідніх пристроїв (neіghbor table), в якій перераховані суміжні маршрутизатори. Для кожного протоколу (наприклад, IP, IPX), що підтримується протоколом EІGRP, є своя таблиця сусідніх пристроїв (TCП). При виявленні нових сусідніх пристроїв їх адреси та інтерфейси заносяться у ці таблиці. Проглянути зміст ТСП можна за командою show ip eigrp neighbors).

При відправленні пакета привітання сусідній пристрій повідомляє час утримання, що вказує, як довго маршрутизатор розглядає свій сусідній пристрій як досяжний та роботоздатний. Якщо за період утримання від маршрутизатора не надійшов пакет привітання, то вважається, що час утримання вичерпано. В такому випадку алгоритм DUAL (цей алгоритм ми розглянемо пізніше) інформується про зміну топології і повинен знову обчислити параметри нової топології.

ТСП має, зокрема, такі поля.

Порядковий номер (Н) запису в міру навчання даного пристрою стосовно сусідніх пристроїв.

Адреса сусіднього пристрою (Neіghbor Аddress) – адреса мережевого рівня сусіднього пристрою.

Інтерфейс (Interface) – локальний інтерфейс, через який було отима-но пакет Hello від сусіднього пристрою.

Час утримання (Hold Тіme) – часовий інтервал, після закінчення якого, у випадку відсутності будь-яких повідомлень від сусіднього при-строю, канал розглядається як нероботоздатний. При отриманні ж будь-якого пакета протоколу EІGRP, таймер приймає початкове значення.

Доступний час (Uptime) – час, що минув з моменту додання даного сусіднього пристрою у ТСП.

Таймер циклу обміну повідомленнями (Smooth Round-Trіp Tіmer – SRTT) – середній час, потрібний для того, щоб надіслати пакет сусідньому пристрою та одержати від нього відповідний пакет. Цей таймер визначає інтервал повторного передавання (Retransmіt Interval – RTI).

Час ретрансляції (Retransmission Timeout – RTO) – час в мілісекундах, протягом якого програмне забезпечення очікує моменту повторного пересилання пакета з черги повторного розсилання.

Лічильник черги (Queue Сount – Q Cnt) – число пакетів, які перебувають у черзі очікуючи передавання. Якщо це значення постійно більше нуля – ймовірно маршрутизатор зазнає переповнення. Нульове значення свідчить, що пакетів протоколу EІGRP у черзі немає.

Послідовний номер (Sequence Number – Seq No) – номер останнього пакета, отриманого від даного сусіднього пристрою. Протокол EІGRP використовує це поле для підтвердження отримання пакета, переданого сусіднім пристроєм, та для ідентифікації пакетів, що передані з порушенням порядку. ТСП забезпечує надійне та впорядковане доставлення пакетів.

Наприклад, ТСП для маршрутизатора R2 (рис. 4.14.а) має вигляд

R2#show ip eigrp neighbors
IP-EIGRP neighbors for process 1
H Address Interface Hold Uptime SRTT RTO Q Seq
(sec) (ms) Cnt Num
1 192.168.10.10 Ser0/0/1 10 00:01:44 20 200 0 7
0 172.16.3.1 Ser0/0/0 10 00:03:27 25 200 0 12

Топологічна таблиця

Топологічна таблиця (topology table) містить всі ТМ протоколу EІGRP, наявні на пристроях даної автономної системи (проглянути зміст топологічної таблиці можна за командою show ip eigrp topology). Алгоритм DUAL отримує інформацію з ТСП і топологічної таблиці (ТТ) та обчислює маршрути з найменшою оцінкою до кожного пункту призначення. Завдяки цьому маршрутизатори протоколу EІGRP можуть швидко визначити альтернативні маршрути та використати їх у разі потреби. Первинний маршрут (successor) записується у ТМ, а його копія – у ТТ. Усі маршрутизатори EІGRP підтримують ТТ для кожного сконфігурованого мережевого протоколу. У цій таблиці містяться маршрути до усіх пунктів призначення, які стали відомі маршрутиза-тору.

ТТ має такі поля [5].

Передбачувана відстань (Feasіble Dіstance – FD) – це найменша обчислена метрика до кожного пункту призначення. У прикладі 4.1 показано ТТ для маршрутизатора R2, з прикладу, наведеного на рис. 4.14. Тут передбачувана відстань, наприклад, до мережі 192.168.1.0 становить 3014400, на що вказує запис „FD is 3014400”.


R2# show ip eigrp topology
IP-EIGRP Topology Table AS(1)/ID 10.1.1.1
Codes: P - Passive, A - Active, U - Update,
Q - Query, R - Reply, r - Reply Status s – sia Status
P 192.168.10.4/30, 1 successors, FD is 3523840
via 192.168.10.10 (3523840/2169856), Serial0/0/1
via 172.16.3.1 (410240000/2169856), Serial0/0/0
P 192.168.1.0/24, 1 successors, FD is 3014400
via 192.168.10.10 (3014400/28160), Serial0/0/1
via 172.16.3.1 (410240000/2172416), Serial0/0/0
P 192.168.10.8/30, 1 successors, FD is 3011840
via connected Serial0/0/1
P 172.16.1.0/24, 1 successors, FD is 3526400
via 192.168.10.10 (3526400/2172416), Serial0/0/1
via 172.16.3.1 (40514560/28160), Serial0/0/0
P 172.16.2.0/24, 1 successors, FD is 28160
via connected FastEthernet 0/0
P 172.16.3.0/30, 1 successors, FD is 40512000
Приклад 4.1 – Топологічна таблиця протоколу EIGRP

Джерело маршруту (Route Source) – це ідентифікаційний но-мер маршрутизатора, який анонсував цей маршрут. Дане поле заповнюється лише тільки для маршрутів, які стали відомі ззовні від інших мереж протоколу EІGRP. У прикладі 4.1, джерелами маршруту до мережі 192.168.1.0 є 192.168.10.10 та 172.16.3.1, про що свідчать записи „vіa 192.168.10.10” та „vіa 172.16.3.1”, відповідно.

Повідомлена відстань (Reported Dіstance – RD) або об’явлена відстань (Advertised Dіstance – AD) – це значення відстані, яке сусідній маршрутизатор повідомляє конкретному одержувачу. У прикладі 4.1 повідомлена відстань до мережі 192.168.1.0 дорівнює 28160, на що вказує значення поля RD (3014400/28160).

Інформація про інтерфейс (Іnterface Іnformatіon) – це номер інтерфейсу, через який можна досягти пункту призначення. З прикладу 4.1 видно, що мережу 192.168.10.10 можна досягнути через інтерфейс Serial0/0/1 (via 192.168.10.10 (3014400/28160), Serial0/0/1), а можна резервним шляхом через Serial0/0/0 (via 172.16.3.1 (410240000/2172416), Serial0/0/0)

Статус маршруту (Route Status) – може бути пасивний або активний. Пасивні (Рassive – Р) – це стійкі та готові до використання маршрути, активні (Аctіve – А) це ті, для яких алгоритм DUAL продовжує процес перерахування маршруту. Протокол EIGRP сортує записи ТТ так, щоб первинні маршрути знаходились у її верхній частині, а за ними йшли резервні. У нижній частині цієї таблиці розташовуються маршрути, які алгоритм DUAL розглядає як можливі петлі маршрутизації.

Первинні маршрути

Первинним називається маршрут обраний як основний для досягнення певного пункту призначення. Цей маршрут визначається алгоритмом DUAL на основі інформації з ТСП і ТТ, і вноситься до ТМ. Для кожного конкретного маршруту може бути до чотирьох первинних маршрутів. Вони можуть мати як однакові, так і неоднакові оцінки й розглядаються як найкращі вільні від петель маршрути до даного пункту призначення.

Резервні маршрути

Потенційно первинний (Feasіble Successor – FS) – це резервний маршрут. Такі маршрути встановлюються одночасно з первинними, однак, зберігаються тільки у ТТ. Одночасно можуть зберігатися кілька резервних маршрутів. Наявність резервного маршруту для досягнення одержувача не є обов’язковою.

Маршрутизатор розглядає пристрої на резервному маршруті як сусідні в спадному напрямку (він вважає, що вони перебувають ближче до пункту призначення, ніж він сам). Вони виражають анонсовану сусіднім маршрутизатором оцінку маршруту до пункту призначення. Якщо пер-винний маршрут стає недійсним, то маршрутизатор шукає резервний і підвищує його статус до первинного. Резервний маршрут до пункту призначення повинен мати менше значення FD, ніж значення RD даного пер-винного маршруту.

Якщо резервний маршрут не був установлений на основі наявної ін-формації, то маршрутизатор надає йому статус активного (Actіve) і надсилає пакети запитів усім сусіднім пристроям для перерахування топології. Після одержання відповідей на ці запити маршрутизатор може на їх основі установити нові первинні або резервні маршрути. Після цього маршрутизатор надає маршруту статус пасивного (Passіve).

Вибір первинного та резервних маршрутів

Розглянемо питання визначення маршрутизатором первинних та резервних маршрутів. Нехай в ТМ маршрутизатора RTA є маршрут до мережі Network Z через маршрутизатор RTB (рис. 4.15). З точки зору маршрутизатора RTA маршрутизатор RTB перебуває на поточному первинному маршруті до мережі Network Z, тому RTA надсилає пакети, призначені для мережі Network Z у напрямку RTB. Маршрутизатор RTA повинен мати принаймні один первинний маршрут до Network Z для того, щоб алгоритм DUAL міг внести його в ТМ [5, 15].

Рисунок 4.15 – Первинний маршрут протоколу EIGRP

Якщо деякий маршрутизатор RTC, який з’єднаний з RTA анало-гічно маршрутизатору RTB і повідомляє RTA про наявність у ньо-го маршруту до мережі Network Z з такою ж метрикою, як і у маршрутизатора RTB, то RTA також розглядає RTC як первинний маршрут і алгоритм DUAL установлює другий маршрут до мережі Network Z через RTC (рис. 4.16).

Кожен сусідній пристрій маршрутизатора RTA, що анонсує вільний від петель маршрут до мережі Network Z (однак з FD більшою, ніж мет-рика найкращого маршруту й меншою, ніж його RD), ідентифікується у ТТ, як той, що знахо-диться на резервному маршруті. Маршрутизатор розглядає свої пристрої на резервних маршрутух як сусідні пристрої, що перебувають у низхідному напрямку, тобто розташовані ближче до одержувача, ніж він сам. Якщо з будь-яких причин первинний маршрут не може виконувати свої функції, то алгоритм DUAL може швидко знайти резервний на основі даних ТТ й встановити новий маршрут до пункту призначення. Якщо ж такий резервний маршрут відсутній, то алгоритм DUAL переводить маршрут в активний стан і запитує допомоги у сусідів у знаходженні нового, вільного від петель маршруту. Сусідні маршрутизатори зобов’язані відповісти на цей запит. Якщо в сусіднього маршрутизатора є такий маршрут (маршрути), то надсилається інформація про нього (них). Інакше сусідній маршру-тизатор повідомляє про відсутність маршруту до цього пункту призначення.

Рисунок 4.16 – Первинні маршрути протоколу EIGRP

Надлишкова кількість перерахувань маршрутів свідчить про неста-більну роботу мережі й знижує її продуктивність. Для запобігання про-блем, пов’язаних з конвергенцією, алгоритм DUAL перед виконанням перерахування завжди намагається знайти резервний маршрут. Якщо такий є, то алгоритм DUAL може встановити новий маршрут без перерахування.

Застрявання активних маршрутів

Якщо один або більше маршрутизаторів, яким був розісланий запит, не відповідає протягом активного часу (180 секунд), то маршрут (або кілька маршрутів) переводиться у стан „застрявання” (stuck іn actіve). В цьому випадку протокол EІGRP виключає зі своєї ТСП маршрутизатори, що не відповіли на запит і реєструє в системному журналі повідомлення про помилку „stuck іn actіve” для маршрутів, які були активними.

Створення тегів для маршрутів

У ТТ може бути записана додаткова інформація про кожний маршрут. Протокол EІGRP класифікує маршрути на внутрішні і зовнішні. Внутрішніми називаються маршрути усередині даної автономної системи протоколу EІGRP, а зовнішніми – ті, що беруть свій початок поза даною автономною системою. Маршрути, отримані або перерозподілені від інших протоколів маршрутизації вважаються зовні-шніми [5].

Як тег, маршруту може бути присвоєне значення від 0 до 255. Всі зовнішні маршрути заносяться в ТТ і їм призначається тег, що містить таку інформацію: ідентифікаційний номер маршрутизатора EІGRP, що поширив маршрут у мережу EІGRP; Номер АС одержувача; протокол, використовуваний у зовнішній мережі; оцінка або метрика, отримана від зовнішнього протоколу; конфігурований тег адміністратора [5].

Для задання строгої і точної політики маршрутизації рекомендується скористатися функцією задання маршрутум тегів і, особливо, тегів адміністратора. Останнім може бути будь-яке число від 0 до 255. По суті це звичайний тег, що можна використовувати для реалізації спеціальної стратегії маршрутизації. Зовнішні маршрути можуть прийматися, відкидатися або поширюватися на основі кожного з тегів маршруту, в тому числі й тегу адміністратора. Оскільки користувач може задати тег адміністратора будь-яким зручним для нього способом, функція задання тегів маршрутум надає більшу гнучкість під час керуванні мережею. Це виявляється особливо корисним у тих випадках, коли мережа протоколу EІGRP взаємодіє з мережею протоколу граничного шлюзу, що базується на використанні політик.