It's probably too early to discuss the northbound interface. I think Colin Dixon, a researcher at IBM, had the right idea when he said, "We should build it first and that'll become the de facto standard."
That seemed to be the consensus on a panel titled "Seeking the True North," convened Tuesday at the OpenDaylight Summit to discuss how to approach the development of northbound APIs for software-defined networking (SDN).
The panel was packed, showing the attraction of a northbound interface discussion. It's that volume of interest that led the Open Networking Foundation (ONF) to start study the need for northbound interfaces — plural, because there will have to be more than one. But as the panel reflected, the discussion is still in a formative stage.
Here's what we do know: There are things sitting above the controller that would like to either dictate actions to the network or at least find out what the network is doing. Those things include management software, business applications, and ... and already, we're talking about multiple Northern denizens with different agendas and probably different data needs. As ONF Executive Director Dan Pitt describes it, applications sit at a variety of "latitudes" north. It seems too early to even count the number of northbound API types that would be needed.
Here's another example of how northbound requirements diverge. What does that northbound entity want? In some cases, it wants to set up a contract with the network, agreeing on what the network will do for certain types of traffic. "Give me a packet, I'll light it on fire," Dixon said as an example.
But here's another use for the northbound interface: "How do I, without changing that contract, improve network performance?" Dixon said. Different question, with different information required. "My guess is that you'll see some of both," he said.
The first steps might not be crystal clear, but the panel had strong opinions about which paths would be clearly wrong:
- "Letting" northbound entities delve into and program the details of the network. It's "a crime against humanity," to make applications people think in terms of VLANs an IP addresses, said Mike Dvorkin, chief scientist at Insieme (now part of Cisco). His point was that the networking industry still talks to its customers on that level, and it's past time to stop doing that.
- Giving applications unfettered power over the network. Dvorkin again: "Allowing the business application to directly control the network is probably not a good idea. There has to be some kind of feedback loop."
- Making the applications people tell us what the northbound interfaces should be. They aren't ready yet, probably because of that "crime against humanity" factor, said Sarwar Raza of HP, who's chairing the ONF's Northbound Interface working group.
A better model is to handle network functions without the application knowing about it, Raza said. He gave the example of quality-of-service for unified communications and multimedia. That's a requirement that's come up in some products, and vendors including HP got together to find a way to handle QoS on behalf of the application.
Sandwich LayerAnother idea that didn't seem to go over well was that of a sandwich layer, a neutral northbound layer that all network elements would talk to with one interface. Then, varying northbound interfaces would spring from that sandwich layer upward to the applications and management software. The sandwich layer would mean network equipment wouldn't have to support multiple northbound interfaces.
But Dvorkin said he doesn't like sandwich layers, as he thinks they tend to slow progress down. My hunch is that many in the community would agree with him. Moreover, a sandwich layer creates a least-common-denominator situation for that controller-to-sandwich-layer interface, as Pere Monclus, CTO of Plumgrid, noted. The idea might still work, but in any debate, the common-denominator factor will be argued as a concession to mediocrity.
People have been rolling their own northbound interfaces, and maybe that's not such a bad thing. Maybe it's still too early, even now, to organize those efforts; maybe there's still too much to be learned about how applications will need to communicate with the software-defined networking (SDN) controller layer.
In the end, most of the panel agreed with Dixon, and it was their strongest conclusion. "The only way to find success with the northbound APIs is to keep trying," Raza said.
(Photo by Gordon Wrigley, licensed under Creative Commons 2.0. More info here.)