Добавить в корзинуПозвонить
Найти в Дзене
Сетевой сетевик

Что такое RIB и FIB?

Маршрутизатор — это как почтовое отделение или диспетчерская. Чтобы отправить пакет туда, куда нужно, он должен: RIB и FIB — это две разные таблицы, которые отвечают за эти две задачи. Что это:
Полная база всех маршрутов, которые маршрутизатор узнал от всех протоколов (OSPF, BGP, статические маршруты и т.д.). Аналогия:
Представьте, что у диспетчера есть большая папка с картами и расписаниями. Там записаны все возможные маршруты: через какие города ехать, какие дороги перекрыты, какие пути короче, какие предпочтительнее. Это место для хранения и анализа. Характеристики RIB: Что это:
Урезанная, оптимизированная таблица, которая содержит только лучшие маршруты, выбранные из RIB. Используется непосредственно для пересылки пакетов. Аналогия:
У того же диспетчера на рабочем столе лежит маленькая настольная шпаргалка. Там написано только самое главное: «Если пакет в сеть X — отправляй на порт 1».
«Если пакет в сеть Y — отправляй на порт 2». Диспетчер не думает, не сравнивает варианты — он про
Оглавление

1. Общая идея

Маршрутизатор — это как почтовое отделение или диспетчерская. Чтобы отправить пакет туда, куда нужно, он должен:

  1. Знать все возможные пути (это память).
  2. Быстро решать, куда отправить каждый конкретный пакет (это скорость).

RIB и FIB — это две разные таблицы, которые отвечают за эти две задачи.

2. RIB (Routing Information Base) — «Библиотека маршрутов»

Что это:
Полная база всех маршрутов, которые маршрутизатор узнал от всех протоколов (OSPF, BGP, статические маршруты и т.д.).

Аналогия:
Представьте, что у диспетчера есть
большая папка с картами и расписаниями. Там записаны все возможные маршруты: через какие города ехать, какие дороги перекрыты, какие пути короче, какие предпочтительнее. Это место для хранения и анализа.

Характеристики RIB:

  • Хранит все маршруты, полученные от всех источников.
  • Если один и тот же маршрут узнан из нескольких протоколов, RIB хранит все варианты.
  • Именно здесь происходит выбор лучшего маршрута (по метрике, административной дистанции и т.д.).
  • Обновляется нечасто — когда приходит новое объявление от соседа или меняется топология.
  • Занимает много памяти, потому что хранит избыточную информацию.

3. FIB (Forwarding Information Base) — «Шпаргалка для отправки»

Что это:
Урезанная, оптимизированная таблица, которая содержит только
лучшие маршруты, выбранные из RIB. Используется непосредственно для пересылки пакетов.

Аналогия:
У того же диспетчера на рабочем столе лежит
маленькая настольная шпаргалка. Там написано только самое главное:

«Если пакет в сеть X — отправляй на порт 1».
«Если пакет в сеть Y — отправляй на порт 2».

Диспетчер не думает, не сравнивает варианты — он просто смотрит в шпаргалку и мгновенно отправляет.

Характеристики FIB:

  • Содержит только оптимальные маршруты (один или несколько, если используется ECMP).
  • Оптимизирована для быстрого поиска (обычно реализована на аппаратном уровне — в чипах ASIC).
  • Обновляется сразу же после того, как RIB выбрала новый лучший маршрут.
  • Занимает мало памяти, так как содержит только лучшие варианты.

4. Как они связаны (процесс)

Важный момент: RIB может содержать тысячи маршрутов, а FIB — только выигравшие. Если маршрут пропадает (например, упал линк), RIB выбирает следующий лучший из оставшихся и передаёт его в FIB.

5. Аналогия с навигатором

-2

6. Зачем нужно разделение

-3

Главная причина разделения:
Маршрутизатор должен
быстро пересылать пакеты (десятки миллиардов в секунду). Поиск в полной RIB с тысячами записей занял бы слишком много времени. FIB — это сжатая, оптимизированная копия только того, что нужно для пересылки прямо сейчас.

7. Итог одной фразой

RIB — это «мозг», который знает все возможные пути и выбирает лучший, а FIB — это «руки», которые по шпаргалке мгновенно отправляют каждый пакет.