The Network Working GroupUCLA was not chosen randomly as the site for the first IMP installation in 1969. Len Kleinrock was there. Kleinrock had done key work on analytical models for data flows, and had influenced his friend Larry Roberts’s ideas about store-and-forward switching networks during their time together at MIT. At UCLA, Kleinrock established the Network Measurement Center (NMC), and in October 1968 Roberts awarded the NMC the contract for performance analysis of the ARPANET. Kleinrock put together a team of some 40 graduate students to help him.
Approximately a year before the first IMP was installed, graduate students from the first four planned sites began meeting; Steve Crocker represented the NMC. Their agenda was open, with the objective of discussing the many development and application tasks that lay ahead of them. “We had lots of questions,” Crocker recalls. “How IMPs and hosts would be connected, what hosts would say to each other, and what applications would be supported. No one had any answers, but the prospects seemed exciting. We found ourselves imagining all kinds of possibilitiesinteractive graphics, cooperating processes, automatic database query, electronic mailbut no one knew where to begin.” Out of these discussions emerged a working group of three people: Steve Carr from the University of Utah, Jeff Rulifson from SRI, and Steve Crocker from UCLA, who became the chairman. They called themselves the Network Working Group (NWG). Because they had no official charter or assignment from BBN, the group felt free to discuss a wide range of networking topics: “Our earliest meetings,” Crocker said, “were unhampered by knowledge of what the network would look like or how it would interact with the hosts. Depending on your point of view, this either allowed us or forced us to think about broader and grander topics.
A prime topic for the NWG was the yet-to-be-specified host-to-host protocol. They began developing their own ideas about how it should work, keeping notes on their agreements. They were acutely aware that they were just a bunch of grad students and that there must be a real design team back at BBN hard at work on the real protocol. But BBN had their hands full just getting the IMPs to pass bits reliably. There was no protocol design team.”I remember having great fear that we would offend whomever the official protocol designers were, and I spent a sleepless night composing humble words for our notes,” Crocker said. “The basic ground rules were that anyone could say anything and that nothing was official.” To emphasize that the notes were “the beginning of a dialog and not an assertion of control,” Crocker called the notes “Requests For Comments.” Crocker himself wrote RFC 1, on their early ideas for a host-to-host protocol.
Responsibility for managing and editing the RFCs was soon taken over by Jon Postel, another of Kleinrock’s graduate students at the NMC. Postel remained the RFC editor until his untimely death in 1998.
Among the first developments of the NWG was the Decode-Encode Language (DEL) for encapsulating and unencapsulating messagesRFC 5 called it “packing” and “unpacking”and the Network Interchange Language (NIL), for telling a receiver how to interpret information to be sent. Over the spring and summer of 1969, Crocker’s NWG struggled to develop working protocols. “Although we had a vision of the vast potential for intercomputer communication, designing usable protocols was another matter … It would have been convenient if we could have made the network simply look like a tape drive to each host, but we knew that wouldn’t do.” The delivery date of the first IMP was fast approaching. “With the pressure to get something working and the general confusion as to how to achieve the high generality we all aspired to, we punted and defined the first set of protocols to include only Telnet and FTP [File Transfer Protocol] functions. In particular, only asymmetric, user-server relationships were supported.” The Telnet part, for remote login, was ready in time for the first connection to SRI in October, and it was this function that was used to pass the first packets on the ARPANET.
But the host-to-host protocol was still to be done. “In December of 1969,” Crocker writes, “we met with Larry Roberts in Utah, and suffered our first direct experience with ‘redirection’. Larry made it abundantly clear that our first step was not big enough, and we went back to the drawing board.”
By December 1970, a host-to-host protocol called the Network Control Protocol (NCP) was ready for deployment, and by 1972 NCP had been implemented throughout the ARPANET. When the NWG was first considering the overall architecture of the host-to-host protocol, they chose to use a layered structure. As Crocker put it, “Along with the basic host-to-host protocol, we also envisioned a hierarchy of protocols, with Telnet, FTP, and some splinter protocols as the first example. If we had only consulted the ancient mystics, we would have seen immediately that seven layers were required.” Layered protocol architectures have been accepted wisdom ever since.
One of the key NWG designers that produced NCP was yet another of Kleinrock’s graduate students from the NMC and a close friend of Crocker’s since high school days named Vinton Cerf.