Full IDE for Software-Defined Networking Offered by Research Project

A research project has introduced a full integrated development environment (IDE) for creating applications using software-defined networking (SDN), a new-age technology approach that's disrupting the datacenter virtualization arena while still evolving itself, with varied philosophies, tools and even definitions of what it is, exactly.

The European research projectNetIDE seeks to provide a development framework that's independent from vendors and specific SDN controllers, it announced this week at a Düsseldorf, Germany, conference.

SDN is described by the vendor-agnostic Open Networking Foundation (ONF) as "the physical separation of the network control plane from the forwarding plane, and where a control plane controls several devices." Furthermore, it's "an emerging architecture that is dynamic, manageable, cost-effective and adaptable, making it ideal for the high-bandwidth, dynamic nature of today's applications."

With that separation of network planes, network "intelligence" is moved from proprietary hardware to the control plane, managed by a software controller that sees the entire network like one single entity that it can control as needed and often uses commodity bare-metal (or white-box) hardware.

The variety of proprietary controller technologies is one problem NetIDE is attempting to address.

"Nowadays, while most of the programmable network apparatus vendors support OpenFlow [from the ONF], a number of fragmented control plane solutions exist for proprietary software-defined networks," the project's Web site states. "Thus, network applications developers need to re-code their solutions every time they encounter a network infrastructure based on a different controller. Moreover, different network developers adopt different solutions as abstract control plane programming language (for example, Frenetic and Nettle), leading to not reusable and shareable source code for network programs."

Thus NetIDE provides an Eclipse-based integrated framework featuring the NetIDE Network Engine, a controller-agnostic environment in which SDN applications for varied controllers can be deployed on top of the same infrastructure. The IDE also provides tools for testing, profiling and fine-tuning network applications, including a logger, garbage collector, debugger, a wireshark dissector and more, the project said.

"It is great that we are finally releasing this important outcome of the project," said project exec Dr. Elio Salvadori. "We strongly believe this may greatly simplify the life of many SDN software developers, who are often forced to get drop applications developed for a specific controller and re-implement everything from scratch for a different controller."

NetIDE is driven by a consortium of networking vendors, researchers and educational institutions. It provides the open project on GitHub, and it's also featured on the Eclipse Marketplace.

About the Author

David Ramel is the editor of Visual Studio Magazine.