SNMP Protocol Data Unit
Namespace:
SnmpSharpNetAssembly: SnmpSharpNet (in SnmpSharpNet.dll) Version: 0.5.2.0 (0.5.2.0)
Syntax
| C# |
|---|
public class Pdu : AsnType, ICloneable |
| Visual Basic (Declaration) |
|---|
Public Class Pdu _ Inherits AsnType _ Implements ICloneable |
| Visual C++ |
|---|
public ref class Pdu : public AsnType, ICloneable |
Remarks
SNMP PDU class that is the bases for all SNMP requests and replies. It is capable of processing
SNMPv1 GET, GET-NEXT, REPLY and SNMPv2 GET, GET-NEXT, GET-BULK, REPLY, V2TRAP, INFORM and REPORT PDUs.
CopyC#
By default, Pdu class initializes the RequestId (unique identifier of each SNMP request made by the manager)
with 0 and during the encoding process, selects a random value for the RequestId. If you wish to set a
specific RequestId, you can do it this way:
CopyC#
Pdu types with special options are notification PDUs, V2TRAP and INFORM, and Get-Bulk requests.
Get-Bulk request is available in version 2c and 3 of the SNMP. Two special options can be set for these
requests, NonRepeaters and MaxRepetitions.
NonRepeaters is a value telling the agent how many OIDs in the VbList are to be treated as a single
GetNext request.
MaxRepeaters tells the agent how many variable bindings to return in a single Pdu for each requested Oid.
Pdu pdu = new Pdu(); pdu.Type = PduType.Get; pdu.VbList.AddVb("1.3.6.1.2.1.1.1.0"); pdu.VbList.AddVb("1.3.6.1.2.1.1.2.0");
Pdu pdu = new Pdu(); pdu.Type = PduType.GetNext; pdu.RequestId = 11; // Set a custom request id pdu.VbList.AddVb("1.3.6.1.2.1.1");