<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body text="#000000" bgcolor="#FFFFFF">
<br>
<br>
<div class="moz-cite-prefix">Baldur Norddahl wrote on 5/17/2019
11:05 AM:<br>
</div>
<blockquote type="cite"
cite="mid:CAPkb-7Apaqg6dqPs+MY6wGBXYvkjrf7vA22Y4n6xZVd0riZEzg@mail.gmail.com">
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<div dir="ltr">
<div dir="ltr"><br>
</div>
<br>
<div class="gmail_quote">
<div dir="ltr" class="gmail_attr">On Fri, May 17, 2019 at 3:28
PM Blake Hudson <<a href="mailto:blake@ispn.net"
moz-do-not-send="true">blake@ispn.net</a>> wrote:<br>
</div>
<blockquote class="gmail_quote" style="margin:0px 0px 0px
0.8ex;border-left:1px solid
rgb(204,204,204);padding-left:1ex"> From my perspective
one's ability to intelligently route IP traffic is <br>
directly correlated to the data they have available (their
routing <br>
protocol and table)<br>
</blockquote>
<div><br>
</div>
<div>One point perhaps being missed by some is that routing
decisions are not always best made in the very last moment
when you have a packet and need to decide on the
destination. The culling of routing table I wanted to do is
on a full feed from my upstream providers. I am not taking a
default, but I may add a default manually.</div>
<div><br>
</div>
<div>Think about this way to save at least half the size of
the FIB with two transit providers: Find out which provider
has the most prefixes going their way. Make a default to
them and a route-map that drops every route. For the other
provider, keep only the routes where they have better
routing. This way you only use FIB space for the smaller
provider. Everything else goes by default through the larger
provider.</div>
<div><br>
</div>
<div>Now doing that in practice is hard because router vendors
did generally not make route-map or similar constructs
flexible enough for the needed logic.</div>
<div><br>
</div>
<div>But we can do other things, some of which have already
been proposed in this thread. Like before have a default to
the "best" of your transit providers and using culling to
drop routes. Are we not all doing something like that
already, with route maps to give some routes higher priority
instead of always going strict shortest AS-path? Only
difference is that you can fully drop the routes from FIB if
you install defaults to handle it instead.</div>
<div><br>
</div>
<div>Or what if I know that one of my transit providers are
really good with Asia? I just want traffic to Asia by
default go to them. I can install my own covering routes
from the APNIC address space and then save a ton of FIB
space by dropping routes within that space. I can have
exceptions if needed.</div>
<div><br>
</div>
<div>The above does not give you poorer routing decisions and
may give you better.</div>
<div><br>
</div>
<div>Regards,</div>
<div><br>
</div>
<div>Baldur</div>
<div><br>
</div>
<div> </div>
</div>
</div>
</blockquote>
<br>
Baldur, I believe most routing platforms already make use of clever
shortcuts or techniques to reduce their FIB usage, but I don't think
anyone has found a good, reliable method of reducing their RIB at
zero cost. For example, what happens in your above configuration
when your "better/default" transit provider is down due to
maintenance or outage and your equipment continues to use its
default route to direct traffic that direction? What happens if the
transit provider that you normally only retain the best paths for
becomes the best path for all destinations (for example if your
connection to the better/default transit provider is down for
maintenance or there is an upsteam peering change) and your router
that normally only has a few thousand routes in RIB suddenly gets
tasked with a 768k-1M route RIB? <br>
<br>
I would argue that one can generally safely add information to his
or her router's RIB (such as adding a local preference, weight, or
advertising with prepends to direct traffic toward a better
performing, less utilized, or lower cost peer), but that removing
information from a router's RIB always comes at some cost (and some
may find this cost perfectly acceptable).<br>
<br>
</body>
</html>