Why Internet Standards are Still Important

Vidya Narayana, in a piece at Gigaom, said recently:

So, why did I actually stop contributing to standards definitions? The primary one is the fact that while the pace at which standards are written hasn’t changed in many years, the pace at which the real world adopts software has become orders of magnitude faster. Standards, unfortunately, have become the playground for hashing out conflicts and carrying out silo-ed agendas and as a result, have suffered a drastic degradation.

As someone else recently said to me — “On the wire standards are increasingly irrelevant; open source software is the future.” I think we’re going to find this is a matter of jumping into the fire because the frying pan is uncomfortable. Yes, the world has changed. Merchant silicon and that whole software defined network thing are going to change everything, right? We’re going to go from running OSPF and BGP to running OpenStack, and just “be done with it.” And no, the world doesn’t necessarily belong to just a few major hardware vendors that get to keep the keys to the routing protocols in their back pockets.

So I respect what these folks are saying. The IETF is, like any organization, subject to various shades of brokenness. But let me inject just a little reality here. Open source is great (in fact, I run a lot of open source stuff, just as everyone else does), but let’s not put our blinders on.

Open source doesn’t solve the “on the wire protocol,” problem. In fact, if anything, it could easily make it worse. “Just pick a format, and don’t worry about interoperability! Who do we have to interoperate with, after all?” So there’s never going to be yet another open source project that piggy backs on the one you’re working on for some other purpose? Once we all adopt OpenStack, we’re all done with networking forever, because all future improvements in routing, switching, virtualization, etc., can all be encapsulated and worked on as software? There are no plugins that ever need to written? No new ways of transporting information?

Open source projects also tend to border on the insanely difficult to install and manage, because it’s just so easy to build some new addon without any reference to a larger architecture. Tried to install a large piece of open source recently from scratch (without piggybacking on a reference package built by a grad student someplace)?

To turn on the snark a little, do we really think the community of ultra rich folks who figure they can make money off selling services and content based on open source is so much more open and less likely to have the problems the IETF has than the IETF itself is? If you think so, then I have a news flash for you — we’re all humans on this planet. No matter how much some group or another has moved beyond all that, freeing itself from the greed, desire for control, and all the rest — they haven’t.

The bottom line is this:

The end of the IETF is not nigh. The end of big vendors selling software is not nigh. The end of routing is not nigh. There’s a place for open source — and for open standards, and vendors, and all other sorts of people at the table. Open source without open standards is likely to produce a byzantine world of individual projects that serve one purpose running on their own purpose built protocols — a constantly churning sea of new projects hawking an ever widening array of different versions of the same set of services, each with its own on the wire formats, etc. It’s all good when you have two or three protocols providing a single service, but when you break the thousand protocol barrier, let’s come back and talk about the importance of common data formats, etc. They may not be sexy, but they’re still relevant.

What we need here is balance. Unfortunately, the networking industry tends to get “shiny thing syndrome,” running off after new and “better” stuff every time something new and shiny turns up with any sort of early success. And another part of the networking industry sits around waiting for the new shiny thing to be able to solve world hunger before even thinking about it. But these are human level problems; a new organization can solve them for a short period of time, but reality has to set in at some point.

Maybe I’ve been around this block a few times, so I’m a bit old and jaded. Or maybe not. Either way, let’s not abandon the past before we’re certain the future we think is there, is really there.

Russ White

Russ White

Russ White is a Network Architect who's scribbled a basket of books, penned a plethora of patents, written a raft of RFCs, taught a trencher of classes, and done a lot of other stuff you either already know about, or don't really care about. You want numbers and letters? Okay: CCIE 2635, CCDE 2007:001, CCAr, BSIT, MSIT (Network Design & Architecture, Capella University), MACM (Biblical Literature, Shepherds Theological Seminary). Russ is a Principal Engineer in the IPOS Team at Ericsson, where he works on lots of different stuff, serves on the Routing Area Directorate at the IETF, and is a cochair of the Internet Society Advisory Council. Russ will be speaking on Network Complexity at RIPE in May, and has recently published a new book, The Art of Network Architecture.
  • http://packetpushers.net/author/ecbanks Ethan Banks

    Russ, I don’t think anyone will argue that we don’t need standards. Not anyone who’s been in the business for a meaningful length of time, anyway. But I think Vidya is raising a lot of valid points in her piece, which you aren’t really addressing.

    To this admitted outsider, the IETF and other standards bodies do appear to move quite slowly. Ratification of standards isn’t keeping step with the swiftly moving times. Drafts show up at the IETF which overlap other similar protocols, but nothing is done to consolidate the replicated functionality and arrive at a general consensus. (Think VXLAN, NVGRE, STT and now Geneve.) This is a broader industry issue, as sometimes standards bodies appear to compete with one another (SPB vs. TRILL). And yet again, sometimes standards bodies materialize out of thin air and head in their own direction to solve some specific issue under their own auspices (ONF).

    Vidya also said, “Running code and rough consensus, the motto of the IETF, used to be
    realizable at some point. Nowadays, it is as though Margaret Thatcher’s
    words, “consensus is the lack of leadership” have come to life. In the
    name of consensus, we debate frivolous details forever. In the name of
    patents, we never finish.”

    Right. Why is this happening? It appears that the model used to get things done is broken. Lack of leadership? Vidya thinks so. Frivolous debates? I suppose one person’s trivial detail is another’s key element, but shouldn’t there be someone that takes charge of the situation and moves the process ahead? Is there a broken governance model that needs to be addressed?

    She also points out, “I believe it is time to revisit the tradeoffs between consensus and
    leadership; they absolutely should not be considered to be one and the
    same. This will be tricky and will require careful balancing of
    undesirable control and faster decisions. Most likely, a change like
    this will require a complete overhaul of the leadership selection
    process and structure. But, without this rather drastic shake up, I’m
    afraid we are widening the gap between standards and reality.”

    Vidya is offering a potential solution to what she perceives as the issues, which she specifically calls out as a leadership & structure problem. Is this possible to do? Who within the IETF would identify the issue and put wheels in motion to address a restructuring of leadership selection & structure? If the answer is, “It can’t be done,” then I’m afraid I’m with Vidya when she concludes, “For now, some of the passionate people will go off and try to make real things happen elsewhere.” Why? Because that’s already exactly what’s happening. The glacial pace of standards bodies, for whatever the reasons are, is driving innovators away. Where are they landing? Various vendors & startups as well as open source projects.

    None of that negates your point that we still need standards, Russ. But there’s still a problem to be resolved, and I think that’s where the debate needs to happen.

    • Russ White

      “Right. Why is this happening? It appears that the model used to get things done is broken. Lack of leadership? Vidya thinks so.”

      Maybe… Or, on the other hand, it could be that people have learned how to game the system to get what they want, or they’ve become “greedy,” in that they’re after what’s good for them (personally) rather than what’s good for the community. I can think of a myriad of instances where this is true, in fact. It’s like the pie problem all big companies face. Look at a small circle with just a few slices in it, and see how much of the outside edge each slice faces. Now look at a large circle with a lot of slices in it, and then look at how much outside edge verses inside edge there is. The point is that as the company gets more slices, there comes a point when it’s easier to grow your slice along the inside edge than the outside. This has clearly happened at the IETF.

      Let’s consider a couple of specific points. Once new work starts, if you want to get a draft in edgewise (really important for people who make their living writing drafts!), then you have to jump in really fast and find all sorts of facets other folks haven’t thought of. So the way to get a lot of drafts on your resume is to boil the ocean, and the way to find a job is to get a lot of drafts on your resume. Want an example? Look at the I2RS use cases mess. We started with two or three. There are now so many I can’t even read them all.

      The reaction to this — something Vidya points out — is that new working groups are formed “in secret,” with the work already pretty much done. There are a couple that have happened this way recently — suddenly there’s a new working group, a new charter, and all the drafts are already written and posted within a week. That can’t happen without a lot of inside ball going on. How do you solve this? Just saying, “we need a structure and leadership change,” in an article about walking away from the organization isn’t enough. These magic working groups are a structure change, designed to get around the long time it takes to get a standard in place — but we don’t like them, right? :-) Structure changes aren’t going to help here, I don’t think.

      Let me offer another suggestion: stop boiling the ocean. But how can you do that when people build their careers out of doing just that — boiling the ocean? There’s a deep conundrum there that walking away isn’t going to fix. For me, personally, I just keep fighting the ocean boiling tendency wherever I see it and whenever I can, and consciously try to set an example of taking my ego out of the equation (knowing I’m not even perfect here).

      But — backing up — my specific issue is not really with Vidya’s article, it’s with the concept that standards are done. Just after posting this, I saw yet another post someplace (I didn’t bookmark it) that said the same thing — “standards are broken, and they’re out, open source solves the problem.”

      Sorry, but I just can’t agree with this line of reasoning. The IETF was really effective at first because it was doing a lot of really important work off in a corner. Most folks agreed on the problem set, and most folks could come to agree on the solution. Absolutely no-one put a significant amount of time into it — maybe 25% or something. The rest of the time they were off building boxes or running networks. Today you can’t be an AD without doing it full time (or more).

      Where the IETF was all those years ago, the open source community is today. Lots of people spending time (some of them full time!) on a pretty small set of agreed on problems. Where the IETF is today is where the open source community is headed, eventually. Open source will eventually try to boil the ocean, and will slam head on into a different set of problems, but problems nonetheless. Instead of having multiple standards doing the same thing (which I’m constantly complaining about!), we’ll have multiple modules in every open source project doing the same thing, none of them interoperating very well, not all of them kept up to date, etc.

      So my main point was this: stop saying open source replaces standards, because it doesn’t. And stop thinking the problems of human nature have been solved by the latest “model,” etc., because they haven’t, and they won’t. We just have to learn to deal with the problems in the organizations the best we can.

      The more people who participated without caring whether or not they could ever put a new “major” RFC on their resume, the better the process would be. On the other hand, we’ll never get to perfection, so let’s work with what we have, and make the best of it we can.

  • returnofthemus

    To paraphrase Greg, ‘I don’t know what open is anymore’, I’d apply the same to standards, which Ethan has articulated well in his post on this topic.

    While in the main I do think standards are important, to me there are a whole load that just appear to be irrelevent. In fact the other day I conducted a short experiment, whereby I typed in 3 and 4 letter acronyms into seach facility on the IETF website and felt completely overwhelmed by the results, it was like sifting through a minefield.

    Draft after draft, different variants of the same protocol, some with recognised vendor participants, some from the lesser known and even sole individuals, it was interesting to see that OpFlex had been submitted, but even funnier than that was EIGRP ;-)

    • Russ White

      Okay — so let me ask something (playing devil’s advocate)… Let’s assume the line of reasoning is, “a lot of stuff has been standardized that isn’t used any longer, so standards are no longer really valuable.” Why wouldn’t you apply the same line of reasoning to open source software? When I poke around on the ‘net, I find a lot of open source projects that have been abandoned — there are actually more abandoned open source projects than abandoned standards. By this line of reasoning, doesn’t this mean open source is just as useless as standards are? Or are we using the wrong metrics here someplace? Of course there are a lot of tunneling protocols, and of course the IETF is broken. OTOH, open source is broken in just the same way as the IETF is — too many egos, etc. Until we find a solid group of egoless people who are independently wealthy, we’re going to run into the same problems no matter what approach we take. Of course, it’s fine to chuck the IETF. Just make certain you remove IPv4 and IPv6 from your network before you do so. :-)

  • catscatscats

    Please.

    The IETF might as well be called the IVTF (Internet Vendor Task Force) as Randy Bush has called it.

    The IETF is nothing more than a vehicle for vendors to implement key large-customer (the kind that spend a few hundo mil a year) features. Take a look at any draft with a vendor + customer on there. Ever see all the +1′s for these vendor+customer drafts. BGP AIGP for AT&T? Yup. All the Multicast L3VPN junk? Them too.

    The IETF also is the one place where you’ll see supposed “operators” talking about real world problems. Unfortunately, those people just happen to get a pay cheque from companies that operate networks. Those individuals have zero to do with the actual day-to-day and are typically professional IETF draft writers or are on the conference attendee circuit.

    Read IDR over the last few years if you want to see the display of real operators trying to get something meaningful in only to knock heads with the old guard. Why don’t you try to fix it? Or at least facilitate letting operators get a word in. How about some outreach? Show up at a NANOG/RIPE and explain how to participate and give them some time instead of the same old usual suspects pushing their companies feature roadmap in draft format.