There’s a lot of grumbling about routing systems. Let’s do some quick analysis
and apply some statistics to figure out what is required to do distributed
routing that is topology aware:
IF you want to know the path your packets will take
THEN you need to know the full path for each prefix
THEREFORE you need a spanning tree to each AS
THEREFORE BGP or BGP-like (Path-Vector) protocols are what you get
THEREFORE just put more memory in your routers and suck it up
IF you want to know our packet’s eventual destination AS
AND you don’t care about the exact path
THEN you need a prefix->AS mapping a next-hop for each AS or each prefix
THEREFORE your routing tables will still be huge because they will be
reduced by a factor of AVG-PATH-LENGTH, but that’s just ~7.5 and we
want many more orders of magnitude.
IF you just want a next hop and are willing to be even more adhoc and
best-effort-ish than we are now
THEN we can use landmark routing-like stuff
BUT the lack of transparency has prevented the uptaake of protocols based
on these ideas
THEREFORE we seem to be stuck with BGP
So the problem seems to be deaggregation. Why do people deaggregate?
– Multiple physical locations
– Bulk traffic engineering
– Subdivide their network into MHUs – minimally hijackable units
– Suballocate to singly-homed customers and don’t reaggregate.
– Stupidity
Multiple Physical Locations problem really should require an AS for each
location as they are truly separate networks.
The traffic engineering reason is kind of “because we can do it at this level”
– we’ll need to talk about some kind of replacement
Randy’s PKI thing + [S|SO]BGP can deal with the MHU reason
How could we prevent people from deaggregating?
Social pressure
– proven to be broken
Actually punish people
– not enough people want to do that
Put aggregation into the protocol
– never been tried
Don’t distribute topology claims and prefix claims at the same time
– perhaps would simply cause en explosion in ASN requirements
– people would deaggregate their ASs instead of their IP blocks
– Its supposed to be all about the data level, putting an additional
layer in risks losing focus
Auto aggregation would actually look a lot like landmark routing
But! You should never aggregate over-eagerly.
But! You shouldn’t aggregate things that are a differing number of hops away.
What happens when we aggregate something 3 hops away and 10 hops away?
How can you verify ownership claims?









