SNMP

Capabilities

Capabilities

Support version 2c

Support version 3

Comment

SNMP trap

N.A.

N.A.

See SNMP-TRAP

Get

Supported feature

Supported feature

Set

Supported feature

Supported feature

Authentication - Community based

Supported feature

Not supported feature

Authentication - User & Group based

Not supported feature

Supported feature

Username, password, shared key and client/server (only without TLS)

Data encryption

Not supported feature

Supported feature

TLS is supported, DTLS is not supported

MIB

Not supported feature

Not supported feature

No automatic conversion for the MIB

Trap / Inform

Not supported feature

Not supported feature

The Trap / Inform are handle by SNMP-TRAP

What can be done

The snmp integration allows OnSphere to communicate with one or multiple SNMP agent to get or set variable.

Get

The state of a device can be read at regular interval based on the predefined OID.

Set

When a value change, its content can be propagated to a predefined OID.

Usage

  • Monitor the state of snmp compatible devices

  • Control snmp compatible devices

Examples

How it is done

Requirements

Target

A target defines a device on which Set and Get can be done. It also defines the default polling interval for all owner. The SNMP target cannot be monitored by a value.ospp, as no data is returned.

Get

The get is done periodically as defined by the polling interval.

The get requests are merged together per target and polling interval to decrease the number of request (50 get create only one request instead of 50).

A automatic conversion is done between the SnmpType and the value.

For example, an Integer32 with -5 will give the following:

  • Boolean : true

  • Integer : -5

  • Decimal : -5.0

  • Text : “-5”

The option binaryData and charset (define in owner.snmp) are use when an OctetString is received.

For example, an OctetString with 0x41CD851F will give the following:

  • With binaryData set to true

    • Boolean : true

    • Integer : 1103987999

    • Decimal : 25.69

    • Text : “0x41CD851F”

  • With binaryData set to false

    • Boolean : false

    • Integer : Error unable to extract an Integer

    • Decimal : Error unable to extract an Integer

    • Text : “A” which is the data interpreted as an UTF-8 string. It might by usable on a script, but we don’t give any guaranty.

For example, an OctetString with 0x003100300035 (“105” encoded in UTF_16) will give the following:

  • With binaryData set to false and charset to UTF_16

    • Boolean : false

    • Integer : 105 (The String is a parsable number so the conversion work)

    • Decimal : 105.0 (The String is a parsable number so the conversion work)

    • Text : “105”

Set

A set request is triggered when a value changes and must be published. The set are not grouped together as there timing are not predefined.