2893|5

1

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

关于snmp的getproc问题 [复制链接]

我知道lastmatch是OID与目标OID比较得出的最后一个相匹配的字符,由find_object_node()可以获得,但是如果一个get PDU中有多个variable binding,则肯定会有多个OID,而由PDU转换得出的SNMP_PKT_T结构的数据包中包含的是这写variable bindings的链表。按照VxWorks提供的SNMP_Process_Get_PDU(),在处理时分别对每个variable binding进行处理,获取其lastmatch等参数。
但是在getproc等操作中,首先有一个group_by_getproc_and_instance()操作,好像是把该Get PDU中的variable bindings链接起来,不知道是不是这样,如果是这样的话怎么理解?我认为每个variable binding都对应一个自己的lastmatch。如果我理解的不对的话,请高手指点!不胜感激!
还有一个问题,在异步操作时,在getproc等开始后,会调用SNMP_Continue,这个是怎么调用的?自动的么?还是由谁来调用它?

最新回复

1 是为了加快处理速度,才那样做的。使用SNMP_Process_Get_PDU会把变量绑定列表里的所有变量找出来,然后一个个调用对应的方法函数,调用方法函数时,如何发现某个变量与另一个变量有相同的方法函数就会同时在本方法函数处理,并对另一个变量致标志,表示已经处理了,这样就不会再重新调用此方法函数。节省了时间和空间亚。 2 自己创建任务调用,通知获取变量值完毕。  详情 回复 发表于 2009-8-18 13:27
点赞 关注

回复
举报

1

帖子

0

TA的资源

禁止访问

沙发
 
提示: 作者被禁止或删除 内容自动屏蔽
 
 

回复

1

帖子

0

TA的资源

一粒金砂(初级)

板凳
 
    我想你所说的只是协议栈自己的问题,如果你只是应用,你完全没有必要了解整个协议栈的全部代码,协议栈已经留下了应用程序的开发的接口,你所做的只是,用某种工具生成MIB库文件,当然你愿意用ASN.1语言来实现也可以,然后用MIBcompler编译该文件,生成相应的*STUB.C, MIBLEAF.H,等文件.把生成的文件按照协议标准修改,然后把自己的私有的MIB节点挂到MIB树上就可以了。

     
 
 
 

回复

1

帖子

0

TA的资源

一粒金砂(初级)

4
 
我也想知道group_by_getproc_and_instance具体功能,关于它的注释能找到的只有已下一句话:/* find all the varbinds that share the same getproc and instance */
 
 
 

回复

1

帖子

0

TA的资源

一粒金砂(初级)

5
 
是的,正是你所理解的
 
 
 

回复

1

帖子

0

TA的资源

一粒金砂(初级)

6
 
1 是为了加快处理速度,才那样做的。使用SNMP_Process_Get_PDU会把变量绑定列表里的所有变量找出来,然后一个个调用对应的方法函数,调用方法函数时,如何发现某个变量与另一个变量有相同的方法函数就会同时在本方法函数处理,并对另一个变量致标志,表示已经处理了,这样就不会再重新调用此方法函数。节省了时间和空间亚。
2 自己创建任务调用,通知获取变量值完毕。
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/8 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表