免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1427 | 回复: 0
打印 上一主题 下一主题

AGENT-概述 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2009-12-30 21:10 |只看该作者 |倒序浏览

                AGENT
扩展UCD-SNMP代理
该文档描述了编写代码扩展UCD-SNMP V4代理的过程。通过本方法写的模块也适用于NET-SNMP v5的代理,尽管这些模块不能利用全新的基于句柄的辅助机制(handler-based helper mechanism)。查看在线文档来了解该机制的更多信息和示例。
我们很期待你对本文的注释和反馈,不论是你觉得有用或者相反。我们更期待你对它如何改进的建议。
以下是建议的阅读顺序:
1、概览和介绍
2、MIB文件,以及它与代理实现的关系
3、头文件
4、模块实现代码的基本结构
5、不基于表(non-table based)实现的细节
6、简单基于表实现的细节
7、更一般的基于表实现的细节
8、怎样实现可设置的变量(SET-able variables)
本文在内容上是大致完备的,但有时仍需要参考UCD发行版中的代码(特别是示例模块),你最好手头有这些文件备用。
1、编写MIB模块
介绍
UCD-SNMP代理设计为可按需添加新模块,从而增加其功能实现定制。早期CMU代码的发展之一就是可调用外部脚本,这可能是扩展代理的最简单方法。
但是,这个方法在许多情形下是不合适的,如考虑到速度、访问权限、可靠性和方法的简洁时。在这些情形下,显然的解决方法是将需要的功能用C代码实现后直接与代理一起编译来实现。近期许多在代码结构(?code structure)方面的进展使这一过程变得容易。特别的,近期新加入的工具有了mib2c。它被设计用来生成实现部分MIB树(用MIB文件描述)的C代码框架。本文档包含mib2c工具的使用方法,也详尽的描述了这些代码的需要和功能(as well as describing the requirements and functionality of the code
in more detail)。
为了实现一个新的MIB模块,需要三个文件,随后会依次涉及到。注意,考虑到具体任务的具体情况,本文不可能涉及到各种精确的细节。本文只是描述必需的代码框架,让代理的实现人员从代理内部实现的细枝末节中解放出来,而更多关注于手中具体的任务。
依照本文查看已存在模块的实现和示例可能有一些帮助,本文也会在适当时参考一些例子。但是,应当记住UCD代理支持许多不同种类的操作系统,包括实现和接口都有很大差异的系统。这反映为代码的复杂性。另外,代理逐年发展,结果也常常有一些副本和冗余的度量。(这句意思不是很清楚:Also, the agent has developed gradually over
the years, and there is often some measure of duplication or redundancy as a result.)
正如FAQ中,UCD-SNMP开发者的官方口号是“现有的实现总不让人明白,需要改进“。
本文档描述了一个理想的,直白的情形-真实的情形复杂的多-使例子模块更易读。
关于术语的说明-“模块”一词在文中多次涉及。根据上下文,有多种意义:
1、支持新的MIB。如:所需的功能的总和。这通常称为一个MIB模块
2、上述功能的一个完整的子集,作为一个单体实现。称为一个实现模块或模块
3、上述子集的组合。称为模块组
可见意义1与3同义-他们的区别在于,MIB模块意义侧重于从代理外部看,将模块视为一个无缝的整体并隐藏了内部的实现。而模块组侧重于考虑内部的实现细节,并强调对外提供的功能是由组内部的模块合作提供的。
言归正传,上面提到的三个文件是
• 一个MIB定义文件
• 一个C头文件
• 一个C实现文件
下一节介绍MIB定义文件,和它对代理实现的影响。
明天继续看第二部分。。。
               
               
               
               
               

本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u3/109209/showart_2135901.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP