Shows network professionals how to design, define, write and update useful SNMP Management Information Bases (MIBs) that support standards-based network management.KEY TOPICS:Introduces SNMP MIBs, documents that contain definitions of management information which allow systems to be remotely monitored, configured and controlled. Presents a model of an SNMP-based management network and defines the SNMP management framework. Walks through the construction of MIBs, including name space organization, MIB naming, maintenance, object semantics and object style, and othe topics. Presents advanced techniques, including tables within tables, multi-table relationships and linked lists. Shows how to analyze standard MIBs. Discusses front-end and back-end MIB compilers, including SMIC, NetView/6000 SunNet Manager and HP OpenView. Includes a guide to MIB developer's resources. MARKET:Anyone involved in building systems that must be compliant with the Simple Network Management Protocol (SNMP), the leading international standard for network management.
In the past, understanding MIBs has mostly been a case of picking up the oral folklore or reading endless streams of E-mail on a lot of IETF mailing lists. In this book, David Perkins and Evan McGinnis part the swirling clouds of confusion to offer up the crucial concepts you need to read and interpret a MIB, and maybe even write one.
The authors offer a functional view of SNMP-based management, emphasizing the aspects that relate directly to MIBs. Without going into all the particulars of SNMP, Understanding SNMP MIBs provides a general introduction to such key concepts as:
Interwoven with this material is a structural view of MIBs, starting with the basic syntax and specifications of MIB modules, and moving on to sophisticated discussions of advanced data structures and data types, including:
Network administrators will find this a handy guide to the manageable aspects of their network, while developers, engineers, and product managers will discover a simplified approach to creating MIBs with the end-user in mind, while adhering to the international MIB standards. For students, this book is a valuable complement to the study of SNMP and network management. Even if you never need to create a MIB of your own, Understanding SNMP MIBs will be an invaluable aid for interpreting and selecting them in your daily work.
The accompanying CD contains numerous sample MIBs with their RFC's, along with two great original applications: the MIB compiler SMICng and a translation program to generate HTML from MIBs. Supported platforms include Windows® 95, Windows NT, SunOS®, Solaris®, HP-UX™, Linux, IBM's AIX, and SGI.
1. An Introduction to SNMP-based Management.
Introduction. IETF Terminology. The Model of an SNMP-based Managed Network. The Definition of SNMP-based Management. A Short Pictorial History of SNMP. A Categorization of IETF MIB Modules.
The Model. Object Identifiers. Instances of Management Information. Relationships between Objects. Fate Relationships between Tables. Events. Data Types for Management Information. Well-Known Textual Conventions.
SNMP MIB Specifications. SNMP MIB Modules. MIB Module Layout and Elements. Lexical Rules for SNMP MIB Modules. Constructs in MIB Modules. MIB Module Names. IMPORTS Construct. Common Clauses. UTC Time Format. MODULE-IDENTITY Construct. OID Value Assignment and OBJECT-IDENTITY Construct. Type Assignment and TEXTUAL-CONVENTION Construct. OBJECT-TYPE Construct. SEQUENCE Construct. TRAP-TYPE Construct. NOTIFICATION-TYPE Construct. OBJECT-GROUP Construct. NOTIFICATION-GROUP Construct. MODULE-COMPLIANCE Construct. AGENT-CAPABILITIES Construct.
Management Domains. Extending Management Domains. SNMP Management Platforms. Aspects of Network Management. Hoopla. New Management Information Definitions.
System Types. System Requirements for SNMP-based Management. Functional Areas of an SNMP Agent. The MIB Myth. Agent Diagrammed. Monolithic and Extensible Agent Structure. Other Approaches. Summary.
SNMP Operations and Messages. Control Fields. Retrieval Operations. Modification Operations. Event Reporting Operations. Summary.
Introduction. Categories of the Model. Components. Attributes. Actions. Statistics. State. Translating a Model into a MIB. Example Object Analysis.
The Big Question: SNMPv1 or SNMPv2? Converting an SNMPv1 MIB to SNMPv2. Converting an SNMPv2 MIB to SNMPv1. A Roadmap for MIB Development. OID Infrastructure Organization. Module Naming. Module Layout. Designing Agent Implementation Profiles. Information Module Maintenance. Statistics. Components. States. Actions. Tables. Event Design. Learn by Doing.
Tables within Tables. Linked Lists. Fast Table Lookups. Hash Tables. Binary Trees. Multi-Dimensional Arrays. Floating Point Numbers. 64 and 32 Bit Counters. Summary.
Selection Criteria. Aspects of MIB Analysis. RFC1213: MIB-II the Core Definitions. RFC 1516: Ethernet Repeaters. RFC 1514: Host Resources. Server Management.
Introduction to MIB Compilers. Front-end compilers. Back-end compilers. SMIC. 11.5 ISODE. Using SMIC to Write a MIB. Understanding SMIC's Back-end Format. MIB2HTML: Publishing MIBs on the World Wide Web. A Development Kit.
Problem Statement. Framework Requirements. Object Analysis. Using Standard MIBs. Framework Design. MIB Modules Layout. Controller Group. Valves. Event Definitions. Schedules. Conformance Statements. Assembling the MIB Module. Capabilities Modules. Maintenance of Modules. What's Next?
What is ASN.1? ASN.1 Fundamental Types. ASN.1 Structured Types. Basic Concepts of BER. Encoding of Values Used in the SNMP Protocol. Minimum/Maximum Encodings.
B.1 SNMPv1. SNMPv2.
List of Acronyms. Conventions. Introduction. Overview. Use of SMICng. MIB Stripper. SMICng Environment Variables. Command Line Arguments to SMICng. SMICng Input. Output from SMICng. MIBs with SMICng. Compiler Extensions and Limitations. Acknowledgments. Format of SMIC Intermediate file.
Requesting an Enterprise Identifier. Public MIB Repositories. Obtaining RFCs. MIB Development Software. SNMP Newsgroups. SNMP Publications. SNMP and MIB World Wide Web Sites. Mailing Lists.
ASN.1 Information. Recommended SNMP Information. Additional SNMP Information.
Contents of the CD-ROM. Setup and Use. WWW MIB Formatter.
The Berkeley California philosopher Ashleigh Brilliant once wrote, “The world is controlled by a small, evil group to which no one I know belongs.” If it seems that the rules and subtleties of writing an SNMP MIB are controlled by the same secretive group, you're not alone. Until now there has been little guidance provided on how to write, read, and use MIBs.
In a nutshell, MIBs are specifications containing definitions of management information so that network systems can be remotely monitored, configured, and controlled.
The standards bodies involved have formal documents that state the set of rules which must be followed in writing MIBs. The rules are written in an adapted sub-set of an obsolete version of a specification language called Abstract Syntax Notation One (ASN.1). These documents are almost unreadable, since the ASN.1 language is intended more for machine processing than human comprehension. Also, no one has yet provided a style guide for MIB writers, or an answer book for MIB readers. The unfortunate result has been that understanding MIBs often comes down to learning the oral folklore, or worse, reading the endless stream of email on a large number of IETF mailing lists. Unfortunately, much of this email and other information made available on the Internet is not quite correct.
As a result, many MIB writers end up reinventing the wheel, using conflicting techniques, simply because the authors didn't know about a precedent in another MIB, or writing incorrect MIBs. Thus, understanding MIBs requires careful and detailed reading to determine the intent of the author.
There has been enormous growth in recent years in the development of SNMP-based management stations, as well as a flood of MIBs from both vendors and international standards bodies. These MIBs are the language of network and applications management.
Whether you are a network manager trying to manage devices from numerous vendors, a test engineer putting together a test plan, or a product manager writing a data sheet, it may indeed seem as if all MIBs were written by a small, evil group of which you're not a part. If you are going to be involved with network management anywhere along the chain, understanding MIBs is quickly becoming a requirement. Whether you are a designer or user of MIBs, this book was written so you, too, can get some real work done, and not waste time learning the initiation rites of this small, evil group.
The Scope Of This Book
There are a number of excellent books already in print that attempt to provide an overview of the entire Network Management universe; there are also several excellent texts specifically focusing on the Simple Network Management Protocol (SNMP) in all of its deceiving simplicity.
This book is different, in that it focuses on the key aspects of SNMP-based management that you must know to allow you to first, read and understand existing MIBs, and then (if you are so inclined) design, define, and write useful, compliant MIBs for your own devices or applications.
The process of understanding MIBs is often confused with understanding the protocol. Naturally, the two are related, but understanding a MIB doesn't require that you have detailed knowledge of the inner workings of the protocol. Its definition and operation are fixed and can be treated as a “black box.” Understanding MIBs requires only a high level understanding and not in-depth knowledge of the protocol. This book gives you enough of an introduction to SNMP that you can understand what will be going on with the protocol, and how it relates to good MIB design.
Also confused with writing a MIB are the tasks of writing the code that makes available, or uses, specific instances of management information defined in a MIB. These are separate tasks, which may be performed by the same individual. This book introduces the concepts needed for development of an agent or management application, but is not a tutorial on these tasks. That information is provided by vendors of agent and management application development systems.
A summary of all the elements of SNMP is provided as appendices so you will have one reference source for what you need to know to do useful work.
Who Should Read This Book
This book was written with three main audience groups in mind:
-- Network administrators (and end-users), who cannot change the network information that is available to them, but would like to be able to read and understand the manageable aspects of their network.
-- Personnel of network component vendors (which includes agent and application developers, test engineers, and product managers), who must be able to define and create software based on the management aspects specified in existing MIBs, create new MIB specifications for management elements that have not yet been standardized, test that the implementations are compliant, and find creative ways to differentiate products that are based on standardized specifications.
-- Students, who can use this book to complement introductory texts on SNMP, or as the primary source in a project-oriented class to apply network management.
This book contains facts, our experiences, and our beliefs tempered by the comments of our reviewers. A primary result of our experiences in network management is the following belief, which we call the Fundamental Axiom of Technology, and is our credo.
The impact of learning about a technology must be minimal, and must not stand in the way of applying the technology.
We believe the burden of communicating the concepts and applications of a technology should be on the creators and proponents of the technology and not on the users of the technology. Please let us know how we did after you have read the book.