This article is more than 1 year old
Retiring IETF veteran warns: Stop adding so many damn protocols
Ross Callon provides departing KISS (keep it simple, stupid)
A retiring veteran of the Internet Engineering Task Force (IETF) has left the organization with a departing piece of advice: stop creating so many protocols.
Ross Callon was one of just 21 engineers who attended the first IETF meeting in San Diego in 1986 and has missed only a handful of the 95 subsequent meetings it has held in the intervening 30 years.
He took the opportunity of his retirement at the recent IETF meeting in Berlin to give a speech to attendees entitled "Keep it Simple. The Cost of (too many) Standards."
His main point: the IETF is developing too many protocols that basically do the same thing. As a result, the open standards body is creating unnecessary complexity and confusion and could undermine its biggest goal: an interoperable internet.
"While diversity in approaches is inevitable and valuable, too many options damages interoperability," Callon observed according to a write-up of the talk in the IETF's most recent newsletter. "We have to be a little concerned about creating too many options because some vendors implement some, while some vendors implement others, and suddenly we don't have interoperability."
A good example is VPNs. You can encapsulate comms for a VPN in one or two ways: with or without connections. But from there the options keep growing.
With connections... "There are three ways to signal your labels: Label Distribution Protocol, Resource Reservation Protocol, and Border Gateway Protocol. And there are some subtle differences when you get a label. Defined Operations and Management protocols (such as Label Switched Paths, Ping, and Bidirectional Forwarding Detection) are ways to manage things and measure performance," Callon said.
And without connections... "You can take an Internet Protocol (IP) packet and encapsulate it in an IP header. There are four options just for that: IPv4 in IPv4, IPv4 in IPv6, IPv6 in IPv4, and IPv6 in IPv6. Given all those options, it's hard to get one of them implemented and deployed everywhere."
Taken together there are between 20 and 40 different ways to do comms encapsulation – something that Callon notes are never all going to be added to one integrated circuit. "You run the risk that in some places in the world one gets implemented, and then somewhere else another gets implemented. You can end up with a loss of interoperability."
As any internet engineer will be able to tell you, the staggering success and expansion of the internet has in large part been possible thanks to the ability of many different companies to create a huge array of products that can all work with one another by following agreed protocols.
Callon argued that we might not have seen the internet we have today if there had been such an overwhelming number of approaches. "It wouldn't have happened if we had not had choices to do something, but it also wouldn't have happened if we had 20 or 30 ways to do something."
In many respects, the open process of developing the right number of protocols has been the IETF life's work. It is why the organization remains in existence, even if it has become a diminished force in recent years due to the industry increasingly going down its own paths.
"The IETF needs to find a way to avoid frivolous standards," Callon argued. "It is to the advantage of all of our companies and all of our research organizations and all of our government agencies that the Internet continues to grow. I'm asking everybody to think about this when a Working Group is considering a protocol: Is it really needed or can we use an existing tool?"
Callon's remarks were focused on routing but, he argued, the same arguments can be applied across all the IETF's work.
Of course, the IETF has always dealt with multiple proposed protocols for the same task, although it could be argued that in the past the organization was a little better at boiling them down. For example there were five different proposals for chat protocols, but ultimately Jabber won out.
There has also been persistent tension between the IETF's open protocols and the proprietary efforts pushed by particular companies. In the ongoing tug-of-war between corporate interests and interoperability goals, the industry approach has often won in recent years, perhaps putting pressure on the IETF to be more flexible on approving new protocols as a way of staying relevant.
Callon's concerns have also been well heard for a number of years by those leading the organization. Current chair Jari Arkko recently made a big push for the IETF to concern itself with the flooded landscape that is the internet of things. "I cannot think of a better example where interoperability is important than the Internet of Things. Without interoperability, lights won't work with the switches, sensors can't be read by your smartphone, and devices cannot use the networks around them," he noted in a blog post.
If there is one area where the IETF may be able to assume its traditional role, it is in this diverse market – pretty much everyone agrees they need a few standard protocols to create a foundation on which everyone can build.
Despite some recent signs that the industry is starting to coalesce around fewer IoT standards, it is still a mess and the IETF thinks it may be able to bring to bear its decades of experience working on open protocols to broker a set of solutions.
In that sense, Callon's word of warning while exiting the building is especially relevant and timely. With luck, current IETF attendees will listen to some words of wisdom from one of those few who was there when it all began. ®