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
Cumulus FRR assign LLAs to point-to-point OSPF interfaces without addresses #7038
Conversation
arifogel
commented
Jun 2, 2021
- enables forwarding across unnumbered links
Codecov Report
@@ Coverage Diff @@
## master #7038 +/- ##
============================================
+ Coverage 71.89% 71.91% +0.01%
- Complexity 37699 37711 +12
============================================
Files 3036 3036
Lines 154740 154761 +21
Branches 18564 18570 +6
============================================
+ Hits 111258 111290 +32
+ Misses 34592 34585 -7
+ Partials 8890 8886 -4
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Reviewed 3 of 3 files at r1.
Reviewable status: all files reviewed, 2 unresolved discussions (waiting on @arifogel and @corinaminer)
projects/batfish/src/main/java/org/batfish/representation/cumulus/CumulusConcatenatedConfiguration.java, line 226 at r1 (raw file):
.forEach( (iname, iface) -> { if (iface.getAllAddresses().size() == 0
It feels like there is a missing && <some vs property>
that indicates this interface was configured for unnumbered.
Above, the function was labeled something like isUsedForBgpUnnumbered(ifacename, bgp VS model)
. I imagine something generic there.
projects/batfish/src/main/java/org/batfish/representation/cumulus/CumulusConcatenatedConfiguration.java, line 226 at r1 (raw file):
.forEach( (iname, iface) -> { if (iface.getAllAddresses().size() == 0
From discussion: seems like we should add an LLA unconditionally? Otherwise there might not be an L3 edge.
Also from discussion: it seems like there should not even be able to be a concrete address assigned. Unnumbered should be mutually exclusive with concrete.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Reviewable status: 0 of 4 files reviewed, 3 unresolved discussions (waiting on @arifogel, @corinaminer, and @dhalperi)
a discussion (no related file):
After #7039
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Reviewable status: 0 of 4 files reviewed, 3 unresolved discussions (waiting on @arifogel, @corinaminer, and @dhalperi)
projects/batfish/src/main/java/org/batfish/representation/cumulus/CumulusConcatenatedConfiguration.java, line 226 at r1 (raw file):
Previously, dhalperi (Dan Halperin) wrote…
From discussion: seems like we should add an LLA unconditionally? Otherwise there might not be an L3 edge.
Also from discussion: it seems like there should not even be able to be a concrete address assigned. Unnumbered should be mutually exclusive with concrete.
I don't believe we said they should be mutually exclusive. An interface could win one unnumbered and address and lose another. In that case it would have a concrete address, but still may need the LLA for L3 edge.
In any case, now adding the LLA even for winning interface.
projects/batfish/src/main/java/org/batfish/representation/cumulus/CumulusConcatenatedConfiguration.java, line 226 at r1 (raw file):
Previously, dhalperi (Dan Halperin) wrote…
It feels like there is a missing
&& <some vs property>
that indicates this interface was configured for unnumbered.Above, the function was labeled something like
isUsedForBgpUnnumbered(ifacename, bgp VS model)
. I imagine something generic there.
Now relying on ospfAddresses being non-empty. This happens when at least 1 address was assigned in VS interfaces or frr file.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Reviewed 4 of 4 files at r2.
Reviewable status: complete! all files reviewed, all discussions resolved (waiting on @corinaminer)