Введение

Процедура предотвращения сетевых маршрутизационных циклов

В компьютерных сетях, реклама маршрутов с разделением горизонта — это метод предотвращения маршрутизационных циклов в протоколах маршрутизации на основе векторов расстояний, который запрещает маршрутизатору рекламировать маршрут обратно через интерфейс, от которого он был получен. Эта концепция была предложена в 1974 году Торстеном Цегреллом и впервые реализована в сети TIDAS, вдохновленной ARPANET.

Пример

В этом примере сетевой узел А направляет пакеты на узел B, чтобы достичь узла C. Связи между узлами – отдельные соединения типа «точка-точка». Согласно правилу разделения горизонта, узел А не сообщает свой маршрут до C (а именно A–B–C) обратно узлу B. На первый взгляд, это может показаться избыточным, поскольку B никогда не будет маршрутизировать трафик через узел A, так как этот маршрут дороже прямого маршрута от B до C. Однако, если соединение между B и C выходит из строя, а B ранее получил маршрут от A до C, B может начать использовать этот маршрут через A. Узел A отправит пакет обратно B, создавая петлю. Это проблема «счет до бесконечности». При использовании правила разделения горизонта этот конкретный сценарий петли невозможен, что улучшает время сходимости в сложных, сильно избыточных сетях. Маршрутизация с разделением горизонта и обратным отравлением является вариантом рекламы маршрутов с разделением горизонта, при котором маршрутизатор активно сообщает о недостижимости маршрутов через интерфейс, через который они были получены, устанавливая метрику маршрута в бесконечность (16 для RIP). Эффект такого объявления заключается в немедленном удалении большинства циклических маршрутов до того, как они успеют распространиться по сети. Основной недостаток обратного отравления заключается в том, что он может значительно увеличить размер объявлений маршрутизации в некоторых распространенных топологиях сети, но позволяет повысить общую эффективность сети в случае сбоев. Правило разделения горизонта гласит, что если соседний маршрутизатор отправляет маршрут, принимающий маршрутизатор не будет распространять этот маршрут обратно отправителю по тому же интерфейсу. При отравлении маршрута, когда маршрутизатор обнаруживает сбой одного из своих подключенных маршрутов, он отравляет маршрут, присваивая ему бесконечную метрику и сообщая об этом своим соседям. Когда маршрутизатор сообщает об отравленном маршруте своим соседям, они нарушают правило разделения горизонта и отправляют обратно отправителю тот же отравленный маршрут, называемый обратным отравлением. Чтобы дать маршрутизатору достаточно времени для распространения отравленного маршрута и предотвратить возникновение петель маршрутизации во время распространения, маршрутизаторы используют механизм удержания.