Background: Know: SEQUENCE, INTEGER, OCTET STRING, plaintext, context, engine, Recognize:

Previous Next


SNMPv3 Message formatEdit

The SNMPv3 message consists of messageVersion, messageHeaderData, messageSecurityparameters and messageData. MessageHeaderData consists of messageID, messageMaxSize, messageFlages and messageSecurityModel. MessageData consists of plaintext and encryptedPDU. Messageplaintext consists of contextEngineID, contextName and data. The SNMPv3 message format is described in RFC 3412 and it is shown in figure 1.

Figure 1 : the SNMPv3 message format.

Explanations are given as follows.

Field NameSyntaxSize(Bytes)Description

The value of this field is 3.

Subfield NameSyntaxSize(Bytes)
messageFlagesOctet String1

More information about messageHeaderData can be found here HeaderData.

messageSecurityParameters variableThis field contains the security parameters that are security model dependent. The contents of this field are specified in each document describing an SNMPv3 security model. For example, the parameters for the user-based model are in RFC 3414.
messageData variable

The structure of plaintext is :

Subfield NameSyntaxSize(bytes)Description
contextEgnineIDOctet StringvariableIt is used to identify to which application the PDU will be sent.
contextNameOctet StringvariablecontextName is used to name a context and each contextName must be unique.
dataANYvariableThis subfield is the data that are transmitted.

Meanwhile, the syntax of encryptedPDU is octet string.

There are different types of PDUs, for example, GetRequest-PDU, GetNextRequest-PDU and Trap-PDU.

Links to other slides:


  1. SNMP:
  2. RFC 3412:
  3. RFC 3414: