Books: A User's Report
In this issue, I review three new books -- Volume III
and Stevens' internetworking guide, Albitz and Liu's
new work on DNS
and BIND, and Janice Winsor's guide to Solaris 2.x system
I also discuss John Davidson's Introduction to TCP/IP,
though not new, is worth bringing to the attention of
in need of resources on TCP/IP.
Internetworking with TCP/IP: Volume III
Client-Server Programming and Applications
by Douglas E. Comer and David L. Stevens
This third volume in Comer's TCP/IP series demonstrates
the how and
why of client-server applications. It is suitable both
for the individual
reader and for use as a textbook.
The authors begin with a look at TCP/IP protocols and,
telnet examples, what the client-server model entails,
and the place
of concurrency in communications. Since volume 3 is
also the BSD Socket
Version, the next chapter describes the Berkeley Socket
This interface provides functions capable of accessing
instead of using one function for each protocol. This
the programmer to concentrate on the type of service
than the protocol. After explaining the socket interface,
devote the remainder of the chapter to showing how it
approach not only further clarifies the concept of the
also lays the groundwork for future chapters.
Two particularly informative chapters deal with client-server
providing some simple examples. The first chapter presents
for both TCP and UDP in a straightforward, step-by-step
is shown in a numbered table, followed by explanations
of each step.
The second chapter implements the algorithms through
as daytime and echo.
The next section of the book discusses the different
types of servers
available. The discussion includes excellent diagrams
of the process
structures for each type of server, along with sample
beneath the diagrams explain how communication is achieved.
Other topics include tunneling, the application gateway
and the remote procedure call (RPC) concept. In introducing
concept, Comer and Stevens also stress the importance
a client-server application interactively. To this point,
treated client and server applications as separate entities;
they explain how the two components interface with one
also provide a working example of remote procedure calls.
The book concludes with a demonstration of a complex
application that uses a telnet protocol as the client
and a UNIX terminal
as the server. The authors describe both the program
Comer and Stevens have produced a readable and useful
book. When they
want to stress a point, they explain the concepts, give
and reiterate the data by putting it in italics. Each
an introduction and a summary, and every discussion
of design issues
cover both the advantages and the disadvantages of specific
The book is a viable choice for the classroom. The authors
history where applicable, customize the chapter with
exercises at the end of each chapter, and as the text
the most important points that they have made.
Two final points: diagrams and tables are particularly
within the text, and the authors perform a real service
the most efficient way that client-server internetworking
can be achieved.
DNS and BIND
by Paul Albitz and Cricket Liu
O'Reilly & Associates, Inc.
Until now, little has been published on the Internet's
System (DNS) and the Berkeley Internet Name Domain (BIND)
With this book, Albitz and Liu present both a theoretical
and a practical
view for the reader. And although the primary audience
be system and network administrators, the work includes
addressed to the general user or the programmer.
The authors begin with background material for both
DNS and BIND.
The first chapter explains the DNS database structure
an extremely clear definition of DNS. The second chapter
terms that will be employed throughout the rest of the
definitions introduce the reader to the new vocabulary
and also help
clarify the subtle differences among terms.
Albitz and Liu essentially have produced an answer to
"What do I want from DNS and how do I get it?"
what you need and where you can get it for different
cases. The authors
also focus on DNS and electronic mail. In addition to
to begin a system, they explore maintaining BIND, expanding
and parenting. Many of the programs the authors use
DNS and BIND have been reprinted in perl.
Since the user of BIND is working with software, the
a chapter on debugging and how to read debugging output.
entitled "Troubleshooting DNS and BIND" identifies
In one of the concluding chapters, Albitz and Liu address
between shell and C programming and discuss when one
might be more
effective than the other.
This book is clearly and precisely written. By using
presented in the preface, readers can easily find the
they want. In organization, the book proceeds from the
basics to the
theoretical to practical examples. Graphs and diagrams
conceptual theory and what the output of a command will
on your screen. The authors identify disadvantages in
and include examples for points that may be difficult
The footnotes provide leavening humor along with useful
DNS and BIND complements the Comer and Stevens TCP/IP
above perfectly, since DNS basically uses a client-server
with name servers as the server and resolvers as the
client. The book
should be read not only by system and network administrators,
but also by programmers who use DNS and BIND and by
anyone who wants
to know how DNS really works.
The Solaris System Administrator's Guide
by Janice Winsor
Janice Winsor directs her book to the novice system
and to the experienced administrator who is new to Solaris
range from the introductory -- "Introducing Solaris
Administration" and "Using Basic OS Commands"
the more complex -- "Administrating File Systems"
Network Services." The author compares the book
to a map of the
more familiar features of the UNIX operating system.
what a system administrator does, and how administrative
may vary from one position to another.
The Solaris System Administrator's Guide is particularly
organized. In discussing commands, Winsor first displays
of the command, then describes what the command does,
how to use it,
when to use it, optimal ways to execute it, and a step-by-step
demonstrating its application. When appropriate, Winsor
section on how to detect potential problems. In her
Init states, for example, she not only clearly defines
but also explains when to shut down a system. In many
cases, she examines
shortcuts that may be employed.
The book's intended audience includes both system administrators
interested users. To satisfy the latter, Winsor often
options of a command and its current settings in one
follows up with a second table detailing those same
respective defaults, and a brief description of each.
Particularly useful are two sets of cues that appear
in the margins.
One indicates "NEW" for UNIX System V Release
4, and the other
signals a "NOTE" that reiterates information
Another type of "NOTE" is displayed in the
text and usually
contains a shortcut or a warning. Occasionally, a "CAUTION"
is included in the text. The author presents a procedural
which system administrators may proceed from the SunOS4.x
to the SunOS5.x
operating system. A quick reference card summarizing
the command changes
is included, as well as an appendix detailing the modifications.
Although some knowledge of system administration is
helpful, you don't
have to be an accomplished system administrator to understand
use The Solaris System Administrator's Guide. The format
the graphs and tables helps to simplify the concepts,
and Winsor eliminates
a problem that some authors have with semantics by explaining
one word or command could be a synonym for another.
In sum, Winsor
has produced a usable and useful guide that should serve
a wide range
of readers well.
An Introduction to TCP/IP
by John Davidson
Although this is not a new book, it is very worthwhile
and a good
complement to the other titles reviewed this month.
The title describes
it as an introduction, but it provides more information
As his preface, Davidson explicitly identifies his target
readers familiar with computers, LANs, protocols, and
but with no prior knowledge of the TCP/IP Protocol Suite.
begins by briefly recounting the history of TCP/IP.
He uses two diagrams
to explain TCP/IP. One refers to the seven-level Open
(OSI) Reference Model; the other, to TCP/IP Protocols
The second diagram also refers to similar levels in
the OSI hierarchy.
Davidson closes the first chapter by describing a sample
defining internetworking in the process. The rest of
the book explains
the four levels presented in the TCP/IP Protocols and
This concise introduction to TCP/IP provides a glossary
appendices, including assigned numbers and references.
written a concise book on TCP/IP. The diagrams that
text and well designed and informative. This book would
make a very
useful text for anyone interested in TCP/IP, whether
a beginner or
an experienced user.
About the Author
Elizabeth Zinkann has been involved in the UNIX and
C environments for the past
10 years. She is currently a UNIX and C consultant,
and one of her specialities
is UNIX education. In addition to her computer science
background, she also has a
degree in English.