воскресенье, сентября 25, 2016

Метрика протокола IGRP

Здравствуйте товарищи! Сегодня мы с вами обсудим вопросы, касающиеся метрики протокола IGRP,  её вычисления и применения на практике. Ну что - от винта!

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

K1=K3=1 и K2=K4=K5=0
В случае если K5=0 фрагмент:
отбрасывается и умножение на него не производится.

При желании значения, приведенных выше коэффициентов, можно изменить, в режиме конфигурирования протокола IGRP, командой (Правда компания Cisco не рекомендует этого делать):

metric weights tos k1 k2 k3 k4 k5

где tos  (types of service) это коэффициент предназначенный для указания типа службы (Этот коэффициент, пожалуй, заслуживает отдельного внимания. На сколько я могу понять, этот коэффициент предполагался для того, чтобы для разных сервисов создавать различные маршруты оптимизированные с учетом полосы пропускания, задержки, нагрузки и надежности. То есть для каждого tos должна создаваться отдельная таблица маршрутизации. Но к сожалению, на всех iosах которые я опробовал для написания данной статьи было вот такое интересное примечание - Only TOS 0 supported, то есть поддерживается только обычный уровень приоритета). 

Таким образом при стандартных значениях коэффициентов K1,K3,K4,K4,K5, первоначальная формула для расчета метрики упрощается и принимает вот такой вид:
Давайте теперь попробуем произвести расчет метрики на практике, возьмем пример из прошлой статьи о IGRP, в котором мы не задавали значения полосы пропускания и задержки, то есть использовались их значения по умолчания (одинаковые для всех интерфейсов сети):

  Hardware is AmdFE, address is c800.0a0c.0000 (bia c800.0a0c.0000)
  Internet address is 192.168.1.1/24
  MTU 1500 bytes, BW 100000 Kbit, DLY 100 usec,
     reliability 255/255, txload 1/255, rxload 1/255

Значение пропускной способности определяется следующим образом. Выбирается интерфейс с наименьшей пропускной способность на пути к необходимой сети. 10 000 000 делится на значение пропускной способности этого интерфейса. На выходе имеем значение пропускной способности, используемое для расчета.

Значение задержки определяется как сумма всех задержек на исходящих интерфейсах к сети назначения, деленная на 10.

Возьмем маршрут: 

192.168.2.0/24 [100/120] via 192.168.1.2, 00:00:31, FastEthernet0/0

С маршрутизатора 4, прошлой статьи.

Для нашего примера получаем:

Метрика = 10 000 000/100 000 + (100+100)/10 = 100+20 = 120

100 000 - минимальная пропускная способность на пути к сети назначения
100+100 - задержка на всех исходящих интерфейсах на пути к сети назначения.

Ну что же формула верна.

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

Рекомендовано задавать эти значения исходя из следующих соображений:

Тип интерфейса
Пропускная способность (Kb/s)
Задержка (uS)
Gigabit Ethernet
1000000
10
Fast Ethernet
100000
100
Ethernet
10000
1000
T1
1544
20000
E1
2048
20000
DS0
64
20000
Tunnel
9
500000






Но в нашем примере, для улучшения понимания процесса расчета метрики, мы зададим эти параметры следующим образом:

Маршрутизатор 4:

R4(config)#interface fastEthernet 0/0
R4(config-if)#bandwidth 10 (Это в килобитах)
R4(config-if)#delay 10 (А это в десятках микросекунд, то есть 100мкс)
R4(config)#interface fastEthernet 0/1
R4(config-if)#bandwidth 20
R4(config-if)#delay 20

Маршрутизатор 5:

R5(config)#interface fastEthernet 0/0
R5(config-if)#bandwidth 30
R5(config-if)#delay 30
R5(config)#interface fastEthernet 0/1
R5(config-if)#bandwidth 40
R5(config-if)#delay 40

Маршрутизатор 6:

R6(config)#interface fastEthernet 0/0
R6(config-if)#bandwidth 50
R6(config-if)#delay 50
R6(config)#interface fastEthernet 0/1
R6(config-if)#bandwidth 60
R6(config-if)#delay 60

Маршрутизатор 8:

R8(config)#interface fastEthernet 0/0
R8(config-if)#bandwidth 70
R8(config-if)#delay 70
R8(config)#interface fastEthernet 0/1
R8(config-if)#bandwidth 80
R8(config-if)#delay 80

После всего этого возьмем из таблицы маршрутизации маршрутизатора 4 маршрут вида:

I    192.168.100.0/24 [100/500100] via 192.168.99.2, 00:01:46, FastEthernet0/1

И попробуем проверить значение метрики:

Метрика = 10 000 000/20 + (200+800)/10 = 500 000 + 100 = 500100
20 - минимальная пропускная способность на интерфейсе fa0/1 R4. (Пропускная способность на fa0/1 R8, больше поэтому её не учитываем)
200 - задержка на fa0/1 R4
800 - задержка на fa0/1 R8

Или же например на маршрутизаторе 6:
I    192.168.99.0/24 [100/166796] via 192.168.100.1, 00:01:05, FastEthernet0/1

Метрика = 10 000 000/60 + (600+700)/10 = 166 666 + 130= 166796
60 - минимальная пропускная способность на интерфейсе fa0/1 R6. (Пропускная способность на fa0/0 R8, больше поэтому её не учитываем)
600 - задержка на fa0/1 R6
700 - задержка на fa0/0 R8

Если у вас есть какие либо вопросы по поводу расчета метрики протокола IGRP, то с радостью постараюсь на них ответить. Удачи и до новых встреч.

0 коммент.:

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