Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции_Информационные сети.doc
Скачиваний:
18
Добавлен:
17.04.2019
Размер:
1.41 Mб
Скачать

Метод расщепления горизонта

Для предотвращения образования ложных маршрутов используется несколько методов, один из них - метод расщепления горизонта (split-horizon). Данное правило не так сложно, как может показаться из названия: "Если известно, что путь до узла X лежит через соседний узел Y, то узлу Y не надо посылать объявления маршрута до X".

Мы рассмотрим тот же пример, что и на Рисунке 2, но в условиях, когда действует правило расщепления горизонта. После выхода из строя маршрутизатора А узел В узнает о недееспособности А при первом же обмене. Узлу С правило расщепления горизонта запрещает посылать информацию об А на В, так как путь к А лежит через В. Таким образом, узел С не может теперь (непреднамеренно) обманывать своего соседа слева, и узел В тут же помечает маршрутизатор А как недоступный. После следующего обмена уже С узнает от В о недоступности А, вместе с тем ложная информация от узла D, который все еще считает маршрутизатор А действующим, на С не поступит.

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

Рисунок 3. Пример ситуации, когда правило расщепления горизонта не действует.

Рассмотрим пример сети с избыточной топологией (см. Рисунок 3). В начальный момент времени А и B знают, что расстояние до узла D равно "2". После выхода D из строя маршрутизатор C, не получив от D сообщения, определяет, что узел D недоступен. А и В продолжают считать D доступным, но правило расщепления горизонта запрещает им сообщать эту ложную информацию маршрутизатору С. При следующем обмене C уведомляет A и B о недоступности D. Но одновременно с этим узел А получает от В сообщение о пути до D стоимостью "2", а узел В получает аналогичное сообщение от А. В соответствии с методом расщепления горизонта каждый занесет в таблицу запись о пути до D длиной 3, причем укажет второй узел в качестве источника этой информации. При следующих обменах таблицы уже не будут корректироваться. Таким образом, информация об аварии на D не будет услышана.

Метод временного отказа от приема сообщений

В рассмотренном выше примере маршрутизаторы A и B не смогли корректно определить отказ узла D. Не помогло и правило расщепления горизонта. Подобную проблему помогает решить метод временного отказа от приема сообщений (hold-down), используемый современными протоколами вектора расстояний.

Правило отказа от приема запрещает маршрутизатору, получившему сообщение об отказе узла, принимать объявления маршрута до этого узла в течение некоторого времени. Получив от C уведомление о недоступности D, маршрутизатор А не должен доверять сообщению узла B, так как в момент обмена тот не имел достоверной информации о D. Лишь спустя некоторое время, когда можно быть уверенным, что информация об отказе D распространилась по всей сети, маршрутизатор A может вновь начинать принимать объявления о путях до D. (За это время и А и B сотрут информацию о маршруте до D, так как получат сообщения от С.)