网络管理 第8章课件.ppt
《网络管理 第8章课件.ppt》由会员分享,可在线阅读,更多相关《网络管理 第8章课件.ppt(75页珍藏版)》请在三一办公上搜索。
1、Page 1,第8章 网络管理开发,Page 2,本章将在前文详细分析典型网络管理系统功能和使用的基础上,具体介绍Windows系统下网络管理软件开发的流程和方法。,Page 3,8.1 网络管理开发概述,通用的网络管理应用程序通常称做网络管理平台,它提供一组通用的网络管理功能,也提供实现专用管理程序的工具,支持基本的管理功能。,Page 4,无论使用什么管理平台,设计网络管理应用程序都要首先确定以下内容: 确定被管理节点的网络地址(IP地址,IPX地址,DNS主机名); 确定远程目标的端口号(UDP161,专用端口号大于1024); 确定接收陷入的端口号(UDP162,专用端口号大于1024
2、);,Page 5,确定团体名(通常为public,如果使用两个团体名,则read-only团体名为public,read-write团体名为private); 确定响应定时器等待时间间隔; 确定重复请求次数; 确定轮询时间间隔。,Page 6,8.1.1 网络管理应用程序的基本功能,网络管理应用程序的基本功能是辅助管理员监视网络,发现活动的网络设备,排除网络故障,具体包括以下内容:网络发现 管理站轮询MIB编译器和数据库MIB浏览器MIB搜索器陷入信息记录,Page 7,网络发现 网络发现通常包含两部分内容。首先是探测活动站点,这可以通过向子网中的所有站点发送ICMP报文,把收到应答的站点标
3、记为活动站点;或者读取ARP缓冲区以及本地路由器和管理主机的接口表,发现可连接的设备,然后有选择的发送ICMP报文。其次是标识SNMP管理站点,这可以通过向活动站点发送GetRequest报文,获取有关信息。,根据收集的信息可以建立网络发现数据库,视其复杂性可用Text文件、Windows注册表或实际的数据库引擎(如Microsoft ACCESS等)实现。最后还要建立网络拓扑映像,把发现的各个子网拓扑结构用图形表示出来,也可用多个窗口分别显示。,Page 8,管理站轮询。 定期轮询活动站点,可以用ICMP报文检查站点活动状态,或者利用SNMP收集管理信息。,Page 9,MIB编译器和数据库
4、 MIB模块以ASN.1编写,以ASC文件存储,经编译后转换成代理可利用的格式。MIB数据库是MIB模块的集合。简单的应用可以不使用MIB数据库,这种情况下管理员发送请求时要手工输入变量的OID、数据类型和数据值,同时要记住常用的OID,解释需要的MIB模块。复杂的应用通过MIB数据库把对象描述符变换成OID(数字形式的子标识符),确定存储的数据类型和访问方式。,Page 10,MIB浏览器 该程序的功能是用搜索目录树的方法,定位和显示MIB中的被管理对象的值,可以通过向某个MIB对象发送GetNextRequest请求,接收和显示变量绑定表中的内容。,Page 11,MIB搜索器 该程序是比
5、较简单的浏览器,用于发现被管理对象的MIB。在SNMP中没有标准的方法使得被管理节点公布其名字、版本号、MIB模块的内容及其支持的对象。MIB搜索器可以动态的发现各个站点中可以访问的对象,但只能检索存储在变量中的MIB信息,其他MIB模块数据,如对象标识符、访问模式等不能检索。因而MIB搜索器不能替代经过编译的MIB模块。,Page 12,陷入信息记录 管理应用接收到一个陷入报文后,可以在拓扑结构图上显示一个图标,或弹出一个消息窗口,甚至发出声音告警。同时把陷入数据及其时间和地址写入陷入记录文件。,Page 13,8.1.2 SNMP编程任务,SNMP是网络管理程序和SNMP代理之间的通信协议
6、,主要用来管理网络设备,到目前为止几乎所有的网络产品都要为其提供支持,以方便管理员的管理和软件开发人员的开发。 SNMP编程主要包括两大部分:网络管理程序的开发和SNMP代理软件的开发。网络管理程序主要运行在管理端,代理软件则运行在特定的网络被管设备上。,Page 14,1SNMP编程内容从客户机/服务器的角度分析,网络管理程序和SNMP代理既是客户机,同时又充当服务器的角色。作为服务器,网络管理程序监听UDP端口162,接收SNMP代理发送的陷阱消息;SNMP代理监听UDP端口161,接收网络管理程序发送的各种查询请求。作为客户机,网络管理程序可以随时向SNMP代理发送查询请求,而SNMP代
7、理则可以随时向网络管理程序发送陷阱信息。,Page 15,开发基于SNMP的网络管理程序,和开发其他基于客户机/服务器模式的网络应用程序没有本质的区别。如果程序不准备处理陷阱信息,那么网络管理程序实际上就是一个普通的客户端程序。开发主要包括以下内容:构造正确的PDU,组成SNMP报文;对发送(接收)的SNMP报文进行BER编码(解码);接收并处理陷阱信息。,BER编码处理后的SNMP报文,使用UDP进行封装,并设置服务器端(SNMP代理)IP地址和端口号161。接收到返回的应答包后,再对SNMP报文进行解码处理。,Page 16,SNMPv1的报文由SNMP版本号、共同体字符串和一个附加的PD
8、U结构组成。BER编码的对象是整个报文,而不仅仅是PDU部分。UDP报文的数据部分,就是一个经过BER编码处理的完整SNMP报文。图8-1所示是网络管理程序发送的SNMP请求报文使用的UDP报文格式。,Page 17,2SNMP变量 SNMP变量是运行期间SNMP代理维护的被管理对象实例。网络管理程序通过查询SNMP变量的值,获知被管理设备的网络运行状态;通过设置SNMP变量值,达到远程配置网络参数的目的。无论是查询还是设置操作,都离不开SNMP变量。,Page 18,表产生的SNMP变量可以看作一个多维动态数组,如表中有n个列对象,就产生一个n维动态数组。 变量标识符就是列对象实例标识符。
9、SNMP变量对网络管理程序的开发十分重要,管理过程的实质是程序对于SNMP变量的操作。,SNMP代理中有些SNMP变量是由代理所实现的MIB所决定的。MIB中的标量对象只有一个实例,因此一个标量对象在代理中只产生一个SNMP变量。 列对象的情况相对复杂。虽然列对象可以有多个对象实例,但运行期间,同一个表中列对象的实例数是相等的。由MIB中表产生的SNMP变量数要根据实际情况而定。,Page 19,3MIB表的操作 MIB表结构中的列对象往往包含着一组相关的网络信息,程序中经常需要对表进行操作,有时是获取一个列对象的所有实例,有时是获取几个列对象的所有实例。根据表的结构以及SNMP GetNex
10、t操作特点,使用GetNext完成表的检索。,只要产生的应答PDU不超过大小限制,一次操作中可以绑定多个SNMP变量,即一次取回多个列对象实例。因此,在对表进行检索操作时,有两种选择,可以在一次SNMP GetNext操作中取回所有相关列对象的实例,即一次取回一行中的所有实例;或者每次取回列对象的一个实例,循环操作直至取回所有相关的SNMP变量。,Page 20,8.1.3 基于SNMP的网络管理应用开发方法,在Windows下实现SNMP的编程,可以采用Winsock接口,在161和162端口通过UDP传送信息。 WinSNMP API函数实现了基本的SNMP功能,使用SNMP消息完成SNM
11、P实体间的通信。 使用如UCD SNMP、PowerT、SNMP+等的支持SNMP功能的第三方软件包能够大大简化Windows环境下的SNMP编程。,Page 21,8.2Windows SNMP服务,基于Windows的SNMP服务采用由管理系统、代理和其他相关组件组成的分布式体系结构,Windows计算机既可以是SNMP管理者,也可以是安装SNMP代理的被管对象。当Windows计算机发生重大事件,SNMP服务就会把状态信息发送给一个或多个管理主机。,Page 22,8.2.1 Windows SNMP服务基本概念,Windows 32系统支持并发的系统服务,一个Windows 32系统服
12、务可以在后台运行,它的开始和停止无须系统重启动。服务是一种特殊的Windows32应用软件,它通过Windows32API与Windows NT的服务控制管理器(SCM)连接,一般运行在后台,作用是监视硬件设备和其他系统进程,提供访问外围设备和操作系统辅助功能的能力。,系统服务在系统启动时或用户登录时自动开始运行,当用户退出或系统关机时停止运行。SNMP就是运行于Windows32系统之上的一个服务软件,支持SNMP管理站和代理功能,包括发送和接收陷入的能力。,Page 23,Windows 2000系统的SNMP服务包括两个应用程序。一个是SNMP代理服务程序Snmp.exe,另一个是SNM
13、P陷入服务程序Snmptrap.exe。 Snmp.exe接收SNMP请求报文,根据要求发送响应报文,能对SNMP报文进行语法分析,ASN.1表示和BER编码/译码,也能发送陷入报文,并处理与WinSock API的接口。 Snmptrap.exe监听发送给NT主机的陷入报文,然后把其中的数据传送给SNMP管理API。,Windows 95/98中没有陷入处理程序。Windows Server 2003中SNMP的内部体系结构由管理端函数库和代理端函数库两大部分实现,其中部分函数功能出现交迭,既用于管理端,也用于代理端。图8-3所示为Windows Server 2003 SNMP服务体系结构
14、。,Page 24,Page 25,Windows的SNMP代理服务是可扩展的,即允许动态地加入或减少MIB信息。这意味着程序员不必修改和重新编译代理程序,只需增加或删除一个能处理指定信息的子代理就可以了。Microsoft把这种子代理叫做扩展代理,它处理私有的MIB对象和特定的陷入条件。当SNMP代理服务接收到一个请求报文时,它就把变量绑定表的有关内容送给对应的扩展代理,扩展代理根据SNMP的规划对其私有的变量进行处理,形成响应信息。,编写扩展代理程序是开发网络管理系统的程序员的责任,程序员可根据需要随时增加或删除系统的扩展代理程序。SNMP代理服务和扩展代理以及陷入服务与Windows 3
15、2操作系统的关系如图8-4所示。,Page 26,Page 27,WinSNMP API是Microsoft为SNMP开发的应用程序接口,是一组用于构造SNMP服务和扩展代理和SNMP管理系统的库函数。图8-5所示为SNMP代理与SNMP API交互作用的详细过程。,Page 28,SNMP报文通过UDP/IP服务经WinSock API传送到SNMP代理。SNMP代理调用SNMP API对报文译码和认证检查,然后把变量信息传送给有关的扩展代理,经扩展代理处理形成响应信息后又返回给SNMP代理,再由SNMP代理装配成GetResponse报文,交给WinSock API回送给发出请求的管理站。
16、如果请求的MIB对象没有得到任何扩展代理的支持,则返回noSuchName错误。,陷入服务监视从WinSock API传来的陷入报文,然后把陷入数据通过命名管道传送给SNMP的管理API。管理API是Microsoft为开发SNMP管理应用提供的动态链接库,是SNMP API的一部分。图8-6所示为SNMP陷入、管理应用、管理API及WinSock API间的关系。,Page 29,Page 30,管理应用程序从管理API接收数据,向管理API发送管理信息,并通过管理API与WinSock通信,实现网络管理功能。,管理者向代理请求的信息包含在MIB中。MIB是一组可管理的对象,这些对象代表了与
17、网络设备有关的各种类型的信息。 Windows SNMP服务支持Internet MIB-2、LAN Manager MIB-2、DHCP MIB、HTTP MIB等。,Page 31,8.2.2Windows SNMP服务的安装 配置 测试,Windows SNMP服务的安装方法同其他服务的安装方法类似,但安装之前必须首先安装TCP/IP。在Windows 2000/XP/2003中安装和配置SNMP服务的方法一致。,Page 32,1安装SNMP服务StartControl PanelAdd Or Remove ProgramsAdd/Remove Windows ComponentsWi
18、ndows组件向导Management And Monitoring Tools,但不要选中该复选框,仅仅选择该入口即可。,单击“Details(详细)”按钮打开窗口,然后选中在“Simple Network Management Protocol(简单网络管理协议)”旁边的复选框。最后单击“OK(确定)”按钮返回“Windows组件向导”窗口。单击“Next(下一步)”按钮,如果出现了相关提示,则插入Windows的安装光盘。,Page 33,2配置SNMP服务 完成了上述步骤之后,打开服务控制面板,并找到SNMP服务,然后使用正确的通讯字符串来配置SNMP。双击该服务,就可以打开服务的属性
19、页面,如图8-9所示,用户可以在“SNMP Service的属性”对话框中完成服务设置,具体配置情况不再赘述。注意在“安全”选项卡中可设置访问团体号及主机地址,通常情况下使用系统默认的配置即可(默认情况下团体名为public)。,Page 34,Page 35,Page 36,3测试SNMP服务 SNMPUTIL(Snmptuil.exe)是微软Windows 2000资源工具中的一个实用程序,也是网络管理系统中的管理进程,可用于测试SNMP服务,也可以测试用户开发的扩展代理。SNMPUTIL是MS-DOS程序,是基于微软公司的管理API编写的,但在Windows 98系统中没有管理API,所
20、以该程序只能运行在Windows NT/2000/XP/2003及更高版本的操作系统中,具体使用语法如下。,Page 37,usage: snmputil get|getnext|walk agent community oid oid . snmputil trap 其中agent表示代理进程的IP地址,community表示团体名,oid表示MIB对象ID。使用SNMPUTIL发送GetRequest或GetNextRequest报文,可以遍历整个MIB子树,可以完成查看本地计算机系统信息、连续开机时间、联系人、用户列表、运行的进程等功能,实现对SNMP服务的测试。,Page 38,SNM
21、PUTIL还有一个trap的参数,主要用来陷阱捕捉,它可以接受代理进程上主动发来的信息。如果在命令行下面输入snmputil trap后按“Enter”键,然后用错误的团体名来访问代理进程,这时候就能收到代理进程主动发回的报告。,使用SNMPUTIL可以实现对SNMP基本服务的测试,但由于Snmptuil.exe只是一个简单的工具,没有包含Set命令,因此不能实现设置操作。此外,在Win2000/XP安装光盘中附带了一个图形界面的测试程序Snmputilg.exe,用户可以启动光盘中/support/tools/setup.exe安装此测试程序。该程序使用方法与Snmputil.exe类似,具
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 网络管理 第8章课件 网络 管理 课件

链接地址:https://www.31ppt.com/p-1549964.html