Creating an autonomous system for fun and profit (2017)
Can someone explain why loading a 1MM-route BGP table onto a network switch is a &quot;hard problem&quot; that requires fancy hardware to solve, rather than something that even commodity hardware today is capable of?<p>Presuming you do your IPv4 and IPv6 routing separately...<p>For IPv4, an interval-treemap from uint32-pair intervals to uint8 output ports fits into the default memory config of a PC from 1994; and each lookup into said tree resolves in nanoseconds, even on a machine of the era — esp. for tree-node pages that are hot in CPU cache.<p>And for IPv6, the tree <i>could</i> grow a lot larger, since the intervals are, per se, &quot;uint128&quot;-pairs... but there just aren&#x27;t that many extant IPv6 routes yet, so the table is actually small in practice.<p>What are the constraints on the problem that I&#x27;m missing?