SNMP getbulk参数说明是什么

发布时间:2021-10-14 10:40:14 作者:柒染
来源:亿速云 阅读:295

本篇文章给大家分享的是有关SNMP getbulk参数说明是什么,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。

SNMPv2 defines the get-bulk operation, which allows a management application to retrieve a large section of a table at once. The standard get operation can attempt to retrieve
more than one MIB object at once, but message sizes are limited by the agent's capabilities. If the agent can't return all the requested responses, it returns an error message with no data. The get-bulk operation, on the other hand, tells the agent to send
as much of the response back as it can. This means that incomplete responses are possible. Two fields must be set when issuing a get-bulk command: nonrepeaters and max-repetitions. Nonrepeaters tells the get-bulk command that the first N objects can be retrieved
with a simple get-next operation. Max-repetitions tells the get-bulk command to attempt up to Mget-next operations to retrieve the remaining objects.
  Assume we're requesting three bindings: sysDescr, ifInOctets, and ifOutOctets. The total number of variable bindings that we've requested is given by the formula N + (M
* R), where N is the number of nonrepeaters (i.e., scalar objects in the request -- in this case 1, because sysDescr is the only scalar object), M is max-repetitions (in this case, we've set it arbitrarily to 3), and R is the number of nonscalar objects in
the request (in this case 2, because ifInOctets and ifOutOctets are both nonscalar). Plugging in the numbers from this example, we get 1 + (3 * 2) = 7, which is the total number of variable bindings that can be returned by this get-bulk request.
  The Net-SNMP package comes with a command for issuing get-bulk queries. If we execute this command using all the parameters previously discussed, it will look like the
following:
  $ snmpbulkget -v2c -B 1 3 linux.ora.com public sysDescr ifInOctets ifOutOctets
  system.sysDescr.0 = "Linux linux 2.2.5-15 #3 Thu May 27 19:33:18 EDT 1999 i686"
  interfaces.ifTable.ifEntry.ifInOctets.1 = 70840
  interfaces.ifTable.ifEntry.ifOutOctets.1 = 70840
  interfaces.ifTable.ifEntry.ifInOctets.2 = 143548020
  interfaces.ifTable.ifEntry.ifOutOctets.2 = 111725152
  interfaces.ifTable.ifEntry.ifInOctets.3 = 0
  interfaces.ifTable.ifEntry.ifOutOctets.3 = 0
  Since get-bulk is an SNMPv2 command, you have to tell snmpgetbulk to use an SNMPv2 PDU with the -v2c option. The nonrepeaters and max-repetitions are set with the -B 1
3 option. This sets nonrepeaters to 1 and max-repetitions to 3. Notice that the command returned seven variable bindings: one for sysDescr and three each for ifInOctets and ifOutOctets.
   
   
   
  Non-repeaters and maxRepetitions
  They are used in getBulk.
  Definition of Non-repeaters:- The Non-repeater specifies the number of variables in the variable-bindings list for which a single OID (lexicographic successor) is to be
returned.
   
  Definition of maxRepetitions :- The max-repetitions specifies the number of OIDs (lexicographic successor)to be returned for the remaining variables (total variables -
nonrepeaters)in the variable bindings list.
   
  For clearer understanding, Let us assume Nonrepeater=4, and Max-Repetitions=3;
   
  If get values with OID lists which are .1.3.6.1.2.1.11.1.0, .1.3.6.1.2.1.11.2.0 , .1.3.6.1.2.1.11.3.0, .1.3.6.1.2.1.11.4.0, .1.3.6.1.2.1.11.5.0, .1.3.6.1.2.1.11.6.0 , and
the method is getNext.
   
  NonRepeater value is 4. So the first four variable returns a single lexicographic successor.
  Request OIDs ----> Response
  .1.3.6.1.2.1.11.1.0 ---> .1.3.6.1.2.1.11.2.0 and its value
  .1.3.6.1.2.1.11.2.0 ---> .1.3.6.1.2.1.11.3.0 and its value
  1.3.6.1.2.1.11.3.0 ---> .1.3.6.1.2.1.11.4.0 and its value
  .1.3.6.1.2.1.11.4.0 ---> .1.3.6.1.2.1.11.5.0 and its value
   
  The subsequent OIDs in the OIDs list to be returned the number of max-repetitions lexicographic successor.
  Request ---> Response
  .1.3.6.1.2.1.11.5.0 --> .1.3.6.1.2.1.11.6.0, .1.3.6.1.2.1.11.7.0, .1.3.6.1.2.1.11.8.0 and its value.
   
  Request ---> Response
  .1.3.6.1.2.1.11.6.0 --> .1.3.6.1.2.1.11.7.0, .1.3.6.1.2.1.11.8.0 , .1.3.6.1.2.1.11.9.0 and its value.
   
  So the response will be,
   
  .1.3.6.1.2.1.11.2.0 and its value
  .1.3.6.1.2.1.11.3.0 and its value
  .1.3.6.1.2.1.11.4.0 and its value
  .1.3.6.1.2.1.11.5.0 and its value
  .1.3.6.1.2.1.11.6.0 and its value
  .1.3.6.1.2.1.11.7.0 and its value
  .1.3.6.1.2.1.11.7.0 and its value
  .1.3.6.1.2.1.11.8.0 and its value
  .1.3.6.1.2.1.11.8.0 and its value
  .1.3.6.1.2.1.11.9.0 and its value

以上就是SNMP getbulk参数说明是什么,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注亿速云行业资讯频道。

推荐阅读:
  1. Centos开启SNMP服务
  2. SNMP 已死 - Streaming Telemetry 流遥测技术

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

上一篇:如何通过树莓派进行公网IP变动后自动邮件通知python

下一篇:Linux下如何利用backtrace追踪函数调用堆栈以及定位段错误

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》