简单性是SNMP标准取得成功的主要原因。因为在大型的、多厂商产品构成的复杂网络中,管理协议的明晰是至关重要的,但同时这又是SNMP的缺陷所在——为了使协议简单易行,SNMP简化了不少功能,如:
没有提供成批存取机制,对大块数据进行存取效率很低;
没有提供足够的安全机制,安全性很差;
只在TCP/IP协议上运行,不支持别的网络协议;
没有提供manager与manager之间通信的机制,只适合集中式管理,而不利于进行分布式管理;
只适于监测网络设备,不适于监测网络本身。
针对这些问题,对它的改进工作一直在进行。如1991年11月,推出了RMON(RemoteNetworkMonitoring)MIB,加强SNMP对网络本身的管理能力。它使得SNMP不仅可管理网络设备,还能收集局域网和互联网上的数据流量等信息。1992年7月,针对SNMP缺乏安全性的弱点,又公布了S-SNMP(SecureSNMP)草案。
到1993年初,又推出了SNMPVersion2即SNMPv2(推出了SNMPv2以后,SNMP就被称为SNMPv1)。SNM-Pv2包容了以前对SNMP所做的各项改进工作,并在保持了SNMP清晰性和易于实现的特点以外,功能更强,安全性更好,具体表现为:
提供了验证机制、加密机制、时间同步机制等,安全性大大提高,
提供了一次取回大量数据的能力,效率大大提高;
增加了manager和manager之间的信息交换机制,从而支持分布式管理结构。由中间(intermediate)manager来分担主manager的任务,增加了远地站点的局部自主性。
可在多种网络协议上运行,如OSI、Appletalk和IPX等,适用多协议网络环境(但它的缺省网络协议仍是UDP)。
根据Carnegie-Mellin大学(SNMPv2标准的制定者之一)的StevenWaldbusser测试结果,SNMPv2的处理能力明显强于SNMPv1,大约是SNMPv1的15倍。
SNMPv2一共由12份协议文本组成(RFC1441-RFC1452),已被作为Internet的推荐标准予以公布。
可看出它支持分布式管理。一些站点可以既充当manager又充当agent,同时扮演两个角色。作为agent,它们接受更高一级管理站的请求命令,这些请求命令中一部分与agent本地的数据有关,这时直接应答即可;另一部分则与远地agent上的数据有关。这时agent就以manager的身份向远地agent请求数据,再将应答传给更高一级的管理站。在后一种情况下,它们起的是proxy(代理)的作用。