Кіріспе

Диффузиялық жаңарту алгоритмі (DUAL) – Cisco компаниясының EIGRP маршруттау протоколында маршруттық циклға себеп болуы мүмкін жағдайларда белгілі бір маршруттың жаһандық түрде қайта есептелуін қамтамасыз ету үшін қолданылатын алгоритм. Оны SRI International компаниясының J. J. Garcia Luna Aceves әзірлеген. Алгоритмнің толық атауы – DUAL шекті күйдегі автомат (DUAL FSM). EIGRP автономды жүйеде маршруттандыру үшін жауапты, ал DUAL маршруттандыру топологиясындағы өзгерістерге ден қойып, маршруттандыру кестелерін автоматты түрде динамикалық түрде реттейді. EIGRP тек циклсыз маршруттардың таңдалуын қамтамасыз ету үшін мүмкіндік шартын пайдаланады. Мүмкіндік шарты консервативті: егер шарт орындалса, циклдар пайда болмайды, бірақ кейбір жағдайларда, тіпті циклсыз болса да, барлық маршруттарды қабылдаудан бас тартуы мүмкін. Егер мақсатқа жетуге қолайлы маршрут болмаса, DUAL алгоритмі желіден мәселі тудырған маршруттың барлық іздерін жою үшін диффузиялық есептеуді іске қосады. Осыдан кейін жаңа маршрутты қалпына келтіру үшін Bellman-Ford алгоритмі қолданылады.

Операция

DUAL маршрутты есептеу үшін үш бөлек кесте қолданады. Бұл кестелер EIGRP маршрутизаторлары арасында алмасылатын ақпарат арқылы құрылады. Ақпарат байланыс жағдайының маршруттау протоколдарымен алмасылатын ақпараттан өзгеше. EIGRP-де алмасылатын ақпаратқа маршруттар, әрбір маршруттың "метрикасы" немесе құны, сондай-ақ көршілік қатынасты құру үшін қажетті ақпарат (AS нөмірі, таймерлер және K мәндері сияқты) кіреді. Үш кесте және олардың функциялары егжей-тегжейлі келесідей:

Көрші кестеде басқа барлық тікелей қосылған маршрутизаторлар туралы ақпарат бар. Әр қолданылатын протокол үшін жеке кесте бар (IP, IPX және т.б.). Әрбір жазба желі интерфейсі мен мекенжайының сипаттамасымен көршісіне сәйкес келеді. Сонымен қатар, байланыс тірі ме, жоқ па, оны кезең-кезеңмен анықтау үшін таймер басталады. Бұл "Саламдасу" пакеттері арқылы жүзеге асырылады. Егер "Саламдасу" пакеті көршіден белгілі бір уақыт ішінде алынбаса, маршрутизатор істен шығарылып, көрші кестеден өшіріледі.

Топология кестесі автономды жүйедегі кез келген бағытқа барлық маршруттардың метрикасын (құн туралы ақпаратты) қамтиды. Бұл ақпарат көрші кестеде орналасқан көрші маршрутизаторлардан алынады. Бастапқы (мұрагер) және екінші (болуы мүмкін мұрагер) маршруттар топология кестесіндегі ақпарат арқылы анықталады. Топология кестесінің әрбір жазбасында келесі мәліметтер бар:

"FD (Feasible Distance)": Автономды жүйедегі мақсатқа жету жолының есептелген метрикасы.
"RD (Reported Distance)": Көрші маршрутизатор жариялаған бағытқа арналған метрика. RD, FD есептеу үшін және маршруттың "іске асырылу шарты" орындалатынын анықтау үшін қолданылады.
Маршруттың жағдайы: Маршрут "белсенді" немесе "бейбелсенді" деп белгіленеді. "Бейбелсенді" маршруттар тұрақты және деректерді беру үшін пайдаланылуы мүмкін. "Белсенді" маршруттар қайта есептеледі және/немесе қол жетімді емес.

Маршруттау кестесі (негізгі "метрика" бойынша) бағытқа жетудің ең жақсы маршрутын қамтиды. Бұл маршруттар топология кестесінің мұрагерлері болып табылады. DUAL топология кестесінен басқа маршрутизаторлардан алынған деректерді бағалайды және бастапқы (мұрагер) және екінші (болуы мүмкін мұрагер) маршруттарды есептейді. Негізгі жол әдетте мақсатқа жету үшін ең төменгі метрикасы бар жол, ал резервтік жол – екінші ең төменгі құны бар жол (егер ол іске асырылу шартын орындаса). Бірнеше мұрагерлер және бірнеше болуы мүмкін мұрагерлер болуы мүмкін. Мұрагерлер мен болуы мүмкін мұрагерлер топология кестесінде сақталады, бірақ маршруттау кестесіне тек мұрагерлер қосылады және пакеттерді маршруттау үшін қолданылады.

Маршруттың болуы мүмкін мұрагер болуы үшін, оның RD-і мұрагердің FD-інен кіші болуы керек. Егер осы іске асырылу шарты орындалса, маршруттау кестесіне осы маршрутты қосу циклға әкелмейді. Егер мақсатқа жету үшін барлық мұрагер маршруттары сәтсіз болса, болуы мүмкін мұрагер мұрагер болады және дереу маршруттау кестесіне қосылады. Егер топология кестесінде болуы мүмкін мұрагер болмаса, жаңа маршрутты іздеу үшін сұрау процесі басталады.