Taking Penn Engineering Technology to Market
By Lida Tunesi
Boon Thau Loo, professor in the Department of Computer and Information Science (CIS) and associate dean of Master’s and Professional Programs, acknowledges that there is a divide between the worlds of academia and industry.
“As a professor, you can hardly publish a research paper on an idea that is useful for one narrow application,” Loo says. “You have to think about general purpose abstractions or platforms. But when you establish a startup, that mindset changes. With limited resources, you shouldn’t be trying to boil the ocean. You have to find one compelling product that you can put in the hands of a customer.”
By collaborating on the CIS department’s first-ever spinoff, a startup called Netsil, Loo and his lab members gained the skills to cross that chasm.
Netsil’s visual interface makes it easy to monitor the performance and activity of a cloud application. This type of monitoring is growing increasingly important since engineers now commonly build web apps from separate modules. One app can rely on hundreds of smaller services that need to seamlessly communicate with one another. These dispersed services can be complicated to keep track of, so Netsil provides a way to map out an app’s networked pieces and make sure they are operating correctly and in sync with one another.
However, the idea behind Netsil was not always obvious; this kind of monitoring has only recently become necessary.
The project started taking shape in 2012 when Loo’s NetDB@Penn research group created a technology called Scalanytics, which was an offshoot of his bigger research agenda on declarative networking. In declarative networking, network administrators “declare” the intended behavior of their networks using a simplified programming language. A smart compiler then automatically infers the rest of the actual code, freeing up the operator from manually writing complex programs that are prone to human error.
Scalanytics is a toolkit for building a high-performance network monitoring system using these declarative networking principles. To encompass different needs, like checking for performance problems or potential security issues, the team made Scalanytics modular and customizable.
“It lets you build monitoring functionality in an easy way, like building with LEGO blocks,” Loo says.
The team felt that Scalanytics had enough potential to bring it out of the lab and turn it into a product they could sell. Using a National Science Foundation Small Business Innovation Research grant, Loo took a year of sabbatical leave in early 2014 to form a startup around the Scalanytics technology with students from his research team, brothers Harjot and Tanveer Gill, and sisters Cam and Anh Nguyen. Their company would later become Netsil.
Soon enough, the group hit a snag. They learned that a good piece of technology does not necessarily equal a marketable commodity, and realized they would have to shift their thinking and find a niche for Scalanytics.
“What we thought was a product was really just a piece of technology.” Loo says. “There were hundreds of ways we could have applied the technology, so where do we start? A lot of what we did in the initial days was figuring out the right product-market fit. You can only this figure out by leaving the research lab and engaging real users to solve their problems. We had a couple of false starts. I strongly credit my students for figuring this out.”
Pieces started to fall into place for Netsil as the industry saw a rise in the practice of building software from small components with individual purposes, rather than all in one piece. These components are called microservices. One microservice might be a firewall checking for security intrusions, another might be a data analytics package that figures out where customer traffic is coming from. Each microservice is independent of the others and they communicate via API calls.
“Microservice architecture is a way of taking a complex cloud service, and breaking in into smaller, modular software components,” Loo says. “This architecture makes it easy to deploy new or modify existing cloud services.”
Ten or fifteen years ago, Loo says, when users visited a website, they might have hit the web server and its one database, but that was it. These days web apps are much more complex and might even consist of hundreds of software components. To complicate things even more, some of those components can be sourced from third-party vendors.
Microservices have some advantages. Since they are independent of one another, developers can manage, scale, fix, or replace a microservice without affecting the rest of the software. Some of these traits make them very well-suited for cloud applications, and even for running traditional hardware network appliances such as network routers and switches as software modules in the cloud. Microservices for one app can even be written in different programming languages, providing some flexibility.
However, these modular pieces also come with their own set of problems. For one, the more microservices you have, the more challenging it is to keep track of them and to follow the communication between them. This is where Netsil found its calling. The product creates a visual representation of the microservices that make up an application, and of how they are talking to each other.
“We went from a very general technology to creating what Netsil calls the ‘Google Maps of microservices,’” Loo says.
This map makes it easier to pinpoint the source of problems or, ideally, to spot and fix potential issues before they happen. This in turn improves the experience of the app’s users by preventing crashes and downtime.
The technology also circumvents another issue that arises with this type of web service architecture. The code behind a microservice is sometimes “opaque,” meaning a systems administrator deploying the service cannot see its inner workings. So rather than struggling to monitor each individual microservice, Netsil looks at the bigger, network-scale picture. It then reverse-engineers that information to deduce what’s going on at the smaller levels and map it out.
“Netsil taps network traffic to make sense of what’s happening within the application,” Loo says.
Because of this approach, Netsil is also non-invasive. Many times, if a programmer wants to watch over a piece of code as it works, he or she must add new lines of code with instructions for monitoring. Netsil’s technology avoids this.
“It’s like when you go to see the doctor,” Loo says. “They don’t need to cut open your stomach to know why you’re sick.”
After Loo returned to Penn, the Netsil team, which has now grown to include another Penn CIS graduate, Kevin Lu, moved from Philadelphia to San Francisco. It was acquired by Nutanix, a publicly listed company that provides businesses “hyperconverged infrastructure,” or the ability to manage multiple cloud resources within a single control point.
Loo says his foray into the world of startups gave him deeper insights into his own work.
“I have a better understanding of near-term projects that industry is best suited to do, as opposed to fundamental research that has a much longer time horizon,” he says. “It is the latter that universities should focus on. These days, I start new research projects by thinking hard about why anyone would care five to ten years down the road.”
The experience at Netsil also gave him new tools at Penn. “I attribute my ability to run our master’s programs to the organizational skills I picked up while working on this venture,” Loo says. “I would not be able to do my job as effectively if it weren’t for this experience.”
Loo also views the tech transfer experience as an important opportunity for research mentorship. “It is very satisfying to see my former advisees and students take on leadership roles in the company, taking it to great heights. Student development is a reason why many of us become professors.”