At Networking Field Day, Juniper Networks gave details and a technical deep dive into their Junos operating system for their routers. They specifically went into great detail about some of the automation now available. It’s genuinely impressive. But I really enjoyed how the presentation started.
Instead of going into why the current product offerings from competitors come up short, Juniper took a different approach, and I found it refreshing. They outlined their idea of what they think the cloud actually is. It seems like a very basic question, but Juniper took some of their time to go over their approach and philosphy behind this question. They don’t look at the cloud as simply software on servers. That might be the most academic view, but it understates some of the benefits. Instead, they look at the attributes that define the cloud: flexibility, elasticity, and community. So when they said their software vision is based around “cloudification”, I didn’t just dismiss it as marketing buzz out of hand. Anything meant for the cloud should be modular, scale-out and have an ecosystem beyond the company. That last point is pretty prescient of Juniper.
The backing philosophy to all of this comes down to a very traditional debate in IT. Juniper put up the traditional graph of an Efficiency-Agility scale, with a familiar sloping curve between the two. I expected to hear how Juniper was upsetting this traditional applecart. Instead, Juniper conceded that this is effectively a zero-sum game, any concession to agility will result in a loss of efficiency and vice versa. Instead, while conceding the tradeoff, Juniper thinks they can push out the curve with their cloud forward strategy, so that the compromise between the two will not be as stark.
This set the stage for Junipers solution for network automation. They framed this around the idea that it’s the function of the network, the delivery of packets, is the only thing you ultimately care about in a network. If you can completely automate the network, so much the better. The compared it to self-driving cars, but I think networking is even more pure. At least some people drive for fun. Nobody does network management just for kicks.
So what would be the performance conditions of an automated network? Juniper outlined the need for three thing:
- Network telemetry in real time to drive decision making. SNMP isn’t good enough.
- This information needs to be ingested and analyzed, with a policy-based framework triggered by the analysis.
- Once this is completed, it needs to be fed back into the network and converted into action.
In the presentation, Juniper doesn’t claim to be there with a self-driving network, but I do like that they’ve laid out the conditions for one to be possible.
Not surprisingly, Juniper thinks their routers and Junos OS are the solution to getting this process further down the road. Junos OS now supports OpenConfig, which gives you considerable latitude in your deployment for consistent modeling across devices. This is all backed by their YANG precursor language, Data Definition Language. They showed a side-by-side comparison of the code, and the differences looked pretty marginal. If you’re familiar with YANG, it shouldn’t take much brush to get going in DDL.
OpenConfig is also the key to getting the telemetry from your network. As a network scale, it gets harder to pull meaningful metrics as the data stacks up. Junos has a network agent that runs as a separate package to alleviate this problem. It’s able to take telemetry across the network and use the OpenConfig models to do some intelligent analysis.
I highly recommend you check out the videos from the presentation, as they go into some extended demos with more detail than I can provide here. But I really liked the focus of Juniper Networks on network automation. It seemed like they were coming at it less like another check box they can include in a marketing demo, and more of a series of products with a single goal in mind. I don’t know if we’ll ever really see a self-driving network, but if we are, it will require the kind of systematized approach Juniper is using.