25 years ago, I worked for a small ISP (back when there was such a thing.) When I started there, we had one upstream ISP. I was charged with getting us multihomed. I found some tutorials written by Avi Freedman (1). I don't know what I would have done without him. He made an intimidating topic approachable. Thanks to him, I got us a /20 from ARIN and advertised our routes to two different peers. It was fascinating to learn how it all worked. And the more I learned about it, the more amazed I was that it worked at all.<p>(1) <a href="http://avi.freedman.net/" rel="nofollow">http://avi.freedman.net/</a><p>Avi
Nice article.<p>That flapping from EpicUp 140.99.244.0/23 prefix should have been subject to route dampening. This is per peer or per prefix rate limiting typically enforced on all peers by ISPs to prevent this exact issue of a single prefix making up a significant portion of the global BGP churn.<p>I’m unconvinced of the correlation between the updates that the author attributed to knock on effects. It would be pretty janky to have your advertisements be based on the path to other autonomous systems’ prefixes, especially unstable ones.<p>I don’t think there is a 40 minute periodicity either (at least there wasn’t 8 years ago when I was deep in the BGP world). Smells like what this dataset happened to show either by luck or because of the network the author was getting the BGP feed from.<p>If you dig into the data and look at which AS’s and prefixes are experiencing changes, you’ll find it’s all over the place and there isn’t really any bigger pattern.<p>On any given day there are usually a few noisy ISPs because of bad circuits or misconfigurations. Then there are new prefixes flapping in and out as a new thing is brought online for the first time, etc. Then sprinkle in path changes for regular draining maintenance, etc.<p>It’s simultaneously both fascinating and a little horrifying how a little ISP in Kansas experiencing a fiber consuming backhoe shows up on routers in Perth. Yet the frequency of updates is kept to <10hz globally through tons of hand tuned policies.
If anyone wants to learn about BGP (especially day-to-day stuff for peering scenarios), the Network Startup Resource Center out of U.Oregon has a good series of videos going through things:<p>* <a href="https://learn.nsrc.org/bgp" rel="nofollow">https://learn.nsrc.org/bgp</a>
Based on some quick sleuthing, I would assume that the 0xff reserved BGP attribute is likely a huawei quirk. Almost all of the 0xff's visible to bgp.tools (hi) follow the same format as the one in the post, and some of those networks with them seem to be running huawei kit.
I learnt quite a few things I didn’t know about BGP from this article, probably most interesting how chaotic it is!<p>I’d definitely be interested to read some follow-ups, diving into more details.
I once designed and configured a satellite-microwave hybrid network for a large US customer with field offices around Borneo. I’ll never forget making the leased line handoffs back in Jakarta. I had exactly zero experience doing this so I googled around and read that BGP is what you would use to connect between our OSPF/UBNT net and their IGRP/Cisco corporate WAN. When asked to configure BGP on their routers, the guys from Tata were like “what do you think you are AT&T or something?” We did kind of feel that way until one season of lightning strikes took out most of our AirFibers.
I wrote a python script to extract data from an MRT file containing BGP routes from [1] and importing it into Neo4j for exploration. This file contained about 56 million extremely redundant routes and Neo4j is great for "merging" this type of data.<p>[1] <a href="https://data.ris.ripe.net/rrc00/" rel="nofollow">https://data.ris.ripe.net/rrc00/</a>
What is the easiest way for average joe to get hands on BGP data? If I wanted to try do similar analysis and don't happen to have a friend at ISP.
> What is apparent in both the path and IP space changes over time is that there is some sort of cyclic behaviour in the IPv4 updates.<p>does this imply the internet has something akin to <i>tides</i> ?
It would be nice for the Memory Safety initiative[1] which tackles core internet infrastructure security and safety via re-implementing it in Rust to also work on implementing the BGP server implementation.<p>[1] <a href="https://www.memorysafety.org/" rel="nofollow">https://www.memorysafety.org/</a>