As we approach the one year anniversary of the start of the Software-Defined Networking (SDN) movement, there is no doubt the concept has garnered great fanfare with vendors and service providers alike. We recently talked with Sharon Barkai, founder of SDN start-up ConteXtream to discuss the state of software-defined networking.
CT: Can you provide us with an overview of how software-defined networking is different from traditional networking?
Both traditional and software-defined networking are based on hardware and software elements that “connect things” by forwarding packets. The main differences between these paradigms are in the awareness requirements and optimization of the network. Traditional networking is simple. It scales, easily extends and will typically pick the shortest path between any two locations based on localized need-to-know limited information in each hop. However, this doesn’t allow the endpoints to move, which is exactly what we look for in the age of clouds. Mobility allows flexibility, elasticity and load distribution that impacts the economics and experience of computer applications far deeper than the shortest path selection. In order to facilitate mobility there needs to be global real-time awareness of every endpoint, and this is what we achieve with software-defined networking. We want to achieve this in a way that scales and does not compromise the fantastic extensibility of traditional IP networking. This can only be achieved using intelligent combination of the two paradigms, traditional, and software-defined networking.
CT: From your experience, what are the major challenges you see for the cloud networks?
Before we get into the networking challenges for the cloud, let’s first agree that the biggest challenges cloud architecture imposes are the need for elasticity and scale. Now the main challenge with cloud networking without a doubt is the attempt to keep increasing both dynamic mobility and scalability of cloud networking. Mobility of endpoints (VMs) is easy within small “chunks” of clusters, but as we remove barriers and flatten out the spine-leaf cloud structure, we experience explosions in both address flooding and address lookup tables to identify where endpoints reside. Scale-out then becomes a big problem. By the same token, scalability is easy if endpoints remain stationary, if spine links connecting and disconnecting would not ripple information to all racks, all communication groups would keep stagnant and could be stitched using static configuration, and states for the same sources would continue communication among the same destinations in the same locations. However, this is not the right way to scale hosting, carrier, or Internet Datacenter applications.
CT: Why isn’t traditional data center networking ideal for the cloud?
Traditional data center networking would have been ideal for semi-close workgroups of processes working locally to produce a combined task. This way, simple hierarchies of IP subnets would have scaled amazingly well. However, when 100 different servers are involved in every Facebook refresh page, or tenant VMs are randomly added and removed to cope with elastic demand patterns, and carrier resources are combined on the fly to cope with varying subscriber demands throughout the day, the traditional “country code,” “zip code,” and “street address” hierarchical scale structure of the IP breaks.
CT: How does SDN address cloud networking challenges more effectively?
SDN identity networking scales flat without hierarchy. It can use similar methodologies to that of Hadoop & MapReduce, if it does not have to deal with hop to hop topology. If SDN methodology is applied in Distributed Edge Overlays (DEO), then it can leave the topology challenge to traditional IP and task it with connecting to a few hundred SDN locations, which basically stay put. The SDN edge, on the other hand, only deals with managing global awareness of millions of entities that move based on their identity.
CT: In your opinion, what is the best deployment model for SDN?
Many of the deployment models we have seen argue for centralized controllers to manage elements all the way down to the level of the hypervisor. That creates an enormous scale and coherency challenge when you start thinking about a single central controller managing huge meshes between all servers. A more efficient and effective deployment model for SDN is at the Top of Rack. The best deployment scenario is to use all the cores on the server for VMs and processing applications. Be sure to allocate up to 5 percent of the servers for software defined cloud networking, fused lookup and forwarding in what we call top of rack grid or ToRG. These servers will facilitate flat mobile connectivity, traffic separation, load-balancing and other functions typically achieved using complex configurations of specialized boxes. Use simple switches to connect to the ToRG by using as many links as needed for bandwidth, scalability and mobility. The scale and mobility challenges will be completely masked from these switches. By implementing flat, simple, elastic networking the ROI will far exceed the cost of these servers and the cost of the software it will take to turn them into fused SDN-DEO ToRG elements.
CT: What’s your opinion of where things are to date in the maturity of SDN?
Today, there is a basic definition of an SDN model which is going through major discussion and refinement. The initial concept called for the separation of the control plane from the data plane in networking, and put forth what I believe is an unrealistic notion of a centralized, globally aware “brain” black-box in the sky (a controller) that directs all traffic from one point to another. Fortunately, the industry is starting to recognize that central controllers are not a viable, long-term strategy for mature SDN. Instead, distribution schemes such as Distributed Hash Tables (DHT) are emerging to spread the global packet forwarding knowledge across the entire system. These new scaling concepts that are being adapted to networking have been proven in other cloud-scale Internet environments such as Gmail and Facebook. Additionally, the networking industry is seeing a trend toward edge encapsulation techniques fueled by standards such as LISP, VxLAN, and NVGRE that allow SDN to operate as an overlay network on top of existing IP core. This will not only allow customers to keep the existing IP cores intact, but it will also allow multiple virtual SDN networks to exist over the same physical IP core.
What all of this ultimately means is that SDN is very much an emerging market, with a lot of great ideas coming to the forefront. As with any technology, the ultimate winner in terms of architecture and approach will be decided by the customers.
CT: What advice do you have for cloud service providers who want to deploy SDN?
The best advice is to take a step by step approach. Use SDN to solve inter-datacenter, then inter-cluster, and finally inter-rack connectivity. Begin with a simple virtual Layer 2 connectivity functionality (the function that allows you to orchestrate processing anyway you wish), then add a first link-load-balancing and a high application-load-balancing function; then TCP optimization, and traffic steering till you make the most of what SDN and identity based cloud networking can offer.
Sharon Barkai, Co-Founder, ConteXtream
Sharon began ConteXtream in 2006 after a career spent founding and managing highly successful technology companies. Before ConteXtream, he was Founder & CEO of Xeround Systems, which, by virtue of its innovative MapReduce approach to database performance and scalability, is a leader in the rapidly growing market for mobile subscriber databases and database as a service (DBaaS). He received his Bachelor’s degree in Computer Science and Mathematics from Hebrew University, and MSc from Colombia University School of Engineering.