Научная статья на тему 'Разработка и моделирование гибридного протокола динамической маршрутизации'

Разработка и моделирование гибридного протокола динамической маршрутизации Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
79
18
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
масштабируемость протокола маршрутизации / бесцикловая маршрутизация / модель / алгоритм / моделирование протоколов маршрутизации / routing protocol scalability / loopless routing / algebraic routing protocol model / link state algorithm / distributed sequence number algorithm / routing protocol modeling / dynamic routing hybrid protocol

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Л И. Абросимов, Х Хаю, М А. Орлова

Расширение сетевых услуг обусловливает существенное повышение требований к качеству и скорости решения задач сетевого управления постоянно растущими сетями в центрах обработки данных. Рост нагрузки приводит к необходимости структурного масштабирования, заключающегося в увеличении количества серверов и маршрутизаторов. Существует потребность в простых масштабируемых протоколах маршрутизации для облегчения автоматизации и управления постоянно растущими сетями, особенно в центрах обработки данных. Целью работы является представление разработанного гибридного протокола динамической маршрутизации, включающего модернизированный алгоритм дистанционно-векторной маршрутизации и алгоритм состояния канала. В статье показано решение проблем разработки гибридного протокола динамической маршрутизации, который гарантирует отсутствие циклов, обеспечивает требования масштабирования посредством разработки и реализации простых алгоритмов, позволяющих обеспечить надежную передачу рабочего и служебного трафиков, содержащих информацию о маршруте, и обнаружить подключенные к текущему маршрутизатору каналы, сети и непосредственно подключенные соседние маршрутизаторы. Требования масштабируемости нового гибридного протокола динамической маршрутизации выполняются за счет того, что алгоритм дистанционно-векторной маршрутизации вычисляет расстояния до узлов инфраструктуры, а не сами сетевые префиксы. Объявление сетевых префиксов производится алгоритмом состояния канала только один раз, что приводит к уменьшению БД о состоянии канала и к сокращению вычислений после изменения топологии. Исключение петель достигается за счет внедрения нового разработанного алгоритма распределенных порядковых номеров. Для моделирования гибридного протокола динамической маршрутизации разработана имитационная модель. Моделирование позволило оценить количество и объем служебного трафика, что подтвердило эффективность функционирования разработанного протокола в условиях масштабирования сети центров обработки данных.

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Л И. Абросимов, Х Хаю, М А. Орлова

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Developing and modeling a hybrid dynamic routing protocol

Nowadays, the growth of network services significantly increases the requirements for the qual-ity and speed of solving network management problems in ever-growing data centers. The load increase in data centers leads to the need for structural scaling that implies increasing the number of servers and routers. There is a need for simple scalable routing protocols to facilitate automation and management of ever-growing networks, especially in data centers. The work aims to present and simulate a new hybrid dynamic routing protocol including an upgraded distance vector routing algorithm and a link state algorithm. The article discusses the solution to the problems of developing a hybrid dynamic routing protocol, which guarantees loop freedom and provides scaling requirements through the development and implementation of simple algorithms that ensure reliable transmission of data and service traffic containing route information and detects channels, networks, and directly connected neighboring routers connected to the current router. The scalability requirements of the new hybrid dynamic routing protocol are met since the distance vector routing algorithm calculates the distances to infrastructure nodes, and not to the network prefixes themselves. The link state algorithm advertises network prefixes only once, which leads to a reduction in the link state database and a reduction in calculations after topology changes. Loop freedom is achieved by introducing a newly developed distributed sequence number algorithm. A simulation model has been developed to simulate the hybrid dynamic routing protocol. The simulation allowed estimating the amount and volume of service traffic, which confirmed the effectiveness of the devel-oped protocol in the conditions of scaling the data center network.

Текст научной работы на тему «Разработка и моделирование гибридного протокола динамической маршрутизации»

УДК 004.7 Дата подачи статьи: 01.06.22, после доработки: 13.09.22

Б01: 10.15827/0236-235Х.141.071-082 2023. Т. 36. № 1. С. 071-082

Разработка и моделирование гибридного протокола динамической маршрутизации

Л.И. Абросимов 1, д.т.н, профессор, AbrosimovLI@mpei.ru Х. Хаю 1, аспирант, hussein.khayou@gmail.com М.А. Орлова 1, к.тн, ассистент, OrlovaMA@mpei.ru

1 Национальный исследовательский университет «МЭИ», г. Москва, 111250, Россия

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

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

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

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

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

В последнее десятилетие интенсивное использование облачных сервисов, предоставляемых центрами обработки данных (ЦОД), привело к значительному увеличению трафика передаваемых и обрабатываемых данных.

Современный ЦОД включает серверный комплекс, систему хранения данных, систему эксплуатации и систему информационной безопасности, которые интегрированы между собой и объединены высокопроизводительной локальной вычислительной сетью. Солидные российские интернет-компании имеют уже по несколько ЦОД. Например, Яндекс открыл новый (уже четвертый по счету) дата-центр на 3 тысячи серверов.

Обычно рост нагрузки на ЦОД приводит к необходимости структурного масштабирования, заключающегося в увеличении количества

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

Требование масштабируемости выполняется протоколом маршрутизации, если нагрузка служебного трафика, генерируемого протоколом маршрутизации, растет пропорционально количеству маршрутизаторов и/или каналов связи.

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

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

Вычисление маршрутов рабочего и служебного трафиков становится сложной задачей для протоколов маршрутизации [1—3]. Вот почему крупные предприятия прибегают к использованию протокола динамической маршрутизации (ПДМ) BGP (Border Gateway Protocol) в сверхбольших ЦОД [1, 3, 4]. Однако BGP подвержен постоянным колебаниям маршрута [5] и отличается медленной скоростью конвергенции таблицы маршрутизации из-за проблемы поиска путей [6]. К тому же BGP основан на префиксах, идентифицирующих маршрутизаторы, поэтому сбой одного канала связи может привести к повторному вычислению и передаче обновлений для сотен префиксов [7].

Проприетарный бесцикловый протокол маршрутизации EIGRP, разработанный Cisco, был опубликован в 2013 г. как имеющий информационный характер [8]. Ранее EIGRP продвигался как гибридный протокол маршрутизации, однако теперь Cisco классифицирует его как расширенный дистанционно-векторный протокол [8, 9]. В EIGRP используется алгоритм диффузного обновления DUAL, в котором узел может изменить свой следующий переход только при удовлетворении условия выполнимости [10]. Условие выполнимости гарантирует, что при выборе выполнимого маршрутизатора для определенного пункта назначения узел не образует петлю в маршрутизации к этому пункту назначения. Преимущество EIGRP заключается в быстрой сходимости и эффективности в малых и средних сетях, к тому же он поддерживает многопутевую маршрутизацию с неравной стоимостью, используя концепцию выполнимых маршрутизаторов. Однако EIGRP не был принят другими поставщиками. Кроме того, он не поддерживает механизм разделения домена маршрутизации на области или поддомены. Вычисления EIGRP также основаны на префиксах.

Протокол маршрутизации Babel - это протокол дистанционно-векторной маршрутизации [11], в котором к метрике добавляется неубывающий порядковый номер. Babel обладает

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

В протоколе Babel также используются условия выполнимости для обнаружения маршрутов с петлями. Истощение (голодание) возникает, когда у маршрутизатора заканчиваются выполнимые маршрутизаторы. Тогда этот маршрутизатор выдает явный одноадресный запрос владельцу маршрута для увеличения порядкового номера. Запрос пересылается поэтапно владельцу маршрута независимо от условия выполнимости, чтобы добраться до владельца. При получении запроса владелец маршрута увеличивает свой порядковый номер и в широковещательном режиме передает обновление, которое пересылается запросившему узлу.

Основным недостатком протокола Babel является то, что некоторые вышестоящие узлы, не получившие информацию о недействительности их текущих маршрутов, по-прежнему будут перенаправлять трафик в соответствии с их недействительной информацией о маршруте и трафик будет отбрасываться до тех пор, пока не поступит новая информация от владельца маршрута. В этом протоколе также используются периодические обновления, и он зависит от надежности обмена информацией о маршруте. Другим недостатком является то, что необходимо распределять несколько явных запросов для каждого голодающего узла (это может повлиять на все узлы в его восходящем дереве), что, в свою очередь, приводит к повторению передачи. Кроме того, запросы могут быть потеряны (или образовать маршрутную петлю) и, поскольку они отправляются ненадежно, владелец может не получить никакого запроса на обновление маршрута. Babel основан на префиксе, а это может образовать маршрутную петлю [11].

В данной статье предлагается гибридный протокол динамической маршрутизации (ГПДМ). В протоколе используется модернизированный алгоритм распределенных после-

довательных номеров DSN (Distributed Sequence Number) на основе Babel и EIGRP.

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

Корректность ГПДМ и его алгоритмов подтверждается результатами анализа алгебраической модели режима бесцикловой маршрутизации, представленной в более ранних работах авторов [12-14], и результатами моделирования, приведенными в настоящей статье.

Постановка задачи

Дана составная сеть G, содержащая наборы взаимосвязанных маршрутизаторов (R1, R2, ..., Ri, Rj, ., Rm) и сетей (Si, S2, ., Si, ...), соединенных посредством каналов Kj связи (рис. 1). Требуется разработать ГПДМ, который в условиях динамического изменения топологии определяет для каждого маршрутизатора кратчайший путь к любой сети Si в G и выполняет требования масштабируемости.

Любой ГПДМ создается, чтобы усовершенствовать характеристики ПДМ, сгруппированные функции которого выполняются поэтапно.

• Этап 1: обнаружение соседей. Посредством обмена служебными сообщениями маршрутизаторы обнаруживают друг друга, сравнивают параметры (например, адреса сетей, индикаторы маршрутизаторов и маршрутов) и определяют, должны ли они образовывать соседство.

• Этап 2: обмен топологиями. Если соседние маршрутизаторы решают сформировать соседство, они обмениваются друг с другом служебными сообщениями, включающими сведения своих таблиц топологии. Затем между маршрутизаторами передаются только

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

• Этап 3: выбор маршрутов. Как только таблица топологии маршрутизатора заполнена, маршрутизаторы (в соответствии с протоколом) участвуют в вычислении лучшего маршрута сети.

Соединения в составной сети G являются двунаправленными. Каждый маршрутизатор Ri имеет уникальный идентификатор i. Маршрутизатор считается владельцем маршрута сети, если между этим маршрутизатором и сетью имеется непосредственный канал связи.

Маршрутизатор Rj - владелец маршрута (он же маршрутизатор назначения), он инициирует вычисление стоимостей (расстояний) маршрутов (путей) ко всем маршрутизаторам через коммутируемые каналы связи.

Каждый маршрутизатор Ri поддерживает таблицу стоимостей маршрутов для каждого другого маршрутизатора Rj. Вектор стоимости маршрута между текущим маршрутизатором и владельцем указан в виде (5; ё), где 5 - порядковый номер маршрутизатора, который является положительным целым числом, присвоенным владельцем маршрута маршрутизатором Rj; ё - расстояние, которое может быть составной метрикой, однако в этой статье принимается, что ё является положительным числом. Стоимость (51; ё1) считается меньше (дешевле или предпочтительнее), чем стоимость (52; ё2), если 51 > 52 или 51 = 52 и ё1 < ё2. Соединения между напрямую подключенными маршрутизаторами Ri и Rk характеризуются расстоянием Каждый маршрутизатор Ri назначает вектор выполнимой стоимости ГБ] другим маршрутизаторам Rj. Вектор выполнимый стоимости ГБ] к маршрутизатору Rj, известный в маршрутизаторе Ri, является наименьшей стоимостью для маршрутизатора Rj, вычисленной в маршрутизаторе R^ Каждый маршрутизатор Ri также хранит векторы объявленных стоимостей ЯБк,] :Як е N ,Я] еО (где N - множество

соседей маршрутизатора Ri) для своих непосредственно подключенных соседей ко всем маршрутизаторам в сети. Сосед Rk е N является одним из выполнимых маршрутизаторов Ri к маршрутизатору Rj назначения (то есть К е ), если вектор объявленной стоимости

КОк] к маршрутизатору Rj строго дешевле,

Рис. 1. Составная сеть G и маршрутизаторов Fig. 1. A composite network of G and routers

чем вектор выполнимой стоимости FDj маршрутизатора Ri к маршрутизатору Rj (то есть RDkj -< FDj). Следующий маршрутизатор Rs (Rs е Ni), подключенный к маршрутизатору-владельцу Rj, является одним из соседних

маршрутизаторов Ri, если стоимость ( D j ) от маршрутизатора Ri до маршрутизатора Rj является самой низкой при вычислениях с использованием объявленной стоимости (RDS,j ). Обновления, содержащие d и s, являются служебными сообщениями, которые доставляются по надежным соединениям.

Разрабатываемый ГПДМ должен устранить недостатки известных ПДМ.

В ПДМ Babel:

- маршрутизаторы, не получившие обновлений, продолжают пересылать служебный трафик, который не доставляется получателям;

- при использовании префиксов в служебных сообщениях возможны циклы служебного и рабочего трафиков;

- не выполняются требования масштабирования, поэтому протокол используется для небольших сетей, самый длинный путь в которых составляет 15 переходов.

В ПДМ EIGRP:

- не поддерживается механизм разделения домена маршрутизации на области;

- вычисления маршрутов основаны на префиксах и используют медленные алгоритмы расчета;

- условие выполнимости вычисляется для всех маршрутов сети;

- отсутствуют доказательства полноты условий выполнимости переходов, а следовательно, и оптимальности выбранного маршрута.

Разработанный ГПДМ на каждом технологическом этапе решает следующие задачи.

1. Обеспечение надежности передачи рабочего и служебного трафиков, содержащих информацию о маршруте.

2. Обнаружение подключенных к текущему маршрутизатору Ri каналов (Kj), сетей Si и непосредственно подключенных соседних маршрутизаторов (Rk), присвоение веса подключенным каналам связи, построение таблиц соседей для поддержания отношений смежности с непосредственно подключенными соседними маршрутизаторами.

3. Расчет таблицы маршрутизации, включающий две подзадачи:

3 а) - вычисление наилучшего пути для текущего маршрутизатора Rj к соседним и определение следующих маршрутизаторов, обеспечивающих создание кратчайшего пути к текущему маршрутизатору (решается с использованием модифицированного алгоритма распределенных последовательных номеров DSN (Distributed Sequence Number) протокола RIP);

3б) - пересылка маршрутизатором сети, выполнившим вычисления, параметров вектора стоимости расстояний между своими соседями для определения своего участка наилучшего пути (решается с использованием предложенного алгоритма состояния канала, распределяющего информацию о состоянии каналов между сетями и маршрутизаторами инфраструктуры, используя результаты решения подзадачи 3а).

В статье предлагается решение задачи 3, используя результаты решения задач 1 и 2 как заданные.

Построение алгебраической модели для расчета кратчайших маршрутов

При маршрутизации требуется определить стоимость пути до узла назначения, а при пересылке - стоимость пути до некоторой сети на основании ее описания в удаленных маршрутизаторах. В работах [12, 13] приведены доказательства теорем, которые обоснуют использование полуколец для решения задачи о кратчайшем пути без циклов.

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

Пусть V - множество узлов инфраструктуры n = |V|, а R - множество узлов пересылки (сетей) d = R |, где V n R = 0. Матрица смежности A размерностью nxn использует параметры полукольца (S, ©, 0, 1), S - непустое и нетривиальное множество, а аксиомы операторов, указанных в таблице, справедливы и представляют собой веса связей на графе G = (V, E), в то время как матрица M размерностью nxd, называемая матрицей отображения, моделирует, как узлы в R прикреплены (или подключены) к узлам инфраструктуры в V.

Для простейшего случая предполагаем, что матрица M также принимает свои значения в S. Если 1 - аннигилятор для © (это подразумевает, что © идемпотентна a © a = (a ® 1) © © (a ® I) = a ® (I © I) = a ® I = a), то A* существует и решает уравнение L = (A ® L) © I.

Тогда A* ® M решает уравнение F = (A ® F) © © M.

Аксиомы полукольца Semiring axioms

Аксиома Пояснение

©Ассоциативность a © (b © c) = (a © b) © c

©Коммутативность a © b = b © c

©Нейтральный элемент a © Ö = Ö © a = a

(Ассоциативность a ® (b ® c) = (a ® b) ® c

(Нейтральный элемент a ® I = I © a = a

(Поглощающий элемент a ® Ö = Ö ® a = Ô

Дистрибутивность слева a ® (b © c) = (a ® b) © (a ® c)

Дистрибутивность справа (a © b) ® c = (a ® c) © (b ® c)

d\ ¿2 d\ ¿2

да да 0 5 6

3 да 1 3 7

да да , F = 2 5 5

да 1 3 9 1

2 3 4 2 3

Рассматриваемая задача нахождения матрицы пересылки F делится на две подзадачи: поиск кратчайшего маршрута к узлам инфраструктуры V и распределение матрицы отображения M по узлам инфраструктуры:

0

1

М = 2

3

4

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

Другая алгебраическая конструкция, называемая полумодулями, используется для моделирования порядкового номера. В более общем случае М принимает свои значения в другой алгебраической структуре ЕЕЗ, С> ). где О е х N —> N. Операция ЕВ между матрицами определяется как А ЕВ В = С, где А. В и С одинаковой размерности и С'(7./) = А(/. /) ЕВ />'(/. /). Более того, определяется С> между матрицами как функция А С5" В = С. Если А имеет размерность nxm и B размерность mxd, то C имеет размерность пх^

С(и)= £ А&к)А(?,к) > В{к,]).

1<к<т

Пусть (5", ©, 0, 1) является полукольцом, структура ЕВ , . О, ) называется полумодулем над 5", если выполняются следующие условия:

(Д'г. ЕВ , О , ) - коммутативная полугруппа,

> е (5 х К) -> Ы,

(а <8> Ъ) > с = а > (Ь > с),

0 > т = 0„ ,

5 > 0 = Од, ,

1 > т = т,

ЬБ: 5 > (упШп) = > 7и)ЕН(5 > п),

ЯБ: > т > />г)ш(( > т) ■

Можно проверить, верны ли следующие утверждения о матрицах (размерности I, А, В равны пхп, а С,Мравны ихс/):

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

1) I > С = С,

2) (А ®В) > С = А > (В > С),

3) А > (С ЕЕЗ М) = (А > С) ЕЕЗ (А > М),

4) (4ФЙ)> С = (А > С) ЕВ (В > С).

Пусть (А'г. ЕВ , С> , 0, ) является полумодулем полукольца (5, ©, (, 0, 1), а 1 аннигилятором для (. Если А - матрица смежности, принимающая свои значения в 5, а F - матрица отображения, принимающая свои значения в N. то А" С> М является решением уравнения

Для решения задачи пересылки необходимо решить уравнение /• = (А С> /<) ЕВ М, которое

О.

d11

2

---1 _

d21

Рис. 2. Пример простой маршрутизации и пересылки

Fig. 2. A simple routing and forwarding example

3

2

4

5

3

1

3

6

4

также будет использоваться для решения задачи маршрутизации.

В предложенном алгоритме каждый узел выбирает порядковый номер. Тогда стоимость пути от узла i к самому себе имеет вид (s ,1),

например, если (S, Ф, &) = (R, min, +), то 0S = да и 1 = 0. Определим коммутативные полугруппы (I!, тах,0). Пусть ЕВ определяется следующим образом (лексикографическое произведение maxx min):

(s!, <5?! ) ЕВ (s2, с/2 ) =

( si,di ) ( S2, d2 )

(s, min (d, d2)) s = s = s2.

Функция >fst 6 (Sx(NxS)) -»(NxS) определяется как c/t >,., (s.c/2) = (s.c/l 0i/2). а отключенные узлы не сообщают никакой информации: Ös >и (i.rf) ±(0,ÖS)-

Отношение > определяется следующим об-

ш

разом: L >М(ij) = >« м(?>./') •

qsV

Затем определяется матрица M, которая имеет размерность nxn: M (i, i ) = ( s ,1) и

M (i, j ) = ( 0,0S), где i ф j. Далее алгоритм решает уравнение F = (Л> F)fflM, где М и F

имеют одинаковую размерность, а расчет стоимости производится для узлов инфраструктуры. Идея состоит в том, что при изменении матрицы смежности A у некоторых узлов инфраструктуры не будут найдены маршрутизаторы для некоторых пунктов назначения. Если увеличить порядковый номер для таких узлов назначения, это будет равносильно сбросу для маршрутизации до данных пунктов назначения. Рассмотрим пример на рисунке 3 и сформируем матрицы A, A*, M, F:

A =

M =

0 12 3 0 1 2 3

да 2 1 да 0 "0 2 1 4"

2 да 5 4 15 да 3 . 1 • A= 2 2 0 3 1 3 0 4 3

да 4 3 да 3 4 4 3 0

0 1 2 3

"( S0,0) (0, да) ( 0, да) (0, да)"

( 0, «0 ( *,0) ( 0, да) (0, да)

( 0, да) ( 0, да) ( S2,0 ) (0, да) •

( 0, да) ( 0, да) ( 0, да) ( S3^ )_

F =

0 12 3

(s0,0) (si,2) (s2,l) ( S3,4)

(*o,2) M) (s2,3) (S3,4)

(^Д) ( Sl,3) ( S2, 0) (^,3)

( So,4) (Si,4) (S2,3) ( S3,0 )

Рис. 3. Иллюстрация алгоритма распределения порядковых номеров

Fig. 3. An illustration of the sequence number allocation algorithm

Рассмотрим ситуацию, в которой связь между 0 и 2 нарушена. В соответствии с алгоритмом увеличиваем порядковый номер в матрице M. Новая матрица В смежности имеет следующий вид:

B =

0

да

2

1 2 3

2 да да

да 5 4

5 да 3

4 3 да

0 12 3

0 Г( s'0 ,0 ) (0, да) ( 0, да) (0, да)"

1 ( 0, да) ( Sj',0) ( 0, да) (0, да)

2 (0, да) (0, да) (S,0) (0, да)

3 (0, да) (0, да) (0, да) (S ,0) где s2 = s, +1,

M ' =

F=FSM' =

0 12 3

(■CO) (ip2) (Ä2;l) (Ä,,4)~

(s0,2) (s;,0) (s2,3) (s3,4)

(s0,l) (Sl,3) (40) (s3,3)

(s0,4) (s1,4) ( s2,3) (s3,0)_

0 12 3

F1=(B>F0) EBA/' =

'(^0) (/.2) (,..5) (л...6)

«.2) (,;.o) (45) (44)

(sB,7) (*;,5) (/..II) (/.3)

(S0,4) ft,4) (S2,3) (S3,0)

F2=(B> ij)ÉM'

0 12 3

"«,0) (4,2) (47) (4,6)"

(4,2) (4,0) (4,5) (4,4)

(4,7) (4,5) (4,0) (4,3)

(s'0,6) (s\,4) (s2,3) (s3,0)

F2 =B >M'.

Переходные циклы могут образовываться, когда узлы используют маршруты со старыми порядковыми номерами. Чтобы разрешить данную ситуацию, добавлена проверка условия выполнимости и введен дополнительный бит запроса. Пусть В = {true, false}, а операция V над полугруппой 5xN определяется следующим образом:

(b, st) V (b, s2) = (b v b,max (^, s2)) •

Ясно, что V ассоциативно, коммутативно и (false, 0) является нейтральным элементом. Далее операция ЕВ определяется соотношением

(Ь, äj , dl) Ш (b2, s2, d2) =

(b, ^, ^ ) ^ > s2,

= < (b, s2, ^ ) s1 < s2 ■

(b v b, s, min (^, d2 )) s = s1 = s2,

dx > (¿>, s,d2) = (b, s,d1 <E>d2),

Ös >(b,s,d) = [false, 0,ÜS),

st м (q,j) ■

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

Теперь необходимо вычислить Fk+\ = = (A I, 1 > /•),) ЕВ Mk. Введем матрицу D, которая содержит расстояние выполнимости и вычисляется с использованием уравнения /А i = = Fk+1 fflDt.

Используем условие для проверки выполнимости построения кратчайшего бесциклового маршрута [13]. Узел 5 является возможным маршрутизатором для узла i при маршрутизации в направлении /. если Ft (s, j) <

< D(i,j), где Fk(s,j) - объявленное расстояние

узла 5 до его непосредственно подключенного соседа i, а j - узел назначения. Если нет выполнимого маршрутизатора, запрос на увеличение порядкового номера устанавливается в Fk+i(i, j). Если запрос на увеличение порядкового номера будет установлен для элемента в диагонали /•> i = (At- i > Ft) ЕВ A4, порядковый номер элемента в матрице Mk увеличивается, поэтому порядковый номер также будет увеличен в Fk+\, а бит останется неустановленным для диагонального элемента. Проиллюстрируем работу алгоритма, используя представленные на рисунке 3 значения:

Do= Fo

0 12 3

(f,So,0) (f,s\,2) (f,S2,1) (f,S3,4)

(f,S0,2) (f,s\,0) (f,S2,3) (f,S3,4)

(f, S0,1) (f, S\,3) (f, S2,0) (f, S3,3)

(f,S0,4) (f,S\,4) (f,S2,3) (f,S3,0)_

B =

0 1 2 3

да 2 да да

2 да 5 4

да 5 да 3

да 4 3 да

M 0 =

0

( f, S0,0)

( f ,0, да) ( f ,0, да) .( f ,0, да)

( f ,0, да)

( f, S\,0)

( f ,0, да) ( f ,0, да)

2

( f ,0, да) ( f ,0, да)

( f, S2,0)

( f ,0, да)

( f ,0, да)'

( f ,0, да) ( f ,0, да)

( f, S3,0)

F1=(B>F0)BiM0 =

0

( f, S0,0) ( f, S'0,2) (t, Sp да)

.( f, S0,4)

1

( f , S1 ( f, S1 ( f , S1 ( f , S1

2) 0) 5)

4)

S2 , да)

(t, Sp

( f, S2 ( f, S2 ( f, S2

■3) 0) 3)

( f, S3 ( f, S3 ( f, S3

4 ) 3) 0 )

M, = M n,D, =F,mDn =

1

0 ( f, S0,0) ( f, S!, 2 ) (t, S2, 1) (t, S3,4 )

1 ( f, S0,2) ( f, s„0) ( f,S2,3) ( f, Sз,4 )

= 2 ( u So,\) ( f, s„3) ( f, S2,0 ) ( f, S3,3)

3 _( f, So, 4) ( f, s1,4 ) ( f,S2,3) ( f, S3,0 )

F2 ~-{B>Fl)mMl =

0 1 2 3

0 ( f, So,0 ) ( f, s„2) (t, S2, да) (^ Sз, да)

1 (t, So, 2) ( f, s„0 ) (t, ^ ,5) (t, S3,4 )

= 2 (^ So, да) ( f, s„5) ( f, S2,0) ( f, S3,3)

3 _( t, So, 6) ( f, Sl,4) ( f, S2,3) ( f, S3,0 )

D2 =F2 ЕЕЩ =

0 1 0 Г( f, S0,0) (f, S1 = 1 (t, S0,2) ( f, s,

2 (t,S0,1)

3 L(t, S0,4)

( f , (f,

2) 0)

(t, (t,

M =

3) (f

4) (f

0 1

(f, s0,0) ( f ,0, да)

(f,0,да) (f,s„0) ( f ,0, да) ( f ,0, да) ( f ,0, да) ( f ,0, да)

S2,1) S2,3)

S2,0 )

S2,3) 2

( f ,0, ( f ,0, да)

( f, s2 ,0) ( f ,0, да)

(t,

(t, (f

( f ,

)

S3,4 ) S3,4 ) S3,3) S3,0) 3

( f ,0, да)' ( f ,0, да) ( f ,0, да) ( f, s3 ,0)

1

3

2

3

2

3

2

3

F; =(B>F2)mM2 =

о 1

(f, S0,0) (f, S1,2) (t, S 2, да) (t, S3, да)"

(t, S0,2) ( f, S1,0 ) (t, S2,5) (t, S3,4 )

(t, S0, да) ( f, S1,5) ( f, S2,0) (t, S3,3)

( t, S0,6) ( f, S1,4) (t, S2,3) ( f, s3,0 )

M3=M2,D3=F3mD2 =

3

(t, S3,4)

(t, S3,4)

0 1 2

"(f, s0,0) (f, S1,2) (t, S2,1)

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

(t-S0,2) (Л S1,0) (t, S2 , 3)

(t, S0,1) (f, S1,3) (f, S2,0) (t, S3,3)

_(м0,4) (/,«!, 4) (t,s2,3) (/,^,0)

F4=(Ä>F3)fflM,=

0 12 3

"(f, s0,0) (f, S1,2) (t, S2, да) (t, S3, да)"

(f, s0,2) (f, S1,0) (f, s2,5) (f, s3,4)

(t,S0,да) (f,S1,5) (f,s2,0) (f,s3 ,3)

(t, S0,6) (f, S1,4) (f, s2 ,3) (f, s3 ,0)

MA=M„DA=FAmD,=

0 12 3

"(f,S0,0) (f,S1,2) (t,S2,1) (t,S3,4)"

(f,s0,2) (f,S1,0) (f,s2,3) (f,s3,4)

(t, S0,1) (f, S1,3) (f, s2 ,0) (f, S3 ,3)

( t, S0,4) ( f, S1,4 ) ( f, S2 ,3) ( f, S3 ,0 )_

F5=(B>F4)mM4 =

0 12 3

(f, s0,0) (f, S1,2) (f, s2,7) (f, s3,6)

(f, s0,2) (f, S1,0) (f, s2,5) (f, s3,4)

(f, s0,7) (f, S1,5) (f, s2,0) (f, s3,3)

(f, s0,6) (f, S1,4) (f, s2,3) (f, s3,0)

^ = в' > м4.

Приведенные вычисления выполняются распределенно с помощью дистанционно-векторного алгоритма. Затем решение в форме таблицы маршрутизации (Б*) извлекается (удаляются порядковый номер и бит запроса) из приведенного выше расчета и используется для решения задач пересылки.

Концепция моделирования ГПДМ

Проверка работоспособности и оценка масштабируемости предложенного ГПДМ проведена методами математического моделирования.

В модели узлы графа - это маршрутизаторы, а ребра - связи между ними. Создан также генератор случайных графов для формирования топологий сети. Узлы обмениваются между собой сообщениями с обновлениями маршрутизации по ребрам графа. На рисунке 4 показана диаграмма классов различных служебных сообщений, которыми обмениваются узлы в системе. На рисунке 5 представлена диаграмма классов логики маршрутизации.

TLVCIass Л UpdateMessage Л Class Message

л Properties ^ Len gth j^* Overwrite у*1 Retraction

л Properties NumberOf Entries J* Up date Entries

j* SequenceNum... Methods

Л Type Ф ToString

d Methods (¡) UpdateMessag...

Equals

(1) TLV UpdateEntiy Л Class

ReportedCost

Class Properties

NumberOfTLVs

Properties J* IPv4Network J< RouterID TimeToLive TLVs Methods

/f PrefixLength

W UpdateEntry

MessageClass Л

л Properties

p Area ID

p DestinationRouterIDs

p HeaderLength

p Identification

p LinkID

p MessageType

p MesssageSequenceNumber

p NextMSequenceNumber

p PacketLength

p ReceiveTime

p SendTime

p SourceRouterID

p SourceSequenceNumber

Methods

ea Message (+ 1 overload)

© ToString

Properties Л" Distance

SequenceNum...

ReportedCost

Class -1» Cost

» Properties f* RequestToIncr

NewU pdateEntry

Class

-+ UpdateEntiy

Properties

f1 Destination Rou... ' Methods Ф NewUpdateEntry

Рис. 4. Диаграмма классов сообщений Fig. 4. A message class diagram

Каждое сообщение состоит из общего заголовка и основного текста. Общий заголовок включает следующие поля: длина пакета (общая длина сообщения), идентификатор сообщения, порядковый номер сообщения, идентификатор исходного маршрутизатора, порядковый номер исходного узла, идентификатор области, тип сообщения, длина заголовка, список идентификаторов узлов назначения. Следующий порядковый номер сообщения (NextMSequenceNumber) - это общий счетчик, используемый планировщиком управляемого событиями симулятора для присвоения порядкового номера сообщениям.

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

2

3

« Properties f* HeardFromLinks ft Re ported D 1st an... < Methods О HeardFromLink... О LowestHeardFr... О Neighbor

Rout er EntryC lass ^

Properties

A Cost

Л FeasibleCost

f FeasibleSuccess ...

A Networks

f NextHopNeigh...

f RouterID

Methods

© ContainsNetwork

© GetIPNetwork

© RouterEntry

à Properties Area ID RouterID f* SequenceNum...

LinkC lass ^

Fields

distance

enabled

j Properties

Л ConnectedRout...

* Distance

r Enabled

A LinkID

A MasterRouterID

A Network

Л Methods

© Link (+ 1 overlo ...

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

J Events

f LinkChanged

V

MyRouter

Class

-t> Router

- Fields

rand

Properties

A ConnectedLinks

A ConnectedNetworks

A DefaultDeadInterval

A DefaultHelloInterval

A FeasibleCosts

A IncomingMessageQueue

A IPs

A IsRunning

A LearnedRouterEntries

А N eig h bo rs

А NewUpdateEntries

А Start Time

Methods

Events

f MessageReceived

IPNetworkClass Ä

Properties

A Overwrite

A Prefix

A PrefixLength

A Retracted

A SequenceNum...

Methods

© Equals

© GetHashCode

Рис. 5. Диаграмма классов логики маршрутизации Fig. 5. A routing logic class diagram

наличии запроса к владельцу на увеличение порядкового номера.

Каждая запись обновления также содержит список ТЦУ (тип-длина-значение), а список -узлы, подключенные к владельцу маршрута и распределяемые с помощью алгоритма состояния канала. Например, адреса и префиксы IPv4 распространяются с использованием IPv4TLV. Флаг отзыва (Retracted-flag) должен быть установлен, когда узел-владелец потерял соединение с сетью и хочет удалить запись соединения из БД. Каждый ТКУ сопровождается отдельным порядковым номером, который создается и поддерживается узлом-владельцем. Когда в TLV происходит изменение, порядковый номер увеличивается. Отозванные ТКУ не следует немедленно удалять из БД. Они будут отмечены флагом отзыва и могут быть удалены после истечения настраиваемого значения времени ожидания. Это делается во избежание путаницы, возникающей при получении узлом устаревшего объявления. В этом случае объявление будет проигнорировано.

Сообщения, которыми обмениваются узлы, хранятся в БД и в файле журнала для сбора статистики о производительности протокола.

Каждый узел поддерживает следующие таблицы состояний: таблицу подключенных каналов для хранения информации о непосредственно подключенных каналах, таблицу соседей для хранения информации о ближайших соседях узла, таблицу изученных записей узла

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

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

Результаты моделирования ГПДМ

Представлены результаты моделирования ГПДМ при обмене сообщениями обновления в случайно сгенерированных топологиях с различным количеством маршрутизаторов и каналов. В сценарии моделирования один из каналов «разъединяется», когда время моделирования равно Т/3 (где Т — время продолжительности моделирования), и восстанавливает соединение, когда время моделирования будет равно 2Т3. На приведенных графиках (рис. 6-8) пред-

2000 1500

7 14 24 36 52 70 70 70 70 70 80 90 100

5 6 7 8 9 1011121314151617181920253035353535353535 ■ Ряд1 ■ Ряд2 ■ Ряд3

Рис. 6. Зависимость количества служебных сообщений об обновлении от количества каналов и маршрутизаторов

Fig. 6. The dependence of the number of update service messages on the number of channels and routers

m id

5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 25 30 35 35 35 35 35 35 35 ■ Ряд1 ■ Ряд2 ■ Ряд3

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

Fig. 7. The dependence of the average number of update service messages per channel on the number of channels and routers

ставлена статистика, собранная в результате тестовых запусков. По горизонтальным осям указывается количество каналов и маршрутизаторов в каждом эксперименте. Различные результаты моделирования представлены однотипно в трех рядах: ряд 1 - это измеренное значение в первой трети до отключения канала, ряд 2 - во второй трети после отключения канала и ряд 3 - в последней трети после восстановления соединения.

В результате анализа выявленных зависимостей установлено следующее:

- модифицированный алгоритм распределенных последовательных номеров DSN функционирует устойчиво;

, 1 ■ 1

______lllI.L L 1. 1

300000 200000 100000 0

7 10 1 19 2 30 36 52 60 70 70 70 70 70 70 70 70 70 75 80 85 90 95 100 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 25 30 35 35 35 35 35 35 35 ■ Ряд1 ■ Ряд2 ■ Ряд3

Рис. 8. Зависимость суммарного размера служебных сообщений (в байтах) от количества каналов и маршрутизаторов

Fig. 8. The dependence of the total size of service messages (in bytes) on the number of channels and routers

- разработанный алгоритм расчета кратчайшего маршрута в условиях динамического изменения топологий выполняет вычисления в полном объеме;

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

Оценки зависимостей параметров служебного трафика от количества каналов и количества маршрутизаторов подтверждают критерий Q масштабируемости протокола, поскольку максимальное количество maxQ сообщений об обновлении, необходимых для достижения конвергенции, составляет maxQ = = cElogM, где M - количество маршрутизаторов, E - количество каналов, с - класс сети [3].

Заключение

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

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

Кроме того, ГПДМ использует вектор расстояния только для узлов инфраструктуры, что ограничивает количество обновлений после изменения топологии. Следовательно, в ГПДМ параметры сети объявляются только один раз, а не при каждом изменении расстояния.

Реализация алгоритма имитационной модели ГПДМ показала, что размер обмениваемой между узлами информации для конвергенции маршрута после изменения топологии является предельным по сравнению с тем, который был на начальной фазе расчета маршрута.

Литература

1. Dutt D.G. BGP in the Data Center. O'Reilly Media Publ., 2017, 88 p.

2. Medhi D., Ramasamy K. Network Routing: Algorithms, Protocols, and Architectures. San Francisco, CA, Morgan Kaufmann Publ., 2007, 957 p.

3. Lapukhov P., Premji A. Use of BGP for routing in large-scale data centers. RFC, 2016, no. 7938, 35 p. DOI: 10.17487/RFC7938.

4. Abhashkumar A., Subramanian K., Andreyev A., et al. Running BGP in data centers at scale. Proc. XVIII USENIX Symposium on NSDI, 2021, pp. 65-81.

5. Garcia-Luna-Aceves J.J. Eliminating routing loops and oscillations in BGP using total ordering. Proc. XLVII IEEE Conf. LCN, 2022, pp. 9-17.

6. Fontugne R., Bautista E., Petrie C., Nomura Y., Abry P. et al. BGP zombies: An analysis of beacons stuck routes. Proc. Int. Conf. PAM, 2019, pp. 197-209. DOI: 10.1007/978-3-030-15986-3_13.

7. Patel K., Lindem A., Zandi S., Henderickx W. BGP link-state shortest path first (SPF) routing. Data-tracker. URL: https://datatracker.ietf.org/doc/draft-ietf-lsvr-bgp-spf/ (дата обращения: 02.07.2022).

8. Savage D., Ng J., Moore S., Slice D., Paluch P., White R. Cisco's enhanced interior gateway routing protocol (EIGRP). RFC, 2016, no. 7868, 80 p. DOI: 10.17487/RFC7868.

9. Fuzi M.F.M., Abdullah K., Halim I.H.A., Ruslan R. Network automation using ansible for EIGRP network. JCRINN, 2021, vol. 6, no. 4, pp. 59-69. DOI: 10.24191/jcrinn.v6i4.237.

10. Garcia-Luna-Aceves J.J. Safe, fast, and cycle-free multi-path routing using vouchers. Proc. XLVII IEEE Conf. LCN, 2022, pp. 367-370. DOI: 10.1109/LCN53696.2022.9843624.

11. Chroboczek J., Schinazi D. The babel routing protocol. RFC, 2021, no. 8966, 54 p. DOI: 10.17487/ rfc8966.

12. Khayou H., Rudenkova M.A., Abrosimov L.I. On the algebraic theory of loop free routing. Proc. Int. Conf. DCCN, 2020, pp. 161-175. DOI: 10.1007/978-3-030-66471-8_14.

13. Хаю Х., Орлова М.А., Абросимов Л.И. Алгебраическая методология моделирования бесцикловой маршрутизации // Вестн. ВГТУ. 2022. Т. 18. № 1. С. 47-61. DOI: 10.36622/VSTU.2022.18.1.006.

14. Khayou H., Orlova M.A., Abrosimov L.I. A Hybrid distance vector link state algorithm: distributed sequence number. IJCNA, 2021, vol. 8, no. 3, pp. 203-213. DOI: 10.22247/ijcna/2021/209188.

Software & Systems Received 01.06.22, Revised 13.09.22

DOI: 10.15827/0236-235X.141.071-082 2023, vol. 36, no. 1, pp. 071-082

Developing and modeling a hybrid dynamic routing protocol

L.I. Abrosimov l, Dr.Sc. (Engineering), Professor, AbrosimovLI@mpei.ru Kh. Khayou l, Postgraduate Student, hussein.khayou@gmail.com M.A. Orlova l, Ph.D. (Engineering), Assistant, OrlovaMA@mpei.ru

1 National Research University "Moscow Power Engineering Institute ", Moscow, 111250, Russian Federation

Abstract. Nowadays, the growth of network services significantly increases the requirements for the quality and speed of solving network management problems in ever-growing data centers. The load increase in data centers leads to the need for structural scaling that implies increasing the number of servers and routers. There is a need for simple scalable routing protocols to facilitate automation and management of ever-growing networks, especially in data centers.

The work aims to present and simulate a new hybrid dynamic routing protocol including an upgraded distance vector routing algorithm and a link state algorithm.

The article discusses the solution to the problems of developing a hybrid dynamic routing protocol, which guarantees loop freedom and provides scaling requirements through the development and implementation of simple algorithms that ensure reliable transmission of data and service traffic containing route information and detects channels, networks, and directly connected neighboring routers connected to the current router. The scalability requirements of the new hybrid dynamic routing protocol are met since the distance vector routing algorithm calculates the distances to infrastructure nodes, and not to the network prefixes themselves. The link state algorithm advertises network prefixes only once, which leads to a reduction in the link state database and a reduction in calculations after topology changes. Loop freedom is achieved by introducing a newly developed distributed sequence number algorithm.

A simulation model has been developed to simulate the hybrid dynamic routing protocol. The simulation allowed estimating the amount and volume of service traffic, which confirmed the effectiveness of the developed protocol in the conditions of scaling the data center network.

Keywords: routing protocol scalability, loopless routing, algebraic routing protocol model, link state algorithm, distributed sequence number algorithm, routing protocol modeling, dynamic routing hybrid protocol.

References

1. Dutt D.G. BGP in the Data Center. O'Reilly Media Publ., 2017, 88 p.

2. Medhi D., Ramasamy K. Network Routing: Algorithms, Protocols, and Architectures. San Francisco, CA, Morgan Kaufmann Publ., 2007, 957 p.

3. Lapukhov P., Premji A. Use of BGP for routing in large-scale data centers. RFC, 2016, no. 7938, 35 p. DOI: 10.17487/RFC7938.

4. Abhashkumar A., Subramanian K., Andreyev A., et al. Running BGP in data centers at scale. Proc. XVIII USENIX Symposium on NSDI, 2021, pp. 65-81.

5. Garcia-Luna-Aceves J.J. Eliminating routing loops and oscillations in BGP using total ordering. Proc. XLVIIIEEE Conf. LCN, 2022, pp. 9-17.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

6. Fontugne R., Bautista E., Petrie C., Nomura Y., Abry P. et al. BGP zombies: An analysis of beacons stuck routes. Proc. Int. Conf. PAM, 2019, pp. 197-209. DOI: 10.1007/978-3-030-15986-3_13.

7. Patel K., Lindem A., Zandi S., Henderickx W. BGP link-state shortest path first (SPF) routing. Data-tracker. Available at: https://datatracker.ietf.org/doc/draft-ietf-lsvr-bgp-spf/ (accessed July 02, 2022).

8. Savage D., Ng J., Moore S., Slice D., Paluch P., White R. Cisco's enhanced interior gateway routing protocol (EIGRP). RFC, 2016, no. 7868, 80 p. DOI: 10.17487/RFC7868.

9. Fuzi M.F.M., Abdullah K., Halim I.H.A., Ruslan R. Network automation using ansible for EIGRP network. JCRINN, 2021, vol. 6, no. 4, pp. 59-69. DOI: 10.24191/jcrinn.v6i4.237.

10. Garcia-Luna-Aceves J.J. Safe, fast, and cycle-free multi-path routing using vouchers. Proc. XLVII IEEE Conf. LCN, 2022, pp. 367-370. DOI: 10.1109/LCN53696.2022.9843624.

11. Chroboczek J., Schinazi D. The babel routing protocol. RFC, 2021, no. 8966, 54 p. DOI: 10.17487/ rfc8966.

12. Khayou H., Rudenkova M.A., Abrosimov L.I. On the algebraic theory of loop free routing. Proc. Int. Conf DCCN, 2020, pp. 161-175. DOI: 10.1007/978-3-030-66471-8_14.

13. Khayu Kh., Orlova M.A., Abrosimov L.I. Algebraic methodology for modeling loop-free routing. Vestn. VSTU, 2022, vol. 18, no. 1, pp. 47-61. DOI: 10.36622/VSTU.2022.18.1.006 (in Russ.).

14. Khayou H., Orlova M.A., Abrosimov L.I. A Hybrid distance vector link state algorithm: distributed sequence number. IJCNA, 2021, vol. 8, no. 3, pp. 203-213. DOI: 10.22247/ijcna/2021/209188.

Для цитирования

Абросимов Л.И., Хаю Х., Орлова М.А. Разработка и моделирование гибридного протокола динамической маршрутизации // Программные продукты и системы. 2023. Т. 36. № 1. С. 071-082. DOI: 10.15827/0236-235X.141.071-082.

For citation

Abrosimov L.I., Khayou Kh., Orlova M.A. Developing and modeling a hybrid dynamic routing protocol. Software & Systems, 2023, vol. 36, no. 1, pp. 071-082 (in Russ.). DOI: 10.15827/0236-235X.141.071-082.

i Надоели баннеры? Вы всегда можете отключить рекламу.