Management structure and tag based on TCPIP network

xiaoxiao2021-03-06  72

TCP / IP network management structure and mark XING on August 25, 2002, a total of 15584 words

1 Introduction

The general structure and method used to manage TCP / IP networks will be described herein. This article does not explain the specific solution, nor the protocol and data structure, and if you need this, please refer to the description of SNMP and MIB. In the IEEE, there is an article about Internet management structure and methods. This article basically comes from this article, but there is different: that article mainly shows the management of the OSI type network, and does not apply for SNMP. This article has to achieve two goals: versatility and scalability, although network management has been launched for many years, but the depth and breadth of understanding of this problem are not necessarily. By giving a universal SMI, you can lay a foundation for future development.

2. Management information structure and tag

The management object is stored through virtual information, and we call this structure to manage the information library or MIB. The objects in the MIB are defined by ASN.1. Each object has its own name, syntax, and encoding. The name is like an object tag, which is a name of management management. The request of the object type defines the abstract data structure that is consistent with the object type. Although this can be defined by ASN.1, it still limits in this article. This limitation is more general for the definition. Object Type Coding Description Object Type of instances are expressed by the type of object of the object. The syntax and encoding of the object are usually connected through the definition of the object, which is also the form of the object to transmit on the network. As for the definition of MIB or management protocols, this is not the work of this article, this article is just a general principle of a generality. Of course, at some time, the definition has also been restricted, which is for a particular manner, which can be used without tuberculosis when specific implementation.

2.1 name

The name is used to mark management objects. The object tag concept is used to define. Regardless of the semantics of the object, the object mark is a method of determining certain objects. Object markers are based on overall strings. This tree is connected to some marked nodes. Each node has a sub-node. Our understanding of object markers should be based on the overall trees. A marker is a simple text description and an integer. The root node is not marked, it must be at least three sub-nodes, a sub-node is managed by international standardized organization, marked as ISO (1); another is managed by ccitt, marked as ccitt (0); third by two To manage, marked as: Joint-ISO-CCITT (2). Under ISO (0), ISO has a subtree for other international organizations, org (3), for sub-nodes, two left to US National Standards and Technical Bureau, another transfer from NIST to US Department of Defense DOD (6).

For this paper, DOD does not specify how it manages its own object marker subtree. This article assumes that the DOD will separate a zone to the Internet, which is managed by the IAB:

Internet Object Identifier :: = {Iso ORG (3) DOD (6) 1}

That is to say, the object-marked Internet sub-tree starts at 1.3.6.1. This paper shows the standard of IAB agreed by the IAB, indicating the strategy of managing object marking subtro. At the beginning, four nodes are like this:

Directory Object Identifier :: = {Internet 1}

Mgmt Object Identifier :: = {Internet 2}

Experimental Object Identifier :: = {Internet 3}

Private Object Identifier :: = {Internet 4}

2.1.1. Catalog

Directory (1) How the child is still used as an Internet directory.

2.1.2. Mgmtmgmt (2) Sub tree is used to mark the object defined in the IAB file. For example, if the RFC of the initial Internet standard MIB is specified as a Manage Document No. 1, this RFC can be used as an object tag: {mgmt 1} or 1.3.6.1.2.1 to define the Internet standard MIB. The second half of this article will define a new MIB standard.

2.1.3. EXPERIMENTAL

The Experimental (3) subtree defines the objects used for Internet experiments. For example, the experimenter may receive the definition number 17, which is: {Experimental 17} or 1.3.6.1.3.17. IANA is made on how to use this subtree.

2.1.4. Private

Private (4) Sub trees are used to define other objects. This subtree has only one child:

Enterprises Object Identifier :: = {Private 1}

Provide a mechanism for providing a network subsystem to register a model of the product when using Enterprises (1). When receiving a subtree, a company can define a new MIB object in the subtree. And this company should also register its network subsystem under this subtree, which can be effectively managed in the management protocol. For example, if "FlintStones, Inc." produces the network subsystem, it requires a node under the corporate sub-tree, which may be numbered as follows: 1.3.6.1.4.1.42, it may be registered here Its own router is: 1.3.6.1.4.1.42.1.1

2.2. Grammar

The syntax is to define an object structure based on the object type, and some of the generalization needs to be used in ASN.1 in ASN.1. ObjectSyntax defines syntax available for different object types.

2.2.1. Original type

The original type in ASN.1 includes Integer, OcTet String, Object Identifier, and NULL. If an enumeration integer is listed as an object type, the name of the owner 0 should not appear in the enumeration list and cannot be used.

2.2.2. Construct Type

Sequence available in ASN.1 is available, using it can be built for columns or tables. For columns, the syntax is as follows:

SEQUENCE {, ..., }

Where is the original type. For tables, the syntax is as follows:

SEQUENCE OF

Where points to columns.

2.2.3. Definition type

It is allowed to define a new type within a new application product, and the new type must be able to decompose into basic types, columns, tables, or new types.

2.2.3.1. NetworkAddress

This type represents an address format in multiple possible protocols. Only only the Internet protocol is only allowed.

2.2.3.2. Ipaddress

This type of definition represents a 32-bit IP address, which is represented as a string of length 4. When the ASN.1 type is used. The basic coding rule is encoded, only the original coding form can be used.

2.2.3.3. Counter

This type of definition represents a non-negative integer, which can only increase until the maximum. When the maximum is reached, it will return 0 to start again. This article specifies its maximum value of 2 ^ 32-1, that is, 4294967295.

2.2.3.4. Gauge

This type represents a non-negative integer, which can be increased or decreased, but stop at maximum. This article specifies that its value is 2 ^ 32-1, that is, 4294967295.

2.2.3.5. Timeticks

This type is non-negative integer, which is used to record how many seconds of seconds from a time point.

2.2.3.6. Opaque

This type supports the ability to expand the ASN.1 syntax. The only type only requires the recipient to decrypt the data without requiring the recipient to understand its content. 2.3. Code

After the instance of the object type, its value can transmit the basic coding rules of ASN.1 for syntax of the object type.

3. Management object

This article does not define the MIB object, but this article specifies a format that can be used by other articles. An object definition typically includes the following five domains:

Object: is a string name, called Object Descriptor, which specifies the type of object, this type and Object Identifier corresponds.

Grammar: Abstract syntax of object types. It must be resolved on an instance of ASN.1 type ObjectSyntax.

Definition: Text description of the semantic semantics of the object type. Implementation must ensure that the object's instance meets this definition, as this MIB is used in multi-vendor environment, to take care of them. Objects have the same significance on different machines.

Access: Take read read, read and write, write or not access these four values.

Status: Mandatory, optional or Obsolete.

Other domains may be defined in future documents.

3.1. Object Name

There is no 0 in the object name in the MIB in the Internet standard, and this value is left as an extension. Object Descriptor of each and object types should have unique, memory and printed characters. This is very beneficial for people's reading and development of object user interfaces.

3.2. Object type and instance

An object type is a custom definition of manageable objects, and the object instance is an instance of an object type, and this instance has a value. For example, the definition of the routing table entry has been defined in the MIB, this definition, and an object type, the value in the single entry of the given routing table is an example of the object type. Many object types are defined in the MIB, each type through the Object Identifier tag, and there is a text name called Object Descriptor. This indicates that data in the MIB is determined by a particular protocol without being specified by a particular protocol.

An object type can be defined in the MIB, such an instance of an object type can represent a collection of some information and is also represented by instances of some secondary object type models. For example, suppose the following object is defined in the MIB:

Object: atindex {planetry 1}

Syntax: integer

Definition: interface number of physical address

Access: read-write.

Status: Mandatory.

Object: atphysaddress {planeTry 2}

Syntax: OcTet String

Definition: Physical address related to media

Access: read-write.

Status: Mandatory.

Object: atnetaddress {aTENTRY 3}

SYNTAX: NetworkAddress

Definition: Network address corresponding to the physical address of the media

Access: read-write.

Status: Mandatory.

The fourth object type may also be defined in the MIB:

Object: aTentry {attable 1}

SYNTAX:

ATENTRY :: = sequence {

Atindex

Integer,

Atphysaddress

OcTet string,

AtnetAddress

NetworkAddress

}

Definition: Inlets in the address mapping table

Access: read-write.

STATUS: MANDATORY. Each object type is honestly includes information represented by the first three object type instances. Type this defined object type is called a list (List). Similarly, a collection of list types can make a table (Table). For example, the definition of the fifth object is as follows:

Object: attettable {at 1}

SYNTAX: Sequence of ATENTRY

Definition: address mapping table

Access: read-write.

Status: Mandatory.

The above address mapping table is constructed by the collection of ATENTRY. Let us think about how to get objects in the table. Let's take an example below, below is an object type:

{Atphysaddress}

The following is an example of object related to the agreement:

{Atnetaddress} = {Internet "10.0.0.52"}

This two amounts of the icon will be able to refer to an instance of AtphysadDress. The atphyaddress here is part of any address mapping table entry with the atNETADDRESS-correlation value of {Internet "10.0.0.52}. Let's see how to access the collection object (List) in a package, name the object type:

{ATENTRY}

Then specify the object instance related to the protocol:

{Atnetaddress} = {Internet "10.0.0.52"}

The above object instance accesses all instances of the entrance in the table, where the table is related to the value {Internet "10.0.0.52"} of AtnetAddress.

Each management protocol provides a mechanism for accessing non-collection object types, each management protocol, also illustrates whether it supports access to the collection object type. Moreover, the protocol must specify which instance is returned when an object type / instance is accessing multiple types of instances. To support different management protocols, all information that can distinguish between objects is defined by an instance of the object type in the MIB.

3.3. Management object macro

You can use the Object-Type macro to process the definitions in the MIB. This macro allows an object type to adopt a unified representation.

Object-type macro :: =

Begin

TYPE NOTATION :: = "Syntax" Type (Type Objectsyntax)

Access "Access

"Status" status

Value Notation :: = Value (Value Objectname)

Access :: = "read-only"

| "Read-Write"

| "Write-only"

| "Not-accessible"

Status :: = "mandatory"

| "Optional"

| "Obsolete"

End

Based on the object type defined above, we can see the definition below defined in the MIB:

Atindex Object-Type

SYNTAX INTEGER

Access Read-Write

Status Mandatory

:: = {aTENTRY 1}

Atphysaddress Object-Type

SYNTAX OCTET STRING

Access Read-Write

Status Mandatory

:: = {aTENTRY 2}

AtnetAddress Object-Type

Syntax NetworkAddress

Access Read-Write

Status Mandatory

:: = {aTENTRY 3} ATENTRY Object-Type

Syntax ATENTRY

Access Read-Write

Status Mandatory

:: = {attetable 1}

ATTable Object-Type

SYNTAX Sequence of ATENTRY

Access Read-Write

Status Mandatory

:: = {at 1}

ATENTRY :: = sequence {

Atindex

Integer,

Atphysaddress

OcTet string,

AtnetAddress

NetworkAddress

}

4. MIB extension

Each Internet Standard MIB document is marked in the previous document as an outdated. The name marked in the following marks is not changed when changing the version:

{MGMT Version-Number}

The new version can announce the old object type, but do not delete their names; extend an object type definition by adding non-set object types to the list (list); either define new objects. The new version cannot change the semantics of the object without changing the name of the object. This ensures that the same name will have the same semantics in different versions, so that it is more convenient to implement it. However, management representatives may return an object, which is a supercoming of the object. Considering robustness, the management procedure should ignore these additional information. But we have to pay attention: If an instance does not have the same syntax with the hoped object type, the control will fail. In the case of monitoring and control, the object name returned by an operation must be consistent with the object name of the operation requirements.

5. Definition

RFC1155-SMI definitions :: = begin

Exports - Everything, EVERYTHING

Internet, Directory, MGMT,

Experimental, Private, Enterprises,

Object-type, objectname, objectsyntax, simplesyntax,

Applicationsyntax, NetworkAddress, iPaddress,

Counter, Gauge, Timeticks, Opaque

- The path to the root

Internet Object Identifier :: = {Iso ORG (3) DOD (6) 1}

Directory Object Identifier :: = {Internet 1}

Mgmt Object Identifier :: = {Internet 2}

Experimental Object Identifier :: = {Internet 3}

Private Object Identifier :: = {Internet 4}

Enterprises Object Identifier :: = {Private 1}

- Definition of Object Types

Object-type macro :: =

Begin

TYPE NOTATION :: = "Syntax" Type (Type Objectsyntax)

Access "Access

"Status" status

Value Notation :: = Value (Value Objectname)

Access :: = "read-only"

| "Read-Write"

| "Write-only"

| "Not-accessible"

Status :: = "Mandatory" | "optional"

| "Obsolete"

End

- Names of Objects in the MIB

Objectname :: =

Object Identifier

- Syntax of Objects in the MIB

Objectsyntax :: =

Choice {

SIMPLE

SimpleSyntax,

- Note That Simple Sequences Are Not Directly

- Mentioned Here to Keep Things Simple (I.E.,

Prevent Mis-Use). However, Application-Wide

- Types Which Are Implicitly Encode Simple

- Sequences May Appear in The Following Choice

Application-Wide

Applicationsyntax

}

SimpleSyntax :: =

Choice {

Number

Integer,

String

OcTet string,

Object

Object Identifier,

EMPTY

NULL

}

ApplicationsYntax :: =

Choice {

Address

NetworkAddress,

Counter

COUNTER,

gauge

Gauge,

Ticks

Timeticks,

Arbitrary

Opaque

- Other Application-Wide Types, As They Are

- Defined, Will Be Added Here

}

- Application-Wide Types

NetWorkaddress :: =

Choice {

internet

IPaddress

}

Ipaddress :: =

[Application 0] - in network-byte order

Implicit OcTet String (Size (4))

Counter :: =

[Application 1]

Implicit integer (0..4294967295)

Gauge :: =

[Application 2]

Implicit integer (0..4294967295)

Timeticks :: =

[Application 3]

Implicit integer (0..4294967295)

Opaque :: =

[Application 4] - Arbitrary Asn.1 Value,

Implicit OCTET STRING - "Double-Wrapped"

End

转载请注明原文地址:https://www.9cbs.com/read-109582.html

New Post(0)