-1

在网元管理API的设计中,我们经常会加入对CISCO风格CLI和Juniper风格CLI等常用CLI的支持。但是为了支持这些命令,我​​们需要知道发出的命令分解为对 MIB 表和其中对象的操作序列。例如:

CLI 命令:路由器 bgp 4711 邻居 3.3.3.3

它的 MIB 对象操作(如在 SNMP 中)将是:

bgpRmEntIndex 4711
bgpPeerLocalAddrType unica
bgpPeerLocalAddr  2.2.2.2
bgpPeerLocalPort 179
bgpPeerRemoteAddrType uni
bgpPeerRemoteAddr 3.3.3.3
bgpPeerRemotePort 179

是否有一些资源可以帮助我们理解这种细分?

4

2 回答 2

0

MIB 文件,例如这个,

http://www.icir.org/fenner/mibs/extracted/BGP4-V2-MIB-idr-00.txt

于 2012-03-10T04:35:11.383 回答
0

一般来说,在您提到的设备类型上,您会发现 CLI 操作和 MIB 变量上的 (SNMP) 操作之间没有简单的映射。CLI 针对“用户友好”配置和在线诊断进行了优化,SNMP 针对给予机器友好访问“仪器”进行了优化,主要用于监控。在大型供应商(例如 Cisco 或 Juniper)中,CLI 和 SNMP 通常由不同的专业团队开发。

对于更接近 CLI,但对编程使用 (API) 更友好的东西,请查看 IETF NETCONF 协议,该协议提供对设备配置(和状态)的基于 XML 的 RPC 读写访问。Juniper 通过其 Junoscript API 开创了这一概念,后来帮助定义了 IETF 标准,因此您会在那里找到很好的支持。思科还在他们的系统中添加了 NETCONF 功能,尤其是 IOR-XR 等较新的系统。

于 2012-03-16T09:53:55.887 回答