Ручная настройка маршрутов в таблице маршрутизации для каждого устройства в большой сети была бы невероятно утомительной задачей. Для автоматизации этого процесса мы используем динамические протоколы маршрутизации. Эти протоколы позволяют маршрутизаторам автоматически адаптироваться к изменениям в сети, изучая различные маршруты, внося их в таблицу маршрутизации и соответствующим образом пересылая пакеты. Существует два основных типа протоколов маршрутизации: вектор расстояния и состояние канала.
Протоколы векторного расстояния
Протоколы векторного расстояния работают по принципу «маршрутизация по слухам». Каждый маршрутизатор через регулярные промежутки времени делится всей своей таблицей маршрутизации с непосредственно подключенными соседями. Когда маршрутизатор получает таблицу маршрутизации от соседа, он обновляет свою собственную таблицу любой новой или лучшей информацией о маршрутах. «Расстояние» обычно измеряется метрикой, такой как количество переходов (hop count). Этот метод прост, но может медленно сходиться и подвержен петлям маршрутизации. Примером протокола векторного расстояния является Протокол информации о маршрутизации (RIP).
Протоколы состояния канала
В отличие от них, протоколы состояния канала предоставляют каждому маршрутизатору полную карту топологии сети. Вместо того чтобы делиться всей своей таблицей маршрутизации, маршрутизаторы отправляют информацию о состоянии своих собственных каналов (например, о подключенных соседях и стоимости соединения) всем остальным маршрутизаторам в сети. Используя эту информацию, каждый маршрутизатор может независимо построить идентичную карту сети и рассчитать наилучший путь к каждому назначению. Этот подход приводит к более быстрой сетевой сходимости и является более масштабируемым, чем протоколы векторного расстояния. Примером является протокол OSPF (Open Shortest Path First).
Сетевая сходимость
Прежде чем мы углубимся в протоколы, важно понять ключевое понятие в маршрутизации, известное как сетевая сходимость. При использовании протоколов маршрутизации маршрутизаторы обмениваются информацией для ее сбора и обмена. Сходимость — это состояние, при котором все маршрутизаторы имеют согласованное и точное представление о топологии сети. Когда каждая таблица маршрутизации правильно отображает всю сеть, сеть считается «сошедшейся». Если происходит изменение, например, отказ канала, сходимость временно нарушается до тех пор, пока все маршрутизаторы не узнают об изменении и не обновят свои таблицы маршрутизации.