Review: "Distributed Computing: Implementation and Management Strategies" R. Khanna, Ed. Reviewed by: Dave Crocker Another palliative Every few years, our fast-moving profession invents a term to describe the next wave of technology to solve all our problems. Things never quite live up to the promise, of course, but that does not stop the tidal wave of media enthusiasm. Such has been the fate of "Distributed Computing". Once you get past a trivial definition, it is never quite clear what is excluded by the term, what is accomplished by the technology, or how to go about getting it and using it. This book tries to remedy these deficiencies. Given that the topic is not subject to quick or clever description, the book succeeds quite well. It is an exposition of the ideas, technologies and techniques that can be banded together into an enterprise-wide, computational service, and it is rich with discussion about approaches toward developing such a service. The most common terms for the technologies described in the book are "middleware" and "enterprise networking". They attempt to enhance raw network transport services by providing additional building-blocks for development of distributed applications and for operation of networked platforms. Broadly, these encompass three nearly independent areas of service: configuration and query, networked operating system, and application development. The first allows a member of the distributed environment to obtain information about itself and other resources on the net. The second allows multiple computers to cooperate to form an integrated service, e.g., distributed time and remote file access. The last facilitates development of end-user applications which are, themselves, distributed among various networked systems. With such a range of tasks to perform you might expect "distributed computing" technology to be complicated to deal with. You'd be right. Organization and style "Distributed Computing: Implementation and Management Strategies" is a series of independently-written expository chapters. Each is serious and relatively information-dense. Don't look for clever asides or outrageous myth-busting diatribes. Many of the chapters are written by principals in the development or promotion of the respective technologies, so skeptical analysis is not generally present. This does not mean that reality is absent. In a chapter on "Migration Strategies", Bob Morgan cautions: "DCE's complexity is a challenge in itself, however. It is likely that only organizations that are already hip-deep in the distributed computing swamp will be able to appreciate the benefits..." After an introductory chapter, the book is divided into 3 parts and a series of Appendices which really are short chapters forming a bonus section. In Part 1 six chapters discuss basic technologies, including the much-heralded DCE, as well as the ONC+ enhancements to the much-used ONC/NFS. Jeff Schiller's chapter on Distributed System Security is as good an introduction to the topic of network-based security as I've seen. Security discussions tend to sound like black-magic incantations to the non-expert, yet Jeff covers the ground thoroughly and clearly. (And you probably won't miss much if you skip the few math notations.) The second Part of the book comprises 5 case studies, in keeping with the book's effort to be pragmatic. Included are descriptions of CMU's Andrew and MIT's Athena projects, as well as discussion of "institutional" implementation and use projects at the University of Michigan, Hewlett-Packard, and Eastman Kodak. All of these chapters are useful; the Andrew and Athena ones are particularly excellent for the perspectives they offer. Part 3 discusses "strategies" and "issues". In other words, these chapters try to step back and discuss things using a broad perspective. The first of these is a downright clever chapter in which Khanna got vendor strategy statements from Sun, HP, IBM and Microsoft (with one of the appendices coming from Apple). Page- flipping among these consecutive summaries was particularly interesting for comparing their architectural charts. If you have any expectation that this realm of technology will make your life simpler, the charts should finish that off. No quick answers Media discussion about distributed computing has heavily emphasized OSF's work on DCE and DME. Both are covered in detail in the book, with Morgan's chapter discussing adoption and use. As long as you remember that these real experiences were by highly skilled staff in a highly advanced environment, the discussion adds flesh to the otherwise-spare repertoire of knowledge about DCE realities. Distributed computing technology provides an enhanced infrastructure, rather than direct solution to specific end-user requirements. This books does the same thing. It provides extensive detail about an area of new technology and service and about the approaches that can be taken to incorporate the capabilities. It does not contain any cookbooks or procedural checklists. It provides a basis for doing extended analysis and a discussion of the current industry experiences. Like the move to distributed computing, reading the book will be an investment in the future. If you develop distributed systems or must make acquisition decisions for them, I recommend the investment.