zoukankan      html  css  js  c++  java
  • Example: Encoded SNMP Message

    30.11 Example Encoded SNMP Message

      The encoded form of ASN.1 uses variable-length fields to represent items. In general, each field begins with a header that specifies the type of object and its length in bytes. For example, each SEQUENCE begins with an octet containing 30 (hexadecimal); the next octet specifies the number of following octets that comprise the sequence.

      Figure 30.11 contains an example SNMP message that illustrates how values are encoded into octets. The message is a get-request that specifies data item sysDescr (numeric object identifier 1.3.6.1.2.1.1.1.0).Because the example shows an actual message, it includes many details. In particular, the message contains a msgSecurityParameters section which has not been discussed above. This particular message uses the UsmSecurityParameters form of security parameters. It should be possible, however, to correlate other sections of the message with the definitions above.

      As Figure 30.11 shows, the message starts with a code for SEQUENCE which has a length of 103 octets8. The first item in the sequence is a 1-octet integer that specifies the protocol version; the value 3 indicates that this is an SNMPV3 message. Successive fields define a message ID and the maximum message size the sender can accept in a reply. Security information, including the name of the user (ComerBook) follows the message header.

      The GetRequest-PDU occupies the tail of the message. The sequence labeled ScopedPDU specifies a context in which to interpret the remainder of the message. The octet A0 specifies the operation as a get-Request. Because the high-order bit is turned on, the interpretation of the octet is context specific. That is, the hexadecimal value A0 only specifies a GetRequest-PDU when used in context; it is not a universally reserved value. Following the request octet, the length octet specifies the request is 26 octets long. The request ID is 2 octets, but each of the error-status and error-index are one octet. Finally, the sequence of pairs contains one binding, a single object identifier bound to a null value. The identifier is encoded as expected except that the fist two numeric labels are combined into a single octet.

    8Sequence items occur frequently in an SNMPmessage because SNMP uses SEQUENCE instead of conventional

    programming language constructs like arrayor struct

    Abstract from Internetworking With TCP/IP Vol I: Principles, Protocols, and Architecture Fourth Edition,

    DOUGLAS E. COMER,

    Department of Computer Sciences Purdue University, West Lafayette, IN 47907,

    PRENTICE HALL,

    Upper Saddle River, New Jersey 07458

  • 相关阅读:
    UVALive 8519 Arrangement for Contests 2017西安区域赛H 贪心+线段树优化
    UVALive 8513 lovers 2017 西安区域赛 B 贪心+multiset
    JAVA导出EXCEL——POI(转)
    Oracle导入导出——windows命令行形式
    miniUI ExcelExport导出JAVA实现
    JSONObject遍历获取键值
    wrong number of arguments
    JAVA批量修改文件名
    miniUI DataGrid编辑后事件代码示例
    oracle10g没有行列转换函数的替代方法(转)
  • 原文地址:https://www.cnblogs.com/klchang/p/5147859.html
Copyright © 2011-2022 走看看