As presented. The palette is light on request of the reviewer; code blocks and byte dumps keep a dark ground so the byte colours still work. The OPEN walk lights the hovered bytes as an inverted block and its table cells are dark text on a tint of their group colour. build.py inlines reveal.js, the stylesheets, scripts and Markdown sections into slides/dist/hands-on-bgp.html for uploading. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
4.0 KiB
Transit and exchanges
Notes: Section 4. Two very different ways of getting routes, and what an Internet exchange physically is.
Two ways to reach other networks
IP transit
- You pay a provider
- They give you routes to everyone
- They announce you to everyone
Peering
- Usually free, by mutual benefit
- You exchange your own routes, and your customers'
- Traffic between the locally connected parties only
Notes: Transit is a customer-provider relationship; peering is between equals. A peer does not carry your traffic to third parties. Most networks have both: transit as the fallback, peering to keep traffic cheap and close.
An exchange is a big Ethernet switch
Notes: Every member plugs one router port into the same layer-2 network and gets one address in a shared subnet. No routing inside the exchange: just Ethernet. Dashed blue is a BGP session, green is where the packets actually go.
What that implies
- Peering participants in an exchange are all one hop away, found by neighbour discovery
- A route's next hop is the peer's LAN address, so traffic goes directly member to member
- The exchange is a simple layer 2 switch, allowing for a large capacity at low cost
- Strict(ish) rules on what traffic is allowed on the peering lan (e.g. no DHCP or broadcast packets)
Notes:
- IPv6 neighbour discovery and ARP are used to discover the MAC addresses of peers
- after which traffic can flow directly
Route servers
Are a piece of shared infrastructure that simplifies peering.
- Most participants peer with the route server and annouce their prefixes there
- The route server can then distribute these routes to every other participant
- Simplifes from
n²tonsessions - Not in the traffic path and does not add its own AS into the path
- Allows controlling behaviour with communities, e.g.
42476:0:<as>"not to<as>",42476:1:<as>"only to<as>"
Notes: A route server is a BGP speaker that only redistributes. Because it is transparent, the AS path looks exactly as if you peered with each member directly. We will use those communities in the lab.
Looking glasses
Are a useful tool to inspect the state of another network or internet exchange
- SwissIX https://lg.swissix.ch/
- NL-ix https://lg.nl-ix.net/
- BGP tools https://bgp.tools/