文档库 最新最全的文档下载
当前位置:文档库 › 基于SNMP协议的网络系统资源监控应用

基于SNMP协议的网络系统资源监控应用

1引言

随着信息化建设的不断深入,国内不管是政府

机构还是各个企业的网络应用规模都在不断扩大,运行的业务不断增多,系统的复杂性和多样性也在提高,计算机系统的安全稳定运行已成为各项业务正常开展的前提和基础之一,而多数网络管理中,对网络中各种设备系统资源状态的监控仅仅停留在系统管理员目视、手动地监视水平,这显然已经远远不能适应现代计算机系统监控的需要。信息和网络的发展需要一套网元级监控系统实时自动地监测网络中各个系统的运行状况,并能够实现相应的报警功能。

本文给出了基于SNMP协议的对网络中的网络设备、操作系统、数据库以及网络中的辅助设备进行监控的管理系统的设计思想和实现过程。

2系统分析

在分析系统机构之前,首先简单介绍一下SNMP

协议以及网络系统资源监控中需要监控的对象。

2.1SNMP协议

简单网络管理协议(SNMP)是为网络管理服务

而定义的应用协议,SNMP实际上是指网络管理的一系列标准,包括协议、数据库定义和一系列数据对象。作为基于TCP/IP协议的网络管理协议,它工作在传输层之上,完全独立于底层的传输机制,采用“管理者-代理”

模型来监视和控制各种可管理的网络设备,利用无连接的UDP协议在管理者和代理之间进行信息的传递。

SNMP的网络管理模型由4个部分组成:

①被管节点:包括代理和被管理设备。②管理站(NMS,NetworkManagementStation):与

峰1

张燕妮1穆树林2

(1.大连医科大学计算机教研室

大连116027)

(2.山东中创软件工程股份有限公司

大连250014)

摘要针对目前国内中小型网络的网络管理需求,本文对SNMP协议框架、网管系统的体系结构及

网管应用进行分析研究,介绍了根据新的体系结构开发的系统资源监控系统,并对该系统从设计到功能实现进行了详细的论述。关键词

简单网络管理协议

资源监控

网管

基于

SNMP

协议的

网络系统资源监控应用

CHINANEWTELECOMMUNICATIONS(TechnicalEdition)

在不同的被管理节点中的代理通信,并且显示这些代理状态的中心设备。

③管理信息库(MIB,ManagementInformationBase):放被管理设备的信息。

④管理协议:用来在网络管

理工作站和代理之间交换信息

的协议。

2.2被监控资源

网络中需要监控主要有应

用服务器、数据库服务器、监控

工作站、监控对象等,如图1所

示。

①应用服务器:存放监控管

理系统的应用服务器端应用程

序。

②数据库服务器:存放监控

管理系统的数据库。

③监控工作站/监控终端:

供技术人员或业务人员设置监

控对象、显示被监控对象状态、查询监控日志用的PC机。最少一台,可以有多台,这些监控工作站通过局域网与应用服务器相连。

④监控对象:网络内运行的所有系统包括主机系统、网络设备、数据库等等,这些设备和数据库能

CHINANEWTELECOMMUNICATIONS(TechnicalEdition)

够通过局域网或广域网与应用服务器相连。

3系统结构

为了便于监控,我们参照SNMP的网络管理模型,结合需要监控的网络资源,将网络系统资源监控系统分为监控对象模块,应用服务器模块,监控工作站模块,各模块又分为多个子模块,各个模块的关系架构如图2所示,各种模块之间通过消息中间件,进行消息传送。

其中监控工作站作为系统的出口,主要负责系统的控制和浏览,主要包括控制系统模块和状态报告模块。控制系统模块包括系统配置管理模块,状态查看模块,统计报表模块和帮助模块。状态报告模块接收从应用服务器发来的状态报告信息,并进行转换、转发给控制系统模块。应用服务器模块分为通讯管理、状态检查、状态报告、监控、系统配置管理模块。监控对象主要分为应用系统服务模块、SNMP服务消息中间件服务。应用系统服务模块用来接收应用服务器发来的应用系统服务状态检查信息,进行相应的处理,并发回响应信息,必要时生成结果文件。当应用系统发生某些异常变化后,能主动向应用服务器发出状态报告信息,报告应用系统所发生的

状态变动情况。SNMP服务模块作为SNMP服务的代理,收集监控对象上各MIB库对象的信息,返回状态报告数据报或请求响应数据报。管理代理响应管理工作站的信息或者操作请求,收集监控对象上各MIB库对象的信息并以异步方式向管理工作站提供重要但未经请求的信息。各MIB库在相应的操作系统,数据库或网络设备中给出。消息中间件服务模块用来接收应用服务器发来的状态检查请求信息,进行相应的处理并发回响应信息。

4系统实现

针对网络系统数据监控的需要,设计监控系统的监控流程主要有:系统配置流程、监控工作站发起的状态查看流程等、应用服务器发起的状态查看流程。监控工作站发起的状态查看流程如下:

①监控工作站上控制系统通过GUI与用户进行交互,取得用户的状态查看请求,并将请求发送到本机消息中间件结点;

②由消息中间件通讯程序将此请求转发到应用服务器上的消息中间件结点;

③应用服务器上的监控模块从消息中间件结点中取出此请求;

CHINANEWTELECOMMUNICATIONS(TechnicalEdition)

④监控模块根据请求的类型,进行如下处理:如

果是SNMP服务请求,则将请求通过消息中间件发给应用服务器上的SNMP服务程序,由SNMP服务程

序进行报文改装,形成发送给被监控对象上SNMP服务的报文内容,并进行传输控制,取得相应状态,形成结果报文,通过消息中间件发给应用服务器上的状态报告模块。

⑤应用服务器上的状态报告模块从本机的消息

中间件中接收状态报告报文,判断状态变更情况,记录监控日志。如果是监控工作站发起的状态查看请求的应答,则通过消息中间件发给相应监控工作站上的状态报告模块。如果状态发生了需求进行报警或取消报警状态的改变,则向对此监控对象进行监控的监控工作站上的状态报告模块发出此报告。

⑥监控工作站上的状态报告模块接收到

状态报告信息,通知控制系统进行显示、报警等处理。

⑦监控工作站上的控制系统模块收到状

态报告信息后,进行显示、报警、取消报警等处理。流程示意图如图3所示。

图4显示了一台网络设备CISCOCATA-

LYST6509交换机的监控效果图。

5结束语

本文针对目前国内中小型网络的网络管理需

求,利用SNMP协议实现对网络资源的监控,本文详细介绍了网络资源监控系统的框架、网管系统的体系结构和根据新的体系结构设计出的功能。

5月15日,由文化部文化市场司主办,文化部文化市场发展中心、

中国录像总社及中国电脑教育报社联合承办的2007无线娱乐文化系列主题活动在北京国际会议中心拉开帷幕。这次由国家文化部门首次主办的无线娱乐产业活动,得到了主导中国无线娱乐业务运营的中国移动和中国联通两大移动运营商的大力支持。来自中国移动、中国联通、爱立信、索尼爱立信、爱可信传媒、乐海盛世等无线娱乐产业价值链主导企业的近千名代表参加了会议。

作为本次活动的联合协办方,中国移动、中国联通两大移动运营商纷纷展示了各自强大的无线娱乐品牌业务。尤其是在无线音乐领域,近几年,具有鲜明娱乐性、流行性和分享性色彩的无线音乐产品不断受到音乐爱好者的追捧,显现出巨大的市场潜力。自中国移动成立“无线音乐俱乐部”以来,彩铃用户与日俱增,据初步统计,仅从2003年初中国移动推出手机彩铃业务以来,目前已大概有2亿手机用户使用这项业务。专家预测,到2008年,国内无线音乐用户将达

1.14亿户,包括彩铃、IVR和WAP音乐服务等在内的无线音乐增值业务收入将达到170亿美

元。无线经济效应可见一斑!

2007无线娱乐文化主题活动在京拉开帷幕

CHINANEWTELECOMMUNICATIONS(TechnicalEdition)

如何使用SNMP监视VMware ESX的服务器参数

使用简单网络管理协议(SNMP)监视服务器性能并发送通知(叫做traps)是所有VMware 管理员最终必须掌握的一项技能。在本文中,TechTarget中国的特约虚拟化专家David Davis将解释VMware ESX与ESXi可用的不同类型的SNMP代理,并给出使用SNMP 进行监控的例子。最后,你将学习如何配置ESX SNMP代理和ESXi代理以发送SNMP traps到网络管理站(NMS)。 为什么需要为VMware ESX Server配置SNMP? SNMP用于收集如PC、服务器、网络设备等的信息。SNMP也能用于发送traps到SNMP管理站(如Dell OpenManage)。我会简短地提及如何配置traps,本文将着重介绍如何配置ESX以便收集信息。 为什么想要使用SNMP?例如,如果你下载一个新的ESX Server监控工具SolarWinds VM Monitor,首先必须启用ESX上的SNMP,这是由于SolarWinds的VM Monitor使用SNMP收集数据。由于越来越多的应用用于监控VMware ESX Server,并且许多应用都使用SNMP。我们也开始听说现有的监控应用能监视VMware ESX——如果你启用SNMP。 VMware ESX Server(而不是ESXi)带有两个SNMP代理。一个代理基于net-snmp (这是一个在互联网上很出名的Linux SNMP)。另一个代理非常简单,并且只支持traps。这与ESXi所提供的代理是相同的。在本文中,我将配置更加高级的SNMP代理,即 net-snmp。(关于如何配置小型ESX代理与ESXi代理请参见VMware的文章―在ESXi 上使用SNMP‖)。不过要注意,你不能使用我下面所提到的应用监控服务器。你只能配置ESX和ESXi以发送traps到NMS。 但是不能使用图形界面(如VMware Infrastracture Client)启用SNMP。这就是说很难使用命令行。下面我们看看如何通过使用SSH命令行和SNMP命令启用SNMP。 如何通过SSH在ESX Server里启用SNMP? 通过SSH配置SNMP是唯一的方法,而不是通过服务器的控制台。 一旦使用SSH连接SNMP到ESX Server,就能使用标准的Linux命令配置SNMP。配置(使用加密等技术的版本3)SNMP很复杂,我只介绍标准的SNMP配置。 SNMP进程在默认下不会运行,SNMP监控应用不能与ESX Server对话。 首先使用nano或vi编辑/etc/snmp/snmpd.conf文件。例如: nano /etc/snmp/snmpd/conf

SNMP(简单网络管理协议)

SNMP(Simple Network Management Protocol,简单网络管理协议) 通信线路进行管理。SNMP的目标是管理互联网Internet上众多厂家生产的软硬件平台,现在SNMP已经出到第三个版本的协议,其功能较以前已经大大地加强和改进了。说白了就是一网管系统。网络管理功能一般分为性能管理,配置管理,安全管理,计费管理和故障管理等五大管理功能。 Windows NT是纯32位操作系统,采用先进的NT核心技术。Windows NT Workstation的设计目标是工作站操作系统,适用于交互式桌面环境;Windows NT Server的设计目标是企业级的网络操作系统,提供容易管理、反应迅速的网络环境。两者在系统结构上完全一样,只是为适应不同应用环境在运行效率上做相应调整。 另一个可以采用的保护措施是在网络边界上过滤SNMP通信和请求,即在防火墙或边界路由器上,阻塞SNMP请求使用的端口。标准的SNMP服务使用161和162端口,厂商私有的实现一般使用199、391、705和1993端口。禁用这些端口通信后,外部网络访问内部网络的能力就受到了限制;另外,在内部网络的路由器上,应该编写一个ACL,只允许某个特定的可信任的SNMP管理系统操作SNMP 1.按应用层次划分为入门级服务器、工作组级服务器、部门级服务器和企业级服务器四类。 (1)入门级服务器 (2)工作组级服务器 (3)部门级服务器 (4)企业级服务器 2.按服务器的处理器架构(也就是服务器CPU所采用的指令系统)划分把服务器分为CISC(复杂指令集)架构服务器、RISC架(精简指令集)构服务器和VLIW架构服务器三种。 (1)CISC架构服务器 (2)RISC架构服务器 (3)VLIW架构服务器 3.按服务器按用途划分为通用型服务器和专用型服务器两类。 (1)通用型服务器 (2)专用型服务器 4.按服务器的机箱结构来划分,可以把服务器划分为“台式服务器”、“机架式服务器”、“机柜式服务器”和“刀片式服务器”四类。 (1)台式服务器 (2)机架式服务器 (3)机柜式服务器 (4)刀片式服务器 入门级服务器通常只使用一到两颗CPU,主要是针对基于Windows NT,NetWare等网络操作系统的用户,可以满足办公室型的中小型网络用户的文件共享、打印服务、数据处理、Internet接入及简单数据库应用的需求,也可以在小范围内完成诸如E-mail、Proxy 、DNS等服务。

Zabbix运维监控平台解决方案

Zabbix运维监控解决方案

目录 一、背景 (3) 二、目标 (3) 监控的基本内容 (4) 三、采用的软件 (4) 四、软件的特点 (5) 五、软件的优势 (5) 系统架构 (7) 监控实现方式: (8) 监控指标 (8) 规则引擎 (9)

一、背景 网站平台部署运行后会出现各种各样的故障,比如服务器CPU负载高,磁盘容量使用超过80%,内存使用超过阈值,系统进程多,tomcat服务宕机等问题都会给公司平台稳定和服务带来非常大的损失,此时需要一个相对完整的监控体系可以24小时监控您的网站,一旦网站发生异常,会有报警提醒您,如邮件,微信,电话,短信,及时避免流量损失。 Zabbix是一个企业级的开源分布式监控解决方案,它是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。 zabbix具备常见的商业监控软件所具备的功能(主机的性能监控、网络设备性能监控、数据库性能监控、FTP等通用协议监控、多种告警方式、详细的报表图表绘制)支持自动发现网络设备和服务器;支持分布式,能集中展示、管理分布式的监控点;扩展性强,server 提供通用接口,可以自己开发完善各类监控。 zabbix server可以通过SNMP,zabbix agent,ping,端口监视等方法提供对远程服务器/网络状态的监视,数据收集等功能,它可以运行在Linux,Solaris,HP-UX,AIX,Free BSD,Open BSD,OS X等平台上。 二、目标 物理范围: 组件:硬件,OS,存储,中间件,数据库,机房,网络等 维度:可用性,性能。 指标:见下。 监控的基本内容 性能数据基本CPU,磁盘,网络,内存等关系系统正常运行的基本指标。 端口状态一般交换机或网络设备,端口启动状态,流量大小,网络状态

snmp协议的分析

竭诚为您提供优质文档/双击可除 snmp协议的分析 篇一:实验三snmp协议分析 实验三snmp协议分析 一、实验目的 (1)掌握嗅探工具ethereal协议分析软件的使用方法(2)利用ethereal软件工具截snmp数据包并完成报文分析 二、实验环境 局域网,windowsserver20xx,snmputil,ethereal,superscan 三、实验步骤(0、snmp的安装配置) 1、理解应用层snmp协议工作原理; 2、使用windows平台上的snmputil.exe程序实现snmp 交互; 3、利用协议分析和抓包工具ethereal抓取分析snmp 协议报文。 四、实验内容 内容一:

1.打开ethereal软件开始抓包, 输入命令: snmputilget[目标主机ip地址]团体 名.1.3.6.1.2.1.1.2.0停止抓包。对snmp包进行过滤。(给出抓包结果截图) 2.找出一对snmp协议请求包和相对应的应答包。给出抓包结果截图。 3.对上面这对请求和应答包进行分析,根据snmp协议数据包格式填值。 请求包报文分析 应答包报文分析 内容二: 1.通过snmptuil.exe与snmp交互: 输入snmputilwalk[目标主机ip地址]团体 名.1.3.6.1.2.1.1命令列出目标主机的系统信息。 2.打开ethereal软件开始抓包,再次输入上面命令后,停止抓包。对snmp包进行过滤。给出抓包结果截图。 3.找出一对snmp协议请求包和相对应的应答包。给出抓包结果截图。 4.对上面这对请求和应答包进行分析,根据snmp协议数据包格式填值。 请求包报文分析

实验二 SNMP协议工作原理验证与分析

实验二SNMP协议工作原理验证与分析 一、实验目的 本实验的主要目的是学习捕获SNMP报文,通过分析该报文理解SNMP协议的工作过程、SNMP的报文结构、MIB-2树的结构、理解管理信息结构SMI及其规定的ASN.1。 二、实验内容 1、分析并验证SNMP协议的工作过程; 2、分析并验证SNMP协议数据单元的格式; 3、分析MIB-2树的结构; 4、分析理解管理信息结构SMI及其规定的ASN.1。 三、实验工具 数据包捕获软件Iris或Wireshark、MIB浏览器AdventNet、或基于UNIX、LINUX/FreeBSD平台的SNMP命令行工具、MIB文件。 四、实验步骤 1、分别打开软件Iris和MIB浏览器; 2、首先设置Iris中捕获报文的过滤条件,将其设置为只捕获管理站和代理之间的SNMP报文。用鼠标单击左侧“Filters”控件,在打开的对话框中分别设置Layer2,3和IP address项。其中,Layer2,3选中DoD IP 和SNMP;IP address加入代理主机和管理站主机的IP地址。“确定”保存该设置;

3、点击Iris中工具栏的start capture,开始捕获SNMP报文; 4、用MIB浏览器MibBrowser访问MIB被管对象,然后观察Iris中右侧内容面板中显示的信息。单击任一信息,右下侧将显示详细的报文数据; 5、用鼠标单击右下侧的报文数据,在右侧会有相关的解析与之对应。 五、实验报告 1、设置iris过滤器,使其只监测管理工作站和代理之间的通信。获取ip 组的ipForwarding对象值,写出管理工作站和代理之间的SNMP通信情况,验证SNMP协议的工作过程。 (1)获取ip组的ipForwarding对象值

02-Zabbix自动监控交换机

ZABBIX 自动监控华为交换机流量 1、配置交换机的snmp snmp-agent community read zabbix@123 #配置读取snmp的密码 在linux上安装net-snmp net-snmp-utils包,测试snmp访问 #snmpwalk -v 2c -c zabbix@123 14.1.8.1 1.3.6.1.2.1.2.2.1.10.2 #查看端口2的计数 iso.3.6.1.2.1.2.2.1.10.2 = Counter32: 3497833695 2、配置zabbix community变量在[管理]à[一般]à[巨集]里,配置snmp的密码变量,这样就可以调用zabbix自带的snmp模板了。 3、创建主机使用snmp监控 4、连结默认的snmp模板

OK,配置完成,zabbix就可以完成自动监控。 5、网卡监控图过一段时间后,监控项有了数据,可以查看图形啦。 5、常用snmp OID说明下面这些值可以手动连接进行获取数据: snmpwalk -v 2c -c test IP1.3.6.1.2.1.2.2.1.2 #获取端口列表及描述 snmpwalk -v 2c -c test IP1.3.6.1.2.1.2.2.1.8 #获取端口UP/DOWN 情况 snmpwalk -v 2c -c test IP1.3.6.1.2.1.2.2.1.10 #获取端口入流量(byte) snmpwalk -v 2c -c test IP1.3.6.1.2.1.2.2.1.16 #获取端口出流量(byte) snmpwalk -v 2c -c test IP1.3.6.1.4.1.9.2.1.56.0 #获取过去5 秒内的cpu load(百分比) snmpwalk -v 2c -c test IP1.3.6.1.4.1.9.2.1.57.0 #获取过去10 秒内的cpu load(百分比) snmpwalk -v 2c -c test IP 1.3.6.1.4.1.9.2.1.58.0 #获取过去15 秒内的cpu load(百分比) snmpwalk -v 2c -c test IP1.3.6.1.4.1.9.9.48.1.1.1.5 #获取内存使用情况 snmpwalk -v 2c -c test IP1.3.6.1.4.1.9.9.48.1.1.1.6 #获取内存空闲情况 这个是正确的配置方法,已开始我看了这篇添加了没有任何反应,但是过了10来分钟就有效果了

snmp报文分析

SNMP报文格式分析 报文格式 snmp简介 snmp工作原理 SNMP采用特殊的客户机/服务器模式,即代理/管理站模型。对网络的管理与维护是通过管理工作站与SNMP代理间的交互工作完成的。每个SNMP从代理负责回答SNMP管理工作站(主代理)关于MIB定义信息的各种查询。 管理站和代理端使用MIB进行接口统一,MIB定义了设备中的被管理对象。管理站和代理都实现相应的MIB对象,使得双方可以识别对方的数据,实现通信。 管理站向代理请求MIB中定义的数据,代理端识别后,将管理设备提供的相关状态或参数等数据转换成MIB定义的格式,最后将该信息返回给管理站,完成一次管理操作。 snmp报文类型 SNMP中定义了五种消息类型:Get-Request、Get-Response、 Get-Next-Request、Set-Request和Trap 。 1.Get-Request 、Get-Next-Request与Get-Response SNMP 管理站用Get-Request消息从拥有SNMP代理的网络设备中检索信息,而SNMP代理则用Get-Response消息响应。Get-Next- Request用于和 Get-Request组合起来查询特定的表对象中的列元素。 2.Set-Request SNMP管理站用Set-Request 可以对网络设备进行远程配置(包括设备名、设备属性、删除设备或使某一个设备属性有效/无效等)。 3.Trap SNMP代理使用Trap向SNMP管理站发送非请求消息,一般用于描述某一事件的发生,如接口UP/DOWN,IP地址更改等。

上面五种消息中Get-Request、Get-Next-Request和Set-Request是由管理站发送到代理侧的161端口的;后面两种Get-Response和Trap 是由代理进程发给管理进程的,其中Trap消息被发送到管理进程的162端口,所有数据都是走UDP封装。 snmp报文格式图 SNMP报文的形式大致如下图所示。 snmp报文编码格式 SNMP(简单网络管理协议)是目前在计算机网络中用得最广泛的网络管理协议,它使用(Abstract Syntax Notation One抽象语法表示法.1)来定义SNMP报文格式和MIB(Management Information Base管理信息库)变量的名称。 是一种描述数据和数据特征的正式语言,它和数据的存储及编码无关。根据标准定义,数据类型分为: a.简单数据类型: boolean布尔值

服务器状态监控之snmp

服务器状态监控之snmp&ipmi 一、ipmi 1、简介 IPMI(Intelligent Platform Management Interface)即智能平台管理接口是使硬件管理具备“智能化”的新一代通用接口标准 开源的免费标准、跨不同操作系统 监视服务器的物理健康特征,如温度、电压、风扇工作状态、电源供应及机箱入侵等 核心部件:BMC(Baseboard Management Controller),一种嵌入式微控制器,整个平台管理的大脑, ipmi所有功能都是通过BMC发送命令来完成,BMC接受并在系统事件日志中记录事件消息,维护描述系统中传感器情况的传感器数据,支持远程访问 BMC具有以下功能: 1.通过系统的串行端口进行访问 2. 故障日志记录和SNMP 警报发送 3.访问系统事件日志(System Event Log ,SEL) 和传感器状况 4.控制包括开机和关机 5.独立于系统电源或工作状态的支持 6.用于系统设置、基于文本公用程序和操作系统控制台的文本控制台重定向 基于BMC,最大优势:独立于CPU BIOS和OS,无论是开机还是关机状态下,接通电源就可以实现对服务器的监控 2、使用ipmi的先决条件

(1)服务器硬件本身提供对ipmi的支持 目前惠普、戴尔和NEC 等大多数厂商的服务器都支持IPMI 2.0,但并不是所有服务器都支持,所以应该先通过产品手册或在BIOS 中确定服务器是否支持ipmi,也就是说服务器在主板上要具有BMC 等嵌入式的管理微控制器。 (2)操作系统提供相应的ipmi驱动 通过操作系统监控服务器自身的ipmi 信息时需要系统内核提供相应的支持,linux 系统通过内核对OpenIPMI(ipmi 驱动)的支持来提供对ipmi 的系统接口。在使用驱动之前,请先启动该驱动: service ipmi start 或者启动模块: modprobe ipmi_msghandler modprobe ipmi_devintf modprobe ipmi_si modprobe ipmi_poweroff modprobe ipmi_watchdog (3)ipmi管理工具 选择的是Linux 下的命令行方式的ipmi 平台管理工具ipmitool,开源的还有很多,如:ipmiutil ipmitool通过OpenIPMI接口来访问BMC,实现对服务器的两种管理方式:(1)通过OS 监控本地服务器;(2)通过网络监控远程服务器 本地服务管理:系统结构 监控本地命令格式:ipmitool -I open command,其中-I Open command有以下项:

Zabbix监控平台(三)生产环境案例

一,Zabbix生产环境监测案例概述 1.1 项目规划 ?主机分组 o交换机 o Nginx o Tomcat o MySQL o Apache o PHP-fpm o redis(也有状态页,自己研究) o memcache(也有状态页,自己研究) ?监控对象识别: o使用SNMP监控交换(监控交换机或路由器) o使用IPMI监控服务器硬件 o使用Agent监控服务器(监控操作系统和软件服务) o使用JMX监控JAVA(监控tomcat等java服务) o监控MySQL o监控Web状态

o监控Nginx状态 o监控Apache状态 o监控Tomcat状态 1.2 SNMP监控流程(监控交换机或路由器) 1.交换机上开启snmp 2.在zabbix上添加监控(设置SNMP interfaces) 3.关联监控模版 1.3 IPMI(监控服务器硬件) 建议使用自定义item监控服务器硬件,在本地执行ipmitool命令来获取数据(虚拟机上没有远程控制卡,所以无法测试) 可以在本地执行ipmitool命令获取数据(命令需要安装) 1.4 JMX(使用Zabbix Java Gateway代理) 用来获取java数据,本次的实战内容 1.5 实战监控Nginx,Apache,MySQL,PHP-fpm 今天的实战内容,注意总结过程 1.6 Zabbix的Web监测 今天的实战内容,注意总结过程

所有zabbix模板包和源码包 链接:https://https://www.wendangku.net/doc/a83400105.html,/s/1aezlSsXlfn5A-_CJnTUUhw 提取码:ndhs ---模板包 链接:https://https://www.wendangku.net/doc/a83400105.html,/s/1YwwtmnWATM9DxAQmZCDG4Q 提取码:0nmk ---源码包 二,Zabbix监控MySQL数据库操作实战 我们需要部署一个MySQL服务和一个zabbix-agentd客户端 2.1 编写监控mysql脚本 在nginx服务器(192.168.200.69)上安装一个MySQL 下面是监控mysql状态的一个shell脚本,内容如下: mkdir -p /server/scripts cd /server/scripts vim check_mysql.sh cat check_mysql.sh 1.#!/bin/bash 2.# author:Mr.sun 3. 4.MySQL_USER="root" 5.MySQL_PWD="linyaonie" 6.MySQL_HOST="12 7.0.0.1" 7.MySQL_PORT="3306" 8. 9.MySQL_CONN="/usr/local/mysql/bin/mysqladmin -u${MySQL_USER} -h${MySQL_HOST} -P${MySQL_PORT} -p${MySQL_PWD}" 10.if [ $# -ne "1" ];then

简单网络管理协议(SNMP)学习理解

简单网络管理协议学习理解 1.SNMP网络管理协议综述 SNMP(Simple Network Management Protocol)是被广泛接受并投入使用的工业标准,它是由SGMP即简单网关监控协议发展以来的。它的目标是保证管理信息在任意两点中传送,便于网络管理员在网络上的任何节点检索信息,进行修改,寻找故障;完成故障诊断,容量规划和报告生成。它采用轮询机制,提供最基本的功能集。最适合小型、快速、低价格的环境使用。它只要求无证实的传输层协议UDP,受到许多产品的广泛支持。 2.1 管理信息 经由SNMP协议传输的所有管理倍息都表现为非聚集的对象类型。这些对象类型被收集到一个或多个管理信息库[MIB]中并且对象类型按照管理信息结构和标识(SMI)定义。简单网络管理协议策l版的sM[于1990年5月定义在一篇题为《基于因特网的了TCP/IP管理信息结构和标识》的RFC中。这一RFC要求所有的管理信息库数据和信息必须根据ISO 8824标准《抽象句法表示法1规范》(ASN.1)编码。按照ASN.1表示所有信息和对象的目的在于方便向OSI的网络管理协议迁移而无需重新定义现已存在的所有对象和MIB。 SMI为每一对象类型定义以下成分: ①名字; ②句法; ②编码说明。 注意:一个对象类型的名字明确地代表一个对象,称为对象标识符。不得分配标识符0给对象类型作为其名字的一部分。为便于阅读,在标准文档中对象标识符旁边包含对这一对象的描述。对象标识符是按照在OSI MIB树中建立的严格分层空间构造的,对象标识符总是一个唯一的从树根开始描述MIB树的整数序列。对象标识符和它的文字描述的组合称为标号。 2.1.1 管理树 SMI明确要求所有被管理的信息和数据都要由管理树来标识。这棵管理树来源于

snmp报文分析

SNMP报文格式分析 1.SNMP报文格式 1.1 snmp简介 1.1.1 snmp工作原理 SNMP采用特殊的客户机/服务器模式,即代理/管理站模型。对网络的管理与维护是通过管理工作站与SNMP代理间的交互工作完成的。每个SNMP从代理负责回答SNMP管理工作站(主代理)关于MIB定义信息的各种查询。 管理站和代理端使用MIB进行接口统一,MIB定义了设备中的被管理对象。管理站和代理都实现相应的MIB对象,使得双方可以识别对方的数据,实现通信。 管理站向代理请求MIB中定义的数据,代理端识别后,将管理设备提供的相关状态或参数等数据转换成MIB定义的格式,最后将该信息返回给管理站,完成一次管理操作。 1.1.2 snmp报文类型 SNMP中定义了五种消息类型:Get-Request、Get-Response、 Get-Next-Request、Set-Request和Trap 。 1.Get-Request 、Get-Next-Request与Get-Response

SNMP 管理站用Get-Request消息从拥有SNMP代理的网络设备中检索信息,而SNMP代理则用Get-Response消息响应。Get-Next- Request用于和Get-Request组合起来查询特定的表对象中的列元素。 2.Set-Request SNMP管理站用Set-Request 可以对网络设备进行远程配置(包括设备名、设备属性、删除设备或使某一个设备属性有效/无效等)。 3.Trap SNMP代理使用Trap向SNMP管理站发送非请求消息,一般用于描述某一事件的发生,如接口UP/DOWN,IP地址更改等。 上面五种消息中Get-Request、Get-Next-Request和Set-Request是由管理站发送到代理侧的161端口的;后面两种Get-Response和Trap 是由代理进程发给管理进程的,其中Trap消息被发送到管理进程的162端口,所有数据都是走UDP封装。 1.1.3 snmp报文格式图 SNMP报文的形式大致如下图所示。

zabbix监控系统的搭建

最近在实验室搭建了一套zabbix系统,来对实验室的硬件资源,以及软件资源进行监控,zabbix由两部分组成:zabbix server与可选组件zabbix agent,zabbix server可以通过SNMP,zabbix agent,ping,端口监视等方法提供对远程服务器/网络状态的监控,数据收集等功能。可以对包括:CPU负荷、内存使用、磁盘使用、网络状况、端口监视、日志监视等功能进行监控,同时也可以对vmware,java,数据库,weblogic 等系统进行监控。 zabbix支持多种网络方式下的监控,可通过分布式的方式部署和安装监控代理,整个结构如下图所示: Zabbix搭建: 1.准备环境 搭建环境:centos6.5_x86_64 zabbix2.2.2 安装centos6.5系统 (1)关闭防火墙: #service iptables stop #chkconfig iptables off (2)关闭selinux vi /etc/selinux/config 修改SELINUX的值为disabled //重启后才能生效 执行setenforce 0 立即关闭selinux (3)配置yum源 (4)修改主机名 vi /etc/sysconfig/network 修改HOSTNAME=zabbix 2.安装server端 (1)安装开发包以及软件依赖包 yum -y groupinstall "Development Tools" yum -y install httpd mysql mysql-server php php-mysql php-common php-mbstring php-gd php-odbc php-pear curl curl-devel net-snmp net-snmp-devel perl-DBI php-xml ntpdate php-bcmath (2)创建服务所需的用户和用户组 groupadd -g 201 zabbix useradd -g zabbix -u 201 -m zabbix (3)启动mysql,并创建zabbix服务器,为zabbix用户开启用户权限 service mysqld start

服务器运行状态监控系统

系统目标 本系统的主要功能是对各种服务器进行实时监控,基于Windows 系统(包括Windows XP/2003/2008),采用C/S模式,使用VC6.0开发。其中,Client客户端安装在受监控的服务器上,Server服务器端安装在网管人员的PC机上。网管人员可以随时通过Server端获知任意一台受监控服务器的运行状态,并在服务器出现异常的情况下(如:服务器意外down机、存储空间不足、CPU利用率过高等),及时的收到Server端的短信报警信息。 2.1、Client端主要功能 (1) 采集服务器的各种性能指标数据,并发送到Server端,使网络管理员能实时查看服务器的状态。主要包括:CPU使用率、内存使用率、进程数量监控、进程运行状况监控等。 (2) 采集服务器的相关信息,并保存在服务器的日志文件中,供网络管理员进行定期的数据分析。主要包括:重点分区文件的变动信息、容量大小信息、服务器重新启动信息等。 (3) 服务器进程信息的监测。主要包括进程列表的实时扫描、黑名单监测和白名单监测。其中,黑名单监测是指对非正常进程的监测(如病毒进程),当发现监测服务器上运行着这类非正常进程时,便会向Server端发送告警信息,并自动关闭进程。白名单是指对服务器上守护进程的监控,当发现服务器守护进程没有正常运行时,便会

向Server端发送告警信息,并自动重新启动进程。 (4) 日志文件监控。此项功能实现对服务器日志文件所占存储空间的监控。当监控的日志文件大小超过其预设阀值时,Client端便会向Server端发送告警信息,通知网络管理人员进行及时处理。 (5) Web服务器监控。对WEB服务器的实时监控,当发现受监控的Web服务器不能正常提供服务时,自动重新启动该服务,使其能够正常运行,并将WEB服务器发生问题的时间和处理信息写入日志文件,以供网络管理人员进行分析。主要提供对Tomcat、IIS(6.0)等Web 服务器的监控。 (6) 数据库服务器监控。对服务器上运行的数据库服务器的实时监控,当发现受监控的数据库服务不能正常提供服务时,自动重新启动该服务,以使其能够运行正常,并将问题发生时间和处理信息写入日志文件,以供网络管理人员进行分析。主要提供对SQL Server、Oracle等数据库的监控。 (7) 盘符容量监控。选定某一监控盘符后,设置其容量大小,当容量不足时,向Server端发送报警信息。 2.2、Server端主要功能 Server端的主要功能是接收Client端发送的数据,并根据设置阈值在这些海量数据中筛选出异常数据向网络管理员进行告警。 (1) 参数设置:对一些基本参数进行设置,保存设置后,Server 端按照参数的设定范围对接收的数据进行分析。主要包括:

简单网络管理协议SNMP

SNMP 1概述 (1) 2SNMP的工作原理 (1) 2.1网络管理模型 (1) 2.2网络管理协议结构 (2) 2.3网络管理服务 (3) 2.4委托代理 (4) 3管理信息结构SMI (4) 3.1ASN.1 (4) 3.2文本约定 (5) 3.3对象定义 (6) 3.4T RAP定义 (6) 3.5对象标志符 (7) 3.6表对象的定义 (8) 3.7对象和对象实例的区别 (10) 3.8OID的字典序 (10) 4协议数据单元(PDU--PROTOCOL DATA UNIT) (10) 4.1SNMP报文格式 (10) 4.2SNMP报文类型 (11) 4.3SNMP V2基本的PDU格式 (12) 4.4SNMP消息的生成 (13) 4.5SNMP消息的接受和处理 (13) 5SNMP协议操作 (15) 5.1G ET R EQUES T (15) 5.1.1GetRequest—PDU报文格式 (15) 5.1.2SNMPv2对GetRequest-PDU的处理(参考RFC1905) (15) 5.1.3SNMPv1对GetRequest-PDU的处理(参考RFC1157) (16) 5.2G ET N EXT R EQUEST—PDU (16) 5.2.1GetNextRequest报文格式 (17) 5.2.2SNMPv2对GeNextRequest-PDU的处理(参考RFC1905) (17)

5.2.3SNMPv1对GeNextRequest-PDU的处理(参考RFC1157) (18) 5.3R ESPONSE-PDU (18) 5.3.1Response报文格式 (18) 5.3.2SNMPv2对Response-PDU的处理(参考RFC1905) (20) 5.3.3SNMPv1对响应报文GetResponse的处理(参考RFC1157) (20) 5.4S ET R EQUES T-PDU (20) 5.4.1SetRequest报文格式 (20) 5.4.2SNMPv2实体对SetRequest报文的处理(参考RFC1905) (21) 5.4.3SNMPv1对SetRequest报文的处理(参考RFC1157) (22) 5.5G ET B ULK R EQUES T-PDU (23) 5.5.1GetBulkRequest-PDU报文格式 (23) 5.5.2SNMPv2对GetBulkRequest-PDU报文的处理(参考RFC1905) (24) 5.6I NFORM R EQUES T-PDU (25) 5.6.1InformRequest-PDU的格式 (25) 5.6.2SNMPv2对InformRequest-PDU的处理(参考RFC1905) (26) 5.7T RAP-PDU (26) 5.7.1SNMPv1的Trap (26) 5.7.2SNMPv2的SNMPv2-Trap-PDU (28) 6SNMP的安全控制 (29) 6.1SNMP V2-基于共同体的管理框架 (29) 6.2SNMP V3的安全策略 (30)

Zabbix运维监控平台解决方案

Z a b b i x运维监控平台 解决方案 集团企业公司编码:(LL3698-KKI1269-TM2483-LUI12689-ITT289-

Zabbix运维监控解决方案 目录 一、背景 网站平台部署运行后会出现各种各样的故障,比如服务器CPU负载高,磁盘容量使用超过80%,内存使用超过阈值,系统进程多,tomcat 服务宕机等问题都会给公司平台稳定和服务带来非常大的损失,此时需要一个相对完整的监控体系可以24小时监控您的网站,一旦网站发生异常,会有报警提醒您,如邮件,微信,电话,短信,及时避免流量损失。 Zabbix是一个企业级的开源分布式监控解决方案,它是一个基于WEB 界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。

zabbix具备常见的商业监控软件所具备的功能(主机的性能监控、网络设备性能监控、数据库性能监控、FTP等通用协议监控、多种告警方式、详细的报表图表绘制)支持自动发现网络设备和服务器;支持分布式,能集中展示、管理分布式的监控点;扩展性强,server提供通用接口,可以自己开发完善各类监控。 zabbixserver可以通过SNMP,zabbixagent,ping,端口监视等方法提供对远程服务器/网络状态的监视,数据收集等功能,它可以运行在Linux,Solaris,HP-UX,AIX,FreeBSD,OpenBSD,OSX等平台上。 二、目标 物理范围: 组件:硬件,OS,存储,中间件,数据库,机房,网络等 维度:可用性,性能。 指标:见下。 监控的基本内容 性能数据基本CPU,磁盘,网络,内存等关系系统正常运行的基本指标。端口状态一般交换机或网络设备,端口启动状态,流量大小,网络状态日志内容日志内容监控,系统日志,应用程序日志,错误信息。 系统状态DB,OS,中间件等的系统状态 硬件状态硬盘状态,风扇,电池,内存,主板等系统状态

用SNMP协议实现系统监控

用SNMP协议实现系统监控 作者王基立系统监测的基本概念及分类: a.系统监测的概述: 如何对现有IT架构的整体以及细节运行情况进行科学、系统和高效地监测是目前各企业运维和管理部门一项非常重要的工作内容。随着当前企业IT环境中服务器、应用数量和类型的不断地增加,运维部门需要通过科学和高效的手段尽可能详细、实时和准确地获取整个架构中具体到每个服务器、每个系统甚至每个应用程序工作的细节,并且会对所获取到的原始数据进行分析、绘图和统计,以便为后续的性能调优、建构调整以及各类型排错建立参考依据。 常见的监测对象基本上涵盖了IT运行环境的方方面面,包括机房环境、硬件、网络等,而每一个方面所涉及的监测项目则种类繁多。例如对硬件环境的监测中,所涵盖内容就会包括服务器的工作温度、风扇转速等指标;针对系统环境的监测,将包括基本的操作系统运行环境,如CPU、内存、I/O、存储空间使用状况、网络吞吐量、进程数量和状态等情况;针对具体的应用情况,涉及监测的内容可能会更多,而且也会有很多专门针对应用的指标。 除了监测的内容需要尽量全面之外,同时我们还希望所使用的监测解决方案能够灵活和具备更多扩展功能。例如有效地支持IT架构的变化和扩展,在监测量增加的情况下能够尽可能少地占用资源,拥有强大的事件通知机制等等。 今天本文所涉及的内容,主要是针对操作系统以及软件环境的监测,而且尤其是针对Linux操作系统的运行情况监测。尽管目前有很多的商用软件以及解决方案来实现相关的功能,但是实际上我们也有很多开源的解决方案可以起到相同的作用,而且效果也非常不错。下面的内容中,我们将会对这些解决方案的实现方法进行详细描述。 b.基于Linux上系统监测的基本原理以及种类: 在Linux系统上的系统监测所采用的方式基本上有两种: 第一种,通过SNMP协议结合数据采集软件来实现: 这种方法所涉及的架构一般包括两部分,其中一部分是被监测服务器,另外一部分则是网管工作站。至于实现方法具体来说就是在Linux服务器上启动 SNMP简

网络管理实验SNMP报文解析实验报告

网络管理实验————SNMP报文解析 2010-6-1 4.trap操作: Sniffer软件截获到的trap报文如下图所示:

30 2e SNMP报文是ASN.1的SEQUENCE 类型,报文长度是46个八位组。 02 01 00:版本号为integer类型,取值为0,表示snmpv1。 04 06 70 75 62 6c 69 63:团体名为octet string类型,值为“public” a4 21: 表示pdu类型为trap,长度为33个八位组。 06 0c 2b 06 01 04 01 82 37 01 01 03 01 02:制造商标识,类型为object identifier。 值为1.3.6.1.4.1.311.1.1.3.1.2。 40 04 c0 a8 01 3b:代理的IP地址,类型OCTECT STRING,值为192.168.1.59; 02 01 04:一般陷阱,类型为INTEGER,值为4,代表这是由“authentication Failure (身份验证失败)”引发的TRAP; 02 01 00:特殊陷阱,类型为INTEGER,值为0(当一般陷阱取值不是6时); 43 03 06 63 29:时间戳,类型为TIME TICKS,值为418601 (百分之一秒),即系 统在运行到大约第70分钟时,代理发出了此TRAP; 30 00变量绑定表为空。 5.SNMPv2 GetBulk操作: Sniffer软件截获到的getbulkrequest报文如下图所示:

对该报文的分析如下 : 30 27 SNMP 报文是ASN.1的SEQUENCE 类型,报文长度为46个八位组;

网络管理与维护课内实验报告3-SNMP报文分析

一. 实验目的 1.掌握BER基本编码规则; 2. 利用各种网络管理工具,完成相关SNMP操作,分析并掌握SNMP PDU结构,理解SNMP协议的工作原理。 二. 实验所需设备及材料 1.局域网环境中的计算机2台(1台代理,1台管理站),2台计算机已启动SNMP服务,作为管理站的计算机安装SNMPc软件和snmputil工具; 2.在某一台计算机安装网络嗅探软件。 三. 实验内容 参考实验指导书P324页5.5.2节。如图5-111所示,首先将代理一方的只读团体名、读/写团体名、trap 团体名全部修改为你的8位学号(如何添加团体名,请参考第一次实验的内容)。然后完成以下实验: 1.完成get操作,抓取get 请求报文和其响应报文(注意两个报文“request-id”一致),截图(需要截取哪些信息?请参考P327图5-114),然后对应截图分别完成两个报文的BER编码分析。 2.完成getnext操作,抓取getnext请求报文和其响应报文(注意两个报文“request-id”一致),截图,然后对应截图完成两个报文的BER编码分析。 3.完成set操作,抓取set 请求报文和其响应报文(注意两个报文“request-id”一致),截图,然后对应截图完成两个报文的BER编码分析。 4.构造一个trap,抓取trap报文,截图,然后对应截图完成该报文的BER编码分析。 5.完成SNMPv2 GetBulk操作,抓取GetBulk请求报文和响应报文(注意两个报文“request-id”一致),截图,然后对应截图完成两个报文的BER编码分析。

四.实验过程 1. get操作分析 ●说明如何产生Get操作? 答:管理站检索管理对象的管理信息库中标量对象的值,就产生一个Get操作。 ●Get请求报文抓包截图与BER分析 30 36 ;报文是SEQUENCE类型,长度是54个8位组 02 01 00 ;SNMP版本号,类型为Integer,值为版本号-1 04 08 30 34 31 33 32 30 32 31 ;团体名,类型为OETCTString值为”04132021” A0 27 ;A0表示为GET操作,其后PDU长39个8位组 02 01 01 ;request-id,类型为Integer,值为1 02 01 00 ;错误状态,类型为Integer,值为0 02 01 00 ;错误索引,类型为Integer,值为0 30 1C ;变量绑定表,类型为SEQUENCEOF,长度为28 30 0C ;第一个变量绑定,类型为SEQUENCE,长度为12 06 08 2B 06 01 02 01 01 03 00 ;变量为OID类型,值为.1.3.6.1.2.1.1.3.0 05 00 ;变量值为NULL 30 0C ;第二个变量绑定,类型为SEQUENCE,长度为12 06 08 2B 06 01 02 01 02 01 00 ;变量为OID类型,值为.1.3.6.1.2.1.2.1.0 05 00 ;变量值为NULL

服务器监控系统实现方案

2019.03 随着信息化建设的不断深入,各单位部署的服务器数量越来越多,导致系统管理和运维的难度也越来越大。对服务器的状态进行实时监控,及时发现和处理问题,是解决此难题的一个行之有效的方法。然而,目前市面上真正好用、能满足实际运维需要的监控软件却极少,不少单位在试用了一些监控软件之后,不得不选择自行开发。 1服务器监控的必要性 服务器是网络中能对其他机器提供某些服务的计算 机系统,它存储、处理网络上80%的数据和信息,被称为网络的灵魂[1]。由于服务器需要长时间不间断地工作,因此对稳定性和可靠性有很高要求。计算机的可靠性可用MTTF (Mean Time To Failure ,平均无故障时间)来度量,平均无故障时间越长系统的可靠性就越高。对用户而言,高可靠性也就意味着高可用性,意味着可以随时随地从系统获得高质量的服务。 尽管服务器采用了大量的软、硬件技术,但其稳定性和可靠性离人们的期望还是有不小的距离,服务器响应变慢、服务中断的现象仍时有发生。尽管提高软、硬件的可靠性是软、硬件厂商需要考虑的事情,但是对最终用户来说,对服务器的软、硬件进行实时监控,及时发现和处理问题,无疑能大大提高系统的可用性。 2服务器监控软件的现状 对服务器进行监控,显然用软件方式要比人工方式 更加高效和快捷。与网络管理类似,服务器管理也分为带内(in -band )管理和带外(ou t-of-band )管理[2],带 内管理的控制信息与数据信息使用同一物理通道进行传送,而带外管理则是使用不同的物理通道。带外管理可 以在操作系统失去响应的情况下采集服务器硬件数据(CPU 和主板的温度、电压、风扇转速以及电源、功耗等),甚至在电源关闭的情况下进行开机、重启等维护操作,但并不能监控带内的应用情况。带内管理可以实现对带内应用情况的监控,也可以通过I PMI (I ntelli - gent Platform Management Interface ,智能平台管理接口)获取带外硬件信息,但是在网络中断时业务和管理都无法正常进行。 有些品牌的服务器厂商提供基于带外管理的服务器管理软件(属增值服务,需另外购买),但不同厂商之间存在一定的兼容性问题。目前大多数的服务器监控软件还是基于带内管理的。 除了I PMI 以外,常用的监控技术手段还有:JMX (Java Management Extensions ,Java 管理扩展)、S SH (Secure Shell)、S NMP (S imple Network Management Pro -tocol ,简单网络管理协议)、WMI (Win dows Manage -ment Instrumentation ,Win dows 管理规范)和WBEM (Web -Based Enterprise Management ,基于Web 的企业管理)。其中JMX 适用于监控Java 应用;S SH 适用于 Lin ux 系统,用于Win dows 时需结合WMI 使用;S NMP 有明显的安全隐患[3],对网络性能有不小影响;WMI 只能用于Win dows 系统,也存在明显的安全问题[4]; WBEM 则限于Web 应用。 作者简介:徐波(1971-),男,高级工程师,硕士,研究方向:医疗信息化、算法理论、机房运维;王建英(1985-),女,工程师,硕士,研究方向:医疗信息化、 I T 项目管理。 收稿日期:2018-12-11 服务器监控系统实现方案 徐波,王建英 ( 广州市中西医结合医院信息科,广州510800)摘 要:服务器监控是机房运维管理的一项重要内容,同时也是一种行之有效的管理方法,但目前市 面上很难找到符合实际需要的服务器监控软件。解决办法之一是找软件公司按需定制,但定制开发的成本很高,很多单位选择了自主开发。这里给出一个服务器监控系统的自主开发实现方案,主要包括监控对象的选择、软件架构设计和技术方案的选择3个方面。关键词:服务器; 监控;方案;运维 43 DOI:10.16184/https://www.wendangku.net/doc/a83400105.html,prg.2019.03.011

相关文档