Chapter 11 - Standards: An Enabling Institution 1979-1984
11.8 TCP/IP and XNS 1981 - 1983
In November 1980, when Xerox introduced XNS to the market, as part of the Xerox 8000 Network System, TCP/IP had been coded only to prove its viability, not operational functionality. The intended cut over date for Arpanet, the most important network of the day, was January 1, 1983, years away. The project timeline was not without perils. First, BBN had to make Arpanet’s Subnet TCP/IP-compatible. Then came the complicated issue of creating host TCP/IP code for all the essential computers connected to Arpanet. There was no desire to let each host site create its own version of TCP/IP, a painful lesson learned in creating the original host software now to be replaced. In 1981, DARPA awarded seven contracts to create computer host code. The contract to port TCP/IP to UNIX went to BBN. (See Exhibit 11.8.1 TCP/IP Ports)38 BBN would then give its TCP/IP code to Bill Joy at Berkeley to integrate into the upgraded version of UNIX Joy was developing for the VAX computer. Creating host ports began once Postel posted the TCP/IP standard as RFCs 791 and 702 in September 1981.39
Exhibit 11.8.1 TCP/IP Ports
|Contract With||Root Implementation|
|BBN (Bolt Beranek and Newman)||BBN C-Series Systems; TOPS-20|
|MIT (Massachusetts Institute of Tech.)||IBM PC|
|University of California, Berkeley||BSD Unix 4.2|
|University of California, Los Angeles||IBM Mainframes running MVS O/S|
|University of Wisconsin||IBM Mainframes running VM O/S|
Xerox’s strategy for XNS contrasted starkly with the wide distribution policy the DOD had for TCP/IP. Xerox wanted to keep XNS proprietary and under its control. Xerox had created XNS so that all of its office products might work together seamlessly, hoping to seize a competitive advantage over more entrenched companies like IBM in the battle for the “Office of the Future.” Only customers had become leery of one-vendor solutions and wanted all vendors’ equipment to interoperate. That realization had prompted Xerox to let the contract to Ungermann-Bass to port XNS to its NUI terminal switch in the fall of 1980.40 Permitting customers to connect other vendors’ computer terminals to Xerox XNS networks was a trivial decision compared to the one of making XNS public and giving away what many inside Xerox thought to be a real competitive advantage. Those arguing otherwise, to make XNS public, wanted to make Ethernet the LAN of choice, and there was no doubt that XNS made Ethernet sing.41 Metcalfe remembers:
We were working on LANs, and he [Cerf at DARPA] was working on 50 kilobit per second telephone circuits and that’s a substantial difference. And that’s why TCP is so slow and XNS is so fast. So, XNS was built to-be-carried over multi-megabit per second transport facilities and TCP was designed with an intuition about modems and slow stuff. So you run TCP on a LAN and it is slow, in fact, it’s twice as slow, half the speed of XNS.
In October 1981, the market pressure on Xerox to make XNS public grew substantially when Xerox announced its 8010 Star Information System; a workstation designed to be an “electronic desktop” and pioneered the icon-based user interface.42 (Its price, $15,000, proved way too expensive and the product was destined to fail.)
Unable to justify keeping XNS completely under wraps, Xerox made some, but not all, of XNS public in December 1981.43 Dalal recalls:
What happened was, with Ethernet being out there, they felt that you had to give the next levels out, so they got XNS, in terms of the datagram and the session protocol and Jim White’s Courier, which is a way to exchange procedure calls back and forth, but they were hesitant to send out the filing protocol, the printing protocol, the name look-up protocol, the electronic mail protocol; all the protocols that you really needed to do something. Again, I think they felt the lower level protocols, it was OK to send out so that the Ungermann-Basses and the Bridges could build connectivity hardware, but nobody could really build servers that would compete with Star or the filing systems that Xerox was producing.
The fact that Xerox published only the lower layers of XNS mattered little to the start-up LAN companies whose first generation products were largely terminal switches, known derisively as “milking machines.” LAN vendors had the choice to either wait patiently or invent their own network protocols, for as of year-end 1981 neither TCP/IP nor OSI were available. So even with its minimal functionality, XNS use spread: making it the early market leader of LAN protocols.
Then, out-of-no-where, in mid-1982, in another example of historical accident and the never-ending importance of the individual in history, Berkeley released a new version of UNIX that had embedded within a rewritten version of TCP/IP. Only it was not the version of TCP/IP that DARPA had contracted with BBN to rewrite and give to Joy who would integrate it with UNIX. Joy found the TCP/IP code lacking and decided to rewrite it. Kahn remembers:
Bill Joy just didn’t feel like this [the BBN code] was as efficient as he could do if he did it himself. And so Joy just rewrote it. Here the stuff was delivered to him, he said, “That’s a bunch of junk,” and he redid it. There was no debate at all. He just unilaterally redid it.
A company, university or other user could purchase a UNIX source code license from Berkeley for $32,000 and receive TCP/IP code essentially free. And since Joy’s UNIX port had been to the VAX, the TCP/IP worked with Ethernet. Others began porting the code to other computers and, overnight, XNS had a real competitor; a competitive product not constrained by the release of higher layer functionality. The diffusion of TCP/IP was also aided by the agreement Kahn had made with Gordon Bell and Sam Fuller of DEC for DEC to sell bundled VAXs at super low prices to universities. Kahn remembers:
I convinced Gordon Bell and Sam Fuller that if they made these VAXs available, people would explore interesting ways to do distributed computing on them, and that was going to be the wave of the future, and they might as well understand it, and DEC said, “Okay, we’ll do that, but you have to guarantee that you’re not going to use these machines as stand-alone timesharing systems.
With the availability of VAX/UNIX/TCP/IP, and the subsequent porting of Joy’s TCP/IP code to other computers, market forces swept TCP/IP forward in a way no one could have planned. Once again, DARPA played a critical role in the advancement of local area networking as a secondary consequence to a primary objective (as had the use of IMPs and TIPs to create an early version of LANs).
The focus within DARPA remained the approaching January 1983 deadline to convert ARPANET to TCP/IP rather than their impact on the commercial success of LANs however. Converting ARPANET to TCP/IP required leaders and plans. That job fell to Dan Lynch, who in 1980 left SRI to become responsible for the computer facilities at the University of Southern California’s Information Science Institute (ISI) – “the biggest node on the Arpanet.” Just as Roberts before him, Lynch would have to resort to strong-armed tactics to enforce the users of Arpanet to convert to TCP/IP. Cerf remembers one attention-getting tactic:
Somewhere in the middle of 1982, we turned off the NCP capability for one entire day on the Arpanet, leaving the only people able to communicate the ones who had implemented TCP. There was a lot of noise as a result, but it got attention.
Complaints and problems intensified, as summer became September. Lynch recalls:
I remember when we really started getting serious in September and had TCP-only half days and then whole days and then there was sort of a monthly event and then I think we did a three day one around Thanksgiving.
With the conversion date of January 1, 1983 looming ever larger, the white light of attention fell first on Lynch and then onto Clark, whom Cerf had appointed Chairman of the Internet Working Group in September 1981. Cerf knew it was time for him to leave DARPA and had increasingly moved to the periphery of action. When he announced his resignation from DARPA to join MCI and manage their email efforts in December 1982, the news seemed hardly noteworthy to those in the trenches scrambling to prepare for News Year Eve. Lynch, to commemorate the toil of the occasion, used his own money to make 500 white pins with a message in red: “I survived the TCP transition, 1/1/83.” And they did survive for the transition happened on schedule. So notwithstanding crashes and lingering problems, one could no longer doubt TCP/IP worked for it now supported networks ranging from Ethernet to Arpanet.
With both TCP/IP and XNS providing network and transport layer services over Ethernet LANs, the big question became: Would IEEE 802 sanction a CSMA/CD standard approximating Ethernet?
Data Communications, Nov. 87, p. 221
Jon Postel, “Internet Protocol,” RFC 791, September 1981; Postel, J., “Transmission Control Protocol,” RFC 792, September 1981
See Chapter 7
“The Missing Link to Full Ethernet Compatibility is High-level software,” DC Oct. 1981, p.50
Datapro 1982, Xerox 8000 Network (Ethernet) pp. C11-931-101 - 107
“Xerox High-level Protocols debut,” DC Jan. 1982, pp. 38-40