This book shows you how to use SNMP++ to build network management applications that are highly portable, powerful, easy-to-use, reliable and extensible - and get them to market more quickly than ever before. Unlike other books on SNMP which focus on lower-level network management standards, this book focuses on real SNMP product development, and reflects the direct experience of many engineers, network managers and network professionals. It introduces SNMP++, Hewlett-Packard's new API for simplifying SNMP applications development using C++ and object-oriented techniques. It covers the entire development lifecycle, from analysis through design and implementation. It introduces each new class in the SNMP++ class library, shows how they all work together, and covers cross-platform issues, extensibility and reuse. The book concludes with a series of example applications, with code provided on accompanying CD-ROM. All software developers and networking professionals from major organizations involved in network management. In particular, this book is ideal for HP OpenView developers.
"synopsis" may belong to another edition of this title.
This book presents an object-oriented approach to developing network management applications using the Simple Network Protocol and C++. Developed by Hewlett-Packard Company, a leader in network management technology, SNMP++ has been successfully utilized in a number of commercial products. Unlike other books on SNMP that focus on lower-level mechanisms of network management, the focus of this book is upon real product development using the experience of many engineers, network managers, and network professionals. This book will show you how object-oriented concepts are applied to the development of network management applications from analysis, through design, to implementation.
In order to meet the challenge of the explosive growth in networked computing, powerful new tools are required to allow management of larger and more complex systems in a timely manner. Object-oriented tools provide many of the benefits needed to meet this challenge. Up to now, network management development has been a cumbersome task requiring the expertise of many valuable resources. SNMP++ brings the object-oriented advantage to network management development and in doing so allows you to develop powerful applications as never before.
There are a variety of Simple Network Management Protocol (SNMP) Application Programmer Interfaces (APIs) that exist for the creation of management applications. The majority of these provide a large library of functions that require the programmer to be familiar with the inner workings of SNMP and network management. Most of these APIs are platform-specific, resulting in SNMP code specific to an operating system platform and thus not portable. Application development using C++ has entered the mainstream and, with it, a rich set of reusable class libraries are now readily available. What has been missing is a standard set of C++ classes for system and network management development. SNMP++, a reusable C++ class library, offers power and flexibility that would otherwise be difficult to implement and manage. An object-oriented approach to SNMP network programming provides many benefits, including the following.
SNMP++ is a portable Application Programmer Interface (API). A major goal of SNMP++ is to provide portability across a variety of operating systems, network operating systems, and network management platforms. SNMP code developed using SNMP++ will port to other operating system platforms without any changes. For most developers, more platforms mean broader market coverage. Broader market coverage means more revenue. SNMP++ makes this possible with minimal effort. SNMP++ has currently been ported for Microsoft Windows NT, Windows 95, and a variety of UNIX platforms.
Network Management Developer Power
SNMP++ provides power that would otherwise be difficult to implement and manage. Utilizing object orientation, SNMP++ allows powerful applications to be constructed with minimal coding effort. Powerful features of SNMP++ include automatic SNMP resource and memory management, and an automatic bilingual SNMP interface (the ability to manage SNMP version 1 and version 2 agents through the same API). Together, these features provide the developer with a powerful set of tools and create the framework for network management application development.
Putting the Simple Back into SNMP
An object-oriented approach to SNMP programming should be easy to use. After all, this is supposed to be a simple network management protocol. SNMP++ puts the simple back into SNMP! An object-oriented approach to SNMP encapsulates and hides the internal mechanisms of SNMP and in doing so allows you to focus on your application. In order to use SNMP++, you don't have to be an expert in C++. Only a minimal understanding of C++ basics is required. Similarly, you don't have to be an expert in the lower-level details of SNMP and network management.
Most SNMP APIs require the programmer to manage a variety of computing resources. These include low-level SNMP data structures and network layer transports. SNMP++ provides safety by managing these resources internally. By realizing the benefits of a safe, robust API, you can stay focused on your application development and not waste time chasing memory leaks that are due to a difficult- to-use API.
A central theme to object orientation is that of programming extensibility. SNMP++ is designed to be extended easily. Extensions to SNMP++ include supporting new operating systems, network protocols, network management platforms, new versions of SNMP, and adding new application-specific features tailored to your specific needs. Through C++ class derivation, users of SNMP++ can inherit what they like and overload what they wish to redefine.
Rapid Application Development
SNMP++ addresses one of the most important issues in software development-how to deliver quality products in a timely manner. SNMP++ is a reusable technology that has allowed products to be successful and reach markets in a timely manner.
Guide to Readers
This book is organized into three parts. Each part may be read separately, out of order, or if you are already familiar with the topics found in the part, not at all. The book utilizes a large number of examples including a fully implemented SNMP browser, which can be found on the accompanying CD-ROM. Part I: An Introduction to Network Management and SNMP++ Part I focuses on the background of network management, including the objectives, business, technologies, and standards associated with management. A special emphasis is provided on the Simple Network Management Protocol (SNMP), its history, and current status. For those readers who are already well familiar with SNMP and its details, this part can be skipped. Additionally, this part provides a chapter on object orientation and C++, covering the concepts that directly apply to SNMP++.
Part II: The SNMP++ Framework Part II defines the set of classes that make up the SNMP++ framework. SNMP++ is comprised of a set of C++ classes that collectively provide a framework for the development of network management applications. Each class is defined and a variety of examples are given. This part may be utilized as a language reference for SNMP++.
Part III: Developing Network Management Applications This last part focuses on the construction of a complete network management application using Microsoft Windows Visual C++ (MSVC++). A complete SNMP browser application would include support of SNMP version 1 and version 2 agents. The full source code for the examples is provided on the accompanying CD-ROM. The example program runs on both Microsoft Windows NT and Microsoft Windows 95.
The Scope of This Book
The topics found within this book focus primarily on the Network Management Station (NMS) side of network management. This is in contrast to the embedded systems side where SNMP agents are embedded within devices. Many of the concepts described are universal to SNMP, including managers and agents. There are a variety of books on the market that focus on the esoteric details of SNMP and network management. This book differs in that it focuses primarily on building complete network management solutions using a technology that is well developed and successfully deployed.
The process and methodology required to build network management solutions are not straightforward. Much of the documentation and design material regarding network management and SNMP exist in the form of Internet Engineering Task Force (IETF) Requests For Comments (RFCs), a form not easily deciphered by many. This book presents this information on an "as-needed" basis. That is, rather than describe all the RFCs and their content, only the elements that apply to SNMP++ are described.
SNMP++ would have never been created without the vision and effort of Kim Banker. Special thanks are given to a few project managers who saw value in this technology, including Bob McGuire, Lloyd Serra, Moises Medina, and Harry Feit. Bob Natale and the WinSNMP group have provided the forum where SNMP++ has been discussed and developed over the Internet.
Deliver smarter SNMP applications faster, with SNMP++
SNMP++ is Hewlett-Packard's new API for simplifying SNMP applications development using C++ and object-oriented techniques. For network management applications developers, though, SNMP++ is more than an API: it's a breakthrough.
In this book, you'll learn how SNMP++ will help you build network management applications that are more portable, powerful, extensible and reliable. And if that's not enough, you'll also discover how SNMP++ can help you get to market faster than ever before.
Written by a Hewlett-Packard engineer who helped develop SNMP++, this is the first book to cover the entire SNMP product development lifecycle, from analysis through design and implementation. Step-by-step, you'll learn how to use SNMP++ to build powerful applications with a minimum of coding effort.
The book includes practical definitions and examples of every C++ class in the new SNMP++ class library. It shows how SNMP++ classes work together, covers cross-platform issues, extensibility and reuse. Finally, it walks through the construction of a complete network management application for Windows NT and Windows 95 using Microsoft's Visual C++ and the SNMP++ class library. All source code is provided on CD-ROM.
If you're a network management software developer, SNMP++ represents an extraordinary opportunity for competitive advantage—and this book puts you on the inside track.
"About this title" may belong to another edition of this title.
Book Description Prentice Hall PTR, 1997. Paperback. Book Condition: New. New item. Bookseller Inventory # QX-006-27-8851108