4 ms·
I may have missed it, but I read the read me, looked at the main site, looked at the beginning of getting started… nowhere says what BGP stands for / is. I get
by 0x20cowboy 5y ago
I may have missed it, but I read the read me, looked at the main site, looked at the beginning of getting started… nowhere says what BGP stands for / is.
I get it’s written in go, but I have no idea what BGP is. Big green pages, binary grepping pipes, boisterous gambling pachyderms?
Jokes aside, y’all might want to give a brief about what this is for us uninitiated.
- betterunix2 5y agoBGP is the de facto routing protocol of the Internet. The basic problem that it solves is computing and distributing routes between independently operated networks. It is actually a pretty ramshackle protocol (among other things it usually uses TCP, which can create some interesting problems [1]) but it is the only widely deployed protocol that can handle the scale of the Internet. In theory BGP can be used within a single network, though it is not well-suited to such an application except in very large networks. Facebook is known to use BGP internally [2]. Usually an "interior gateway protocol" like OSPF or IS-IS is better for internal routes, with BGP then distributing those routes to the external networks from the gateway routers (i.e. those routers that interconnect the networks). BGP can also be used for other, more niche applications within a single network, like setting up VPNs (VPLS, VPNv4, etc.). [1] https://blog.benjojo.co.uk/post/bgp-stuck-routes-tcp-zero-window https://blog.benjojo.co.uk/post/bgp-stuck-routes-tcp-zero-wi... [2] https://research.facebook.com/publications/running-bgp-in-data-centers-at-scale/ https://research.facebook.com/publications/running-bgp-in-da...
- fragmede 5y agoIn this context, BGP stands for Border Gateway Protocol. I opened a PR to fix that. https://github.com/osrg/gobgp/pull/2535 https://github.com/osrg/gobgp/pull/2535
- charlieyu1 5y agoI am finding for a long time that what BGP is… The docs even linked Golang without linking BGP. I thought it was something about board games
- wrycoder 5y agoThat’s because the people who are interested already know, and the people who don’t know won’t be interested. If you DDG, the top ten hits explain it without even clicking. Try that.
- ZiiS 5y agoBorder Gateway Protocol how the internet shares its routing table.
- zinekeller 5y agoBorder Gateway Protocol (https://en.wikipedia.org/wiki/Border_Gateway_Protocol https://en.wikipedia.org/wiki/Border_Gateway_Protocol), basically the GPS of the internet (not technically the same, but it's close enough). Cloudflare has already a good explanation on how it works, so I'll just point everyone out to this article: https://www.cloudflare.com/learning/security/glossary/what-is-bgp/ https://www.cloudflare.com/learning/security/glossary/what-i... Also, about that undefined BGP. I'm not sure if this will help explain why BGP wasn't explained, but this is from NTT OSRG (Open-source Research Group), so probably they thought that everyone knew what BGP is (since that you probably won't encounter this otherwise). Also, they have a Rust version: https://github.com/osrg/rustybgp https://github.com/osrg/rustybgp
- deleted 5y ago[deleted]
- cortesoft 5y agoBGP is pretty foundational to the internet. At some point, you have to assume hour audience knows the basics. Not everything is an intro. Also, if you don’t know what BGP is, you aren’t going to be interested in a project implementing BGP.
- teeray 5y agoIt’s still wise to define acronyms before you use them to enable future Googling (links are better!). Three extra words is a small price to pay to make documentation more friendly to newcomers.
- wrycoder 5y agoI just looked up BGP on DDG. The first ten hits explained it without even clicking on them. If something isn’t clear on HN, try searching for it. If you don’t find it immediately, then you can ask without losing face.
- chockchocschoir 5y agoAgain, at one point you have to assume either basic knowledge or at least basic knowledge about how to search for things, otherwise everything would be very verbose. Take one of your repositories as an example: https://github.com/timraymond/pricegrabber https://github.com/timraymond/pricegrabber > A gem for interacting with the Pricegrabber API Should you have to add "Application Programming Interface (API)" the first time you use "API" anywhere? Realistically no, because the audience can be assumed to understand what it means. If they don't, it's only a search away. Same goes for networking and DNS/BGP/CNAME and more. If you're using a library/server for BGP, you either know what those terms are, or know how to find out more. But not all resources are meant for beginning who don't know the basic terms in a field, and that's OK, because otherwise everything would be extremely verbose when it doesn't have to.
- deleted 5y ago[deleted]
- 5y ago
- nmz 5y agoIt's that thing facebook messed up the other day and nobody could connect to it.