我即将开始一个项目,我需要通过C#创建一个SNMP代理。我从来没有使用过SNMP,所以我打算使用现有的库/ API,例如SharpSnmp或SnmpSharpNet。SharpSnmp vs SnmpSharpNet
我正在从任何有这两种api的亲身经历的人的反应中寻找答案,并且对哪一个更好,为什么有意见。 - 或者你的看法是他们是相同的区别(即你没有偏好) - 如果是这样,我也对这种反应感兴趣。
我即将开始一个项目,我需要通过C#创建一个SNMP代理。我从来没有使用过SNMP,所以我打算使用现有的库/ API,例如SharpSnmp或SnmpSharpNet。SharpSnmp vs SnmpSharpNet
我正在从任何有这两种api的亲身经历的人的反应中寻找答案,并且对哪一个更好,为什么有意见。 - 或者你的看法是他们是相同的区别(即你没有偏好) - 如果是这样,我也对这种反应感兴趣。
由于#SNMP的开发商,以及SNMP#NET观察者,我只能提供以下反馈,
#SNMP来自马尔科姆·克罗SNMP的研究项目。当我尝试改进它时,我重新设计了整个API,并希望使它成为C#/ .NET开发人员的自然选择,类似于PowerSNMP for .NET(http://www.dart.com/psnet.aspx),但不是克隆。
如果您读取主页,http://snmpsharpnet.com/node/1,SNMP#NET源自其他库,如snmp4j。所以它的API看起来也与他们相似,我个人不喜欢。
#SNMP如下测试其1天驱动开发。所有关键部分都已在其单元测试套件中进行了介绍。因此,尽管在七个主要版本中已经重构过几次,但它仍然是一个稳定的代码库。
从SNMP#NET我看不到任何单元测试套件。我不知道它是如何测试的。但它也被证明是稳定的。
#SNMP的所有修改可以在CodePlex被容易地观察到的,以及后来的谷歌代码,最后在GitHub。 https://github.com/lextm/sharpsnmplib/commits/master你几乎可以跟踪每一个变化,因为我经常登记。如果你想检查代码库的发展,#SNMP可以很容易。
SNMP#NET仅发布带有二进制文件的源代码快照。没有公共存储库。
#SNMP提供了一组命令行实用程序(类似于一些的NET-SNMP实用程序)来演示如何使用库。它还提供演示级MIB编译器,浏览器和代理。这些样本是第一次使用该API的初学者。
SNMP#NET有许多关于如何使用API的小文章,http://snmpsharpnet.com/node/6。但它没有很多大型样本。尤其是,SNMP#NET还没有MIB编译支持,也没有代理开发支持。
#SNMP已经在Mono几年前测试,后来又正式支持非Windows操作系统的单声道。我不知道SNMP#NET是否支持这一点。
更新从8开始。0版本,#SNMP开始针对移动平台(首先是Android版Mono,后来是MonoTouch)。代码库也在MIT/X11下重新授权,以避免部署问题。两个
值得注意之间
更新从8.0版本开始,#SNMP代码库是根据MIT/X11 + BSD 3条重新许可,http://sharpsnmplib.codeplex.com/wikipage?title=600012&referringTitle=KB
感谢,莱克斯李! - 优秀和有用的信息。您能否指出我可以在哪里学习如何使用#SNMP创建SNMP代理? – Jed
对于代理程序开发,您可以从http://www.lextm.com/2010/11/honeycell-drops-snmp-pipeline-and-our.html –