diff --git a/sources/talk/20210207 The Real Novelty of the ARPANET.md b/sources/talk/20210207 The Real Novelty of the ARPANET.md deleted file mode 100644 index 048db69056..0000000000 --- a/sources/talk/20210207 The Real Novelty of the ARPANET.md +++ /dev/null @@ -1,263 +0,0 @@ -[#]: collector: (lujun9972) -[#]: translator: (aREversez) -[#]: reviewer: ( ) -[#]: publisher: ( ) -[#]: url: ( ) -[#]: subject: (The Real Novelty of the ARPANET) -[#]: via: (https://twobithistory.org/2021/02/07/arpanet.html) -[#]: author: (Two-Bit History https://twobithistory.org) - -The Real Novelty of the ARPANET -====== - -If you run an image search for the word “ARPANET,” you will find lots of maps showing how the [government research network][1] expanded steadily across the country throughout the late ’60s and early ’70s. I’m guessing that most people reading or hearing about the ARPANET for the first time encounter one of these maps. - -Obviously, the maps are interesting—it’s hard to believe that there were once so few networked computers that their locations could all be conveyed with what is really pretty lo-fi cartography. (We’re talking 1960s overhead projector diagrams here. You know the vibe.) But the problem with the maps, drawn as they are with bold lines stretching across the continent, is that they reinforce the idea that the ARPANET’s paramount achievement was connecting computers across the vast distances of the United States for the first time. - -Today, the internet is a lifeline that keeps us tethered to each other even as an airborne virus has us all locked up indoors. So it’s easy to imagine that, if the ARPANET was the first draft of the internet, then surely the world that existed before it was entirely disconnected, since that’s where we’d be without the internet today, right? The ARPANET must have been a big deal because it connected people via computers when that hadn’t before been possible. - -That view doesn’t get the history quite right. It also undersells what made the ARPANET such a breakthrough. - -### The Debut - -The Washington Hilton stands near the top of a small rise about a mile and a half northeast of the National Mall. Its two white-painted modern facades sweep out in broad semicircles like the wings of a bird. The New York Times, reporting on the hotel’s completion in 1965, remarked that the building looks “like a sea gull perched on a hilltop nest.”[1][2] - -The hotel hides its most famous feature below ground. Underneath the driveway roundabout is an enormous ovoid event space known as the International Ballroom, which was for many years the largest pillar-less ballroom in DC. In 1967, the Doors played a concert there. In 1968, Jimi Hendrix also played a concert there. In 1972, a somewhat more sedate act took over the ballroom to put on the inaugural International Conference on Computing Communication, where a promising research project known as the ARPANET was demonstrated publicly for the first time. - -The 1972 ICCC, which took place from October 24th to 26th, was attended by about 800 people.[2][3] It brought together all of the leading researchers in the nascent field of computer networking. According to internet pioneer Bob Kahn, “if somebody had dropped a bomb on the Washington Hilton, it would have destroyed almost all of the networking community in the US at that point.”[3][4] - -Not all of the attendees were computer scientists, however. An advertisement for the conference claimed it would be “user-focused” and geared toward “lawyers, medical men, economists, and government men as well as engineers and communicators.”[4][5] Some of the conference’s sessions were highly technical, such as the session titled “Data Network Design Problems I” and its sequel session, “Data Network Design Problems II.” But most of the sessions were, as promised, focused on the potential social and economic impacts of computer networking. One session, eerily prescient today, sought to foster a discussion about how the legal system could act proactively “to safeguard the right of privacy in the computer data bank.”[5][6] - -The ARPANET demonstration was intended as a side attraction of sorts for the attendees. Between sessions, which were held either in the International Ballroom or elsewhere on the lower level of the hotel, attendees were free to wander into the Georgetown Ballroom (a smaller ballroom/conference room down the hall from the big one),[6][7] where there were 40 terminals from a variety of manufacturers set up to access the ARPANET.[7][8] These terminals were dumb terminals—they only handled input and output and could do no computation on their own. (In fact, in 1972, it’s likely that all of these terminals were hardcopy terminals, i.e. teletype machines.) The terminals were all hooked up to a computer known as a Terminal Interface Message Processor or TIP, which sat on a raised platform in the middle of the room. The TIP was a kind of archaic router specially designed to connect dumb terminals to the ARPANET. Using the terminals and the TIP, the ICCC attendees could experiment with logging on and accessing some of the computers at the 29 host sites then comprising the ARPANET.[8][9] - -To exhibit the network’s capabilities, researchers at the host sites across the country had collaborated to prepare 19 simple “scenarios” for users to experiment with. These scenarios were compiled into [a booklet][10] that was handed to conference attendees as they tentatively approached the maze of wiring and terminals.[9][11] The scenarios were meant to prove that the new technology worked but also that it was useful, because so far the ARPANET was “a highway system without cars,” and its Pentagon funders hoped that a public demonstration would excite more interest in the network.[10][12] - -The scenarios thus showed off a diverse selection of the software that could be accessed over the ARPANET: There were programming language interpreters, one for a Lisp-based language at MIT and another for a numerical computing environment called Speakeasy hosted at UCLA; there were games, including a chess program and an implementation of Conway’s Game of Life; and—perhaps most popular among the conference attendees—there were several AI chat programs, including the famous ELIZA chat program developed at MIT by Joseph Weizenbaum. - -The researchers who had prepared the scenarios were careful to list each command that users were expected to enter at their terminals. This was especially important because the sequence of commands used to connect to any given ARPANET host could vary depending on the host in question. To experiment with the AI chess program hosted on the MIT Artificial Intelligence Laboratory’s PDP-10 minicomputer, for instance, conference attendees were instructed to enter the following: - -_`[LF]`, `[SP]`, and `[CR]` below stand for the line feed, space, and carriage return keys respectively. I’ve explained each command after `//`, but this syntax was not used for the annotations in the original._ - -``` -@r [LF] // Reset the TIP -@e [SP] r [LF] // "Echo remote" setting, host echoes characters rather than TIP -@L [SP] 134 [LF] // Connect to host number 134 -:login [SP] iccXXX [CR] // Login to the MIT AI Lab's system, where "XXX" should be user's initials -:chess [CR] // Start chess program -``` - -If conference attendees were successfully able to enter those commands, their reward was the opportunity to play around with some of the most cutting-edge chess software available at the time, where the layout of the board was represented like this: - -``` -BR BN BB BQ BK BB BN BR -BP BP BP BP ** BP BP BP --- ** -- ** -- ** -- ** -** -- ** -- BP -- ** -- --- ** -- ** WP ** -- ** -** -- ** -- ** -- ** -- -WP WP WP WP -- WP WP WP -WR WN WB WQ WK WB WN WR -``` - -In contrast, to connect to UCLA’s IBM System/360 and run the Speakeasy numerical computing environment, conference attendees had to enter the following: - -``` -@r [LF] // Reset the TIP -@t [SP] o [SP] L [LF] // "Transmit on line feed" setting -@i [SP] L [LF] // "Insert line feed" setting, i.e. send line feed with each carriage return -@L [SP] 65 [LF] // Connect to host number 65 -tso // Connect to IBM Time-Sharing Option system -logon [SP] icX [CR] // Log in with username, where "X" should be a freely chosen digit -iccc [CR] // This is the password (so secure!) -speakez [CR] // Start Speakeasy -``` - -Successfully running that gauntlet gave attendees the power to multiply and transpose and do other operations on matrices as quickly as they could input them at their terminal: - -``` -:+! a=m*transpose(m);a [CR] -:+! eigenvals(a) [CR] -``` - -Many of the attendees were impressed by the demonstration, but not for the reasons that we, from our present-day vantage point, might assume. The key piece of context hard to keep in mind today is that, in 1972, being able to use a computer remotely, even from a different city, was not new. Teletype devices had been used to talk to distant computers for decades already. Almost a full five years before the ICCC, Bill Gates was in a Seattle high school using a teletype to run his first BASIC programs on a General Electric computer housed elsewhere in the city. Merely logging in to a host computer and running a few commands or playing a text-based game was routine. The software on display here was pretty neat, but the two scenarios I’ve told you about so far could ostensibly have been experienced without going over the ARPANET. - -Of course, something new was happening under the hood. The lawyers, policy-makers, and economists at the ICCC might have been enamored with the clever chess program and the chat bots, but the networking experts would have been more interested in two other scenarios that did a better job of demonstrating what the ARPANET project had achieved. - -The first of these scenarios involved a program called `NETWRK` running on MIT’s ITS operating system. The `NETWRK` command was the entrypoint for several subcommands that could report various aspects of the ARPANET’s operating status. The `SURVEY` subcommand reported which hosts on the network were functioning and available (they all fit on a single list), while the `SUMMARY.OF.SURVEY` subcommand aggregated the results of past `SURVEY` runs to report an “up percentage” for each host as well as how long, on average, it took for each host to respond to messages. The output of the `SUMMARY.OF.SURVEY` subcommand was a table that looked like this: - -``` ---HOST-- -#- -%-UP- -RESP- -UCLA-NMC 001 097% 00.80 -SRI-ARC 002 068% 01.23 -UCSB-75 003 059% 00.63 -... -``` - -The host number field, as you can see, has room for no more than three digits (ha!). Other `NETWRK` subcommands allowed users to look at summary of survey results over a longer historical period or to examine the log of survey results for a single host. - -The second of these scenarios featured a piece of software called the SRI-ARC Online System being developed at Stanford. This was a fancy piece of software with lots of functionality (it was the software system that Douglas Engelbart demoed in the “Mother of All Demos”), but one of the many things it could do was make use of what was essentially a file hosting service run on the host at UC Santa Barbara. From a terminal at the Washington Hilton, conference attendees could copy a file created at Stanford onto the host at UCSB simply by running a `copy` command and answering a few of the computer’s questions: - -_`[ESC]`, `[SP]`, and `[CR]` below stand for the escape, space, and carriage return keys respectively. The words in parentheses are prompts printed by the computer. The escape key is used to autocomplete the filename on the third line. The file being copied here is called `sample.txt;1`, where the trailing one indicates the file’s version number and `` indicates the directory. This was a convention for filenames used by the TENEX operating system._[11][13] - -``` -@copy -(TO/FROM UCSB) to -(FILE) sample [ESC] .TXT;1 [CR] -(CREATE/REPLACE) create -``` - -These two scenarios might not look all that different from the first two, but they were remarkable. They were remarkable because they made it clear that, on the ARPANET, humans could talk to computers but computers could also talk to _each other._ The `SURVEY` results collected at MIT weren’t collected by a human regularly logging in to each machine to check if it was up—they were collected by a program that knew how to talk to the other machines on the network. Likewise, the file transfer from Stanford to UCSB didn’t involve any humans sitting at terminals at either Stanford or UCSB—the user at a terminal in Washington DC was able to get the two computers to talk each other merely by invoking a piece of software. Even more, it didn’t matter which of the 40 terminals in the Ballroom you were sitting at, because you could view the MIT network monitoring statistics or store files at UCSB using any of the terminals with almost the same sequence of commands. - -This is what was totally new about the ARPANET. The ICCC demonstration didn’t just involve a human communicating with a distant computer. It wasn’t just a demonstration of remote I/O. It was a demonstration of software remotely communicating with other software, something nobody had seen before. - -To really appreciate why it was this aspect of the ARPANET project that was important and not the wires-across-the-country, physical connection thing that the host maps suggest (the wires were leased phone lines anyhow and were already there!), consider that, before the ARPANET project began in 1966, the ARPA offices in the Pentagon had a terminal room. Inside it were three terminals. Each connected to a different computer; one computer was at MIT, one was at UC Berkeley, and another was in Santa Monica.[12][14] It was convenient for the ARPA staff that they could use these three computers even from Washington DC. But what was inconvenient for them was that they had to buy and maintain terminals from three different manufacturers, remember three different login procedures, and familiarize themselves with three different computing environments in order to use the computers. The terminals might have been right next to each other, but they were merely extensions of the host computing systems on the other end of the wire and operated as differently as the computers did. Communicating with a distant computer was possible before the ARPANET; the problem was that the heterogeneity of computing systems limited how sophisticated the communication could be. - -### Come Together, Right Now - -So what I’m trying to drive home here is that there is an important distinction between statement A, “the ARPANET connected people in different locations via computers for the first time,” and statement B, “the ARPANET connected computer systems to each other for the first time.” That might seem like splitting hairs, but statement A elides some illuminating history in a way that statement B does not. - -To begin with, the historian Joy Lisi Rankin has shown that people were socializing in cyberspace well before the ARPANET came along. In _A People’s History of Computing in the United States_, she describes several different digital communities that existed across the country on time-sharing networks prior to or apart from the ARPANET. These time-sharing networks were not, technically speaking, computer networks, since they consisted of a single mainframe computer running computations in a basement somewhere for many dumb terminals, like some portly chthonic creature with tentacles sprawling across the country. But they nevertheless enabled most of the social behavior now connoted by the word “network” in a post-Facebook world. For example, on the Kiewit Network, which was an extension of the Dartmouth Time-Sharing System to colleges and high schools across the Northeast, high school students collaboratively maintained a “gossip file” that allowed them to keep track of the exciting goings-on at other schools, “creating social connections from Connecticut to Maine.”[13][15] Meanwhile, women at Mount Holyoke College corresponded with men at Dartmouth over the network, perhaps to arrange dates or keep in touch with boyfriends.[14][16] This was all happening in the 1960s. Rankin argues that by ignoring these early time-sharing networks we impoverish our understanding of how American digital culture developed over the last 50 years, leaving room for a “Silicon Valley mythology” that credits everything to the individual genius of a select few founding fathers. - -As for the ARPANET itself, if we recognize that the key challenge was connecting the computer _systems_ and not just the physical computers, then that might change what we choose to emphasize when we tell the story of the innovations that made the ARPANET possible. The ARPANET was the first ever packet-switched network, and lots of impressive engineering went into making that happen. I think it’s a mistake, though, to say that the ARPANET was a breakthrough because it was the first packet-switched network and then leave it at that. The ARPANET was meant to make it easier for computer scientists across the country to collaborate; that project was as much about figuring out how different operating systems and programs written in different languages would interface with each other than it was about figuring out how to efficiently ferry data back and forth between Massachusetts and California. So the ARPANET was the first packet-switched network, but it was also an amazing standards success story—something I find especially interesting given [how][17] [many][18] [times][19] I’ve written about failed standards on this blog. - -Inventing the protocols for the ARPANET was an afterthought even at the time, so naturally the job fell to a group made up largely of graduate students. This group, later known as the Network Working Group, met for the first time at UC Santa Barbara in August of 1968.[15][20] There were 12 people present at that first meeting, most of whom were representatives from the four universities that were to be the first host sites on the ARPANET when the equipment was ready.[16][21] Steve Crocker, then a graduate student at UCLA, attended; he told me over a Zoom call that it was all young guys at that first meeting, and that Elmer Shapiro, who chaired the meeting, was probably the oldest one there at around 38. ARPA had not put anyone in charge of figuring out how the computers would communicate once they were connected, but it was obvious that some coordination was necessary. As the group continued to meet, Crocker kept expecting some “legitimate adult” with more experience and authority to fly out from the East Coast to take over, but that never happened. The Network Working Group had ARPA’s tacit approval—all those meetings involved lots of long road trips, and ARPA money covered the travel expenses—so they were it.[17][22] - -The Network Working Group faced a huge challenge. Nobody had ever sat down to connect computer systems together in a general-purpose way; that flew against all of the assumptions that prevailed in computing in the late 1960s: - -> The typical mainframe of the period behaved as if it were the only computer in the universe. There was no obvious or easy way to engage two diverse machines in even the minimal communication needed to move bits back and forth. You could connect machines, but once connected, what would they say to each other? In those days a computer interacted with devices that were attached to it, like a monarch communicating with his subjects. Everything connected to the main computer performed a specific task, and each peripheral device was presumed to be ready at all times for a fetch-my-slippers type command…. Computers were strictly designed for this kind of interaction; they send instructions to subordinate card readers, terminals, and tape units, and they initiate all dialogues. But if another device in effect tapped the computer on the shoulder with a signal and said, “Hi, I’m a computer too,” the receiving machine would be stumped.[18][23] - -As a result, the Network Working Group’s progress was initially slow.[19][24] The group did not settle on an “official” specification for any protocol until June, 1970, nearly two years after the group’s first meeting.[20][25] - -But by the time the ARPANET was to be shown off at the 1972 ICCC, all the key protocols were in place. A scenario like the chess scenario exercised many of them. When a user ran the command `@e r`, short for `@echo remote`, that instructed the TIP to make use of a facility in the new TELNET virtual teletype protocol to inform the remote host that it should echo the user’s input. When a user then ran the command `@L 134`, short for `@login 134`, that caused the TIP to invoke the Initial Connection Protocol with host 134, which in turn would cause the remote host to allocate all the necessary resources for the connection and drop the user into a TELNET session. (The file transfer scenario I described may well have made use of the File Transfer Protocol, though that protocol was only ready shortly before the conference.[21][26]) All of these protocols were known as “level three” protocols, and below them were the host-to-host protocol at level two (which defined the basic format for the messages the hosts should expect from each other), and the host-to-IMP protocol at level one (which defined how hosts communicated with the routing equipment they were linked to). Incredibly, the protocols all worked. - -In my view, the Network Working Group was able to get everything together in time and just generally excel at its task because it adopted an open and informal approach to standardization, as exemplified by the famous Request for Comments (RFC) series of documents. These documents, originally circulated among the members of the Network Working Group by snail mail, were a way of keeping in touch between meetings and soliciting feedback to ideas. The “Request for Comments” framing was suggested by Steve Crocker, who authored the first RFC and supervised the RFC mailing list in the early years, in an attempt to emphasize the open-ended and collaborative nature of what the group was trying to do. That framing, and the availability of the documents themselves, made the protocol design process into a melting pot of contributions and riffs on other people’s contributions where the best ideas could emerge without anyone losing face. The RFC process was a smashing success and is still used to specify internet standards today, half a century later. - -It’s this legacy of the Network Working Group that I think we should highlight when we talk about ARPANET’s impact. Though today one of the most magical things about the internet is that it can connect us with people on the other side of the planet, it’s only slightly facetious to say that that technology has been with us since the 19th century. Physical distance was conquered well before the ARPANET by the telegraph. The kind of distance conquered by the ARPANET was instead the logical distance between the operating systems, character codes, programming languages, and organizational policies employed at each host site. Implementing the first packet-switched network was of course a major feat of engineering that should also be mentioned, but the problem of agreeing on standards to connect computers that had never been designed to play nice with each other was the harder of the two big problems involved in building the ARPANET—and its solution was the most miraculous part of the ARPANET story. - -In 1981, ARPA issued a “Completion Report” reviewing the first decade of the ARPANET’s history. In a section with the belabored title, “Technical Aspects of the Effort Which Were Successful and Aspects of the Effort Which Did Not Materialize as Originally Envisaged,” the authors wrote: - -> Possibly the most difficult task undertaken in the development of the ARPANET was the attempt—which proved successful—to make a number of independent host computer systems of varying manufacture, and varying operating systems within a single manufactured type, communicate with each other despite their diverse characteristics.[22][27] - -There you have it from no less a source than the federal government of the United States. - -_If you enjoyed this post, more like it come out every four weeks! Follow [@TwoBitHistory][28] on Twitter or subscribe to the [RSS feed][29] to make sure you know when a new post is out._ - -_Previously on TwoBitHistory…_ - -> It's been too long, I know, but I finally got around to writing a new post. This one is about how REST APIs should really be known as FIOH APIs instead (Fuck It, Overload HTTP): -> -> — TwoBitHistory (@TwoBitHistory) [June 28, 2020][30] - - 1. “Hilton Hotel Opens in Capital Today.” _The New York Times_, 20 March 1965, . Accessed 7 Feb. 2021. [↩︎][31] - - 2. James Pelkey. _Entrepreneurial Capitalism and Innovation: A History of Computer Communications 1968-1988,_ Chapter 4, Section 12, 2007, . Accessed 7 Feb. 2021. [↩︎][32] - - 3. Katie Hafner and Matthew Lyon. _Where Wizards Stay Up Late: The Origins of the Internet_. New York, Simon & Schuster, 1996, p. 178. [↩︎][33] - - 4. “International Conference on Computer Communication.” _Computer_, vol. 5, no. 4, 1972, p. c2, . Accessed 7 Feb. 2021. [↩︎][34] - - 5. “Program for the International Conference on Computer Communication.” _The Papers of Clay T. Whitehead_, Box 42, . Accessed 7 Feb. 2021. [↩︎][35] - - 6. It’s actually not clear to me which room was used for the ARPANET demonstration. Lots of sources talk about a “ballroom,” but the Washington Hilton seems to consider the room with the name “Georgetown” more of a meeting room. So perhaps the demonstration was in the International Ballroom instead. But RFC 372 alludes to a booking of the “Georgetown Ballroom” for the demonstration. A floorplan of the Washington Hilton can be found [here][36]. [↩︎][37] - - 7. Hafner, p. 179. [↩︎][38] - - 8. ibid., p. 178. [↩︎][39] - - 9. Bob Metcalfe. “Scenarios for Using the ARPANET.” _Collections-Computer History Museum_, . Accessed 7 Feb. 2021. [↩︎][40] - - 10. Hafner, p. 176. [↩︎][41] - - 11. Robert H. Thomas. “Planning for ACCAT Remote Site Operations.” BBN Report No. 3677, October 1977, . Accessed 7 Feb. 2021. [↩︎][42] - - 12. Hafner, p. 12. [↩︎][43] - - 13. Joy Lisi Rankin. _A People’s History of Computing in the United States_. Cambridge, MA, Harvard University Press, 2018, p. 84. [↩︎][44] - - 14. Rankin, p. 93. [↩︎][45] - - 15. Steve Crocker. Personal interview. 17 Dec. 2020. [↩︎][46] - - 16. Crocker sent me the minutes for this meeting. The document lists everyone who attended. [↩︎][47] - - 17. Steve Crocker. Personal interview. [↩︎][48] - - 18. Hafner, p. 146. [↩︎][49] - - 19. “Completion Report / A History of the ARPANET: The First Decade.” BBN Report No. 4799, April 1981, , p. II-13. [↩︎][50] - - 20. I’m referring here to RFC 54, “Official Protocol Proffering.” [↩︎][51] - - 21. Hafner, p. 175. [↩︎][52] - - 22. “Completion Report / A History of the ARPANET: The First Decade,” p. II-29. [↩︎][53] - - - - --------------------------------------------------------------------------------- - -via: https://twobithistory.org/2021/02/07/arpanet.html - -作者:[Two-Bit History][a] -选题:[lujun9972][b] -译者:[aREversez](https://github.com/aREversez) -校对:[校对者ID](https://github.com/校对者ID) - -本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出 - -[a]: https://twobithistory.org -[b]: https://github.com/lujun9972 -[1]: https://en.wikipedia.org/wiki/ARPANET -[2]: tmp.pnPpRrCI3S#fn:1 -[3]: tmp.pnPpRrCI3S#fn:2 -[4]: tmp.pnPpRrCI3S#fn:3 -[5]: tmp.pnPpRrCI3S#fn:4 -[6]: tmp.pnPpRrCI3S#fn:5 -[7]: tmp.pnPpRrCI3S#fn:6 -[8]: tmp.pnPpRrCI3S#fn:7 -[9]: tmp.pnPpRrCI3S#fn:8 -[10]: https://archive.computerhistory.org/resources/access/text/2019/07/102784024-05-001-acc.pdf -[11]: tmp.pnPpRrCI3S#fn:9 -[12]: tmp.pnPpRrCI3S#fn:10 -[13]: tmp.pnPpRrCI3S#fn:11 -[14]: tmp.pnPpRrCI3S#fn:12 -[15]: tmp.pnPpRrCI3S#fn:13 -[16]: tmp.pnPpRrCI3S#fn:14 -[17]: https://twobithistory.org/2018/05/27/semantic-web.html -[18]: https://twobithistory.org/2018/12/18/rss.html -[19]: https://twobithistory.org/2020/01/05/foaf.html -[20]: tmp.pnPpRrCI3S#fn:15 -[21]: tmp.pnPpRrCI3S#fn:16 -[22]: tmp.pnPpRrCI3S#fn:17 -[23]: tmp.pnPpRrCI3S#fn:18 -[24]: tmp.pnPpRrCI3S#fn:19 -[25]: tmp.pnPpRrCI3S#fn:20 -[26]: tmp.pnPpRrCI3S#fn:21 -[27]: tmp.pnPpRrCI3S#fn:22 -[28]: https://twitter.com/TwoBitHistory -[29]: https://twobithistory.org/feed.xml -[30]: https://twitter.com/TwoBitHistory/status/1277259930555363329?ref_src=twsrc%5Etfw -[31]: tmp.pnPpRrCI3S#fnref:1 -[32]: tmp.pnPpRrCI3S#fnref:2 -[33]: tmp.pnPpRrCI3S#fnref:3 -[34]: tmp.pnPpRrCI3S#fnref:4 -[35]: tmp.pnPpRrCI3S#fnref:5 -[36]: https://www3.hilton.com/resources/media/hi/DCAWHHH/en_US/pdf/DCAWH.Floorplans.Apr25.pdf -[37]: tmp.pnPpRrCI3S#fnref:6 -[38]: tmp.pnPpRrCI3S#fnref:7 -[39]: tmp.pnPpRrCI3S#fnref:8 -[40]: tmp.pnPpRrCI3S#fnref:9 -[41]: tmp.pnPpRrCI3S#fnref:10 -[42]: tmp.pnPpRrCI3S#fnref:11 -[43]: tmp.pnPpRrCI3S#fnref:12 -[44]: tmp.pnPpRrCI3S#fnref:13 -[45]: tmp.pnPpRrCI3S#fnref:14 -[46]: tmp.pnPpRrCI3S#fnref:15 -[47]: tmp.pnPpRrCI3S#fnref:16 -[48]: tmp.pnPpRrCI3S#fnref:17 -[49]: tmp.pnPpRrCI3S#fnref:18 -[50]: tmp.pnPpRrCI3S#fnref:19 -[51]: tmp.pnPpRrCI3S#fnref:20 -[52]: tmp.pnPpRrCI3S#fnref:21 -[53]: tmp.pnPpRrCI3S#fnref:22 diff --git a/translated/talk/20210207 The Real Novelty of the ARPANET.md b/translated/talk/20210207 The Real Novelty of the ARPANET.md new file mode 100644 index 0000000000..a1174ee82c --- /dev/null +++ b/translated/talk/20210207 The Real Novelty of the ARPANET.md @@ -0,0 +1,255 @@ +[#]: collector: (lujun9972) +[#]: translator: (aREversez) +[#]: reviewer: ( ) +[#]: publisher: ( ) +[#]: url: ( ) +[#]: subject: (The Real Novelty of the ARPANET) +[#]: via: (https://twobithistory.org/2021/02/07/arpanet.html) +[#]: author: (Two-Bit History https://twobithistory.org) + +ARPANET 的真正创新之处 +====== + +如果你在搜索引擎中输入“ARPANET”,搜索相关图片,你会看到许多地图的图片,上面是上世纪六十年代末七十年代初 [美国政府创建的研究网络][1],该网络不断延伸扩展,横跨了整个美国。我猜很多人第一次了解到 ARPANET 的时候都看过这种地图。 + +可以说,这些地图很有意思,毕竟我们很难想象过去连接网络的计算机是那么少,就连如此低保真的图片都可以表示出美国全部机器的所在位置(这里的低保真指的是高射投影仪成像技术,而不是大家熟知的 lo-fi 氛围音乐)。不过,这些地图是有问题的。地图上加粗的线条连接着大陆各地,强化了人们的一种观念:ARPANET 最大的贡献就是首次将横跨美国东西两地的电脑连接了起来。 + +今天,即便是在病毒肆虐、人们困居家中的情况下,网络也能把我们联系起来,可谓是我们的生命线。所以,如果认为 ARPANET 是最早的互联网,那么在那之前世界必然相互隔绝,毕竟那时还没有今天的互联网,对吧?ARPANET 首次通过计算机将人们连接起来,一定是一件惊天动地的大事。 + +但是,这一观点却与历史事实不符,而且它也没有进一步解释 ARPANET 的重要性。 + +### 初露锋芒 + +华盛顿希尔顿酒店坐落于国家广场东北方向约 2.4 千米处的一座小山丘山顶附近。酒店左右两侧白色的现代化立面分别向外延展出半个圆形,活像一只飞鸟的双翼。1965 年,酒店竣工之后,纽约时报报道称这座建筑物就像“一只栖息在山顶巢穴上的海鸥”[1][2]。 + +不过,这家酒店最有名的特点却深藏在地下。在车道交汇处下方,有着一个巨大的蛋形活动场地,这就是人们熟知的国际宴会厅,多年来一直是华盛顿特区最大的无柱宴会厅。1967 年,大门乐队在此举办了一场音乐会。1968 年,“吉他之神”吉米·亨德里克斯也在此举办了一场音乐会。到了 1972 年,国际宴会厅隐去了以往的喧嚣,举办了首届国际计算机通信会议。在这场大会上,研究项目 ARPANET 首次公开亮相。 + +1972 年的国际计算机通信会议举办时间为 10 月 24-26 日,与会人数约八百人[2][3]。在这场大会上,计算机网络这一新兴领域的领袖人物齐聚一堂。因特网的先驱鲍勃·卡恩称,“如果有人在华盛顿希尔顿酒店上方丢了一颗炸弹,那么美国的整个网络研究领域将会毁于一旦”[3][4]。 + +当然,不是所有的与会人员都是计算机科学家。根据当时的宣传广告,这场大会将会聚焦用户,照顾到“律师、医务人员、经济学家、政府工作者、工程师以及通信员等从业人员”[4][5]。虽然大会的部分议题非常专业,比如“数据网络设计问题(一)”与“数据网络设计问题(二)”,但是正如宣传广告所承诺的,大部分会议的主要关注点还是计算机网络给经济社会带来的潜在影响。其中甚至有一场会议以惊人的先见之明探讨了如何积极利用法律制度“保护计算机数据库中的隐私权益”[5][6]。 + +展示 ARPANET 的目的在于尽可能地吸引与会者的关注。各场会议在国际宴会厅或酒店更下一层的其他地方举行,会议休息期间,与会者可以自由进入乔治敦宴会厅(在国际宴会厅走廊尽头的一个较小的宴会厅,也可以说是会议室)[6][7],那里放置着 40 台由不同制造商生产的终端,用以访问 ARPANET [7][8]。这些终端属于哑终端,也就是说,只能用来输入命令、输出结果,本身无法进行计算。事实上,因为是 1972 年,所以这些终端可能都是硬拷贝终端,即电传打字机。哑终端与一台被称为“终端接口信息处理机”(TIP)的计算机相连接,后者放置在宴会厅中间的一个高台上。TIP 是早期的一种路由器,哑终端可通过 TIP 连接到 ARPANET。有了终端和 TIP,ICCC 与会者可以尝试登录和访问组成 ARPANET 的 29 个主机站的计算机 [8][9]。 + +为了展示网络的性能,美国全国各主机站的研究员们通力合作,准备了 19 个简易的“情景”,供用户测试使用。他们还出了 [一份小册子][10],将这些情景收录其中。如果与会人员打算进入这个满是电线与哑终端的房间,就会得到这样一本小册子 [9][11]。通过这些情景,研究员不仅要证明网络这项新技术的可行性,还要证明其实用性,因为 ARPANET 那时还只是“一条没有汽车驶过的公路”。此外,来自国防部的投资者们也希望,公开展示 ARPANET 可以进一步激发人们对网络的兴趣 [10][12]。 + +因此,这些情景充分展示了在 ARPANET 网络上可以使用的软件的丰富性:有程序语言解释器,其中一个是麻省理工学院(MIT) Lisp 语言的解释器,另一个是加州大学洛杉矶分校的数值计算环境 Speakeasy 项目的解释器;还有一些游戏,包括国际象棋和 康威生命游戏Conway's Game of Life;以及最受与会者欢迎的几个人工智能聊天程序,包括由 MIT 的计算机科学家约瑟夫·魏泽堡开发的著名聊天程序伊莉莎。 + +设置情景的研究人员小心翼翼地列出了他们想让用户在终端机上输入的每一条命令。这点很重要,因为用于连接 ARPANET 主机的命令序列可能会因为主机的不同而发生变化。比如,为了能在 MIT 人工智能实验室的 PDP-10 微型电脑上测试人工智能国际象棋程序,与会者需要按照指示输入以下命令: + +在下方代码块中, _`[LF]`、`[SP]` 以及 `[CR]` 分别代表换行、空格以及回车键。我在每行的 `//` 符号后面都解释了当前一行命令的含义,不过当时的小册子本来是没有使用这一符号的。 + +``` +@r [LF] // 重置 TIP +@e [SP] r [LF] // “远程回显”设置, 主机回显字符,TIP 不回显 +@L [SP] 134 [LF] // 连接 134 号主机 +:login [SP] iccXXX [CR] // 登录 MIT 人工智能实验室的系统,“XXX”代表用户名首字母缩写 +:chess [CR] // 启动国际象棋程序 +``` + +如果与会者输入了上述命令,那么他就可以体验当时最先进的国际象棋程序,其棋盘布局如下: + +``` +BR BN BB BQ BK BB BN BR +BP BP BP BP ** BP BP BP +-- ** -- ** -- ** -- ** +** -- ** -- BP -- ** -- +-- ** -- ** WP ** -- ** +** -- ** -- ** -- ** -- +WP WP WP WP -- WP WP WP +WR WN WB WQ WK WB WN WR +``` + +与之不同的是,如果要连接加州大学洛杉矶分校的 IBM System/360 机器,运行 Speakeasy 数值计算环境,与会者需要输入以下命令: + +``` +@r [LF] // 重置 TIP +@t [SP] o [SP] L [LF] // “传递换行”设置 +@i [SP] L [LF] // “插入换行”设置,即回车时发送换行符。 +@L [SP] 65 [LF] // 连接 65 号主机 +tso // 连接 IBM 分时可选软件系统 +logon [SP] icX [CR] // 输入用户名,进行登录,“X”可为任意数字 +iccc [CR] // 输入密码(够安全!) +speakez [CR] // 启动 Speakeasy +``` + +输入上述命令后,与会者可以在终端中对矩阵进行乘法、转置以及其他运算,如下所示: + +``` +:+! a=m*transpose(m);a [CR] +:+! eigenvals(a) [CR] +``` + +当时,这场演示给许多人都留下了深刻的印象,但原因并不是我们所想的那样,毕竟我们有的只是后见之明。今天的人们总是记不住,在 1972 年,即便身处两个不同的城市,远程登录使用计算机也已经不是一件新鲜事儿了。在那之前的数十年,电传打字机就已经用于与相隔很远的计算机传递信息了。在 ICCC 第一届大会之前,差不多整整五年,在西雅图的一所高中,比尔·盖茨使用电传打字机,在该市其他地方的通用电气计算机上运行了他的第一个 BASIC 程序。在当时,登录远程计算机,运行几行命令或者玩一些文字游戏,只不过是家常便饭。因此,虽说上文提到的软件的确很不错,但是即便没有 ARPANET,我刚刚介绍的两个情景勉强也是可以实现的。 + +当然,ARPANET 一定带来了新的东西。参加本次大会的律师、政治家与经济学家关注更多的可能是国际象棋游戏与聊天机器人,但是网络专家们可能对另外两个情景更感兴趣,因为它们将 ARPANET 的作用更好地展示了出来。 + +在其中一个情景下,MIT 非兼容分时系统ITS 上运行了一个名为 `NETWRK` 的程序。`NETWRK` 命令下有若干个子命令,输入这些子命令就能得到 ARPANET 各方面的运行状态。`SURVEY` 子命令可以列出 ARPANET 上面运行的主机与空闲的主机,放入一个列表中;`SUMMARY.OF.SURVEY` 子命令对 `SURVEY` 子命令的运行结果进行统计,得出每台主机的“正常运行比率”,以及每台主机响应消息的平均时间。`SUMMARY.OF.SURVEY` 子命令以表格的形式输出结果,如下所示: + +``` +--HOST-- -#- -%-UP- -RESP- +UCLA-NMC 001 097% 00.80 +SRI-ARC 002 068% 01.23 +UCSB-75 003 059% 00.63 +... +``` + +可以看到,主机编号的占位不超过三个数字。其他 `NETWRK` 子命令能够查看较长时间内查询结果的概要,或者检查单个主机查询结果的日志。 + +第二个情景用到了斯坦福大学开发的一款软件——SRI-ARC 联机系统。这款软件功能齐全,非常优秀。美国发明家道格拉斯·恩格尔巴特在 所有演示之母Mother of All Demos 上演示的正是 SRI-ARC 联机系统。这款软件可以在加州大学圣芭芭拉分校的主机上运行本质上属于文件托管的服务。使用华盛顿希尔顿酒店的终端,用户就可以将斯坦福大学主机上创建的文件复制到加州大学圣芭芭拉分校的主机上。操作也很简单,只需执行 `copy` 命令,然后回答计算机的下列问题: + +_在下方的代码块中,`[ESC]`、`[SP]` 与 `[CR]` 分别代表退出、空格与回车键;圆括号中的文字是计算机打印出的提示信息;第三行中的退出键用于自动补全文件名。此处复制的文件是 `sample.txt;1`,其中文件名末尾的数字 1 代表文件的版本号,`` 表示文件路径。这种文件名是 TENEX 操作系统上面的惯用写法。_[11][13] + +``` +@copy +(TO/FROM UCSB) to +(FILE) sample [ESC] .TXT;1 [CR] +(CREATE/REPLACE) create +``` + +这两个情景看起来好像和最初提及的两个情景没有太大区别,但是此二者却意义非凡。因为它们证明了,在 ARPANET 上面,不仅人们可以与计算机进行交流,计算机与计算机也可以 _相互_ 交流。保存在 MIT 的 `SURVEY` 命令的结果并非由人类定期登录并检查每台机器的运行状态收集而来,而是由一款能在网络上与其他机器进行交流的软件收集得到的。同样的道理,在斯坦福大学与加州大学圣芭芭拉分校之间传输文件的情景下,也没有人守在两所大学的终端旁边,特区的终端用户仅仅使用了一款软件,就能让其他两地的计算机连接起来。此外,这一点无关乎你使用的是宴会厅里的哪一台电脑,因为只要输入同样的命令序列,就能在任意一台电脑上浏览 MIT 的网络监视数据,或者在加州大学圣芭芭拉分校的计算机上储存文件。 + +这才是 ARPANET 的全新之处。本次国际计算机通信会议演示的不仅仅是人与远程电脑之间的交互,也不仅仅是远程输入输出的操作,更是一个软件与其他软件之间的远程通讯,这一点才是史无前例的。 + +为什么这一点才是最重要的,而不是地图上画着的那些贯穿整个美国、实际连接起来的电线呢(这些线是租赁的电话线,而且它们以前就在那了!)?要知道,早在 1966 年 ARPANET 项目启动之前,美国国防部的高级研究计划署打造了一间终端室,里面有三台终端。三台终端分别连接着位于 MIT、加州大学伯克利分校以及圣塔莫尼卡三地的计算机 [12][14]。对于高级研究计划署的工作人员来说,即便他们身处华盛顿特区,使用这三台计算机也非常方便。不过,这其中也有不便之处:工作人员必须购买和维护来自三家不同制造商的终端,牢记三种不同的登录步骤,熟悉三种不同的计算环境。虽然这三台终端机可能就放在一起,但是它们只是电线另一端主机系统的延申,而且操作也和那些计算机一样各不相同。所以说,在 ARPANET 项目诞生之前,远程连接计算机进行通讯就已经实现了,但问题是不同的计算系统阻碍了通讯朝着更加先进复杂的方向发展。 + +### 此刻,集合起来 + +因此,我想说的是,说法一(ARPANET 首次通过计算机将不同地方的人们连接了起来)与说法二(ARPANET 首次将多个计算机系统彼此连接了起来)之间有着云泥之别。听起来似乎有些吹毛求疵,咬文嚼字,但是相较于说法二,说法一忽略了一些重要的历史发展阶段。 + +首先,历史学家乔伊·利西·兰金(Joy Lisi Rankin)指出,早在 ARPANET 诞生之前,人们就已经在网络空间中进行交流了。在《美国人民的计算机历史》(_A People’s History of Computing in the United States_)一书中,兰金介绍了多个覆盖全国的数字社区,这些社区运行在早于 ARPANET 的分时网络上面。从技术层面讲,分时网络并不属于计算机网络,因为它仅仅由一台大型主机构成。这种计算机放置在地下室中,为多台哑终端提供计算,颇像一只又黑又胖的奇怪生物,触手向外伸展着,遍及整个美国。不过,在分时网络时代,被后社交媒体时代称为“网络”的大部分社会行为应有尽有。例如,Kiewit 网络是达特茅斯分时系统的延申应用,服务于美国东北部的各个大学和高中。在 Kiewit 网络上,高中生们共同维护着一个“八卦文件gossip file”,用来记录其他学校发生的趣闻趣事,“在康涅狄格州和缅因州之间建立起了社交联系” [13][15]。同时,曼荷莲女子学院的女生通过网络与达特茅斯学院的男生进行交流,或者是安排约会,或者是与男朋友保持联系 [14][16]。这些事实都发生在上世纪六十年代。兰金认为,如果忽视了早期的分时网络,我们对美国过去 50 年数字文化发展的认识必然是贫瘠的:我们眼里可能只有所谓的“硅谷神话Silicon Valley mythology”,认为计算机领域的所有发展都要归功于少数的几位天才,或者说互联网科技巨头的创始人。 + +回到 ARPANET,如果我们能意识到真正的困难是计算机 _系统_ 的联通,而非机器本身的连接,那么在探讨 ARPANET 的创新点时,我们就会更加倾向于第二种说法。ARPANET 是第一个包交换网络,涉及到许多重要的技术应用。但是如果仅仅因为这项优势,就说它是一项突破,我觉得这种说法本身就是错的。ARPANET 旨在促进全美计算机科学家之间的合作,目的是要弄明白不同的操作系统与不同语言编写的软件如何配合使用,而非如何在麻省和加州之间实现高效的数据传输。因此,ARPANET 不仅是第一个包交换网络,它还是一项非常成功且优秀的标准。在我看来,后者更有意思,毕竟我在博客上曾经写过许多颇有瑕疵的标准:[语义网][17]、[RSS][18] 与 [FOAF ][19]。 + +ARPANET 项目初期没有考虑到网络协议,协议的制定是后来的事情了。因此,这项工作自然落到了主要由研究生组成的组织——国际网络工作组Network Working Group 身上。该组织的首次会议于 1968 年在加州大学圣芭芭拉分校举办 [15][20]。当时只有 12 人参会,大部分都是来自上述四所大学的代表 [16][21]。来自加州大学洛杉矶分校的研究生史蒂夫·克罗克(Steve Crocker)参加了这场会议。他告诉我,工作组首次会议的参会者清一色都是年轻人,最年长的可能要数会议主席埃尔默·夏皮罗(Elmer Shapiro)了,他当年 38 岁左右。高级研究计划署没有安排负责研究计算机连接之后如何进行通信的人员,但是很明显它需要提供一定的协助。随着工作组会议的陆续开展,克罗克一直期望着更有经验与威望的“法定成年人”从东海岸飞过来接手这项工作,但是期望终究还是落空了。在高级研究计划署的默许之下,工作组举办了多场会议,其中包括很多长途旅行,差旅费由计划署报销,这些就是计划署给与工作组的全部协助了 [17][22]。 + +当时,国际网络工作组面临着巨大的挑战。组内成员都没有使用通用方式连接计算机系统的经验,而且这本来就与上世纪六十年代末计算机领域盛行的全部观点相悖: + +> 那个时候的主机就像是全世界唯一的一台计算机。即便是最简短的交流会话,两台主机也无法轻易做到。并不是说机器没办法相互连接,只是连接之后,两台计算机又能做些什么呢?当时,计算机和与其相连的其他设备之间的通讯,就像帝王与群臣之间的对话一般。连接到主机的设备各自执行着自己的任务,每台外围设备都保持着常备不懈的状态,等待着上司的命令。当时的计算机就是严格按照这类交流需求设计出来的;它们向读卡器、终端与磁带机等下属设备发号施令,发起所有会话。但是,如果一台计算机拍了拍另一台计算机的肩膀,说道,“你好,我也是一台计算机”,那么另一台计算机可就傻眼了,什么也回答不上来 [18][23]。 +于是,工作组的最初进展比较缓慢 [19][24]。直到 1970 年 6 月,也就是首次会议将近两年之后,工作组才为网络协议选定了一套官方规范 [20][25]。 + +到了 1972 年,在国际计算机通信会议上展示 ARPANET 的时候,所有的协议已经准备到位了。会议期间,这些协议运用到了国际象棋等情景之中。用户运行 `@e r` 命令(`@echo remote` 命令的缩写形式),可以指示 TIP 使用新远程登录虚拟终端协议提供的服务,通知远程主机回显用户输入的内容。接着,用户运行 `@L 134` 命令(`@login 134` 命令的缩写形式),让 TIP 在 134 号主机上调用初始连接协议Initial Connection Protocol,该协议指示远程主机分配出连接所需的全部必要资源,并将用户带入远程登录会话中。上述文件传输的情景也许用到了 文件传输协议File Transfer Protocol,而该协议恰好是在大会举办前夕才刚刚完成的 [21][26]。所有这些协议都是“三层”协议,其下的第二层是主机到主机层协议,定义了主机之间可以相互发送和接收的信息的基本格式;第一层是主机到接口通信处理机协议,定义了主机如何与连接的远程设备进行通信。令人感到不可思议的是,这些协议都能正常运行。 + +在我看来,网络工作组之所以能够在大会举办之前做好万全的准备,顺利且出色地完成任务,在于他们采用了开放且非正式的标准化方法,其中一个典型的例子就是著名的 Request for Comments(RFC)系列文档。RFC 文档最初通过传统邮件供工作组成员进行传阅,让成员们在没有举办会议的时候也能保持联系,同时收集成员反馈,汇集各方智慧。RFC 框架是克罗克提出的,他写出了第一篇 RFC 文档,并在早期负责管理 RFC 的邮寄列表。他这样做是为了强调工作组开放协作的活动本质。有了这套框架以及触手可及的文档,ARPANET 的协议设计过程成了一个大熔炉,每个人都可以贡献出自己的力量,步步推进,精益求精,让最棒的想法脱颖而出,使得每一位贡献者都值得尊敬。总而言之,RFC 获得了巨大成功,并且直至今天,长达半个世纪之后,它依旧是网络标准的“说明书”。 + +因此,说起 ARPANET 的影响力,我认为不得不强调的一点正是工作组留下的这一成果。今天,互联网可以把世界各地的人们连接起来,这也是它最神奇的属性之一。不过如果说这项技术到了上世纪才开始使用,那可就有些滑稽可笑了。要知道,在 ARPANET 出现之前,人们就已经通过电报打破了现实距离的限制。而 ARPANET 打破的应该是各个主机站点因使用不同的操作系统、字符编码、程序语言以及组织策略而在逻辑层面产生的差异限制。当然,不得不提的是,将第一个包交换网络投入使用在技术方面绝对是一大壮举。不过,在建立 ARPANET 网络过程中遇到的两大难题中,更为复杂的一项则是制定统一的标准并用以连接原本无法相互协作的计算机。而这一难题的解决方案,也成了 ARPANET 整个建立与发展历史中最为神奇的一个章节。 + +1981 年,高级研究计划署发表了一份“完工报告”,回顾了 ARPANET 项目的第一个十年。在《付出收获了回报的技术方面以及付出未能实现最初设想的技术方面》这一冗长的小标题下,作者们写道: + +> 或许,在 ARPANET 的开发过程中,最艰难的一项任务就是,尽管主机制造商各不相同,或者同一制造商下操作系统各不相同,我们仍需在众多的独立主机系统之间实现通讯交流。好在这项任务后来取得了成功 [22][27]。 +你可以从美国联邦政府获得相关信息。 + +_如果你喜欢这篇文章,欢迎关注推特 [@TwoBitHistory][28],也可通过 [RSS feed][29] 订阅,获取最新文章。_ + + 1. “Hilton Hotel Opens in Capital Today.” _The New York Times_, 20 March 1965, . Accessed 7 Feb. 2021. [↩︎][31] + + 2. James Pelkey. _Entrepreneurial Capitalism and Innovation: A History of Computer Communications 1968-1988,_ Chapter 4, Section 12, 2007, . Accessed 7 Feb. 2021. [↩︎][32] + + 3. Katie Hafner and Matthew Lyon. _Where Wizards Stay Up Late: The Origins of the Internet_. New York, Simon & Schuster, 1996, p. 178. [↩︎][33] + + 4. “International Conference on Computer Communication.” _Computer_, vol. 5, no. 4, 1972, p. c2, . Accessed 7 Feb. 2021. [↩︎][34] + + 5. “Program for the International Conference on Computer Communication.” _The Papers of Clay T. Whitehead_, Box 42, . Accessed 7 Feb. 2021. [↩︎][35] + + 6. 我其实并不清楚 ARPANET 是在哪个房间展示的。很多地方都提到了“宴会厅”,但是华盛顿希尔顿酒店更习惯于叫它“乔治敦”,而不是把它当成一间会议室。因此,或许这场展示是在国际宴会厅举办的。但是 RFC 372 号文件又提到了预定“乔治敦”作为展示场地一事。华盛顿希尔顿酒店的楼层平面图可以点击 [此处][36] 查看。 [↩︎][37] + + 7. Hafner, p. 179. [↩︎][38] + + 8. ibid., p. 178. [↩︎][39] + + 9. Bob Metcalfe. “Scenarios for Using the ARPANET.” _Collections-Computer History Museum_, . Accessed 7 Feb. 2021. [↩︎][40] + + 10. Hafner, p. 176. [↩︎][41] + + 11. Robert H. Thomas. “Planning for ACCAT Remote Site Operations.” BBN Report No. 3677, October 1977, . Accessed 7 Feb. 2021. [↩︎][42] + + 12. Hafner, p. 12. [↩︎][43] + + 13. Joy Lisi Rankin. _A People’s History of Computing in the United States_. Cambridge, MA, Harvard University Press, 2018, p. 84. [↩︎][44] + + 14. Rankin, p. 93. [↩︎][45] + + 15. Steve Crocker. Personal interview. 17 Dec. 2020. [↩︎][46] + + 16. 克罗克将会议记录文件发给了我,文件列出了所有的参会者。[↩︎][47] + + 17. Steve Crocker. Personal interview. [↩︎][48] + + 18. Hafner, p. 146. [↩︎][49] + + 19. “Completion Report / A History of the ARPANET: The First Decade.” BBN Report No. 4799, April 1981, , p. II-13. [↩︎][50] + + 20. 这里我指的是 RFC 54 号文件中的“官方协议”。[↩︎][51] + + 21. Hafner, p. 175. [↩︎][52] + + 22. “Completion Report / A History of the ARPANET: The First Decade,” p. II-29. [↩︎][53] + + + + +-------------------------------------------------------------------------------- + +via: https://twobithistory.org/2021/02/07/arpanet.html + +作者:[Two-Bit History][a] +选题:[lujun9972][b] +译者:[aREversez](https://github.com/aREversez) +校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出 + +[a]: https://twobithistory.org +[b]: https://github.com/lujun9972 +[1]: https://en.wikipedia.org/wiki/ARPANET +[2]: tmp.pnPpRrCI3S#fn:1 +[3]: tmp.pnPpRrCI3S#fn:2 +[4]: tmp.pnPpRrCI3S#fn:3 +[5]: tmp.pnPpRrCI3S#fn:4 +[6]: tmp.pnPpRrCI3S#fn:5 +[7]: tmp.pnPpRrCI3S#fn:6 +[8]: tmp.pnPpRrCI3S#fn:7 +[9]: tmp.pnPpRrCI3S#fn:8 +[10]: https://archive.computerhistory.org/resources/access/text/2019/07/102784024-05-001-acc.pdf +[11]: tmp.pnPpRrCI3S#fn:9 +[12]: tmp.pnPpRrCI3S#fn:10 +[13]: tmp.pnPpRrCI3S#fn:11 +[14]: tmp.pnPpRrCI3S#fn:12 +[15]: tmp.pnPpRrCI3S#fn:13 +[16]: tmp.pnPpRrCI3S#fn:14 +[17]: https://twobithistory.org/2018/05/27/semantic-web.html +[18]: https://twobithistory.org/2018/12/18/rss.html +[19]: https://twobithistory.org/2020/01/05/foaf.html +[20]: tmp.pnPpRrCI3S#fn:15 +[21]: tmp.pnPpRrCI3S#fn:16 +[22]: tmp.pnPpRrCI3S#fn:17 +[23]: tmp.pnPpRrCI3S#fn:18 +[24]: tmp.pnPpRrCI3S#fn:19 +[25]: tmp.pnPpRrCI3S#fn:20 +[26]: tmp.pnPpRrCI3S#fn:21 +[27]: tmp.pnPpRrCI3S#fn:22 +[28]: https://twitter.com/TwoBitHistory +[29]: https://twobithistory.org/feed.xml +[30]: https://twitter.com/TwoBitHistory/status/1277259930555363329?ref_src=twsrc%5Etfw +[31]: tmp.pnPpRrCI3S#fnref:1 +[32]: tmp.pnPpRrCI3S#fnref:2 +[33]: tmp.pnPpRrCI3S#fnref:3 +[34]: tmp.pnPpRrCI3S#fnref:4 +[35]: tmp.pnPpRrCI3S#fnref:5 +[36]: https://www3.hilton.com/resources/media/hi/DCAWHHH/en_US/pdf/DCAWH.Floorplans.Apr25.pdf +[37]: tmp.pnPpRrCI3S#fnref:6 +[38]: tmp.pnPpRrCI3S#fnref:7 +[39]: tmp.pnPpRrCI3S#fnref:8 +[40]: tmp.pnPpRrCI3S#fnref:9 +[41]: tmp.pnPpRrCI3S#fnref:10 +[42]: tmp.pnPpRrCI3S#fnref:11 +[43]: tmp.pnPpRrCI3S#fnref:12 +[44]: tmp.pnPpRrCI3S#fnref:13 +[45]: tmp.pnPpRrCI3S#fnref:14 +[46]: tmp.pnPpRrCI3S#fnref:15 +[47]: tmp.pnPpRrCI3S#fnref:16 +[48]: tmp.pnPpRrCI3S#fnref:17 +[49]: tmp.pnPpRrCI3S#fnref:18 +[50]: tmp.pnPpRrCI3S#fnref:19 +[51]: tmp.pnPpRrCI3S#fnref:20 +[52]: tmp.pnPpRrCI3S#fnref:21 +[53]: tmp.pnPpRrCI3S#fnref:22