11

This one is a difficult to describe, it's hypothetical because I'm learning about routing and right now I'm focused on BGP.

Let's say my ASN is 65000, and I announce 192.0.2.0/24. My peer, AS 65001 updates its routing table with its routes to the network I am announcing, but my ISP(s) routers are not my peers. If AS 65001 (who is receiving my route updates) is peered with my ISP(s), meaning my ISP(s) receive routes from 65001, does this mean that my ISP(s) will now be able to route traffic to 192.0.2.0/24, and I have avoided the need to peer directly with my ISP?

If I am horribly wrong on anything, please correct me (or tell me where I can find good documentation).

4
  • Please don't use other people's public IP space in your examples, for example just look at where 1.0.0.0 actually goes these days.
    – LapTop006
    Jun 1, 2013 at 12:13
  • considering it's against the rules to use RFC1918 space, what would you recommend he use as a hypothetical example? Jun 3, 2013 at 2:31
  • 1
    @JohnJensen There are reseved blocks for documentation and examples - tools.ietf.org/html/rfc5737 - 192.0.2.0/24, 198.51.100.0/24, 203.0.113.0/24
    – jwbensley
    Jul 30, 2013 at 16:21
  • 1
    @LapTop006 The same goes for AS numbers, I have edited the post to use private AS numbers.
    – jwbensley
    Jul 30, 2013 at 16:22

3 Answers 3

16

You're kind of thinking about it the wrong way, but I'll try to explain.

When you purchase bandwidth from an ISP, this is called transit (colloquially in the industry). Assuming you've got yourself some PI space (1.0.0.0/8, for example), you're paying your ISP to get your bits from your network to other networks. So say your AS is 6500, and your ISP is 3356. Bits from any other ASN will also need to transit AS3356 to get to you. Let's say that there's another ASN (6501) that buys transit from a different ASN (7224). AS3356 and AS7224 are peers. Now, in order for bits to get from AS6501 to AS6500, the path goes like this:

AS6501 -> AS7224 -> AS3356 -> AS6500

Now if you set up peering (also a colloquial industry term**) with AS6501, this eliminates the need to get bits from you to AS6501 via transit and vice versa, thus reducing your cost, AS6501's operator's cost, and also usually results in reduced loss/latency between your networks. Everybody wins! Now the path looks like this:

AS6501 -> AS6500

Your original scenario wouldn't work in the real world, because the assumption for AS6501 would be for it to incur a cost to get your bits across it to you from the ISP(s). AS6501 wouldn't be getting benefit by hauling your bits across it to your ISP so you don't have to pay your ISP. What's more likely is AS6501 would charge you to do this, at which point, you might as well just pay your ISP(s) anyway.

** The term peering is overloaded. It can be both used to describe a BGP session (e or i variety), as well as the colloquial/political sense, which means you and another network connect to one another and directly exchange traffic (via BGP) for mutual benefit - think opposite of transit. If you're running BGP with your ISP (transit), you're still technically peering with your ISP, because it's an eBGP peering. To help avoid confusion, it's better to use peering to refer to the act of exchanging traffic with another network at no cost (note that this isn't always the case) and BGP session to refer to the actual technical term for exchanging prefixes via BGP (iBGP or eBGP) with another router, whether a cost is involved or not.

6
  • Thanks, very clear. Just one question: For bits to go from AS6501 -> AS6500, wouldn't they have to physically traverse AS3356 (and AS7224)? Am I missing something here?
    – Libbux
    May 31, 2013 at 4:12
  • Not if you're (AS6500) peering with AS6501. The point is that you're avoiding the physical traversing by setting up the peering. Typically these are done with PNI's ("private network interconnection") - a separate physical link from your router to the peer's router, or you and the peer will connect to an IXP's peering fabric and set up eBGP sessions with one another that way. May 31, 2013 at 4:15
  • I seem to be mis-using the word "peer" then. Maybe my understanding of BGP is limited, but my use of "peer" simply meant that AS6501 and AS6500 exchanged routing tables.
    – Libbux
    May 31, 2013 at 4:22
  • See my edit above where I go more into what peering means :-) May 31, 2013 at 4:25
  • Clearly I've got a lot to learn about the term peering alone. I think I'll just peer with my ISP and make things simpler.
    – Libbux
    May 31, 2013 at 4:27
6

If AS 6501 is willing be a transit AS then they would be able to route to your /8' however it may also depend on whether you obtained your /8 from the said ISP or not.

In terms of good literature then would always highly recommend 'Routing TCP/IP Vol2' by Jeff Doyle & 'Internet Routing Architectures' by Sam Halabi.

2
  • Thanks. But if 6501 routed my /8, wouldn't they just be routing to my ISP, who (since they're not peered with me) wouldn't know where to send my traffic (assuming this is before 6501 has sent its table to my ISP)? If I had obtained the /8 from my ISP, then they would obviously route it to me (and announce it as well). The point of this situation is to get around the process of peering with your ISP (maybe they hate you or something, who knows).
    – Libbux
    May 31, 2013 at 4:04
  • Yeah you correct but i'd assumed you would directly peer (eBGP) with AS6501.
    – MattE
    May 31, 2013 at 4:32
5

I would just like to add, any Good Actors filter the unholy crap out of what they announce to, and accept from peers. AS6500 would announce only routes to prefixes they own (or that of their customers, who may themselves be an AS.) AS6501 would only allow routes with an origin of 6500 (i.e. ^6500$) and v.v., and most likely filter on the prefixes themselves as well. A great deal of damage can be done by bad actors using ISPs that don't validate what their customers are sending them.

This all gets very complicated rather quickly. There are various routing registries (IRR's) to help automate the process.

[Note: I've been the "bgp guy" before. And I've been on the receiving end of someone appropriating our address space -- it was in the 90's so it might've been an actual typo on their part. Today, it happens on purpose.]

8
  • Never heard networks referred to as "actors" before! :-) What does "v.v." mean? May 31, 2013 at 7:14
  • @JohnJensen, en.wikipedia.org/wiki/VV -- pick the most logical one as I did. ;-) May 31, 2013 at 7:37
  • And here I was, wondering if it was some AS path filtering acronymn that I'd never heard of. :-\ May 31, 2013 at 7:43
  • There's always the possibility of "announcing the internet" and messing everything up. That's why I'm trying to figure out what kind of security is in place with BGP. Do peers just blindly accept [routing table] updates?
    – Libbux
    May 31, 2013 at 12:00
  • 1
    @RickyBeam so essentially, trust nobody and only peer with reputable peers like Level3, nLayer, etc...?
    – Libbux
    Jun 1, 2013 at 4:32

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.