Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Routing Protocols.doc
Скачиваний:
11
Добавлен:
03.12.2018
Размер:
157.7 Кб
Скачать

Маршрутизация на векторе расстояния

  • Алгоритмы вектора расстояния передают периодически копии таблиц маршрутов от Маршрутизатора к Маршрутизатору. Эти регулярные обновления между Маршрутизаторами оповещают об изменениях в топологии.

  • Каждое оповещение имеет такие поля:

    • Сетевой адрес Network identity

    • Маска

    • Стоимость

  • Промежуточные Маршрутизаторы добавляют стоимость перед отсылкой сообщения.

  • Каждый Маршрутизатор получивший оповещение от своих соседей, включает их в свои таблицы.

  • Маршрутизатор который отослал оповещение, записывается как следующий Next Router.

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

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

  • Примеры протоколов RIP, IGRP. RIP отсылает обновления каждые 30 sec; IGRP каждые 90 sec.

Маршрутные петли

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

  1. Перед тем как сеть Network 1 выйдет из строя все Маршрутизаторы имели правильное представление от сети. Говорят, что сеть согласована. Допустим, что для Router C предпочтительный путь к сети Network 1 это путь через Router B, и расстояние от Router C до сети Network 1 равно 3.

  2. Когда сеть Network1 отказала, Маршрутизатор Router E посылает обновления Маршрутизатору Router A. Маршрутизатор Router A прекращает маршрутизировать пакеты в Network 1, но Routers B, C, и D продолжают отсылать, поскольку они еще не информированы об отказе. Когда Маршрутизатор Router A отсылает обновления, Маршрутизаторы Routers B и D прекращают отсылку в Network 1; однако Router C не получил обновления. Для Маршрутизатора Router C, сеть Network 1 продолжает быть достижимой через Router B.

  3. Далее Router C посылает периодическое обновление Маршрутизатору Router D, указывающее путь к сети Network 1 посредством Router B. Router D изменяет свою таблицу для отражения этой доброй но неверной вести и передает далее к Маршрутизатору Router A. Маршрутизатор Router A пересылает информацию Маршрутизатору Routers B и E, и т.д. Любой пакет отправленный в сеть Network 1 будет теперь петлять от Router C к B к A к D и обратно к C.

  • Эти неверные оповещения до тех пор пока все Маршрутизаторы не получат копию плохой маршрутной информации.

Счет до бесконечности Count to Infinity

  • Однако может быть еще хуже.

  • Маршрутизатор Router C имеет только маршрут через B, поскольку некоторое время назад B объявлял маршрут к C. Допустим, что B оповещает "Network 1, стоимость 3".

  • C теперь оповещает "N1, стоимость 4" к D. D в свою очередь "N1, стоимость 5" к A. A далее "N1, стоимость 6" к B.

  • B теперь объявляет "N1, стоимость 7" к C. C отбрасывает старую таблицу и сохраняет новую и начинает объявлять "N1, стоит 8" к D.

  • Этот цикл продолжается неограниченно.

  • Для того чтобы избежать этого определенное значение считается бесконечностью. Как только это значение достигается, маршрутизатор считает, что возникла петля и сеть недоступна. Когда это случается, объявляемый маршрут считается невозможным и никогда не используется. В RIP, это значение 16. Это в частности значит что RIP может использоваться только в сетях с максимум 15 hops.

  • Исключение маршрута в том случае, если метрика равна бесконечности, называется "counting to infinity".

  • Эта техника позволяет избежать циклов, но требует много времени.

Split Horizon

  • Иная возможность возникновения петель - это когда неверная информация отсылается обратно маршрутизатору, которая противоречит информации, которая отослана ранее. Вот как это случается:

  1. Router 2 оповещает "Network 1, cost 1" к Router 1, но затем связь с Network 1 разрывается.

  2. Router 2 удаляет запись о сети Network 1 из таблицы.

  3. по прошествии 30 sec, Router 1 посылает оповещение "Network 1, cost 2" назад к Router 2.

  4. Router 1 теперь считает что он может достичь сети Network 1 через Router 2.

  5. Router 2 в свою очередь считает что он может достичь сети Network 1 через Router 1. Получена петля.

  • Разделение горизонта Split-horizon предназначен для обработки такой ситуации. Как показано на рис, Если маршрутное обновление получено от Router 2, то Router 1 не может отсылать информацию о сети Network 1 обратно к Router 2.

  • При применении split-horizon, информация, полученная от одного маршрутизатора, никогда не отсылается обратно.

  • Однако, Маршрут полученный от другого Маршрутизатора может быть передана. Например, если имеется второй более длинный путь от Router 1 до сети Network 1, то Router 1 может объявить эту информацию Маршрутизатору Router 2.

Split Horizon with Poison Reverse

  • Модифицированный метод разделения горизонта называется разделение горизонта с запретом обратного (Split Horizon with Poison Reverse).

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

  • Эффект тот же в обоих случаях:- петля между двумя маршрутизаторами не образуется.

Hold-Down Timers

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

  • Счет до бесконечности с включением нескольких маршрутизаторов может быть дополнен при помощи hold-down timers, которые работают так:

  1. Если Маршрутизатор не может получить предыдущий маршрут в течение определенного времени hold-down time, Маршрутизатор помечает этот маршрут как невозможный и запускает таймер очистки (flush timer). Маршрутизатор продолжает использовать маршрут, но считает его подозрительным. Этот маршрут также не объявляется соседям.

  2. Если до того как истечет flush timer обновление будет получено от того же соседа и сеть будет вновь доступна Маршрутизатор помечает маршрут как достижимый , и удаляет таймер flush timer.

  3. Если обновление прибывает от иного соседнего маршрутизатора с метрикой лучшей предыдущей записи, маршрутизатор использует новый маршрут. Старый также отмечен при помощи flush timer.

  4. Если в промежутке flush timer обновления получены от иного соседа и метрика хуже предыдущего это обновление игнорируется. Игнорирование таких обновлений предотвращает многозвенные петли и предоставляет больше времени для продвижения информации по сети.

  5. Как только таймер flush timer истечет, подозрительный маршрут удаляется.

  • Обычно, таймер hold-down time кратен периоду оповещения (например, в 3 раза), и таймер flush time также кратен периоду оповещения(. 4 раза).

Route Poisoning

  • Предупреждение: Это совсем не то, что poison reverse, несмотря на название.

  • Когда Маршрутизатор имеет прямую линию, которая разрывается он прекращает оповещать маршрут своим соседям. Тут запускается таймер hold-down timers, который приводит к тому, что все Маршрутизаторы считают маршрут подозрительным.

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

  • Мы должны дождаться пока все таймеры истекут, чтобы сеть пришла в согласование.

  • Ускорением этого служит отравление маршрутов route poisoning. Вместо того чтобы не объявлять разорванную связь он объявляет ее с бесконечной стоимостью.

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

Flash Updates

  • Один из способов увеличить скорость согласования в протоколах Distance Vector это разрешить маршрутизаторам отсылать оповещения немедленно, после того как маршрут отказывает или новые маршруты найдены.

  • Это дает эффект лавинообразного изменения от одного соседа к другому.

  • Недостаток такого подхода для связей `flapping' link (т.е. тех, которые возникают и разрываются), то вся сеть будет наводнена маршрутным трафиком.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]