*

Internetworking Technology Overview.

ГЛАВА 24. IGRP.


IGRP, EIGRP in English from newer release


Библиографическая справка


Протокол маршрутизации внутренних роутеров (Interior GatewayRouting Protokol-IGRP) является протоколом маршрутизации, разработанным в середине 1980 гг. компанией Cisco Systems, Inc. Главной целью, которую преследовала Cisco при разработке IGRP, было обеспечениеживучего протокола для маршрутизации в пределах автономной системы(AS), имеющей произвольно сложную топологию и включающую в себя носитель с разнообразными характеристиками ширины полосы и задержки.AS является набором сетей, которые находятся под единым управлениеми совместно используют общую стратегию маршрутизации. Обычно ASприсваивается уникальный 16-битовый номер, который назначаетсяЦентром Сетевой Информации (Network Information Center - NIC) СетиМинистерства Обороны (Defence Data Network - DDN).

В середине 1980 гг. самым популярным протоколом маршрутизации внутриAS был Протокол Информации Маршрутизации (RIP). Хотя RIP был вполне пригоден для маршрутизации в пределах относительно однородных об'единенных сетей небольшого или среднего размера, его ограничениясдерживали рост сетей. В частности, небольшая допустимая величина числапересылок (15) RIP ограничивала размер об'единенной сети, а его единственный показатель (число пересылок) не обеспечивал достаточнуюгибкость в сложных средах(смотри Главу 23 "RIP"). Популярностьроутеров Cisco и живучесть IGRP побудили многие организации,которые имели крупные об'единенные сети, заменить RIP на IGRP.

Первоначальная реализация IGRP компании Cisco работала в сетях IP. Однако IGRP был предназначен для работы в любой сетевой среде, и вскореCisco распространила его для работы в сетях использующих Протокол Сет безУстановления Соединения (Connectionless Network Protocol - CLNP) OSI.


Технология


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

Протоколы маршрутизации с вектором расстояния часто противопоставляютпротоколам маршрутизации с указанием состояния канала, которые отправляют информацию о локальном соединении во все узлы об'единеннойсети. Рассмотрение двух популярных протоколов, использующих алгоритм маршрутизации с указанием состояния канала, "Открытый протокол салгоритмом поиска наикратчайшего пути" (Open Shortest Path First) и"Промежуточная система-Промежуточная система" (Intermediate System toIntermediate System (IS-IS)), дается соответственно вГлаве 25 "OSPF"и Главе 28 "Маршрутизация OSI".

IGRP использует комбинацию (вектор) показателей. Задержка об'единеннойсети (internetwork delay), ширина полосы (bandwidth), надежность(reliability) и нагрузка (load) - все эти показателиучитываются в видекоэффициентов при принятии маршрутного решения. Администраторы сетимогут устанавливать факторы весомости для каждого из этих показателей.IGRP использует либо установленные администратором, либо устанавливаемые по умолчанию весомости для автоматического расчета оптимальных маршрутов.

IGRP предусматривает широкий диапазон значений для своих показателей. Например, надежность и нагрузка могут принимать любое значение в интервале от 1 до 255, ширина полосы может принимать значения, отражающие скорости пропускания от 1200 до 10 гигабит в секунду, в то время как задержка может принимать любое значение от 1-2 до 24-го порядка. Широкие диапазоны значений показателей позволяют производитьудовлетворительную регулировку показателя в об'единенной сети с большим диапазоном изменения характеристик производительности. Самым важным является то, что компоненты показателей об'единяются по алгоритму, который определяет пользователь. В результате администраторы сети могут оказывать влияние на выбор маршрута, полагаясь на свою интуицию.

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


Формат пакета


Формат пакета IGRP представлен на Рис. 24-1.


Нет рисунка

Первое поле пакета IGRP содержит номер версии (version number). Этот номер версии указывает на используемую версию IGRP и сигнализирует о различных, потенциально несовместимых реализациях.

За полем версии идет поле операционного кода (opcode). Это поле обозначает тип пакета. Операционный код, равный 1, обозначает пакет корректировки; равный 2-пакет запроса. Пакеты запроса используются источником для запроса маршрутной таблицы из другого роутера. Эти пакеты состоят только из заголовка, содержащего версию, операционный код и поля номера AS. Пакеты корректировки содержат заголовок, за которым сразу же идут записи данных маршрутной таблицы. На записи данных маршрутной таблицы не накладывается никаких ограничений, за исключением того, что пакет не может превышать 1500 байтов, вместе с заголовком IP. Если этого недостаточно для того, чтобы охватить весь об'ем маршрутной таблицы, то используются несколько пакетов.

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

За полем выпуска идет поле, содержащее номер AS (AS number). Это поле необходимо по той причине, что роутеры Cisco могутперекрывать несколько AS. Несколько AS (или процессов IGRP) в одномроутере хранят информацию маршрутизации AS отдельно.

Следующие три поля обозначают номер подсетей, номер главных сетей и номер внешних сетей в пакете корректировки. Эти поля присутствуют потому, что сообщения корректировки IGRP состоят из трех частей: внутренней для данной подсети, внутренней для текущей AS и внешней для текущей AS. Сюда включаются только подсети сети, связанной с тем адресом, в который отправляется данная корректировка. Главные сети (т.е. не подсети) помещаются во "внутреннюю для текущей AS" частьпакета, если только они не помечены четко как внешние. Сети помечаются как внешние, если информация о них поступает во внешней части сообщения из другого роутера.

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

Сообщения о корректировке содержат последовательность из семи полейданных для каждой записи данных маршрутной таблицы. Первое из этих полей содержит три значащих байта адреса (address) (в случае адреса IP). Следующие пять полей содержат значения показателей. Первоеиз них обозначает задержку (delay), выраженную в десятках микросекунд.Диапазон перекрывает значения от 10 мксек. до 167 сек. За полем задержки следует поле ширины полосы (bandwidth). Ширина полосывыражена в единицах 1 Кбит/сек и перекрывает диапазон от линии с шириной полосы 1200 бит/сек до 10 Гбит/сек. Затем идет поле MTU,которое обеспечивет размер MTU в байтах. За полем MTU идет поленадежности (reliability), указывающее процент успешно переданных и принятых пакетов. Далее идет поле нагрузки (load), которое обозначает занятую часть канала в процентном отношении. Последним полем в каждой записи данных маршрутизации является поле числа пересылок (hop count). И хотя использование числа пересылок не явно выражено при определении показателя, тем не менее это поле содержится в пакете IGRP и инкрементируется после обработки пакета, обеспечивая использование подсчета пересылок для предотвращения петель.


Характеристики стабильности


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


Временные удерживания изменений

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

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

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


Расщепленные горизонты

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



Роутер 1 (R1) первоначально об'являет, что у него есть какой-томаршрут до Сети А. Роутеру 2 (R2) нет оснований включать этотмаршрут в свою корректировку, отправляемую в R1, т.к. R1 ближе к Сети А. В правиле о расщепленных горизонтах говорится, что R2 должен исключить этот маршрут независимо от того, какие корректировки онотправляет в R1.

Правило о расщепленных горизонтах помогает предотвращать зацикливание маршрутов. Например, рассмотрим случай, когда интерфейс R1 с Сетью А отказывает. Без расщепленных горизонтов R2 продолжал быинформировать R1, что он может попасть в Сеть А (через R1!). Если R1не располагает достаточным интеллектом, он действительно может выбратьмаршрут, предлагаемый R2, в качестве альтернативы своему отказавшемупрямому соединению, что приводит к образованию маршрутной петли. И хотяудерживание изменений должно помешать этому, в IGRP реализованы также расщепленные горизонты, т.к. они обеспечивают дополнительную стабильность алгоритма.


Корректировки отмены маршрута

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


Таймеры

IGRP обеспечивает ряд таймеров и переменных, содержащих временныеинтервалы. Сюда входят таймер корректировки, таймер недействующихмаршрутов, период времени удерживания изменений и таймер отключения.Таймер корректировки определяет, как часто должны отправляться сообщения о корректировке маршрутов. Для IGRP значение этой переменной, устанавливаемое по умолчанию, равно 90 сек. Таймернедействующих маршрутов определяет, сколько времени должен ожидатьроутер при отсутствии сообщений о корректировке какого-нибудь конкретного маршрута, прежде чем об'явить этот маршрут недействующим.Время по умолчанию IGRP для этой переменной в три раза превышает периодкорректировки. Переменная величина времени удерживания определяетпромежуток времени удерживания. Время по умолчанию IGRP для этойпеременной в три раза больше периода таймера корректировки, плюс 10 сек. И наконец, таймер отключения указывает, сколько времени должно пройти прежде, чем какой-нибудь роутер должен бытьисключен из маршрутной таблицы. Время по умолчанию IGRP для этойвеличины в семь раз превышает период корректировки маршрутизации.




(back)



Главная страница