25 July 2012

Al Gore Invented the Internet!

Well, not really, and he didn't say he did either.  But he did play a crucial role.

The internet is a collection of protocols--TCP/IP, DNA, HTTP, RFC-822, lots more.  Nearly all of them were invented by, or under the aegis of, some US or European research grant.  The most important of these came from the US Defense Department's Advanced Research Projects Agency, known as DARPA or ARPA.  A number of computer networks were invented in the late 60s, but nearly all of them were fundamentally centralized.  DoD saw great value in the networking, but realized that centralized networks were extremely susceptible to attacks on the critical links.  At the time, the Cold War and the risk of Nuclear Attack was at the top of DoD's mind.  Two ARPA researchers, Vinton Cerf and Bob Kahn, realized that a highly decentralized network would be immune to this problem, and designed some rudimentary protocols, which they called NCP, and commissioned some other researchers to begin implementing them.   It didn't take long to come up with something useful, and BBN (Bolt Beranek and Newman) built the first router under DARPA contract, which they called an IMP (Interface Message Processor)

The nascent network, called the ARPANet, became immediately popular for academic and military.  ARPA, which was footing the entire bill, quickly put their foot down and banned commercial traffic lest the bill get too large.  Since it was fundamentally a research network that had become far more popular than expected, they'd included no billing mechanism at all.  At the same time, a number of other companies were selling various other types of networks.  The most popular were Bulletin Board Systems and Local Area Nets.  Nearly all of these used the Star organization--a central hub with all communication passing through it, although there were a few decentralized networks that grew up, such as UUCPNet, and a few LANs that used token passing.  Token passing is decentralized, but limited in scale, and Star is not decentralized--to make it bigger, the central hub needs to be bigger and pretty quickly becomes an unaffordable bottleneck.  But the completely decentralized ARPANet did not need any big hubs.  IMPs got cheap fast, and a lot of people quickly realized that service providers could be small and independent and they could all work together, making a whole that was much larger than the sum of the parts.  But there was a problem of how to charge the users, to make the thing scalable and commercial.

Cerf and Kahn and a few others set about solving the problem, and came up with a new set of protocols, which they called TCP/IP (Transmission Control Protocol/Internet Protocol) which improved a lot of things, and included some sourcing information, which allowed service providers to implement billing.  Since the ARPANet had been around for over ten years and was very popular by this point, it took a lot of politicking to impose this change, and it was Al Gore who was the champion of it in congress.  (I was one of the skeptics at the time.  I was wrong.  Cerf was right)   He got the bill passed, and on New Years Day 1983, called "Flag Day" for internet users, NCP was abandoned and TCP/IP replaced it.  The internet was born.  At the same time Domain Name Architecture or System (DNS...the obvious acronym would be confusing) was imposed.

Over time, a number of competing protocols have been in play. Some of them, such as X25, are potentially superior, but none have been able to compete with the incredible flexibility and installed base of TCP/IP.   All of the Star/Hub networks have been forced to accommodate the internet or go out of business.  Many are still in use as LANs or ISPs, but the majority have switched to using TCP/IP.  During the late 80s/early 90s, a great many BBS-like networks grew up, including Compu$erve, MSN, Prodigy, AOL, and more.  All of these used the Star architecture.   It made billing simple and and forced users to mainly use content of the providers choice, which of course created more profit centers.  Each had incompatible ways of generating content, although they began to focus on what were called Markup Languages and HyperLinks.  On the ARPANet, you had to have some level of sophistication about files and data in order to use things.  the network providers provided, among other things, a high level of user-friendliness.  They used HyperText and so did most of the non-network CD-ROM content, such as HyperCard and Microsoft Encarta.

HyperText had been invented in the mid 70s by a brilliant eccentric named Ted Nelson.  His idea was that all the information in the world could be brought together and linked, by placing them all on a centralized set of computers and putting pointers in the various documents to one another.  He saw there being a centralized editorial board to make sure all the content was correct and consistent.   Nelson's idea was consistent with the Star/Hub idea.  He wrote a fun book about it and lots of other things, called Computer Lib/Dream Machines in 1974 which caught the imagination of thousands of computer scientists.    One of them was Tim Berners-Lee, an Englishman and researcher at CERN, the European Nuclear Research Center (paid for by a consortium of European governments).  Berners-Lee realized that by modifying a markup language and  making a browser to use it, and providing a simple internet protocol layer, which he respectively called HyperText Markup Language and HyperText Transfer Protocol (HTML and HTTP), he could create a version of Ted Nelson's vision.  His motive was to provide a flexible host for CERN researchers to document their experiments, apparatus, and more, but it didn't take long before he realized that everybody could use it.  He called it the World Wide Web.

No comments:

Post a Comment