1 of 39

28.1

Chapter 28

Network Management:�SNMP

2 of 39

28.2

28-1 NETWORK MANAGEMENT SYSTEM

We can say that the functions performed by a network management system can be divided into five broad categories: configuration management, fault management, performance management, security management, and accounting management.

Configuration Management�Fault Management�Performance Management

Security Management

Accounting Management

Topics discussed in this section:

3 of 39

28.3

Figure 28.1 Functions of a network management system

4 of 39

28.4

28-2 SIMPLE NETWORK MANAGEMENT

PROTOCOL (SNMP)

The Simple Network Management Protocol (SNMP) is a framework for managing devices in an internet using the TCP/IP protocol suite. It provides a set of fundamental operations for monitoring and maintaining an internet.

Concept�Management Components�Structure of Management Information (SMI)

Management Information Base (MIB)

SNMP

Topics discussed in this section:

5 of 39

28.5

Figure 28.2 SNMP concept

6 of 39

28.6

Figure 28.3 Components of network management on the Internet

7 of 39

28.7

SNMP defines the format of packets exchanged between a manager and

an agent. It reads and changes the status (values) of objects (variables)

in SNMP packets.

Note

8 of 39

28.8

SMI defines the general rules for naming objects, defining object types (including

range and length), and showing how to encode objects and values. SMI does not define the number of objects an entity should manage or name the objects to be managed or define the association between the objects and their values.

Note

9 of 39

28.9

MIB creates a collection of named objects, their types, and their relationships to each other

in an entity to be managed.

Note

10 of 39

28.10

We can compare the task of network management to the task of writing a program.�

Both tasks need rules. In network� management this is handled by SMI.

Both tasks need variable declarations. In� network management this is handled by MIB.

Both tasks have actions performed by� statements. In network management this is

handled by SNMP.

Note

11 of 39

28.11

Figure 28.4 Management overview

12 of 39

28.12

Figure 28.5 Object attributes

13 of 39

28.13

Figure 28.6 Object identifier

14 of 39

28.14

All objects managed by SNMP are given an object identifier.�

The object identifier always starts with 1.3.6.1.2.1.

Note

15 of 39

28.15

Figure 28.7 Data type

16 of 39

28.16

Table 28.1 Data types

17 of 39

28.17

Figure 28.8 Conceptual data types

18 of 39

28.18

Figure 28.9 Encoding format

19 of 39

28.19

Table 28.2 Codes for data types

20 of 39

28.20

Figure 28.10 Length format

21 of 39

28.21

Figure 28.11 shows how to define INTEGER 14.

Figure 28.11 Example 28.1, INTEGER 14

Example 28.1

22 of 39

28.22

Figure 28.12 shows how to define the OCTET STRING “HI”.

Figure 28.12 Example 28.2, OCTET STRING “HI”

Example 28.2

23 of 39

28.23

Figure 28.13 shows how to define ObjectIdentifier �1.3.6.1 (iso.org.dod.internet).

Figure 28.13 Example 28.3, ObjectIdentifier 1.3.6.1

Example 28.3

24 of 39

28.24

Figure 28.14 shows how to define IPAddress 131.21.14.8..

Figure 28.14 Example 28.4, IPAddress 131.21.14.8.

Example 28.4

25 of 39

28.25

Figure 28.15 mib-2

26 of 39

28.26

Figure 28.16 udp group

27 of 39

28.27

Figure 28.17 udp variables and tables

28 of 39

28.28

Figure 28.18 Indexes for udpTable

29 of 39

28.29

Figure 28.19 Lexicographic ordering

30 of 39

28.30

Figure 28.20 SNMP PDUs

31 of 39

28.31

Figure 28.21 SNMP PDU format

32 of 39

28.32

Table 28.3 Types of errors

33 of 39

28.33

Figure 28.22 SNMP message

34 of 39

28.34

Table 28.4 Codes for SNMP messages

35 of 39

28.35

In this example, a manager station (SNMP client) uses the GetRequest message to retrieve the number of UDP datagrams that a router has received. There is only one VarBind entity. The corresponding MIB variable related to this information is udpInDatagrams with the object identifier 1.3.6.1.2.1.7.1.0. The manager wants to retrieve a value (not to store a value), so the value defines a null entity. Figure 28.23 shows the conceptual view of the packet and the hierarchical nature of sequences. We have used white and colored boxes for the sequences and a gray one for the PDU. The VarBind list has only one VarBind.

Example 28.5

36 of 39

28.36

The variable is of type 06 and length 09. The value is of type 05 and length 00. The whole VarBind is a sequence of length 0D (13). The VarBind list is also a sequence of length 0F (15). The GetRequest PDU is of length ID (29). Now we have three OCTET STRINGs related to the security parameter, security model, and flags. Then we have two integers defining maximum size (1024) and message ID (64). The header is a sequence of length 12, which we left blank for simplicity. There is one integer, version (version 3). The whole message is a sequence of 52 bytes. Figure 28.24 shows the actual message sent by the manager station (client) to the agent (server).

Example 28.5 (continued)

37 of 39

28.37

Figure 28.23 Example 28.5

38 of 39

28.38

Figure 28.24 GetRequest message

39 of 39

28.39

Figure 28.25 Port numbers for SNMP