Методы борьбы с ложными маршрутами в протоколе RIP

Хотя протокол RIP не в состоянии полностью исключить в сети переходные со­стояния, когда некоторые маршрутизаторы пользуются устаревшей информаци­ей о несуществующих маршрутах, имеется несколько методов, которые во мно­гих случаях решают подобные проблемы.

; Проблема с петлей/ образующейся между соседними маршрутизаторами, надежно решает­ся; помощью метода расщеплений горизонта. Этот метод заключается в-том, что Map* Шругнрц информация о некоторойоетиг хранящаяся & таблице маршрутизации, никогда не пе^даетоя тому маршрутизатору» от которого она получена.

Практически все сегодняшние маршрутизаторы, работающие по протоколу Rl Р, используют технику расщепления горизонта. Если бы маршрутизатор R2 в рас­смотренном выше примере поддерживал технику расщепления горизонта, то он бы не передал маршрутизатору R1 устаревшую информацию о сети 201.36.14.0, так как получил ее именно от маршрутизатора R1.

Однако расщепление горизонта не помогает в тех случаях, когда петли образу­ются не двумя, а несколькими маршрутизаторами. Рассмотрим более детально ситуацию, которая возникнет в сети, приведенной на рис. 19.15, в случае потери связи маршрутизатора R1 с сетью 201.36.14.0. Пусть все маршрутизаторы этой сети поддерживают технику расщепления горизонта. Маршрутизаторы R2 и R3 не будут возвращать маршрутизатору в этой ситуации данные о сети 201.36.14.0 с метрикой 2, так как они получили эту информацию от маршрутизатора R1. Од­нако они будут передавать маршрутизатору информацию о достижимости сети 201.36.14.0 с метрикой 4 через себя, так как получили эту информацию по слож­ному маршруту, а не непосредственно от маршрутизатора R1. Например, мар­шрутизатор R2 получил эту информацию по цепочке R4-R3-R1, поэтому мар­шрутизатор R1 снова может быть обманут, пока каждый из маршрутизаторов в цепочке R3-R4-R2 не вычеркнет запись о достижимости сети 201.36.14.0.

Для предотвращения зацикливания пакетов по составным петлям при отказах связей применяются два других приема, называемые триггерными обновления­ми и замораживанием изменений.

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


Второй прием — замораживание изменений — позволяет исключить подобные ситуации. Он связан с введением тайм-аута на принятие новых данных о сети, которая только что стала недоступной. Этот тайм-аут предотвращает принятие устаревших сведений о некотором маршруте от тех маршрутизаторов, которые находятся на некотором расстоянии от отказавшей связи и передают устаревшие сведения о ее работоспособности. Предполагается, что в течение тайм-аута «за­мораживания изменений» эти маршрутизаторы вычеркнут данный маршрут из своих таблиц, так как не получат о нем новых записей и не будут распространять устаревшие сведения по сети.