Computer networks are ubiquitous today. For networking research, a series of discrete event network simulators--ns-1, ns-2, and ns-3--has been developed. This book on ns-2 can be used as a reference by researchers, as well as by undergraduate and postgraduate students. It will be useful for courses related to computer networks.
The first edition of this book was published in 2009 [1]. This second edition corrects the typographical errors found in the first edition and tries to improve the descriptive language. It has added exercises at the end of the chapters that are meant to be used for assignments, lab exercises, and exam questions. The second edition is essentially the same as the first edition, except for the new chapter on wireless mobile ad hoc networks. More examples have been included and some of the chapters have been rewritten. The appendices are essentially unchanged. The authors have developed companion online resources for their book, including updates, discussion boards, elaborated explanations of various topics, slides, questions and answers, and errata.
The chapter titles provide an outline of the topics covered: “Simulation of Computer Networks”; “Introduction to Network Simulator 2 (NS2)”; “Linkage between OTcl and C++ in NS2”; “Implementation of Discrete-Event Simulation in NS2”; “Network Objects: Creation, Configuration, and Packet Forwarding”; “Nodes as Routers or Computer Hosts”; “Link and Buffer Management”; “Packets, Packet Headers, and Header Format”; “Transport Control Protocols Part 1: Overview and User Datagram Protocol Implementation”; “Transport Control Protocols Part 2: Transmission Control Protocol”; “Application: User Demand Indicator”; “Wireless Mobile Ad Hoc Networks”; “Developing New Modules for NS2”; “Postsimulation Processing: Debugging, Tracing, and Result Compilation”; and “Related Helper Classes.” The appendices cover programming essentials, a review of polymorphism, and the BSD link list and bit-level functions. The references are current and the indices are helpful.
The authors have tried to make improvements over their first edition. ns-2 has become very popular and hence this revised second edition is to be welcomed. However, it is unfortunate that ns-2 is just being maintained whereas ns-3 is being actively developed. It will be helpful if the authors can bring out a book on ns-3. Nevertheless, I recommend this book for all those who are using ns-2 or plan to use it in the future. It will serve as a useful reference.