Duplicate Stanzas in a BGP Flowspec Route
Map
Duplicate stanzas have the same match
statements. BGP installs only one local flowspec route for a specific key (match statement)
and has rules for handling duplicate stanzas.
- BGP traverses the flowspec route map in
ascending order of sequence number when:
- The route map is first applied with the
distribute command
- Modifications are made to an
active route map.
- While traversing each stanza, BGP attempts to prepare or modify a local flowspec
route.
- When the distribute command is
used to activate a route map that contains duplicate stanzas, the stanza with the
higher sequence number becomes active only if it has different set commands. Otherwise
the stanza with the lower sequence number remains active. For example: Stanzas A and
B are duplicates. Stanza A has a lower sequence number than stanza B. Therefore:
- When A and B have same
match
and set
command content, A is installed, B is not allowed to be active, and a RASlog
message is triggered.
- When A and B have same
match
command content but different set command
content, A first becomes active, then B replaces A, and a RASlog message is
triggered.
- When a change is made to the match content of an
active stanza, the stanza with the lowest sequence number from the remaining
duplicates is selected as active. For example: a route map has three duplicate
stanzas (A, B, and C). For these stanzas, the match command content
is the same but the set command content differs. Also, the sequence number of A is lower
than the sequence number of B, which is lower than the sequence number of C.
Therefore, assuming that stanza C is active:
- When the match content
in stanza C is modified, the stanza with the lowest sequence number among
stanza C's former duplicates (A) is selected as active along with the new
stanza C and a RASlog message is triggered.
- When stanza C is removed, the
stanza with the lowest sequence number among stanza C's former duplicates
(A) is selected as active and a RASlog message is triggered.