The goal of this and my last blog (What is the problem...) is to understand the challenges modern datacenters are facing today and what is holding datacenters back from achieving the final goal of being completely software defined. Software Defined Data Center promises an architecture that is fully automated,strives for zero downtime and provides intelligence in the application layer to make decisions with respect to resources it requires from a compute/storage and network perspective.

Holistically, the compute and storage pieces of the overall puzzle were almost as difficult if not more difficult than the network piece to solve and to simplify.
Vendors like Vmware, Microsoft, Redhat, Citrix solved the server proliferation problem through Server Virtualization and with their respective hypervisors . This ended server hardware proliferation and made provisioning,management and maintenance of hardware as well as software simple.
Google initially solved the storage piece through GFS(Google File System), which addressed the static and brittle nature of complex SAN infrastructure sprawl. Nutanix then provided these capabilities to the enterprise data center through NDFS, which enabled a SOCS (Scale Out Converged Storage) based architecture. This not only provided storage but also converged the compute with the local storage tier, hence eliminating the requirement for SANs and any external storage. This new architecture makes storage provisioning Uncompromisingly Simple.
Both these above technologies today are software defined, and are fully capable of being used to their utmost utility, wholly based on programmability. Both support programming be it with REST API's,Powershell, XML, or any other variety of programing languages. This has created an "open ecosystem" where IT admins and application owners can write their own programs to interact and use the underlying resources.This in my mind is the first step towards Software Defined Data Centers.
We are now at the point in time where the only thing standing between us and the vision of SDDC (Software Defined DataCenter), is the network.
Let me explain what I mean by that...
Before the Network..there was Compute and Storage. Logically it should not surprise anyone that Compute and Storage have matured, and thus realized their eventual goals in life of being software defined before the Network. Although Network has made enormous contributions to its peers Compute and Storage,greatly speeding up research & development of technology. However,in my mind Network is still a teenager who is still finding its way in life.
Now, let me talk about why I feel Network is the piece of the puzzle, that when solved,will effectively bring us true Nirvana in the data center.
Cisco and Vmware once allies are today pitted against each other working to bring their own version of SDN (Software Defined Networking) to the masses and hoping to complete the vision of SDDC.
Since VMware acquired Nicira, it has announced NSX with a goal of simplifying networking.
Cisco with the acquisition of Insieme has been working on ACI (Application Centric Infrastructure) and APIC (Application Policy Infrastructure Controller) with the same end goal of simplifying networks.
Lets talk about both these approaches and try to understand which of these approaches going forward probably is going to simplify,secure and create agility which are all key pieces that are required to make the vision of SDDC successful.
NSX
Brad Hedlund,VMware engineering architect, described the goal of NSX very aptly:“We want you to be able to deploy a virtual network for an application at the same speed and operational efficiency that you can deploy a virtual machine.”
The above statement is what makes me believe that VMware understands and has focus on the issue at hand and are working diligently to make SDDC a success. In addition, with the launch of NSX in August 2013, VMware announced a partnership with wide range of network switch vendors, like Cumulus Networks, Arista,HP, Dell, Brocade and Juniper.
The fact that the brightest minds in the networking world are all working together is quite an awesome achievement. Companies like Cumulus and Arista are leaders in their own space, and have adopted the Open Networking model and are focussed on bringing the price of network infrastructure down while at the same time also providing full featured forward looking technology which encompasses orchestration,manageability,monitoring and security inherently into the product.
Going forward I think more and more customers would like to align themselves to an open model as such in which all features are delivered in a software model on top commodity network hardware infrastructure.
ACI/APIC
John Chambers wrote the following on his blog with respect to ACI/APIC.
"Most new application deployments take a month or more to roll out. Upgrades and migrations often take just as long. When you consider that the majority of businesses run hundreds of applications, you’ll see why IT is slowing businesses down and creating unnecessary risk.
Businesses need a new model for IT. A model by which IT moves faster. A model that makes IT more secure.Today, Cisco unveiled a transformational approach to data center infrastructure and operations that will bring the simplicity, security and agility that CIOs desperately need for their applications."
At the end of the day Cisco is a hardware company which is focussed on selling "ports" on the switch. They have integrated software and hardware together probably better than any other company in the world and have been able to sell overall value to the customer with a rock solid products and world class support and services.With Unified Computing Systems, Cisco engineering and vision showed us a product which was way ahead of its time. The vision of ACI/APIC are being delivered by the same team that has created UCS. With ACI/APIC Cisco is working towards bringing the same concepts such as service profiles to an application layer.
These network profiles would provide the application with the network services required for the full functionality of that specific application. If for any reason the application experiences a delay due to a bad hardware the APIC controller would be able to recognize this and would provide automated response by providing the application another path in the network to operate as expected with full functionality.
ACI is also an open model and Cisco already has a wide variety of partners working together to integrate management of physical and virtual resources. Cisco has also adopted the view that merchant silicon in switching platforms is here to stay and hence have based their Nexus 9000 platform on a hybrid solution using Broadcom Trident II + Custom ASICs.
Therefore, you can see both Cisco and VMware are both focused on making the operational efficiency of provisioning networks for applications faster. Both companies are approaching the problem from different angles, which is often the absolute best way solve the problem most effectively. However it seems like there will be two separate solutions and customers will have to choose one architecture over the other.
VMware with NSX brings to us a solution that is closer to a software defined solution with an overlay network, with the network hardware provide the underlay.
The Cisco with ACI/APIC solution looks to be a hardware ingrained solution with software integration built into it.
The pros and cons of each solution and design considerations of choosing one over the other are a topic of another discussion.
* Thanks to Zach Hayes (@bossthepitch) & Laura Jordana (@laurajordana22) for edition and proof reading.