Hi Matthew and NANOG,I don't want to defend prepending 255 times, and can understand filtering of extra-prepended-announcements, but I think Matthew may not be correct here:Anyone that is prepending to do traffic engineering isdoing *differential* prepending; that is, a longer numberof prepends along one path, with a shorter set of prependsalong a different path.So, dropping the inbound announcement with 255 prependsmerely means your router will look for the advertisement witha shorter number of prepends on it.Right. But let's consider the (typical) case where someone is prepending for traffic engineering. Now, if you're not very near to the origin of the prepended announcement, and still received it (and not the shorter alternative), then it is quite likely that you received it since the alternate path failed - and the backup path was announced, instead (by upstreams of the origin). So your router is quite likely not to receive the shorter announcement.
After all, if your router received both short and long announcements (from same relationship, e.g., both from providers), then your router would probably select the shorter path anyway, without need to filter out the long one, right?So, filtering announcements with many prepends may cause you to lose connectivity to these networks. Of course, you may not mind losing connectivity to Kazakhstan :) ...best, Amir--Amir HerzbergComcast professor of Security Innovations, Computer Science and Engineering, University of Connecticut`Applied Introduction to Cryptography' textbook and lectures: https://sites.google.com/site/amirherzberg/applied-crypto-textbookOn Fri, Mar 25, 2022 at 8:19 PM Matthew Petach <mpetach@netflight.com> wrote:On Fri, Mar 25, 2022 at 2:59 PM Adam Thompson <athompson@merlin.mb.ca> wrote:Tom, how exactly does someone “ride the 0/0” train in the DFZ?
It's not so much "ride the 0/0 train" as much as it is"treat excessive prepends as network-unreachable"Think of prepends beyond say 10 prepends as a wayto signal "infinite" distance--essentially, "unreachable"for that prefix along that path.Anyone that is prepending to do traffic engineering isdoing *differential* prepending; that is, a longer numberof prepends along one path, with a shorter set of prependsalong a different path.So, dropping the inbound announcement with 255 prependsmerely means your router will look for the advertisement witha shorter number of prepends on it.If you're only announcing one path for your prefix, and it isprepended 255 times, you're fundamentally not understandinghow BGP works, and the only way to get a clue-by-four mightbe to discover you've made your prefix invisible to a significantportion of the internet.
I’m connected to both commercial internet and NREN, and unfortunately-long paths are not uncommon in this scenario, in order to do traffic steering. If there’s another solution that affects global inbound traffic distributions, I’d love to hear about it (and so would a lot of my peers in edu).
If there were a usable way to “dump” the excessively-long path only as long as a better path was already known by at least one edge router, that might be workable, but you’d have to keep track of it somewhere to reinstall it if the primary route went away… at which point you may as well have not dropped it in the first place.
You dump the excessively-long path based on the assumption thatthe only reason for a long set of prepends out one path is to shift trafficaway from that path to one that you're advertising out with a *shorter*set of prepends.The router doesn't need to 'look' for or 'keep track' of the differentpath; the human makes the decision that any sane BGP speakerwould only prepend 255 times on a path if there was a shorteras-path advertisement they wanted people to use instead.So, drop the excessively long prepended path, and make useof the 'should be in the table somewhere' advertisement of theprefix with fewer prepends.Easy-peasy.
-Adam