Рисунок .31. Экспортное объединение с исключениями.
Атрибут inject определяет, какие маршрутизаторы выполняют объединение, и когда они это делают. Синтаксис атрибута показан ниже:
inject: |
[at <router-expression>] ... |
|
[action <action>] |
|
[upon <condition>] |
где <action> - спецификация действия (см. раздел 6.1.1), <condition> - булево выражение, описанное ниже, <router-expression> описано в разделе 5.6.
Все маршрутизаторы в <router-expression> и в агрегаторе (объединении) AS выполняют агрегацию. Если <router-expression> не специфицировано, все маршрутизаторы внутри агрегатора AS выполняют агрегацию. Спецификация <action> может установить атрибуты path объединения (aggregate), например, определить предпочтения для объединения.
Так как условие является булевым выражением, объединение создается, если и только если это условие истинно. <condition> - булево выражение, использующее логические операторы AND и OR (т.e. оператор NOT не разрешен):
HAVE-COMPONENTS { список префиксов }
EXCLUDE { список префиксов }
STATIC
Список префиксов в HAVE-COMPONENTS может состоять из более специфических префиксов объединения. Список может также включать диапазоны префиксов (т.e. использование операторов ^-, ^+, ^n, и ^n-m). В этом случае, по крайней мере, один префикс из каждого диапазона префиксов должен присутствовать в каждой маршрутной таблице, для того чтобы условие было выполнено. Список префиксов в EXCLUDE может быть произвольным. Условие выполняется, когда ни один из перечисленных префиксов не содержится в маршрутной таблице. Список может содержать диапазоны префиксов, а ни один префикс из этого диапазона не должен присутствовать в маршрутной таблице. Ключевое слово static всегда предполагается равным true.
route: |
128.8.0.0/15 |
origin: |
AS1 |
components: |
{128.8.0.0/15^-} |
aggr-mtd: |
outbound AS-ANY |
inject: |
at 1.1.1.1 action dpa = 100; |
inject: |
at 1.1.1.2 action dpa = 110; |
route: |
128.8.0.0/15 |
origin: |
AS1 |
components: |
{128.8.0.0/15^-} |
aggr-mtd: |
outbound AS-ANY |
inject: |
upon HAVE-COMPONENTS {128.8.0.0/16, 128.9.0.0/16} |
holes: |
128.8.8.0/24 |