Contrail, and its open-source counterpart consist of two main components: the Contrail Controller and the Contrail vRouter.
The Contrail Controller is a logically centralized but physically distributed SDN controller that's in charge of managing, controlling, and running analytics on the virtualized network. This exposes a set of Representational State Transfer (RESTful) application programming interfaces (APIs) to cloud orchestration tools, such as Juju, Chef, and Puppet, and other applications. At present, the Contrail controller works with OpenStack, CloudStack, and IBM's SmartCloud Orchestrator.
The Contrail vRouter is a forwarding plane of a distributed router that runs in the Xen or KVM hypervisor of a virtualized Linux server. It extends the network from the physical routers and switches in a datacenter into a virtual overlay network hosted in the virtualized servers. The controller talks with other vRouters by using Extensible Messaging and Presence Protocol (XMPP). They then build tunnels between virtual machine, which run over the physical network.
Like all SDNs, Contrail's master goal is to free networking from the constraints of hardware by virtualization Unlike other such SDNs, Contrail doesn't use OpenFlow as one of its foundation technologies. Bob Muglia, the former Microsoft executive and Juniper's executive VP of software explained to The Register, "If there are usages cases for OpenFlow that are interesting — we can add OpenFlow to it."
The fundamental problem with Contrail, and all the others, is that there are getting to be too many of them. Open-source or not when you have too many standards it makes it harder for administrators to unify their services.
David Myers, Brocade's Service Provider CTO and chair of the OpenDaylight Project Technical Steering Committee, has a solution in mind. Myers said at LinuxCon in New Orleans that "OpenContrail architecture is pretty elegant, OpenDaylight has worked a lot with Juniper, but they haven't come to work with us. Sill, we would like them to bring Contrail into OpenDaylight."
Sure, Myers continued, "Both could co-exist, but if we have a lot of different systems managing different stacks and they don't have ways to communicate with each other, it could get messy. We want to solve this problem." In conclusion, "It would be great to bring these projects together."
Given that Cisco is one of DayLight's biggest members and Juniper sees Cisco as its biggest rival, and vice-versa, this might not be easy. On the other hand, were they to do so it might be better for their datacenters and cloud company customers.