Computer Networks: A System Approach
暂无分享,去创建一个
It is really exciting to witness the recent appearance of several excellent introductory textbooks on computer networks. Soon after a review of A. S. Tanenbaum’s third edition of Computer Networks appeared in IEEE Communications Magazine, I received an invitation from the publisher of Computer Networks: A System Approach to compare the two. After spending a few days and nights reading through the book, my initial impression is very favorable. This book is indeed a comprehensive and thorough textbook on computer networks for the X generation! In retrospect, textbooks on computer networks from the O OS, such as Computer Communication Network Design and Analysis by M. Schwartz, usually centered on network capacity design and queuing analysis. Textbooks from the %Os, such as the first edition of Tanenbaum’s book, use the seven-layer OS1 structure to explain layering concepts in isolating network design issues. With the tremendous success of the Internet and extreme popularity of TCPiIP protocols in the O OS, we would expect a different set of networking issues for the newer generation of professionals who grew up with Windows and Windows 95 and browse the Web while dining. Computer Networks: A System Approach by Peterson and Davie satisfies and exceeds this expectation in many aspects. There are two unique aspects of this book. First, the protocols discussed are drawn directly from the Internet. Examples include the chapter on internetworking (IP, Address Resolution Protocol, next-generation IP, multicast, Domain Name Service) and that on end-to-end protocols (TCP and UDP). This book also includes a code segment from a working network subsystem, the x-kernel. Being able to read a real-life implementation of the protocol permits readers to have some sense of the complexity involved. (Some of us still remember the days when we traced the source code of UNIX to learn the principles of designing an operating system.) Furthermore, this code can also be extended to implement new functions and serve as an interesting research tool. This book is divided into nine chapters and an appendix on network management. The objective of each chapter is clearly stated at the start with a problem statement, and each has a comprehensive list of further reading and exercises at the end. Chapter 1 gives a brief introduction to the foundations of network protocol, such as network applications, requirements, and architecture. Protocol implementation basics are described in Chapter 2. The x-kernel, which provides an object-oriented framework for implementing protocols, is used to illustrate many of the principles discussed. Two basic “classes” (in the objectoriented sense) in any protocol are “protocol” and “message.” As an example, an x-kernel protocol object consists of an implementation of xPush and xPop adhering to the protocol specification’s definition of send and receive messages. Chapter 3 discusses a directly connected network. Issues such as band(Continued on page 56)