We already mentioned the many complex functions that need to be integrated to make a carrier network work. It’s like a highly-specialized car engine. So where was this function for the Internet? Who was doing it? In what is the central mystery of the Internet, no one was doing it. The basic Internet is unusable, because it does nothing but provide protocols to allow packetized bits to be transferred between hosts (i.e., computers). It is pure connectivity. However, pure global connectivity means that any connected computer application can be accessed by any other computer on the network. We have the beginnings of a global services platform.
Here are some of the things that were, and are, needed to bring global services into being, roughly in the order the problem came up, and was solved.
1. Connecting to a service
Hosts and gateways operate on IP addresses for routing purposes. It is problematic, however, to use IP addresses (and port numbers) as end-system service identifiers as well. Apart from the usability issues of having to deal with 64.233.160.4 as the name of a computer hosting a service, IP addresses can also be reassigned to hosts on a regular basis via DHCP or NAT, so lack stability. A way to map symbolic names, such as www.google.com, to an IP address is required. This was achieved by the global distributed directory infrastructure of the Domain Name System, DNS, also dating back to 1983.
2. Interacting with a service
Part of writing an application is to write the user interface. In the early years of computing, this was simply a command line interpreter into which the user typed cryptic codes if he or she could recall them. The introduction of graphical user interfaces in the late eighties made the user interface designer’s task considerably more complex but the result was intuitive and user-friendly. The introduction of HTML and the first Internet browsers in the early nineties created a standard client easily used to access arbitrary applications via HTTP across the Internet.
3. Connecting to the Internet
Research labs, businesses, and the military could connect to the Internet in the eighties. But there was little reason for most businesses or residences to connect until the Web brought content and a way to get at it. Initially the existing telephone network was (inefficiently) used for mass connection by the widespread availability of cheap modems. We should not forget the catalysing effects of cheap PCs with dial-up clients and built-in modems at this time. More recently DSL and cable modems have delivered a widely available high-speed data-centric access service.
4. Finding new services
Once the Web got going, search engines were developed to index and rank Web sites. This was the point where Altavista, Yahoo!, and later Google came to prominence.
5. Paying for services
There is no billing infrastructure for the Internet, although there have been a number of attempts to support, for example, micro-payments. In the event, the existing credit card infrastructure was adapted by providers of services such as Amazon.com. More recently specialist Internet payment organizations such as PayPal have been widely used (96 million accounts at time of writing).
6. Supporting application-application services
Computer applications also need to talk to other applications across the Internet. They do not use browsers. The framework of choice uses XML, and we saw detailed architectures from Microsoft, with .NET, and the Java community with Java EE and companion editions, mostly since 2000.
7. Interactive multimedia services
Interactive multimedia was the hardest issue for the Internet. The reason is that supporting interactive multimedia is a systems problem, and a number of issues have to be simultaneously resolved, as we discuss next. So while for Broadband ISDN, voice/multimedia was the first problem, for the Internet, it has also been the last (or at least, the most recent) problem.
No comments:
Post a Comment