Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Symbolic Route Analysis: Handling of intermediate BGP attributes #8853

Open
millstein opened this issue Oct 27, 2023 · 0 comments
Open

Symbolic Route Analysis: Handling of intermediate BGP attributes #8853

millstein opened this issue Oct 27, 2023 · 0 comments

Comments

@millstein
Copy link
Contributor

The Batfish simulation of BGP routing uses a set of "intermediate" BGP attributes to control the handling of route updates that implicitly involve both a "read" and a "write". For example, Batfish models an additive community set of 40:40 as a write of (InputCommunities U 40:40). For some config formats InputCommunities should refer to the communities of the original
route, but for others it should refer to the current community set that reflects prior updates. To account for the latter semantics, Batfish inserts directives to read from and write to the intermediate attributes.

The symbolic route analysis in TransferBDD does not handle arbitrary uses of these directives. Rather, it only correctly models platforms where the directives to read from and write to intermediate attributes are used in such a way as to ensure that the current set of route attributes, reflecting all updates made so far, are always read. For example, if a particular platform's semantics requires that only some of the updates to an attribute be seen when later reading the attribute, then that situation will not be modeled properly in the symbolic route analysis.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant