The network industry right now is in a really weird state because of ‘that’ three letter acronym. When OpenFlow was unleashed on the world in 2008, academia gasped with excitement. I distinctively remember watching the video of a gaming server being moved around a campus, with flows being programmed to adjust the best path between client and server based on physical locality. Awesome stuff! After the cool period, comments like “I can do this with PBR” or “Why don’t they just mend BGP” were thrown around and the industry like the rest of us, just carried on doing the same old thing we’ve always done, shrugging our shoulders as we did it. We know the difference between real world and operationally stable vs. vapourware and flakey. We also know that solutions which put strain on components (other than interfaces) are generally avoided. Most of the time we can’t even keep the lights on without some loss of sweat, blood and tears.
Why are we here?
VMware grew up and exposed to the world point and click provisioning. Amazon, Microsoft and RackSpace offered point and click public services. What happened to the network? Nada. Nothing. We are still using SNMP to query devices and the CLI to configure them. To add to the pain, most of us are stuck in a world where the network is controlled by frameworks like ITIL. What have we done to alleviate some of the pressure? Some of us wrote scripts to provide a semi automated workflow which spit out CLI templates; some of us did nothing and a few started looking at off the shelf products or engineered solutions with Ansible, Chef and Puppet tie-ins.
Recently I’ve been reading a lot of business focused books as I try to get more in to the mindset of those I’m working for and with. Taking some inspiration from that reading, I’ll take the current state of networking as it’s known in the enterprise and use a comparison case which is below.
If the current state of networking was a person, this person would be a 17 year old college drop out with strict parents and Tourette’s. Despite the hard work retrieving him (possibly her) from their bed in a morning, he would still find a way to dodge college and go the pub. On return from his daily bout of truancy, he would tell his parents what a great day he’s had (well obviously). The parents would know what was really going on due to the overwhelming stench of beer oozing from his pores, but alas, would play along anyway because they know he’s a hopeless case and despite him being a nightmare, a homeless nightmare is not one they’d wish for. Our little monster consumes money at a rate of knots and compensates by being a loveable rogue. It’s hard to be angry and by changing him we could feel a sense of loss. Children go through phases and trends to boot, so this could be one of them. Parents with this kind of child try many things and sometimes the cause is not the lack of parenting ability, but just a series of events otherwise out of their control.
Our plucky parents want more than one child, they want a family. After this horror story, do they opt for another home grown version? Or would they look at adoption? If we look at this as a linear set of extremes, wishing for a well behaved child with ultra high morals has the potential to cause an equal amount of trouble in new and exciting ways currently unexperienced by the parents. A second home grown version might have different character traits and the series of events which threw the troubled brother in to the turmoil that can be described as his life, may never come around again. The parents are wiser but scarred for life. The reality is, no child is perfect and it’s the variety of character traits that form a functioning family. Each play their part.
There are so many synonyms and likenesses when comparing networking with our story. Our current network is just like the troubled 17 year old. However you just can’t give him away after investing so much time and effort. You just want what’s best. At 17, it’s questionable just how much changing he’s going to do as his growth has slowed and habits are forming. Our network in comparison is hunkered down with the CLI and feature sets which fuel the bottom line of vendors. The whole industry is based on this technology. Our careers are governed by being familiar with at least two CLI versions and the right way to drive features baked in to various platforms. The question of “do I need to become a programmer?” illustrates an industry wide lack of understanding and the fact is, the CLI is a dirty way of programming a device. You ladies and sirs are the brave ones. You type the code in live and hope for the love of the gods it works. Programmers have the luxury of development environments!!! Imagine being able to submit intelligent CLI, with error checking and validation within the CLI? No show commands to analyse post config?
Taking a step back from describing my family (?), if vendors make huge profits from features baked in to network operating systems, keep tight control to prevent misuse and possibly damage the brand, it will take the whole industry to step together in unison before trends firmly change. Only the brave or those that lack the operational constraints of ‘lights on 24/7’ networking will try out otherwise risky technology. Marketing thrown out by the vendors also muddies the water. Keep the features! Bin the features! Application awareness! Overlays! Virtualise it all; networking is dead! *sigh* It gets dull after a while.
How does this relate? If the Father is happy with the child and the Mother wants the child to change, cognitive adjustment delivered by psychiatrists (mostly) gets the job done but tows a hefty bill. When we want a network that can deliver newer features such as programmability through APIs, a recent trend has been to place a controller such as those by Anuta Networks or Tail-F in the management plane. Do we get programmability from the actual network element? No. It’s a pseudo tier of functionality. A tier of psychological trickery made to think we have a programmable tier of stuff. A cognitive adjustment, or a power tool to help us achieve ease of configuration, topology, tenant, security and change management. Controller assisted networking empowered by tool frameworks is a baby step from where we are now and is the next logical step. Imagine having something that can configure VXLAN segments across a range of vendor kit and bind ports and VLANs? Useful? How about on existing equipment?
Networking is about to see a new generation of children. They will get drunk, catch STDs and get speeding tickets. They will grow up in to tax paying citizens (for the most) and will themselves create families. The networking media is reporting that sales have slowed whilst the industry figures out where it’s going. Surprised? A battle is on the horizon. I’m confident that micro frameworks like PyEZ, Cisco’s onePK, OpFlex adoption and networking power tools will rise to power. I’m also excited to see ACI and NSX deuce it out, as both are different enough to create a lot of disruption over a wide area yet close enough to have some overlap and intensify the focus on the pain points. We’re also seeing HP play the mid-ground, Arista beginning to kick leaves up, Plexxi bringing their own optical magic and a sneaky Red Hat moving in the background. A rich and fertile time!
This could be the era that sees networking grow up and stop drinking cheap cider (not cidre). Networking is complicated and is about to get even more so. It does mean more fun too, so no complaints!!!
17/6/2014 – As of prepaing to publish this article, Cisco have announced their intention to buy Tail-F. Surprised?
Please feel free to comment whether it be positive or negative. All feedback is gratefully received and helps to improve the quality of future posts.