The Scope of Network Distributed Computing
- Ubiquitous Computing
- Web Services
- The Semantic Web
- Spaces Computing
- Peer-to-Peer Computing
- Collaborative Computing
- Dependable Systems
- Security
- Languages
- Pervasive Computing
- Cluster Concepts
- Distributed Agents
- Distributed Algorithms
- Distributed Databases
- Distributed Filesystems
- Distributed Media
- Distributed Storage
- Grid Computing
- Massively Parallel Systems
- Middleware
- Mobile and Wireless Computing
- Network Protocols
- Operating Systems
- Real-Time and Embedded Systems
- Commentary
- Endnotes
Since December 1969, when the ARPANET project created the first modern packet-switched networkthe genesis of today's Internetthe challenge and promise of NDC has resulted in an explosion of investment, research, and software development. Ensuing efforts encompass nearly all aspects of computer science today.
The scope of NDC is quite impressive. No other single aspect of computer science research and development quite compares with the myriad problem spaces enjoined when computers communicate, swap data, and share processing responsibilities. This chapter presents an overview of some of the many relevant areas of NDC research and development today.
Each of these areas is a moving target, in that while progress is being made in each area and rapid improvement may sometimes be achieved, a complete examination or solution in any of these areas is not likely in the short term. In fact, to the extent that each represents a community of autonomous agents, general fitscape attributes apply. Other categories of NDC will emerge over time, as new technologies converge and evolve and as innovative technology adoption patterns continue to manifest themselves in consumer-driven economic fitscapes worldwide.
The categories here, which I call fitscapes, reflect many of the topical areas of the IEEE Computer Society's Distributed Systems Online journal, which itself is a constantly changing resource that tracks the branching processes so evident in the exploration of NDC today.[1] The categories are derived as well from other fitscapes: ongoing activities of the W3C, for example, and traditional areas of development that may be closely related but are nevertheless subtly different (for example, grid computing versus massively parallel computing).
Table 3.1 lists (in alphabetical order) the general areas of NDC R&D that are explored in this chapter, representing a sampling of the general categories of NDC R&D. Each category is ripe with potential, rich in detail and nuance, and deserving of extensive examination well beyond the scope of this volume.
Table 3.1. Some NDC research and development areas
cluster concepts |
distributed storage |
peer-to-peer |
collaborative computing |
grid computing |
pervasive computing |
dependable systems |
languages |
real time and embedded |
distributed agents |
massively parallel systems |
security |
distributed algorithms |
middleware |
Semantic Web |
distributed databases |
mobile and wireless |
spaces computing |
distributed filesystems |
network protocols |
ubiquitous computing |
distributed media |
operating systems |
Web Services |
This list does not represent all R&D fitscapes within NDC. One obvious area not covered here is that of systems and network management, a pioneering technology in areas like distributed agents and network protocols. Since the management of systems and networks is encompassed in a number of the 24 categories cited in this chapter, it's left out of the overviews in this chapter. Also not considered here are many of the rapidly evolving edge-related aspects of NDC, including user interfaces. As some of the areas considered in this chapter converge over time, that consolidation will give impetus to the NDC edge-computing fitscapes. The fitscapes presented here represent those that are either historically ripe, currently in vogue, or of sufficient industry interest to attract levels of investment beyond one or two research institutions.
There are clear connections between and among these areasrelationships that are presumably recognized by many of the participants engaged in the exploration of each. For example, NDC security is germane to all other categories of NDC development. Distributed agents share ground and influence with at least pervasive and ubiquitous computing and the Semantic Web, and probably others as well. A random clump of these fitscapes chaotically thrown against the wall, with relationships mapped, might appear as in Figure 3.1.
Figure 3.1. NDC R&D fitscapes
The purpose of this map is not to present a canonical listing of relations and dependencies; indeed, only the most obvious ones are noted here. Every aspect of NDC is directly related in some way to almost every other aspect of NDC, thus making the map moot as an exercise, so don't bother trying to follow the relationships or memorize the dependencies. The point of the map is to illustrate the level of complexity inherent in our efforts to simply articulate the relationships among the areas of research in NDC, never mind the more profound complexities inherent within each.
Imagine the complexities you encounter in keeping track of all the influences and discoveries if, for example, your role is one of conceptualizing distributed agents. How can your work, dependent on NDC-related work inat leastmiddleware, security, distributed databases, and possibly operating systems, proceed concurrently with work in those areas? How can you, with many other potential advances also dependent on you, confidently progress? Clearly, not everything can proceed in lock-step. By the same token, it may not be obvious, nor is it reasonable, to stage an ordered process whereby advances in subdisciplines of NDC research can proceed. A complex fitscape governs each subdiscipline from which a broader, much more complex, fitscape of overall NDC R&D emerges.
It may be reasonable, however, to estimate possible dependencies that one category of exploration might have on another over time. Work in some areas will certainly mature more quickly than others, driven by levels of investment, which in turn are driven by technology adoption patterns, and governed by the complexity of the computer sciences issues that must be solved.
The chart in Figure 3.2 offers conjecture with respect to a maturity order of the 24 categories, evolving such as to provide basic solutions upon which NDC developers can build. The y axis, degree of decoupling, captures component decomposition as well as the movement of intelligence closer to the "edge" of networks; the impact of Moore's law over time, upon which various categories of NDC development will build, is also implied here and will accommodate an even greater decoupling.
Figure 3.2. Evolution of NDC over time (pro forma)
Given an accelerating rate of innovation in the major technology trends cited earlier (some of which are themselves fitscapes of NDC), it is a given that any estimates of future developments, relationships, or dependencies among these should be viewed as speculative. The odds are perhaps not as high as those against walking into the Atlantis Hotel and Casino in Reno, Nevada, placing a $3 bet in the MegaBucks machine, pulling the handle, and winning the jackpot in one try. But futures in NDC are nevertheless speculative.
I will say more about the Atlantis Casino later in the context of real-world implementation, which, as you may know, is not always by design. Nor is implementation research, strictly speaking by design; implementations are less erudite and much dirtier than speculation, research, or theory would have us believe. But for now, an overview of many of the current NDC R&D fitscapes is in order.
Ubiquitous Computing
In a well-connected network, we can begin with any node and theoretically find our way to each of the others by following links along the way. Begin with an end in mind, and you'll find lofty ideals touted by an inspired fitscape. The teleological vector of technology,[2] at least that which is heir to Turing's mind child, is ubiquitous computing. Pervasive computing would make information available everywhere; ubiquitous computing would require information everywhere. There is a subtle but certain difference, one that will provide NDC challenges for years beyond the near-future, pervasive-computing world that we might soon imagine.
Buildings need to be smart, down to the rivet. Electrical systems need to be smart, down to the light bulb. Monetary systems need to be smart, down to the penny. And all those systems and more need to be connected and available down to the network if the ultimate in ephemeralization is ever to be approached. Are continuing productivity increases necessary? Goff's axiom may apply here as well. What do we call economies that do not grow? The essence of economic growth is increasing productivity. Unless we are prepared both to forgo economic organizational assumptions altogether and begin anew, as it were, with other approaches (which may be even more painful to consider than economic stagnation) and to decline given current assumptions, we cannot turn away from the path of ephemeralization. There is no other direction, therefore, than eagerly toward ubiquitous computing.
Many authors do not distinguish between "pervasive" and "ubiquitous" when it comes to computing visions; even Mark Weiser used the terms synonymously. But I think it's important to be cognizant of the differences and argue that we will enjoy the fruits of one even as we continue to pursue the other. Indeed, we are beginning to see early signs of pervasive computing today. Any city in which I can easily find an "information field," in which dynamic network connections can be enjoined via a mobile computing device, is one in which pervasive computing potential has emerged. Arguably, any place where an I-mode phone can function is a place of pervasive computing. But until all possible computing applications are explored and every niche for network intelligence fully exploited, ubiquitous computing will remain the unseen terminal of a teleological vector.
Once computers disappear and dynamic, ad hoc ensembles of software swarm about like beneficent organisms to serve our every whim, utilizing resources with previously unimaginable efficiencies, a miraculous invisible network may then emerge which is as unfathomable to our early 21st-century minds as a wireless Internet-connected device would have been to a pre-Copernican vision. The Network Age is the age of magic. NDC developers, by virtue of the myriad fitscapes in which we all play, are the magicians of this new age. Ubiquitous computing is our shared Nirvanawhether we realize it or not.