It's clear that networks are heading in a software-defined direction. But, for most companies, building production-quality products and tools that can fulfill the promise of SDN is a challenge. The researchers at Gencore Systems had developed a cloud analytics platform that uses SDN to identify and correct application performance problems in real time. But how does a brand-new company come by the resources to properly test and fine-tune a product meant for cloud networks? For help, they looked to the unique network environment provided by Juniper Networks OpenLab.
Dr. Boon Thau Loo is a professor at the University of Pennsylvania’s Department of Computer and Information Science, where he leads a team of researchers who study large-scale distributed systems and develop new programming tools and analysis techniques to improve them, he said in an interview.
Loo was first introduced to OpenLab when it opened in 2012 as a resource for his graduate students. He was pleasantly surprised to see the facility spring up in nearby Bridgewater, N.J. OpenLab General Manager Jerry Passione explained that Juniper decided to provide "an innovation hub" focused on networking software for the East Coast and chose New Jersey specifically because of its proximity to academia, history as the headquarters of Bell Labs, and ability to serve as a testbed for some of Juniper's largest customers, such as AT&T, Comcast, the New York Stock Exchange and Bloomberg.
Emphasis on education
The 7,000 square-foot lab provides a large array of networking and software resources for customers, universities, and other third parties to build and test new applications for intelligent networks, said Passione. OpenLab also offers extensive educational programs and training sessions, and hosts "hackathons" that invite college teams to solve modern networking and applications challenges. "The lab is also heavily involved in promoting technology education in the local school systems," Passione said.
Loo participated in the inaugural OpenLabs hackathon, sending three students from his computer networks class to compete. "They learned so much about the latest technology that when they came back I had them guest lecture in class," said Loo "When we teach in the university, we try to keep it as up-to-date as possible, and the hackathon was not only a way for our students to pick up new technology, but to bring cutting-edge ideas back to the classroom setting."
Loo and his team took first place at the hackathon, received several other awards for their discoveries, and began thinking about commercializing their work. As a result, Loo became a co-founder of Gencore Systems LLC in early 2014. "When it came time to start the company, we already had some know-how on Juniper platforms, and, more importantly, we had a relationship with the lab, so we looked to them as a resource," Loo explained.
Gencore's first product is an application analyzer implemented on a virtual machine running in the cloud, and it collects a sample of the traffic entering the cloud environment, explained Loo. "Based on that network traffic, the analyzer reconstructs the application-level information -- we're able to determine the per-URI request response times and intercept third-party API calls to determine performance latency, among other things," he said.
The software is geared toward companies that are running latency-sensitive applications in a private or public cloud environment. It's especially useful in a modern DevOps environment using continuous deployment, according to Loo. "When code gets developed and deployed right away -- maybe many times a day -- you need a frictionless way to go very deep into the application and provide real-time feedback whenever any new code could potentially cause problems."
Using an SDN platform is one of the means Gencore software can collect its sample data without having to install any agents or modify a company's existing cloud applications. "The whole idea of using software-defined networking technology is to make it completely non-intrusive, so that the ops person can run it without requiring any support from application developers or any code annotations," said Loo. The analyzer taps into one of the SDN virtual switches and pulls out a sample of traffic using only an API.
Although the analyzer was developed using Juniper Contrail and the team has made the most integration progress there, it is also able to work via other SDN platforms and the Amazon cloud by utilizing an agent on the analyzer VM.
Testing under load
The commercial-grade equipment available at OpenLab allowed Gencore to "plug into the technology ecosystem as quickly as possible," said Loo. While some institutions and R&D labs have network simulators, emulators, and experimental testbeds, OpenLab provided the use of real, advanced networking gear and production-level software, and they could access it either locally or remotely. The lab's workload generators also let the team stress-test their system with different load scenarios, which Loo said is critical.
Passione concurred, saying the lab is one of the only labs dedicated to SDN that can provide real-world results. "Researchers want to test their ideas at scale. There's really no way you can simulate an application on the public cloud network," he said. "Companies want to test things on real hardware and push the limits, but they can't usually do that in their own production network."
Working with the lab also had unexpected business benefits, Loo pointed out. Gencore ended up becoming a Juniper partner and now is demonstrating its product at OpenLab on a regular basis. "OpenLab provided equipment and resources that allowed us to test our integration, and at the same time we made connections with some Juniper customers and were able to do early demonstrations and get feedback," he said.
That provides a "win-win" for both parties, remarked Loo. "We got those benefits and can make our software what customers really need, and Juniper in turn is able to encourage companies -- particularly smaller companies with disruptive, innovative ideas -- and pull them into the Juniper Networks ecosystem."