Управление трафиком
Содержание:
Входящий трафик
AS path prepend
Это механизм, который позволяет “ухудшить” путь BGP.
BGP вместе с префиксом всегда передает атрибуты, которые описывают политики. Один из атрибутов, который должен обязательно присутствовать в обновлении BGP это AS path. Он описывает через какие автономные системы идет путь к соответствующему префиксу.
Community
Атрибут community:
- Тегирование маршрутов
- Существуют предопределенные значения
- По умолчанию не пересылаются соседям
- Один из вариантов применения: передается соседней AS для управления входящим трафиком
Если маршрутизатор получает маршрут в котором указано предопределенное значение communities, то он выполняет специфическое, предопределенное действие основанное на значении атрибута.
Предопределенные значения communities:
- no-export (0xFFFFFF01) — Маршруты не должны анонсироваться за пределы конфедерации (AS, которая не является частью конфедерации считается конфедерацией). То есть, маршруты не анонсируются EBGP-соседям, но анонсируются внешним соседям в конфедерации
- no-advertise (0xFFFFFF02) — Маршруты не должны анонсироваться другим BGP-соседям
- no-export-subconfed (0xFFFFFF03) — Маршруты не должны анонсироваться внешним BGP-соседям (ни внешним в конфедерации, ни настоящим внешним соседям). В Cisco это значение встречается и под названием local-as.
! Маршрутизаторы которые не поддерживают атрибут community, будут передавать его далее, так как это transitive атрибут.
MED
Атрибут MED:
- Используется для информирования eBGP-соседей о том, какой путь в AS более предпочтительный.
- Атрибут передается между AS.
- Маршрутизаторы внутри соседней AS используют этот атрибут, но, как только обновление выходит за пределы AS, атрибут MED отбрасывается.
- Чем меньше значение атрибута, тем более предпочтительна точка входа в AS.
Особенности в Cisco IOS
- Атрибут MED в IOS называется метрикой.
- По умолчанию равен 0.
- По умолчанию не передается с маршрутами, не обязательный атрибут.
- Исключение из этого правила: маршруты, которые анонсируются локальным маршрутизатором (с помощью команды network или перераспределения маршрутов), и для которых есть полное совпадение в таблице маршрутизации. В таком случае маршрутизатор использует метрику в таблице маршрутизации как атрибут MED.
Анонс разных перефиксов через разных ISP
Internet Service Provider
BGP AS path filter
Так как с каждым префиксом, который передает BGP, передается описание пути через автономные системы, то этот атрибут удобно использовать для создания политик.
С помощью специальных объектов описывается как должен выглядеть атрибут AS path. Например, какие номера автономных систем должны в нем встречаться. А затем эти объекты применяются в правилах фильтрации или при настройке политик с изменениями атрибутов.
Пример
Клиент подключен к двум провайдерам, у него настроен BGP, и необходимо фильтровать трафик таким образом, чтобы провайдерам анонсировались только сети клиента. Необходимо избежать ситуации, когда клиент может стать транзитной AS из-за того, что он анонсирует сети провайдеров друг другу. В этом случае правилом может быть: анонсировать только сети с пустым значением AS path (локальные сети клиента).
Исходящий трафик
Weight
Атрибут Weight это проприетарный атрибут Cisco:
- Позволяет назначить “вес” различным путям локально на маршрутизаторе.
- Используется в тех случаях, когда у одного маршрутизатора есть несколько выходов из автономной системы (сам маршрутизатор является точкой выхода).
- Имеет значение только локально, в пределах маршрутизатора.
- Не передается в обновлениях.
- Чем больше значение атрибута, тем более предпочтителен путь выхода.
Local Preference
- Указывает маршрутизаторам внутри автономной системы как выйти за её пределы.
- Этот атрибут передается только в пределах одной автономной системы.
- На маршрутизаторах Cisco по умолчанию значение атрибута — 100.
- Выбирается та точка выхода у которой значение атрибута больше.
- Если eBGP-сосед получает обновление с выставленным значением local preference, он игнорирует этот атрибут.
Multipath
Используется для балансировки трафика.
Позволяет использовать в таблице маршрутизации несколько маршрутов BGP к одному и тому же получателю.
BGP всё равно выбирает один путь как лучший и анонсирует соседям только его. Для маршрутов должны выполняться такие критерии:
- Должны быть одинаковыми атрибутами weight, local preference, AS path, origin code, MED, метрика IGP.
- next hop маршрутизатор для каждого маршрута должен быть разным