A few weeks ago I wrote about the birth of the Internet. In that article I discussed the emergence of the communications technology that reinvented networking and enabled the Internet: packet switching. Packet switching was proposed by the builders of ARPANET but until the invention of the microprocessor wasn’t economically or logistically practical.
In those early days computing was delivered by huge monolithic mainframes. Without the microprocessor the thought of creating a network using mainframes ranked right up there with trying to put someone on the moon; an endeavor that cost about $25B dollars in 1969. No one was going to pay that amount just because some nerds with slide rules didn’t want to have to carry magnetic tapes from one lab to another.
But, along came the microprocessor and the world of computing was transformed. The microprocessor gave us the microcomputer which was used to create the first ‘modern’ routers. Since then the router has become the primary network appliance used to build packet switched networks. Other specialized networking tools like firewalls, load balancers, SD-WAN controllers, network function virtualization (NFV) and MPLS switches have also been created to add more functionality to the network.
When networks were first built they were used to share information between large computing centers. The router started as primarily a packet forwarding engine. Early routers contained about 6,000 lines of software code. Today networks reach beyond computers to connect billions of things ranging from TV’s to fitbits to traffic lights. All of these new types of endpoints have changed what we need from the network. So much so that today routers need more than 36,000,000 lines of software code just to keep up.
Even with all of that code, NFV and virtualized network functions, the network is struggling to meet our needs. Networks are inefficient, too rigid, and take too long to build. But we have new ways to build and operate software, maybe you’ve heard of this thing called ‘the cloud’. Network operators certainly have, and they have been asking the networking appliance manufacturers to incorporate new software development techniques to change the network for quite some time.
But changes are slow in coming. So slow, that international standards bodies actually are leading the way in defining how the new networking devices should operate through the development of over 100 publications about virtualized network functions. Anyone that has been in the business of networking for more than a few years knows that innovation is not created by standards bodies. However legacy equipment vendors weren’t changing and network providers needed to do something to spark a change.
Why haven’t the equipment providers jumped with both feet into the new NFV or virtualized network function (VNF) world of networking? You won’t find the answer written on anyone’s website but it’s actually not that hard to figure out. How much do you think 36,000,000 lines of software code is worth?
Let’s start by figuring out how much it would cost us to rewrite the existing code in a router. There are a lot of different tools available to calculate the cost of code development. I’m going to use the cost estimation for rebuilding the linux core, $103 per single line of code (SLOC). This estimate is a bit dated so the cost might be a bit higher in today’s dollars but, I think the level of complexity of the code bases is similar. Next, let’s figure out the opportunity cost. Basically this is the ‘cash cow’, ‘golden goose’ or whatever your favorite animal might be (a platinum isopod?); the value that equipment vendors create just by doing the same thing that they are already doing. Let’s estimate this by using the major vendors current P/E ratio: ~20x.
Just How Much is a Router Worth?
Doing the math I calculate that the current router code base is worth about $74B. Anyone know what NASA currently estimates the cost to put another person on the moon to be? It’s $30B. Again, we’ve got a tremendous disconnect in cost vs. perceived value. It’s no wonder to me why NFV and VNFs are failing.
But the cost alone is not why networking hasn’t changed. You see the foundational premise behind current efforts like NFV and VNFs are wrong. Contrary to what John Chambers thinks, we don’t need to replace 36,000,000 lines of code. Much like the mainframe was replaced by the microcomputer, it’s time to reinvent the network. That’s what we’re doing at Stateless; we’re reinventing networking. Instead of reproducing a technology that is 50 years old using modern software designs, we’re reinventing networking and delivering what is needed to build a network to connect the things we have today.
I still do think that as a society we should be investing in space exploration. But seriously, $74B to replicate some old school routers or $100B to reach Mars… I know where I would invest.