1. Демо BGP
Сгенерированное демо BGP загружается автоматически. В нём 13 маршрутизаторов, 22 BGP-сессии и два route reflector с намеренно разными возможностями BMP.
- Убедитесь, что сгенерированная демо-топология присутствует; загрузка или ручное добавление демо не требуется.
- Откройте Общий вид и убедитесь, что оверлей BGP виден. Оверлей включён по умолчанию; элемент управления позволяет скрыть и вернуть его.
- Найдите маршрутизаторы с Router ID 123.123.100.100 (RFC 7854) и 123.123.101.101 (RFC 7854 + RFC 9069 + RFC 8671). Указанные RFC определяют, какие RIB доступны Topolograph через BMP от каждого route reflector.
IGP-топология остаётся базовым графом. Оверлей BGP добавляет сессии, не заменяя связность OSPF.
2. BGP-сессии
Используйте оба представления: таблица позволяет точно отфильтровать BGP-сессии, а графическое представление BGP-сессий в виде оверлея указывает, где выбранная сессия расположена в топологии.
- Откройте BGP Sessions и отфильтруйте столбец peer ip по значению 123.123.31.31.
- Убедитесь, что у 123.123.31.31 (PE31) одна BGP-сессия - с 123.123.100.100 (RR1) - и нет BGP-сессии с 123.123.101.101 (RR2).
- Вернитесь в Общий вид и найдите ту же связность PE и 123.123.100.100 (RR1) в оверлее BGP.
Отфильтрованная таблица BGP Sessions ниже делает случай ограничения RFC 7854 наглядным: у 123.123.31.31 (PE31) одна наблюдаемая сессия - к 123.123.100.100 (RR1).
Этот 123.123.31.31 (PE31) с одной BGP-сессией демонстрирует ограничение RFC 7854, которое используется далее в руководстве.
3. Представление RIB
BMP-сессия, установленная с route reflector, не даёт автоматически представление о таблице каждого RR-клиента. Самое точное представление состояния таблицы маршрутизации даёт BMP-сессия с возможностью отправки Loc-RIB, но Topolograph может также работать с некоторыми допущениями, когда доступна не вся информация. Например, состояние RIB устройства можно вывести из RFC 8671 Adj-RIB-Out post-policy соседнего BMP-speaker в направлении этого устройства, даже если с самим устройством BMP-сессия не установлена.
Покрытие BMP по RFC и его смысл для расчёта пути
| Данные BMP | Владелец и направление наблюдаемой RIB | Можно ли рассчитать путь для указанного устройства? | Необходимое допущение |
|---|---|---|---|
| RFC 7854 Adj-RIB-In pre-policy и post-policy | Adj-RIB-In принадлежит BMP-speaker и содержит маршруты, полученные им от BGP-соседа | Нет | Adj-RIB-In не показывает, какой маршрут BMP-speaker выбрал и установил в Loc-RIB |
| RFC 9069 Loc-RIB | Loc-RIB принадлежит BMP-speaker и содержит выбранные им маршруты | Да | Нет |
| RFC 8671 Adj-RIB-Out post-policy | Adj-RIB-Out принадлежит BMP-speaker и содержит маршруты, анонсированные им конкретному BGP-соседу; для этого соседа поток используется как предполагаемый Adj-RIB-In | Да | Входящая политика и итоговая Loc-RIB BGP-соседа не наблюдаются |
Маршрутизаторы в демо-сети и зона видимости маршрутной информации
| Маршрутизатор или группа | Данные BMP в Topolograph | Расчёт пути | Допущения |
|---|---|---|---|
| 123.123.101.101 (RR2) | Loc-RIB принадлежит 123.123.101.101 (RR2) и получена непосредственно от него через RFC 9069 | Доступен | Нет |
| 123.123.30.30 (PE30); 123.14.14.14 (PE14) | Adj-RIB-Out post-policy принадлежит 123.123.101.101 (RR2) и направлена соответствующему устройству; для устройства используется как предполагаемый Adj-RIB-In | Доступен | Входящая политика и итоговая Loc-RIB устройства не наблюдаются |
| 123.10.10.10 (Core10); 123.123.110.110 (Core110) | Adj-RIB-Out post-policy принадлежит 123.123.101.101 (RR2) и направлена соответствующему устройству; для устройства используется как предполагаемый Adj-RIB-In | Доступен | Входящая политика и итоговая Loc-RIB устройства не наблюдаются |
| 123.15.15.15 (PE15) | Наблюдается Loc-RIB владельца 123.123.101.101 (RR2); его Adj-RIB-Out в направлении 123.15.15.15 (PE15) не экспортируется через BMP | Доступен | Предполагается, что 123.123.101.101 (RR2) анонсировал выбранный маршрут 123.15.15.15 (PE15), а 123.15.15.15 (PE15) принял его после входящей политики |
| 123.11.11.11 (Core11), 123.13.13.13 (Core13), 123.123.111.111 (Core111), 123.30.30.30 (Core30), 123.31.31.31 (Core31) | Наблюдается Loc-RIB владельца 123.123.101.101 (RR2); его Adj-RIB-Out в направлении этих устройств не экспортируется через BMP | Доступен | Предполагается, что 123.123.101.101 (RR2) анонсировал выбранный маршрут каждому устройству, а устройство приняло его после входящей политики |
| 123.123.100.100 (RR1) | RFC 7854 от 123.123.100.100 (RR1) показывает его Adj-RIB-In, но не Loc-RIB; для расчёта используется Loc-RIB владельца 123.123.101.101 (RR2), чей Adj-RIB-Out в направлении RR1 не экспортируется через BMP | Доступен | Предполагается, что 123.123.101.101 (RR2) анонсировал выбранный маршрут 123.123.100.100 (RR1), а 123.123.100.100 (RR1) принял его после входящей политики |
| 123.123.31.31 (PE31) | Adj-RIB-In pre-policy и post-policy принадлежит 123.123.100.100 (RR1) и содержит маршруты, полученные им от 123.123.31.31 (PE31); для PE31 это доказывает только его Adj-RIB-Out. Данных о маршрутах в направлении PE31 нет | Недоступен | Наблюдаемые данные не показывают Loc-RIB или Adj-RIB-In 123.123.31.31 (PE31) |
123.123.101.101 (RR2) экспортирует через BMP данные Adj-RIB-Out post-policy только для выбранных BGP-соседей. Это допустимо: мониторинг BMP Adj-RIB-Out настраивается для каждого BGP-соседа и семейства адресов, хотя сам BGP поддерживает Adj-RIB-Out для каждого установленного BGP-соседа.
4. BGP-маршруты
Начните с таблицы BGP Routes уровня всего графа, прежде чем сужать до одного маршрутизатора. Здесь можно изучить и отфильтровать данные маршрутов, собранные по всему демо.
- Откройте Graph table и выберите BGP Routes. Оставьте таблицу в режиме Онлайн.
- Используйте столбцы prefix, bmp source, bmp ribs, peer ip и атрибуты пути, чтобы найти нужный набор маршрутов.
Полноэкранная таблица Онлайн ниже показывает BGP Routes для всего графа.
Таблица BGP Routes показывает маршруты, собранные для всего графа.
5. Представление маршрутов в форме устройства
Счётчик маршрутов в форме устройства отображает представление RIB для этого маршрутизатора: по Loc-RIB, полученному через BMP-сессию с этого устройства, либо по Adj-RIB-Out post-policy, полученному через BMP-сессию с соседнего устройства.
- Нажмите на 123.14.14.14 (PE14) на графе и найдите раздел BGP в форме устройства.
- Убедитесь, что Routes равно 4, и прочитайте пояснение: 123.123.101.101 (RR2) анонсировал эти маршруты 123.14.14.14 (PE14) через RFC 8671.
- Прочитайте разбивку по RIB. Adj-RIB-Out post-policy описывает экспортированный RIB 123.123.101.101 (RR2); с точки зрения 123.14.14.14 (PE14) эти четыре анонса - его предполагаемый Adj-RIB-In.
- Строка Adj-RIB-Out (post) 4 входит в Routes: это Adj-RIB-Out маршрутизатора 123.123.101.101 (RR2) в направлении 123.14.14.14 (PE14), используемый как предполагаемый Adj-RIB-In 123.14.14.14 (PE14).
Эта форма показывает представление RIB для 123.14.14.14 (PE14): четыре маршрута из Adj-RIB-Out post-policy, полученного через BMP от 123.123.101.101 (RR2).
Форма 123.14.14.14 (PE14) показывает четыре маршрута, источник BMP 123.123.101.101 (RR2) и RIB Adj-RIB-Out post-policy. Счётчик Маршруты не включает маршруты, которые 123.14.14.14 (PE14) анонсировал 123.123.101.101 (RR2), и другие BMP-наблюдения, не используемые для представления RIB 123.14.14.14 (PE14).
6. Фильтрация, сортировка и постраничный просмотр маршрутов одного узла
Откройте таблицу маршрутов из формы устройства: таблица сохранит область RIB, выбранную для 123.14.14.14 (PE14).
- Нажмите Routes 4 на 123.14.14.14 (PE14). Убедитесь, что панель содержит ровно 100.30.0.0/24, 10.100.31.0/24, 2001:db8:123:123:30:30::/96 и 2001:db8:100:31::/64.
- Отфильтруйте столбец prefix по значению 100.30.0.0/24. Совпадающие строки и счётчик таблицы должны оба уменьшиться с 4 до 1.
- Очистите фильтр prefix и самостоятельно проверьте другие атрибуты этих маршрутов: local pref = 250 оставляет два VPN-маршрута, afi = 2 оставляет два IPv6-маршрута, а med = 20 оставляет два маршрута от 123.123.30.30 (PE30).
- Очистите фильтры и убедитесь, что все четыре маршрута 123.14.14.14 (PE14) вернулись. Очистка фильтра таблицы не должна убирать область устройства, заданную формой.
- Нажмите на сортируемый заголовок, например prefix, nexthop, local pref или med. Повторные нажатия циклически переключают сортировку по возрастанию, по убыванию и без сортировки; столбцы адресов используют порядок адресов, а не текстовый порядок.
- Используйте Rows per page для больших таблиц маршрутов. В этом примере с областью узла в демо всего одна страница, поэтому элементы «предыдущая» и «следующая» корректно остаются отключёнными.
Таблица ниже сохраняет область 123.14.14.14 (PE14) и добавляет фильтр префикса, оставляя один совпадающий маршрут.
Отфильтрованная строка показывает 123.123.101.101 (RR2) как bmp source и Adj-RIB-Out post-policy как наблюдаемый RIB.
7. Выбор лучшего пути
Для каждого префикса демо демонстрирует отдельный критерий выбора лучшего пути. Начните с AS_PATH: сравните атрибуты кандидатов, затем постройте маршрут от 123.123.101.101 (RR2) и проверьте выбранный BGP next hop.
Пилотный пример: побеждает AS_PATH
- Отфильтруйте BGP Routes по 198.18.2.0/24.
- Сравните двух кандидатов: у обоих
Local Preference100,OriginIGP иMED10. 123.123.30.30 (PE30) анонсируетAS_PATH65010 65011 65012; 123.14.14.14 (PE14) анонсируетAS_PATH65010. - Переключитесь в режим пути BGP / VPN. Задайте Router равным 123.123.101.101 (RR2), VPN или глобальную таблицу равной global, а To равным 198.18.2.0/24; затем выберите Build a path.
- В Route resolution убедитесь, что первая строка - BGP на 123.123.101.101 (RR2) с next hop 123.14.14.14 (PE14). Остальные строки разрешают выбранный next hop через IGP.
Отфильтрованная таблица BGP Routes ниже показывает двух кандидатов до построения маршрута.
Далее выберите форму нахождения пути BGP / VPN и укажите 123.123.101.101 (RR2), глобальную таблицу и этот префикс.
В таблице Route resolution первая строка показывает выбор BGP next hop 123.14.14.14 (PE14) на 123.123.101.101 (RR2), а следующие строки строятся по данным OSPF.
Кандидаты post-policy различаются длиной AS_PATH, тогда как Local Preference, Origin и MED равны. Построение маршрута от 123.123.101.101 (RR2) выбирает 123.14.14.14 (PE14) как BGP next hop; следующие строки IGP показывают достижимость этого BGP next hop.
Другие примеры выбора лучшего пути
| Решение | Префикс | Ожидаемый BGP next hop | Чем отличается |
|---|---|---|---|
| LOCAL_PREF | 198.18.1.0/24 | 123.123.30.30 (PE30) | Более высокий Local Preference |
| AS_PATH | 198.18.2.0/24 | 123.14.14.14 (PE14) | Более короткий AS_PATH |
| ORIGIN | 198.18.3.0/24 | 123.123.30.30 (PE30) | Origin IGP лучше, чем incomplete |
| MED сравнивается | 198.18.4.0/24 | 123.14.14.14 (PE14) | Более низкий MED из той же соседней AS |
| MED не сравнивается | 198.18.5.0/24 | 123.14.14.14 (PE14) | Разные значения соседней AS делают MED неприменимым |
| Originator ID | 198.18.6.0/24 | 123.14.14.14 (PE14) | Более низкий originator ID после предыдущих равенств |
Дополнительные критерии выбора лучшего пути
Демо показывает шесть критериев из процесса выбора лучшего пути BGP, перечисленных в таблице выше. Оно не демонстрирует выбор eBGP вместо iBGP, сравнение стоимости IGP до next hop, возраста маршрута, длины cluster-list или адреса BGP-соседа.
8. Сравнение состояния маршрутов между двумя моментами
Онлайн показывает текущее состояние таблицы маршрутов. Сравнение сопоставляет состояние маршрутов в T0 и T1.
- Откройте таблицу BGP Routes уровня всего графа и переключитесь с Онлайн на Сравнение.
- Оставьте интервал T0-T1 по умолчанию длиной в один час, создаваемый при загрузке демо, затем нажмите Запустить.
- Таблица показывает один добавленный маршрут 100.14.210.0/24; столбец changed at содержит время последнего изменения этого маршрута до T1.
- Статус added означает, что маршрут отсутствовал в T0 и присутствует в T1; withdrawn - присутствовал в T0 и отсутствует в T1; changed - присутствует в обоих состояниях, но его атрибуты различаются. События после T1 в сравнение не входят.
- Переключитесь обратно на Онлайн, чтобы открыть текущее состояние таблицы маршрутов.
Сравнение ниже - это разница по конечным точкам для окна демо по умолчанию, а не хронологический журнал событий.
Для интервала демо по умолчанию маршрут 100.14.210.0/24 имеет статус added и MED 80 в состоянии T1.
Отдельные события BGP
Режим События использует ту же таблицу BGP Routes и интервал времени, но показывает каждое наблюдение маршрута и BGP-соседа, а не только разницу между T0 и T1.
- Переключитесь из режима Сравнение в режим События и оставьте интервал времени, охватывающий изменения в демо.
- Нажмите Запустить и проверьте одно добавление маршрута, одно событие peer down и одно изменение маршрута для 100.14.210.0/24.
- Используйте столбцы event, kind, prefix, peer source, peer target и at, чтобы отличить изменения маршрутов от изменений состояния BGP-сессии.
Режим События ниже перечисляет наблюдения по времени: добавленный маршрут, событие peer down, затем изменённый маршрут с MED 80.
Режим События показывает все три наблюдения по порядку. В отличие от режима Сравнение, он сохраняет промежуточные события, даже когда итоговое состояние маршрута не изменилось.
9. Разрешение BGP next-hop через OSPF
BGP выбирает маршрут; OSPF обеспечивает достижимость выбранного BGP next hop. Представление пути показывает эту передачу явно.
- В режиме пути Standard / IGP используйте 123.123.30.30 (PE30) как источник и 100.14.0.0/24 как назначение.
- Изучите выбранную строку BGP и определите 123.14.14.14 (PE14) как BGP next hop.
- Откройте Route resolution и читайте результат слева направо: первая строка - BGP с административным расстоянием 200 и next hop 123.14.14.14 (PE14).
- Продолжите по пяти строкам IGP с административным расстоянием 110, которые физически разрешают достижимость от 123.123.30.30 (PE30) до 123.14.14.14 (PE14).
Таблица ниже отделяет единственный выбор BGP-маршрута от IGP-хопов, которые делают его next hop достижимым.
BGP next hop указывает на 123.14.14.14 (PE14), затем остальная часть маршрута строится по данным OSPF.
10. Недоступное для построения представление
Отфильтруйте по 123.123.31.31 (PE31). Topolograph может показать маршруты, которые 123.123.100.100 (RR1) получил от 123.123.31.31 (PE31), но один RFC 7854 не раскрывает, какой маршрут установил 123.123.31.31 (PE31) или что 123.123.100.100 (RR1) анонсировал ему в ответ.
- Откройте BGP Routes и отфильтруйте столбец peer ip по значению 123.123.31.31. Adj-RIB-In (pre) и Adj-RIB-In (post) показывают маршруты, которые 123.123.100.100 (RR1) получил от 123.123.31.31 (PE31), но не таблицу маршрутизации 123.123.31.31 (PE31).
- Перейдите в форму нахождения пути BGP / VPN и выберите Router 123.123.31.31. Форма предупреждает, что таблица этого маршрутизатора не наблюдается, и не позволяет построить путь по данным BGP.
- Сравните 123.123.31.31 (PE31) с 123.15.15.15 (PE15): для 123.15.15.15 (PE15) Topolograph использует Loc-RIB 123.123.101.101 (RR2) и явно указывает допущение, что 123.123.101.101 (RR2) анонсировал маршрут 123.15.15.15 (PE15), а 123.15.15.15 (PE15) применил входящую политику.
Topolograph не строит путь, если доступные BMP-данные не описывают таблицу маршрутизации выбранного устройства. Чтобы снять это ограничение, предоставьте Loc-RIB устройства через RFC 9069 или его Adj-RIB-Out post-policy для каждого BGP-соседа через RFC 8671.