通用语音控制技术开发项目dwlx.pptx
SNMP网络管理模型网络管理模型TCP/IP网络管理的发展网络管理的发展n nTCP/IPTCP/IP早期,用早期,用ICMPICMP作为网络管理的工具。作为网络管理的工具。n nICMPICMP提供了从路由器向主机或主机之间传送控制信息提供了从路由器向主机或主机之间传送控制信息的方法,可用于所有支持的方法,可用于所有支持IPIP的设备。的设备。n nICMPICMP最有用的两个消息对:最有用的两个消息对:uuecho/echoreplyecho/echoreply:测试实体间能否通信。测试实体间能否通信。echoecho消息消息要求其接收者在要求其接收者在echoreplyechoreply消息中返回接收到的内容。消息中返回接收到的内容。uutimestamp/timestampreplytimestamp/timestampreply:测试网络延迟特性。测试网络延迟特性。1n nPINGPING程序程序uu由由ICMPICMP消息与消息与IPIP头选项结合开发头选项结合开发uu有多种功能:确定物理设备能否寻址,验证有多种功能:确定物理设备能否寻址,验证一个网络能够寻址,验证主机上的服务器操一个网络能够寻址,验证主机上的服务器操作。作。n n8080年代后期,当互联网发展呈指数增加时,提年代后期,当互联网发展呈指数增加时,提出了开发功能更强并易于普通网络管理人员学出了开发功能更强并易于普通网络管理人员学习和使用的标准协议的需求。习和使用的标准协议的需求。2n n简单网关监控协议简单网关监控协议(SGMP)SGMP):19871987年年1111月发布。月发布。n n3 3个有影响的通用网络管理方法:个有影响的通用网络管理方法:uu高层实体管理系统高层实体管理系统(HEMS)HEMS)uu简单网络管理协议简单网络管理协议(SNMP)SNMP):SGMPSGMP的升级版。的升级版。uuTCP/IPTCP/IP上的上的CMIP(CMOT)CMIP(CMOT):最大限度地与最大限度地与OSIOSI标准标准的的CMIPCMIP、服务以及数据库结构保持一致。服务以及数据库结构保持一致。3n n19881988年互联网络活动委员会年互联网络活动委员会(IAB)IAB)的网络管理协议开发的网络管理协议开发策略:策略:uuSNMPSNMP:近期解决方案;近期解决方案;uuCMOTCMOT:远期解决方案;远期解决方案;uu要求要求SNMPSNMP和和CMOTCMOT使用相同的使用相同的MOMO。n n实际中,实际中,SNMPSNMP与与CMOTCMOT在对象级的难于兼容:在对象级的难于兼容:n nIABIAB最最终终放放松松了了公公共共SMI/MIBSMI/MIB的的要要求求,并并允允许许SNMPSNMP独独立于立于CMOTCMOT发展。发展。4n n从对从对OSIOSI的兼容性的束缚中解脱后,的兼容性的束缚中解脱后,SNMPSNMP取得了迅速取得了迅速的发展,很快被众多的厂商设备所支持,用户也选择的发展,很快被众多的厂商设备所支持,用户也选择了了SNMPSNMP作为标准的管理协议。作为标准的管理协议。n nSNMPSNMP的进展:的进展:uu远远程程监监控控(RMON)RMON)能能力力的的开开发发,为为网网络络管管理理者者提提供供了了监控整个子网而不是各个单独设备的能力。监控整个子网而不是各个单独设备的能力。uu对基本对基本SNMPMIBSNMPMIB进行了扩充。进行了扩充。5n nSNMPv2SNMPv2:uuSNMPSNMP被用于大型网络时,存在安全和功能方面的不足。被用于大型网络时,存在安全和功能方面的不足。uu19921992年年7 7月,提出一个称为月,提出一个称为SMPSMP的的SNMPSNMP新版本,被接受为新版本,被接受为定义第二代定义第二代SNMPSNMP即即SNMPv2SNMPv2的基础。的基础。uu19931993年安全版年安全版SNMPv2SNMPv2发布。发布。uu几年试用后,几年试用后,IETFIETF决定对决定对SNMPv2SNMPv2进行修订。进行修订。uu19961996年发布了一组新的年发布了一组新的RFCRFC,SNMPv2SNMPv2的安全特性被取消。的安全特性被取消。6n nSNMPv3SNMPv3:uu19991999年年4 4月月IETFIETF提出了提出了RFC2571RFC2571RFC2576RFC2576,形成了形成了SNMPv3SNMPv3的建议。的建议。uu目前这些建议正在进行标准化。目前这些建议正在进行标准化。uu提出了提出了SNMPSNMP管理框架的一个统一的体系结构。管理框架的一个统一的体系结构。uu采用采用User-basedUser-based安全模型和安全模型和View-basedView-based访问控制模型访问控制模型提供提供SNMPSNMP网络管理的安全性。网络管理的安全性。7SNMP体系结构体系结构非对称的二级结构非对称的二级结构8n n关键元素关键元素uu管理站管理站t t一般为一个单独的设备一般为一个单独的设备t t作为与管理员的接口作为与管理员的接口uu代理代理t t配备了配备了SNMPSNMP的平台,如主机、网桥、路的平台,如主机、网桥、路由器、集线器等由器、集线器等9uuMIBMIBt t管理者和代理共享的管理者和代理共享的MOMO的集合的集合t t标准的标准的MIBMIB类由国际组织定义类由国际组织定义t tMIBMIB实例在代理处实现实例在代理处实现uu网络管理协议网络管理协议 t tSNMPmanagerandagent,UDPSNMPmanagerandagent,UDPt tGet,SetandTrapGet,SetandTrap10n n陷阱引导的轮询:陷阱引导的轮询:陷阱引导的轮询:陷阱引导的轮询:如果如果managermanager负责大量的负责大量的agentagent,而各而各agentagent又维又维护大量的对象,则护大量的对象,则managermanager难以及时地轮询所有对象。难以及时地轮询所有对象。uu在初始化时,在初始化时,managermanager轮询所有管理关键信息轮询所有管理关键信息(如接口特性、作如接口特性、作为基准的一些性能统计值,如发送和接收的分组的平均数为基准的一些性能统计值,如发送和接收的分组的平均数)的的agentagent。uu一旦建立了基准,一旦建立了基准,managermanager将降低轮询频度。而由每个将降低轮询频度。而由每个agentagent负负责报告异常事件。责报告异常事件。uumanagermanager一旦发现异常情况,可以直接轮询报告事件的一旦发现异常情况,可以直接轮询报告事件的agentagent,对事件进行诊断或获取关于异常情况的更多的信息。对事件进行诊断或获取关于异常情况的更多的信息。11ProxiesProxies三级组织模型12RMONRMONn n管理者通过管理者通过RMONRMONProbeProbe访问访问MOMOn nRMONProbeRMONProbe对原始收对原始收据进行预处理据进行预处理13SNMP管理信息模型管理信息模型n nSMI:StructureofManagementInformationSMI:StructureofManagementInformationuu为为MIBMIB定义提供一个一般的框架定义提供一个一般的框架uu规定规定MIBMIB中应用的数据类型和中应用的数据类型和MOMO的命名的命名uu追求简单性和可扩充性追求简单性和可扩充性uuMIBMIB只存储简单数据类型只存储简单数据类型t t标量标量 标量的二维表格标量的二维表格14InternetMIBiso(1)org(3)dod(6)InternetMIBiso(1)org(3)dod(6)n n对象标识符对象标识符:1.3.6.1:1.3.6.115n nInternetInternet下的下的4 4个节点个节点uudirectoryuumgmtuuexperimentaluuprivaten nmib-1mib-1与与 mib-2mib-2处于处于mgmtmgmt下的同一节点下的同一节点16SNMP的数据类型和结构的数据类型和结构RFC1155-SMIRFC1155-SMIDEFINITIONS:BEGINDEFINITIONS:BEGINEXPORTS-EVERYTHINGEXPORTS-EVERYTHINGInternet,directory,mgmt,experimental,private,enterprises,Internet,directory,mgmt,experimental,private,enterprises,OBJECT-TYPE,ObjectName,ObjectSyntax,SimpleSyntax,OBJECT-TYPE,ObjectName,ObjectSyntax,SimpleSyntax,ApplicationSyntax,NetworkAddress,IpAddress,Counter,Gauge,ApplicationSyntax,NetworkAddress,IpAddress,Counter,Gauge,TimeTicks,Opaque;TimeTicks,Opaque;-thepathtotheroot-thepathtotheroot internetinternetOBJECTIDENTIFIER:=isoorg(3)dod(6)1OBJECTIDENTIFIER:=isoorg(3)dod(6)1directorydirectoryOBJECTIDENTIFIER:=internet1OBJECTIDENTIFIER:=internet1mgmtmgmtOBJECTIDENTIFIER:=internet2OBJECTIDENTIFIER:=internet2experimentalexperimentalOBJECTIDENTIFIER:=internet3OBJECTIDENTIFIER:=internet3privateprivateOBJECTIDENTIFIER:=internet4OBJECTIDENTIFIER:=internet4enterprisesenterprisesOBJECTIDENTIFIER:=private1OBJECTIDENTIFIER:=private117编码结构编码结构n nSNMPSNMP采用基本编码规则采用基本编码规则BERBER实现实现ManagerManager和和AgentAgent之间之间的管理信息编码传输的管理信息编码传输n nSNMPSNMP采用一种特定的编码结构采用一种特定的编码结构uuTLV:Type,LengthandValueTLV:Type,LengthandValue18MIB-IIn nMIB-IIMIB-II:MIB-IMIB-I的超集,为的超集,为InternetInternet的网络管理而开发的网络管理而开发。n nMIB-IIMIB-II的的的的分组分组:uusystem:system:关于系统的总体信息关于系统的总体信息;uuinterface:interface:系统到子网接口的信息系统到子网接口的信息;uuat:at:描述描述internetinternet到到subnetsubnet的地址映射的地址映射;uuip:ip:关于系统中关于系统中IPIP的实现和运行信息的实现和运行信息;uuicmp:icmp:关于系统中关于系统中ICMPICMP的实现和运行信息的实现和运行信息;uutcp:tcp:关于系统中关于系统中TCPTCP的实现和运行信息的实现和运行信息;uuudp:udp:关于系统中关于系统中UDPUDP的实现和运行信息的实现和运行信息;uuegp:egp:关于系统中关于系统中EGPEGP的实现和运行信息的实现和运行信息;uudot3:dot3:有关每个系统接口的传输模式和访问协议的信息有关每个系统接口的传输模式和访问协议的信息;uusnmp:snmp:关于系统中关于系统中SNMPSNMP的实现和运行信息。的实现和运行信息。19n nsystemsystem组的对象组的对象ObjectSyntaxAccessDescriptionsysDescrDisplayString(SIZE(0255)RO对实体的描述,如硬件、操作系统等sysObjectIDOBJECTIDENTIFIERRO实体中包含的网络管理子系统的厂商标识sysUpTimeTimeTicksRO系统的网络管理部分本次启动以来的时间sysContactDisplayString(SIZE(0255)RW该被管节点负责人的标识和联系信息sysNameDisplayString(SIZE(0255)RW该被管节点被赋予的名称sysLocationDisplayString(SIZE(0255)RW该节点的物理地点sysServiceINERGER(0127)RO指出该节点所提供的服务的集合,7个bit对应7层服务20n ninterfacesinterfaces 组的对象组的对象ObjectSyntaxAccessDescriptionifNumberINTEGERRO网络接口的数目ifTableSEQUENCEOFifEntryNA接口条目清单ifEntrySEQUENCENA包含子网及其以下层对象的接口条目ifIndexINTEGERRO对应各个接口的唯一值ifDescrDisplayString(SIZE(0255)RO有关接口的信息,包括厂商、产品名称、硬件接口版本ifTypeINTEGERRO接口类型,根据物理或链路层协议区分ifMtuINERGERRO接口可接收或发送的最大协议数据单元的尺寸ifSpeedGaugeRO接口当前数据速率的估计值ifPhysAddressPhysAddressRO网络层之下协议层的接口地址ifAdminStatusINTEGERRW期望的接口状态(up(1),down(2),testing(3)ifOperStatusINTEGERRO当 前 的 操 作 接 口 状 态 (up(1),down(2),testing(3)ifLastChangeTimeTicksRO接口进入当前操作状态的时间21n ninterfacesinterfaces 组的对象(续)组的对象(续)ObjectSyntaxAccessDescriptionifInOctetsCounterRO接口收到的8元组的总数ifInUcastPktsCounterRO交到高层协议的子网单播的分组数ifInNUcastPktsCounterRO递交到高层协议的非单播的分组数ifInDiscardsCounterRO被丢弃的进站分组数ifInErrorsCounterRO有错的进站分组数ifInUnkownProtosCounterRO由于协议未知而被丢弃的分组数ifOutOctetsCounterRO接口发送的8元组的总数ifOutUcastPktsCounterRO发送到子网单播地址的分组总数ifOutNUcastPktsCounterRO发送到非子网单播地址的分组总数ifOutDiscardsCounterRO被丢弃的出站分组数ifOutErrorsCounterRO不能被发送的有错的分组数ifOutQLenGaugeRO输出分组队列长度ifSpecificOBJECTIDENTIFIERRO参考MIB对实现接口的媒体的定义22n naddresstranslationaddresstranslation 组的对象组的对象ObjectSyntaxAccessDescriptionatTableSEQUENCEOFAtEntryNA包含网络地址对物理地址的映射atEntrySEQUENCENA包含一个网络地址、物理地址对atIfIndexINTEGERRW表格条目的索引atPhysAddressPhysAddressRW依赖媒体的物理地址atNetAddressNetworkAddressRW对应物理地址的网络地址23n nipip 组的对象组的对象ObjectSyntaxAccessDescriptionipForwardingINTEGERRW是否作为IP网关(1/0)ipDefaultTTLINTEGERRW插入到该实体生成的数据报的IP头中Time-To-Live字段中的默认值ipInReceivesCounterRO接口收到的输入数据报的总数ipInHdrErrorsCounterRO由于IP头错被丢弃的输入数据报总数ipInAddrErrorsCounterRO由于IP地址错被丢弃的输入数据报总数ipForwDatagramsCounterRO转发的输入数据报数ipInUnknownProtosCounterRO由于协议未知被丢弃的输入数据报数ipInDiscardsCounterRO无适当理由而被丢弃的输入数据报数ipInDeliversCounterRO成功地递交给IP用户协议的输入数据报数ipOutRequestsCounterRO本地IP用户协议要求传输的IP数据报总数ipOutNoRoutesCounterRO由于未找到路由而被丢弃的IP数据报数ipReasmTimeOutINTEGERRO重组接收到的碎片可等待的最大秒数ipReasmReqdsCounterRO接收到的需要重组的IP碎片数ipReasmOKsCounterRO成功重组的IP数据报数ipRaesmFailsCounterRO由IP重组算法检测到的重组失败的数目24n nipip 组的对象(续)组的对象(续)ObjectSyntaxAccessDescriptionipFragsOkCounterRO成功拆分的IP数据报数ipFragsFailsCounterRO不能成功拆分而被丢弃的IP数据报数ipFragsCreatesCounterRO本实体产生的IP数据报碎片数ipAddrTableSEQUENCE OFIpAddrEntryNA本实体的IP地址信息(表内对象略)ipRouteTableSEQUENCE OFIpRouteEntryNAIP路由表(表内对象略)ipNetToMediaTableSEQUENCE OFIpNetToMedisEntryNA用于将IP映射到物理地址的地址转换表(表内对象略)IpRoutingDiscardsCounterRO被丢弃的路由选择条目25n nicmpicmp 组的对象组的对象 ObjectSyntaxAccessDescriptionicmpInMsgsCounterRO收到的ICMP消息的总数icmpInErrorsCounterRO收到的有错的ICMP的消息数icmpInDestUnreachsCounterRO收到的目的地不可到达的消息数icmpInTimeExcdsCounterRO收到的超时的消息数icmpInParmProbsCounterRO收到的有参数问题的消息数icmpInSrcQuenchsCounterRO收到的源有问题的消息数icmpInRedirectsCounterRO收到的重定向的消息数icmpInEchosCounterRO收到的要求echo的消息数icmpInEchoRepsCounterRO收到的应答echo的消息数icmpInTimestampsCounterRO收到的要求Timestamp的消息数icmpInTimestampRepsCounterRO收到的应答Timestamp的消息数icmpInAddrMasksCounterRO收到的要求AddressMask的消息数icmpInAddrMaskRepsCounterRO收到的应答AddressMask的消息数26n nicmpicmp 组的对象(续)组的对象(续)ObjectSyntaxAccessDescriptionicmpOutMsgsCounterRO发出的ICMP消息的总数icmpOutErrorsCounterRO发出的有错的ICMP的消息数icmpOutDestUnreachsCounterRO发出的目的地不可到达的消息数icmpOutTimeExcdsCounterRO发出的超时的消息数icmpOutParmProbsCounterRO发出的有参数问题的消息数icmpOutSrcQuenchsCounterRO发出的源有问题的消息数icmpOutRedirectsCounterRO发出的重定向的消息数icmpOutEchosCounterRO发出的要求echo的消息数icmpOutEchoRepsCounterRO发出的应答echo的消息数icmpOutTimestampsCounterRO发出的要求Timestamp的消息数icmpOutTimestampRepsCounterRO发出的应答Timestamp的消息数icmpOutAddrMasksCounterRO发出的要求AddressMask的消息数icmpOutAddrMaskRepsCounterRO发出的应答AddressMask的消息数27n ntcptcp组的对象组的对象 ObjectSyntaxAccessDescriptiontcpRtoAlgorithmINTEGERRO重传时间tcpRtoMinINTEGERRO重传时间的最小值tcpRtoMaxINTEGERRO重传时间的最大值tcpMaxConnINTEGERRO实体支持的TCP连接数的上限tcpActiveOpensCounterRO实体已经支持的主动打开的数量tcpPassiveOpensCounterRO实体已经支持的被动打开的数量tcpAttemptFailsCounterRO已经发生的试连失败的次数tcpEstabResetsCounterRO已经发生的复位的次数28n ntcptcp组的对象(续)组的对象(续)ObjectSyntaxAccessDescriptiontcpCurrEstabGaugeRO当前状态为established的TCP连接数tcpInSegsCounterRO收到的segments总数tcpOutSegsCounterRO发出的segments总数tcpRetranSegsCounterRO重传的segments总数tcpConnTableSEQUENCE OFTcpConnEntryNA包含TCP各个连接的信息(表内对象略)tcpInErrorsCounterRO收到的有错的segments的总数tcpOutRstsCounterRO发出的含有RST标志的segments数29n nudpudp 组的对象组的对象 ObjectSyntaxAccessDescriptionudpInDatagramsCounterRO递交该UDP用户的数据报的总数udpNoPortsCounterRO收到的目的端口上没有应用的数据报总数udpInErrorsCounterRO收到的无法递交的数据报数udpOutDatagramsCounterRO该实体发出的UDP数据报总数udpTableSEQUENCEOFUdpEntryNA包含UDP的用户信息udpTableSEQUENCENA某个当前UDP用户的信息udpLocalAddressIpAddressROUDP用户的本地IP地址udpLocalPortINTEGERROUDP用户的本地端口号30n negpegp 组的对象组的对象 ObjectSyntaxAccessDescriptionegpInMsgsCounterRO收到的无错的EGP消息数egpInErrorsCounterRO收到的有错的EGP消息数egpOutMsgsCounterRO本地产生的EGP消息总数egpOutErrorsCounterRO由于资源限制没有发出的本地产生的EGP消息数egpNeighTableSEQUENCEOFEgpNeighEntryNA相邻网关的EGP表(表内的对象略)egpAsINTEGERRO本EGP实体的自治系统数31简单网络管理协议简单网络管理协议(SNMP)SNMP)SNMPSNMP支持的操作支持的操作 n nGetGet:管理站从被管理站提取标量对象值。管理站从被管理站提取标量对象值。n nSetSet:管理站更新被管理站中的标量对象值。管理站更新被管理站中的标量对象值。n nTrapTrap:被管理站向管理站主动地发送一个标量对象值。被管理站向管理站主动地发送一个标量对象值。32community和安全控制和安全控制 n nSNMPSNMP网络管理的特性:网络管理的特性:uu分布式的应用,应用实体是分布式的应用,应用实体是SNMPSNMP的管理站的应用实体和被管的管理站的应用实体和被管理站的应用实体。理站的应用实体。uu一个管理站和多个被管理站之间一对多的关系。一个管理站和多个被管理站之间一对多的关系。uu一个被管理站和多个管理站之间的关系。一个被管理站和多个管理站之间的关系。n n为保证网络管理信息的安全,被管理站必须对多个管理站对本地为保证网络管理信息的安全,被管理站必须对多个管理站对本地MIBMIB的访问进行控制:的访问进行控制:uu认证服务认证服务:将对将对MIBMIB的访问限定在授权的管理站的范围内的访问限定在授权的管理站的范围内;uu访问策略访问策略:对不同的管理站给予不同的访问权限对不同的管理站给予不同的访问权限;uu代管服务代管服务:代管系统要为托管站提供认证服务和访问权限服务。代管系统要为托管站提供认证服务和访问权限服务。33n nSNMPSNMP用用communitycommunity来定义一个来定义一个agentagent和一组和一组managermanager之间的认证、之间的认证、访问控制和代管的关系,提供初步的安全能力。访问控制和代管的关系,提供初步的安全能力。n nCommunityCommunity:agentagent定义的本地概念,定义的本地概念,agentagent为每组可选的认证、访为每组可选的认证、访问控制和代管特性建立一个问控制和代管特性建立一个CommunityCommunity。n nCommunityCommunity在在agentagent中有唯一的名称,将其提供给中有唯一的名称,将其提供给CommunityCommunity内的内的所有的所有的managermanager,以便它们在以便它们在getget和和setset操作中应用。操作中应用。n n一个一个agentagent可以与多个可以与多个managermanager建立多个建立多个CommunityCommunity,同一个,同一个managermanager可以出现在不同的可以出现在不同的CommunityCommunity中。中。n n不同的不同的agentagent可能会定义相同的可能会定义相同的CommunityCommunity名。名。因此因此managermanager必须必须将将CommunityCommunity名与名与agentagent结合起来加以应用。结合起来加以应用。34n n认证服务认证服务认证服务认证服务:保证收到的消息是来自它所声称的消息源。:保证收到的消息是来自它所声称的消息源。n nSNMPSNMP的认证模式:所有由的认证模式:所有由managermanager发向发向agentagent的消息都包含的消息都包含一个一个CommunityCommunity名,这个名字发挥口令的作用。如果发送者名,这个名字发挥口令的作用。如果发送者知道这个口令,则认为消息是可信的。知道这个口令,则认为消息是可信的。n n通过这种简单的认证形式,通过这种简单的认证形式,managermanager可以对网络监测可以对网络监测(getget、trap)trap)特别是网络控制特别是网络控制(set)set)操作进行限制。操作进行限制。CommunityCommunity名被名被用于启动一个认证过程,而认证过程可以包含加密和解密用于启动一个认证过程,而认证过程可以包含加密和解密以实现更安全的认证。以实现更安全的认证。35n n访问策略访问策略访问策略访问策略(accesspolicy)accesspolicy):通过定义:通过定义communitycommunity,agentagent将对它的将对它的MIBMIB的访问限定在了一组被选择的的访问限定在了一组被选择的managermanager中。使用多个中。使用多个communitycommunity,agentagent可以为不同的可以为不同的managermanager提供不同的提供不同的MIBMIB访问控制。访问控制。36n n访问控制访问控制:uuSNMPMIBSNMPMIB视图:可以为每个视图:可以为每个communitycommunity定义不同的定义不同的MIBMIB视图。视图中的对象子集可以不在视图。视图中的对象子集可以不在MIBMIB的一个子树的一个子树之内。之内。uuSNMPSNMP访问模式:访问模式:READ-ONLYREAD-ONLY或或 READ-WRITEREAD-WRITE。为每为每个个communitycommunity定义一个访问模式。定义一个访问模式。n nMIBMIB视图和访问模式的结合被称为视图和访问模式的结合被称为SNMPcommunityprofileSNMPcommunityprofile。n n将一个将一个communitycommunity profileprofile与与agentagent定义的某个定义的某个communitycommunity联系联系起来,构成起来,构成SNMPSNMP的访问策略的访问策略。37n nProxyProxy服务服务服务服务:对于每个托管设备,:对于每个托管设备,ProxyProxy系统维护一个对它系统维护一个对它的访问策略,以此使的访问策略,以此使ProxyProxy系统知道哪些系统知道哪些MIBMIB对象可以被用对象可以被用于管理托管设备和能够用何种模式对它们进行访问。于管理托管设备和能够用何种模式对它们进行访问。38n nMIBMIB中的每个对象都有一个由其在树型结构中的位置所定义的唯中的每个对象都有一个由其在树型结构中的位置所定义的唯一的对象标识符。一的对象标识符。n n但树型结构给出的对象标识符在一些情况下只是对象类型的标识但树型结构给出的对象标识符在一些情况下只是对象类型的标识符,不能唯一地标识对象的实例,例如表格中各个条目。符,不能唯一地标识对象的实例,例如表格中各个条目。n n纵列对象:表中的对象被称为纵列对象。纵列对象标识符不能独纵列对象:表中的对象被称为纵列对象。纵列对象标识符不能独自唯一标识对象实例,由于纵列对象可能有多个实例。自唯一标识对象实例,由于纵列对象可能有多个实例。n n纵列对象实例的访问方法:纵列对象实例的访问方法:uu随机访问:利用索引对象值实现;随机访问:利用索引对象值实现;uu顺序访问:利用图书编目顺序实现。顺序访问:利用图书编目顺序实现。实例标识实例标识39n n随机访问:在定义表格时,一般包含一个特殊的纵列对象随机访问:在定义表格时,一般包含一个特殊的纵列对象INDEXINDEX,每个实例都具有不同的值,可以用来标识表中的各行。每个实例都具有不同的值,可以用来标识表中的各行。n nSNMPSNMP采用将采用将INDEXINDEX对象值连接在纵列对象标识符之后的方法来对象值连接在纵列对象标识符之后的方法来标识纵列对象的实例。标识纵列对象的实例。uu例:例:MIB-IIinterfacesMIB-IIinterfaces组中的表组中的表ifTableifTable有一个有一个ifIndexifIndex对象对象,值为值为 1 1到到 ifNumberifNumber之间的整数,对应每个接口,之间的整数,对应每个接口,ifIndexifIndex有一个唯有一个唯一的值。一的值。ifTableifTable中的纵列对象中的纵列对象ifTypeifType描述接口类型,其对象标描述接口类型,其对象标识符是:识符是:1.3.6.1.2.1.2.2.1.31.3.6.1.2.1.2.2.1.3现要标识第现要标识第2 2个接口,第个接口,第2 2个接口的个接口的ifIndexifIndex值是值是2 2,因此其标识,因此其标识符为:符为:1.3.6.1.2.1.2.2.1.3.21.3.6.1.2.1.2.2.1.3.240uu表格及行对象表格及行对象:对于表格和行对象,没有定义它们的实例标:对于表格和行对象,没有定义它们的实例标识符。这是因为表格和行不是叶子对象,因而不能由识符。这是因为表格和行不是叶子对象,因而不能由SNMPSNMP访访问。在这些对象的定义中,问。在这些对象的定义中,ACCESSACCESS特性被设为特性被设为not-accessiblenot-accessible。uu标量对象标量对象:标量对象只有一个对象实例,因此对象类型标识:标量对象只有一个对象实例,因此对象类型标识符便是它的实例的唯一标识。但为了与表格对象实例标识符符便是它的实例的唯一标识。但为了与表格对象实例标识符的约定保持一致,也为了区分对象的类型和对象实例,的约定保持一致,也为了区分对象的类型和对象实例,SNMPSNMP规定标量对象实例的标识符由其对象类型标识符加规定标量对象实例的标识符由其对象类型标识符加00组组成。成。41图书编目排序图书编目排序n n由于对象标识符是一个整数序列,如果把它们看作是书的章节编由于对象标识符是一个整数序列,如果把它们看作是书的章节编号,则对象标识符的前后顺序就有了确定的排列方法,号,则对象标识符的前后顺序就有了确定的排列方法,MIBMIB中的中的对象实例也就有了顺序标识和访问的方法。对象实例也就有了顺序标识和访问的方法。n n因为因为ManagerManager对对AgentAgent提供的提供的MIBMIB视图的构成不一定完全清楚,因视图的构成不一定完全清楚,因此,它需要一种不必提供对象名称而能访问对象的方法。在这种此,它需要一种不必提供对象名称而能访问对象的方法。在这种情况下,对象及其实例的排序就是非常重要的。利用这个排序,情况下,对象及其实例的排序就是非常重要的。利用这个排序,ManagerManager可以有效地遍历一个可以有效地遍历一个MIBMIB的结构。的结构。42SNMPSNMP消息格式消息格式n nManagerManager和和AgentAgent之间以传送之间以传送SNMPSNMP消息的形式交换信息。消息的形式交换信息。43n n以下以下4 4图分别是图分别是GetRequest-PDUGetRequest-PDU、GetNextRequest-PDUGetNextRequest-PDU、SetRequest-PDUSetRequest-PDU,ResponsePDUResponsePDU,TrapPDUTrapPDU和和Variable-bindingsVariable-bindings的格式。的格式。44n nSNMPSNMP消息的发送消息的发送uu构成构成PDUPDU;uu将构成的将构成的PDUPDU、源和目的传送地址以及一个源和目的传送地址以及一个communitycommunity名传给认证服名传给认证服务;务;uuSNMPSNMP协议实体将版本字段、协议实体将版本字段、communitycommunity名以及上一步的结果组合成名以及上一步的结果组合成为一个消息;为一个消息;uu用基本编码规则用基本编码规则(BER)BER)对这个新的对这个新的ASN.1ASN.1的对象编码,然后传给传输的对象编码,然后传给传输服务。服务。45n nSNMPSNMP消息的接收消息的接收 uu进