读书频道 > 网站 > 网页设计 > 深入理解Net-SNMP
3.3.1 基础数据类型
15-09-06    下载编辑
收藏    我要投稿   

本文所属图书 > 深入理解Net-SNMP

本书是首部从实战的角度讲解Net-SNMP开发的书籍。本书从网络管理概念开始,到MIB的开发设计,最后到使用Net-SNMP开发网络管理应用,实现了由网络管理理论到实践的落地。它有以下几个特点:书中内容由项目而生,以立即去当当网订购
SMI中规定可使用的数据类型见表3-1,前四种为ASN.1中的简单类,后两种为构造类。其他ASN.1中的数据类型不可随意使用。
 
 
在SMI v2中对以上的数据类型进一步明确了范围上的限制和更新,另外还引入了BITS类型。
 
Integer32 ::=  INTEGER (-2147483648..2147483647) –- -2^31 and 2^31-1
OCTET STRING (SIZE (0..65535))
 
针对SMIv2中定义的数据类型,有以下几点说明。
 
实际上Integer32与INTEGER没有差别,不过既然明确定义了Integer32,建议使用它。在定义枚举类型时建议从1开始并连续定义,不过也可以不连续定义。枚举类型中的名称应该以小写字母开头,并且建议不超过32个字符。
 
虽然SMIv2中规定OCTET STRING数据类型可定义的字符长度最大值为65?536,不过考虑到具体的实现和互操作性问题,建议不超255个字符。
 
SMIv2中有BITS数据类型的说明:BITS用于定义非负、位枚举、整数类型,要求数值从0开始,连续分配。实际上我们在第2章中并没有见到BITS,它也确实不是ASN.1中内置的数据类型,而是在宏TEXTUAL-CONVENTION中使用ASN.1的产生式定义的伪类型(pseudo-type)。与OCTET STRING类似,也没有明确其定义的位长数的限制,考虑到具体的实现和互操作性的问题,建议位长度不超过128位。使用BITS定义的枚举类型中的名称(标签)由一个或多个字母或数字组成,且以小写字母开头,并且建议不超过32个字符,不允许使用连字符。另外,由于BITS是宏中定义的局部类型引用,作用域只在该宏中,也不可以使用IMPORTS子句导入到其他模块中使用。当有上述错误时,不同的MIB编译器可能会有些差别,甚至会忽略错误,所以请按照这里的说明去使用。
 
在SMI-I中没有引用ASN.1中的ENUMERATED、BIT STRING类型,所以不可以使用它们。本章讲述的内容虽然涉及SMIv1和SMIv2,但是如果我们需要开发自己的MIB,建议选择当前最新的版本SMIv2。使用BITS类型定义枚举值时建议从0开始,而INTEGER则应该从1开始,注意这里的差别。建议名称不超过32个字符。
点击复制链接 与好友分享!回本站首页
分享到: 更多
您对本文章有什么意见或着疑问吗?请到论坛讨论您的关注和建议是我们前行的参考和动力  
上一篇:1.3 功能
下一篇:1.5 小结
相关文章
图文推荐
JavaScript网页动画设
1.9 响应式
1.8 登陆页式
1.7 主题式
排行
热门
文章
下载
读书

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训
版权所有: 红黑联盟--致力于做最好的IT技术学习网站