CN114257486B - 面向物联网的网络性能管理测量探针的实现方法 - Google Patents
面向物联网的网络性能管理测量探针的实现方法 Download PDFInfo
- Publication number
- CN114257486B CN114257486B CN202011367259.1A CN202011367259A CN114257486B CN 114257486 B CN114257486 B CN 114257486B CN 202011367259 A CN202011367259 A CN 202011367259A CN 114257486 B CN114257486 B CN 114257486B
- Authority
- CN
- China
- Prior art keywords
- network
- probe
- measurement
- data
- management
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 239000000523 sample Substances 0.000 title claims abstract description 155
- 238000005259 measurement Methods 0.000 title claims abstract description 133
- 238000000034 method Methods 0.000 title claims description 67
- 238000004891 communication Methods 0.000 claims abstract description 22
- 238000012544 monitoring process Methods 0.000 claims abstract description 20
- 230000008569 process Effects 0.000 claims description 51
- 238000012545 processing Methods 0.000 claims description 19
- 238000013461 design Methods 0.000 claims description 17
- 238000001514 detection method Methods 0.000 claims description 15
- 230000006870 function Effects 0.000 claims description 15
- 238000005457 optimization Methods 0.000 claims description 13
- 238000011161 development Methods 0.000 claims description 6
- 238000012423 maintenance Methods 0.000 claims description 6
- 238000004886 process control Methods 0.000 claims description 5
- 238000011156 evaluation Methods 0.000 claims description 3
- 238000013507 mapping Methods 0.000 claims description 3
- 239000007787 solid Substances 0.000 claims description 3
- 230000001960 triggered effect Effects 0.000 claims description 3
- 230000008859 change Effects 0.000 claims description 2
- 238000004904 shortening Methods 0.000 claims description 2
- 238000004364 calculation method Methods 0.000 claims 2
- 238000013479 data entry Methods 0.000 claims 1
- 238000011084 recovery Methods 0.000 claims 1
- 238000004458 analytical method Methods 0.000 abstract description 16
- 238000003745 diagnosis Methods 0.000 abstract description 2
- 230000007812 deficiency Effects 0.000 abstract 1
- 238000007726 management method Methods 0.000 description 49
- 239000003795 chemical substances by application Substances 0.000 description 18
- 230000003993 interaction Effects 0.000 description 12
- 238000011160 research Methods 0.000 description 10
- 230000004044 response Effects 0.000 description 7
- 238000012360 testing method Methods 0.000 description 7
- 238000009826 distribution Methods 0.000 description 5
- 230000002457 bidirectional effect Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 230000002159 abnormal effect Effects 0.000 description 3
- 238000007405 data analysis Methods 0.000 description 3
- 238000013024 troubleshooting Methods 0.000 description 3
- 230000005856 abnormality Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000011835 investigation Methods 0.000 description 2
- 238000002372 labelling Methods 0.000 description 2
- 230000000737 periodic effect Effects 0.000 description 2
- 238000007619 statistical method Methods 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 239000000470 constituent Substances 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013480 data collection Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000013439 planning Methods 0.000 description 1
- 238000011112 process operation Methods 0.000 description 1
- 238000012827 research and development Methods 0.000 description 1
- 230000007103 stamina Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/02—Standardisation; Integration
- H04L41/0213—Standardised network management protocols, e.g. simple network management protocol [SNMP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/04—Network management architectures or arrangements
- H04L41/046—Network management architectures or arrangements comprising network management agents or mobile agents therefor
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/06—Management of faults, events, alarms or notifications
- H04L41/0677—Localisation of faults
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/12—Discovery or management of network topologies
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0823—Errors, e.g. transmission errors
- H04L43/0829—Packet loss
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0852—Delays
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0852—Delays
- H04L43/087—Jitter
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/12—Network monitoring probes
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Environmental & Geological Engineering (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
网络管理***作为网络基础设施的重要组成部分,在我国的IP网络运行和维护中,起到了举足轻重的作用。为了解决网络管理的性能监测问题,以弥补现有网管***在性能管理方面的不足,本发明最终是实现一个符合SNMP标准的IP网络测量探针,它既可以作为一种便携设备单独工作,进行端到端路径上网络性能的测量;也可以作为测量代理在测量域内部署,与管理中心通过SNMP进行通信,完成大规模IP网络的监测和故障诊断;此外,通过将其广泛地分布在网络的接入、汇聚以及核心三层中,并结合现有的网管***,可以很好地构建一个具有性能网管的真正意义上的综合网管,进而可以很好地解决和实现网络通信态势图的问题,为网管人员提供决策支持。对多用途IP网络探针的体系结构进行了详细设计,并实现了一个符合SNMP标准的探针,同时对嵌入式操作***进行了深入的分析,探针已经能在嵌入式操作***UCLinux上顺利运行。在实现探针的基础上,我们对性能管理中心进行了深入的研究和开发,并实现了一个原型分析***。
Description
技术领域
本发明属于IP网络性能管理领域的技术研究,具体涉及IP网络的性能指标体系、从运营网络中提取反应性能的指标参数以及性能指标数据的分析和利用等相关问题。
背景技术
网络管理***作为网络基础设施的重要组成部分,在我国的IP网络运行和维护中,起到了举足轻重的作用。一方面,现有IP网络测量设备没有实现仪表化,其部署和使用需要具备较强的专业知识,不利于广泛使用。另一方面,网络管理的5大功能域中,我国目前使用的各类综合网管***在性能管理功能域上都做的不是很完善,缺乏对全网节点、链路的端到端以及主机的性能监测,从而不能形成全网的网络通信态势图,进而导致网管人员很难对目前和将来的通信状况有个真实的把握,也很难对网络的运行状况有个知根知底的了解,同时也很难做到及时正确的排查错误、维护和升级网络。为了解决网络管理的性能监测问题,以弥补现有网管***在性能管理方面的不足。本发明最终是实现一个符合SNMP标准的IP网络测量探针,它既可以作为一种便携设备单独工作,进行端到端路径上网络性能的测量;也可以作为测量代理在测量域内部署,与管理中心通过SNMP进行通信,完成大规模IP网络的监测和故障诊断;此外,通过将其广泛地分布在网络的接入、汇聚以及核心三层中,并结合现有的网管***,可以很好地构建一个具有性能网管的真正意义上的综合网管,进而可以很好地解决和实现网络通信态势图的问题,为网管人员提供决策支持。
发明内容
本发明的主要用途是形成能够驻留在Linux操作***或嵌入式操作***中的符合SNMP标准的测量探针,用于IP网络性能管理。将这些测量探针部署在网络有关节点上,就能够通过SNMP协议进行远程控制,从而获得从该测量点到其他网络节点的性能参数。这些参数包括:Ping任务的ICMP数据报文的双向时延RTT、Ping任务的ICMP数据报文的丢包率LOSS、Ping任务的ICMP数据报文的双向时延抖动Jitter、TraceRoute任务的UDP数据报文的双向时延RTT、TraceRoute任务的UDP数据报文的丢包率LOSS、TraceRoute任务的UDP数据报文的双向时延抖动Jitter。采用这种方法就能得到比从单一网络端点出发进行测量更为丰富、更为精确的网络性能参数,能够及时发现和定位网络故障,提高网络可用性。
网络测量探针是基于开放源码软件NET-SNMP5.1开发的,网络测量探针从结构上看(图2所示),包括NET-SNMP5.1的snmpd主代理和一个子代理。snmpd和子代理之间通过AgentX协议进行数据和控制信息交互。当snmpd收到属于子代理的SNMP协议报文时将报文通过AgentX协议转发到子代理,子代理处理完请求之后,再将处理结果通过AgentX协议返回给snmpd,最后snmpd将得到的处理结果封装成SNMP响应报文返回给管理中心。
子代理中的MIB库存储了所有的测量控制参数和结果,是整个测量代理的核心部分。子代理主要完成的任务包括:接受和处理来自snmpd的AgentX协议报文;调度管理Ping和TraceRoute两个测量程序;检查测量结果并将其存储在子代理相应的MIB库中;根据告警条件,发送相应SYSLOG告警信息;根据设定条件,发送TRAP报文。
子代理采用多进程多任务的结构实现,测量进程和子代理进程之间采用共享内存的方式进行数据交互。子代理进程的主控模块定时扫描控制表中所有新建行中CtlAdminStatus字段值,若从disabled转变为enabled,则将该行中其他字段值作为测量参数调度相应测量工具执行相应测量操作,若CtlRowStatus从ACTIVE转变为DESTROY则终止相应测量操作,并从MIB库中删除所有相关的数据行。
主控模块主要负责子代理的初始化,读取并解析配置文件,建立到snmpd的AgentX协议连接开始监听并收发报文,将CtlTable、ResultTable和HistoryTable注册到snmpd主代理中,安装信号处理器开始接受各种信号,包括定时信号和相关的SNMP SET报文触发的信号等等。如有新的测量任务下达,信号处理器则会触发相应操作,创建新的测量进程、分配共享内存和信号量等资源,最后将所有资源使用信息登记到进程控制表中,以供数据和状态检测模块使用。
数据和状态检测模块是子代理中最复杂和核心的模块,其主要功能是定期查询测量进程的工作状态,如已退出则回收所有测量进程占据的资源,包括共享内存、信号量以及各种数据表项资源等,否则根据进程控制表中指定的共享内存id、信号量id,从指定的共享内存区域内获得测量结果信息,并将信息转换到子代理的结果表、历史表、跳表中。该模块涉及到访问互斥、资源回收、进程管理以及共享内存等诸多方面的管理,因此是整个代理设计和实现过程中的关键和难点。
Syslog模块采用标准的syslog技术,将进程运行过程中所产生错误信息以及告警信息发送到标准的syslog告警处理中心。
TRAP模块可以根据设定的需要,发送RFC 2925描述的pingNotifications和traceRouteNotifications等6种告警信息。RFC 2925中没有规定实现告警采用的技术,因此为了提高适用性,子代理中实现了两种标准的告警处理技术,这种设计结构也给用户添加一种灵活的选择,同时也能够很好地和现有网管平台的告警处理中心整合在一起。
参数检测模块负责检查主控模块出来的参数是否正确或是否缺少参数,如没有设置目的地址,则无法启动测量任务。在参数监测成功之后,负责调用测量工具,开始测量任务。
信号处理器是子代理运转的发动机,子代理中主要包括三种信号:定期轮询信号;SNMPSET报文触发的信号;子进程退出信号。信号处理器安装在主控模块中,在收到相应信号后,调用相应处理模块进行处理。
Ping测量模块以动态lib库的形式存在,代理的采集任务执行时以子进程的方式进行采集任务,同时把采集结果放在指定的共享内存区域,等待数据和状态检测模块将其映射到MIB库中。参数由相应的控制表提供,Ping测量模块按照RFC2925的标准Ping目标路由器,同时获得相关数据作为采集结果。
Ping程序将主要采集三项性能指标:时延、丢包以及时延抖动。Ping测量进程和子代理进程之间采用共享内存的方式进行数据交互。数据交互格式按照RFC 2925中pingResultsTable和pingProbeHistoryTable描述的规范进行。子代理进程以子进程方式调用Ping测量进程,测量进程获取共享内存地址,根据控制表参数发送ICMP报文,然后调用接收报文模块接收响应报文,并根据响应报文计算测量结果,同时更新共享内存中的结果表和历史表。如果测量完毕或子代理进程终止测量操作,Ping测量进程先更新共享内存中的测量数据然后退出测量进程。
测量探针在接收到性能管理中心发送来的采集命令后,开始执行采集任务,同时把采集结果放在MIB库中,等待性能管理中心来读取。探针采集任务的执行参数由相应的控制表和测量探针本地的配置文件提供,测量探针的采集任务包括两方面:按照RFC2925的标准Ping目标路由器以及TraceRoute目标路由器,同时获得相关数据作为采集结果。测量探针将主要采集七项性能指标:时延、可达性、可用性、双向时延抖动、丢包率、路由、路由抖动。这些指标都是通过发送特定的IP包来测试的。
由于研究及开发的时间和人力比较紧,因此在第一版本的测量探针中,目前只能对网络层的端到端性能进行监测,在下一步的研究中,我们将对应用层的性能进行更深入的研究,同时对其标准化工作做一些探讨工作,并将其纳入到测量探针当中。
一方面,性能管理中心作为测量探针的支撑***,可以为测量探针提供测量数据的汇聚、处理、分析、可视化以及存储服务;同时,通过部署多个测量探针,在性能管理中心的统筹下,完成大规模网络环境下的网络监管任务——实施网络运行情况、网络资源、网络性能的监视,故障及异常情况的告警和排查等。性能管理中心既是多种功能的综合实体,也是***的用户接口,具体而言,性能管理中心由如下几大类功能模块组成:
(1)探针管理模块。完成探针可用性管理,通过与探针基础设施中部署的探针交互,收集探针自身的运行状态信息,包括探针的处理器、内存等资源利用情况,探针工作状态等。在这个管理模块中,把探针作为一个对象,探针的可用性信息等作为其属性,后面提到的测量任务管理,测量数据访问等接口实现为该对象的方法,如此,性能管理中心与探针之间通过LDAP(轻量级目录访问协议)进行交互。
(2)测量任务管理模块。完成测量任务的制定,加载,执行过程追踪,卸载等功能。通过用户接口,收集目标探针的任务加载执行状态信息,为用户开展测量工作提供参考,帮助用户制定测量任务并远程加载执行。在任务执行过程中,按照探针上执行中的测量任务的策略在测量数据处理模块的协助下,从探针上收集测量数据。根据任务类别,自动或者在用户干预下终止测量任务,卸载任务进程,释放相关探针资源。
(3)测量数据处理模块。按照任务策略,通过SNMP的Get操作从探针上收集测量数据,并对数据进行预处理和存储。
(4)测量数据分析模块。是多种数据分析方法的集合,基于测量的应用,使用本模块的一个或多个分析方法,从测量数据推断出网络以及网络应用的性能指标,帮助用户对网络运营状态以及网络应用的服务质量进行评估。
(5)基于测量的应用模块。是多种基于网络测量的应用功能集。测量数据是这类应用的基础,应用的本质是对测量数据的分析。用户从应用出发,进行测量任务的规划、实施,更具有目的性和使用价值。除了一些较为常见的基于网络测量的应用,如网络可用性,网络响应能力评估,病态路由示警,网络故障点定位与辅助排查,网络攻击示警之外,一种较为新颖的应用是网络运行态势综合分析——在网络拓扑发现的基础上,通过基于多个监测点,不同时段收集的测量数据,生成被测网络的综合态势图。
(6)用户接口模块。性能管理中心与探针的交互是隐式进行的,是在管理任务以及测量任务的驱动下进行的。性能管理中心与用户的交互则是显示的,正是这种交互才得以使用户可以远程控制探针,并使得测量任务和基于测量的应用得以启动和完成。整个测量基础设施中,性能监管中心是提供给用户的唯一接口。
在目前的实现中,性能管理中心是一个多种功能的综合体,从宏观层面上看,它集名录管理、任务调度、数据处理和分析、基于测量的应用于一身。这种集中的方式在一定规模的测量环境下可以有效工作,但是,如果面对大规模网络环境下的测量以及基于测量的网络管理和网络优化任务而言,是有一定局限性的。因此,在设计时我们采用的是一种具有一致描述,一致接口,一致调用方法的模块化设计,这样设计出的模块既可以按照紧耦合的方式在同一运行环境下工作,也可以按照松耦合的方式在分布式环境下工作。
性能管理中心的组成模块之间的功能划分比较明确,各个功能模块可以单独地实现。通过每个功能模块基于XML的配置文件,模块之间在协作时,彼此之间是本地还是远地调用被透明化了。该XML文件对模块的调用接口,接口参数都进行了描述,对于模块的位置信息也进行了描述,调用者可以据此定位被调用模块或者协作对端模块,从而实现模块之间的关联操作。这样的设计借鉴的是Web Services的思想,带来的最大好处在于可扩展性强。一方面,只要是按照一致的调用接口进行实现的模块都可以包含到***中来;另一方面,只需要对模块的配置文件进行更新,就可以进行部署上的调整,从而获得更好的***性能。另外,***的维护、升级工作也可以更加有效地进行。
目前性能管理中心与用户的接口是本地化的,还不能工作在B/S模式下,这带来的不便之处在于工作场所上的局限性较大,用户如果要进行网络管理进行网络优化,必须在管理中心进行,然而现实情况下,经常需要网管人员在远地对网络进行监测,进行故障排查,实施性能优化。本***考虑到这个因素,在设计实现中,一方面是上述的模块化设计便于实现C/S和B/S模式,另一方面,在数据尤其是分析结果的描述上采用了XML技术,这样一来,通过样式表的转换,就能满足不同工作模式下显示的需要。
本***的探针能够测量的性能指标,主要是主动测量方式下能够得到的时延、时延抖动、丢包率、可达性、可用性、路由以及路由抖动等。这些指标均具有时变特性,因此本***的分析功能主要是能够进行不同时间尺度下的均值、方差、极值、统计分布特性、自相似性等统计分析方法。
基于上述分析功能,本***实现如下一些应用:
(1)网络可用性评价。基于对被测网络一定时段的监测,对测量得到的时延、时延抖动、丢包率等数据进行分析,推断出网络的不可达率、非忙率以及不可预测性等指标。如果是长时段的周期性监测,还可以推断出目标网络的忙期、闲期分布,有助于网络人员发布网络业务时段分布指导意见。
(2)网络响应能力评估。通过对被测网络时延指标以及吞吐量指标的统计分析,可以得出被测网络承载业务流量的能力,有助于网管人员对被测网络的响应能力进行评估。
(3)病态路由示警。在测量得到的基准路由或者对网络实际拓扑及路由已知的情况下,定期对网络的路由进行探测,当发现路径跳数发生了较大变化,或者路由抖动频繁程度超过阈值时发出病态路由示警,提示网管人员进一步进行排查。
(4)网络故障点定位与辅助排查。当被测网络的可达性、丢包率、时延以及时延抖动等测量数据超出一定阈值时,发出故障示警信息,依据策略自动或者手动方式启动故障点定位测量,该测量在多个探针的协作下分段进行,以快速找到性能瓶颈点或者故障点,帮助网管人员进一步进行故障排查。
(5)网络攻击示警。当被监测网络的时延、丢包率、可达性等性能急剧恶化时,发出告警信息,提醒网管人员该网络可能正在遭受攻击,网管人员可以进一步对该网络进行更细致地监测,从而及时防范,及早处理。
(6)网络运行综合态势图。基于多个监测点,在不同时段收集的测量数据,生成被测网络的综合态势图,该图除了具有不同层面属性的即时播放功能以外,还可以通过颜色标注、声音提示等进行异常、故障报警,为防范大规模网络攻击提供预警手段。另外,通过进行综合分析可提供QoS指标参考,为网管人员实施流量工程、网络升级提供第一手依据。
多用途IP网络性能管理的关键技术研究主要突出在以下5个方面:开源平台的研究与分析、高速数据通道设计、资源管理器的设计、探针部署优化以及网络运行态势图的提出和设计。其中开源平台的研究与分析是整个研究的技术基础,没有雄厚的技术基础和底蕴,在科学研究上同样会受到很大的制约。高速数据通道很好的解决了探针在数据采集传输过程中遇到的性能和效率问题。资源管理器则采用设计模式的概念和思想为上层应用提供了一个统一的资源管理接口,应用借助其可以高效安全地利用底层各种被管资源。探针部署优化是一个NP问题,只能在限定的条件下得到最优解,研究难度非常大,但具有高的实践价值。同时也创新性的提出了网络运行态势图的想法,并付诸于实践,为网管人员对网络状态进行实时的了解和管理提供了强有力的工具和帮助。
(1)开源平台的研究与分析
NET-SNMP是非常全面的开发平台,包括的内容覆盖了所有的SNMP软件开发需求,从代理、管理***到测试,因此该开发平台也非常复杂。由于本探针不只是在平台上进行简单地开发,重点需要考虑性能及可扩展性,所以需要深入的了解NET-SNMP内核,结合探针数据量大、实时性强的特点,我们对NET-SNMP内核进行了相应的修改,同时考虑到探针逻辑复杂的特点,对内核上以上的接口层进行了扩展,同时对现有的接口层存在的一些BUG进行了修改。目前,我们已经开发了一个新的NET-SNMP开发库,并向NET-SNMP的管理机构提交了新的修改建议及问题列表。
(2)高速数据通道的设计
由于探针的测量模块会产生大量的测量数据,如何将测量模块中的测量数据及时地影射到探针子代理的MIB库中,这是摆在面前的一个大难题,同时由于测量模块可能村在很多实例,如何和探针子代理进行及时准确稳定地通信,也是需要重点解决的。综合上述的特点,我们选择共享内存作为基础,在此基础以上封装一个高速的数据通道。共享内存是当前操作***中提供所有进程间通信操作中,效率和速度最快的一种。通过生产者消费者模型,测量模块作为生产者不断产生测量数据,代理作为消费者不断将数据影射到MIB库中,在两者之间制定相应的通信协议以及数据格式,因此大量的测量数据以及复杂控制信息能够迅速准确的传达。通过采用共享内存方式,大大提高了探针的处理速度,在普通的奔3PC上,能够承受100,000包/秒SNMP GET的报文强度。
(3)资源管理器的设计
探针中涉及到的***资源比较繁多,如何管理和利用好这些资源是探针设计的关键,也是难点之一。为解决这一问题,我们设计实现了一个资源管理器,采用会话面模式,为其他子***或模块提供了统一的接口。资源管理器的核心是进程表,其结构采用MIB库结构,因此在性能管理中心可以实时查看探针的内部资源使用情况。由于采用了MIB库结构,可以和其它MIB表项一样采用相同处理和调用接口,由此统一了结构和接口。在进程表中,详细记录了每个测量进程的进程ID、共享内存ID、信号量索引以及当前测量进程运行状态、测量进程相关的控制表项和结果表项的指针信息。所有这些资源是和特定进程绑定的,当进程退出时,通过进程ID找到相应表项,利用其中登记的信息,依次回收共享内存、信号量以及相关MIB库内存,删除相应的CtlTable、ResultTable、HistoryTable和traceRouteHopsTable表项。通过采用资源管理器,探针很好地解决了复杂的资源管理问题,维护了一个很好的***结构,为探针开发和维护打下了坚实的基础,同时也增加了稳定性并解决了资源泄漏问题。
(4)探针部署优化算法的设计
探针的分布是一个复杂的问题,受到很多因素的制约,如:
1)由于探针采用主动方式测量网络的端到端性能,因此需要考虑如何放置使其对网络的侵扰最小。
2)探针的放置与要监测的链路位置有关,网络瓶颈点处,应该是探针放置优先考虑的地方。
3)探针放置数量的性价比问题,部署越多探针,必然使测量的准确度提高,但是价格和对网络的侵扰也必定上升。
在本发明的测量基础设施中,部署探针的目的是测量动作的执行者,也是提供测量数据的源,因此我们的目标是如何放置探针使其能够测量所有的端到端路径;其次,在此基础上对其分布做一定的优化,减少它的数量。
算法的基本思想:在端***的端到端路径性能主要取决于骨干网络端到端性能的前提下,从域的边缘网络路由器(位于一个IP地址簇的出口)开始放置网络探针,评估逐跳的链路(HOP)的性能,如果不是瓶颈链路则将探针的位置移到下一个路由器处,如果是则探针的位置不动。当有两个或两个以上的网络探针相遇,则只保留一个网络探针。
算法主要分为两个阶段:探针拓扑图生成和探针地址与子网地址映射表的生成。基于节点收敛算法的前提条件:
1)已知被测量网络的拓扑结构的无向连通图G,分别用R、C和E标记G中的端点和边。
2)评估每跳链路的性能状态,并分别用0或1为中的每条边赋权值。
基于节点收敛算法的优化目标:
1)通过放置最少的网络探针,能够测量网络的所有端到端路径。
2)通过缩短网络探针间的距离,能够使主动测量所侵扰的路径长度缩小。
用Tij表示相邻网络探针通信信用度,相邻的网络探针通信信用度可描述为
考虑到数据有时传输并不及时准确我们可用可信系数引入可信系数λi表示通信信用度k为节点数。
能量信用度描述为相邻两个探针间的能量信任值。属于相邻两个探针间能量任值
CSij=λSij+(1-λ)Sij 2
数据因素信任描述为节点N相邻节点的采集数据的一致性信任为Tj
(5)网络运行态势图的提出和设计
本发明我们在实现了一些常见的基于网络测量的应用这一基础上,也提出了如何基于网络测量创建一种具备国事使用价值的应用问题。针对这个问题,我们提出了一种新的基于测量的应用——网络运行态势图。网络运行态势图是基于多个监测点,在不同时段收集的测量数据,生成的被测网络的综合态势图。该图可直观地提供不同层面属性的即时播放功能,还可以通过颜色标注、声音提示等进行异常、故障报警,为防范大规模网络攻击提供预警手段。另外,通过进行综合分析可提供QoS指标参考,为网管人员实施流量工程、网络升级提供第一手依据。实现网络运行综合态势图的基础是获取被测网络的拓扑图,通过拓扑图,可以生成合理的探针部署方案,并实施部署。通过该网络上部署的若干探针的协同测量,获取该网络所有探针之间路径的端到端性能,以及被测网络边界探针之间的路由追踪信息。通过对测量数据的综合,把时延、时延抖动、丢包率、吞吐率等指标作为逐段路径的属性显示在图上,并即时更新;当路由发生变化时,用不同颜色将与基准路由不匹配部分的即时路由情形在拓扑图上进行动态显示。如此,网管人员可以对被测网络的情况全盘掌握,随时发现异常以及故障情况,并能快速定位故障点和异常点,做到及时发现,及早纠正。由于测量的数据具有时变特性,通过存储的测量数据可以对过去某个时间段的网络态势进行重播,从中发现可能的周期性问题,得到网络升级或者改造的有力依据。
附图说明
图1:多用途IP网络测量探针架构。
图2:网络探针模块框架图。
图3:Ping测量模块结构图。
图4:测量探针工作状态。
图5:性能管理中心组成。
图6:时延抖动-真实主机与硬件探针对比
图7:探针选取数对网络测量精确度的影响
图8:时延-端到端时延测试测量结果
具体实施方式
图1,是多用途IP网络测量探针架构。网络测量探针的功能是接受性能管理中心的采集任务并且执行相应的Ping和TraceRoute动作,采集相应的网络质量数据,等待性能管理中心主动读取测量结果数据。这里性能管理中心可以是任何满足SNMP工业标准,能够装载标准MIB文件、收发标准SNMP协议报文的管理***或管理软件。通过这种管理-代理的结构模式,可以在全网分布更多的廉价的网络测量探针,减少管理中心的数量,从而大大减少性能管理***的构建成本及人员维护费用。
在图2中,除Ping测量模块和TraceRoute测量模块外,其余模块、数据表格及共享内存都在子代理进程内。ProcessTable和CtlTable为控制表格,ProcessTable主要用于代理进程对测量进程的控制,CtlTable可以为pingCtlTable和TracerouteCtlTable,主要用于测量进程控制相应的测量操作。ResultTable和HistoryTable用于保存测量结果数据和测量历史数据。子代理进程定时地扫描ProcessTable和CtlTable表,查看是否有新的测量任务下达,若有则创建进程并调度相应测量程序。CtlTable是管理中心通过snmp set操作进行设置和删除,ProcessTable是子代理进根据CtlTable生成的相应进程控制表项。同时子代理定时地根据ProcessTable表项中指定的共享内存区域,调用状态和数据检测模块对共享内存区域内的测量结果进行处理,并将测量结果映射到子代理中相应的ResultTable和HistoryTable中。
图3中的TraceRoute测量模块在测量流程上和Ping测量模块是一模一样的,因此它的模块结构和图3相同。TraceRoute测量模块以动态lib库的形式存在,代理的采集任务执行时以子进程的方式进行采集任务,同时把采集结果放在指定的共享内存区域,等待数据和状态检测模块将其映射到MIB库中。TraceRoute测量模块按照RFC2925的标准TraceRoute目标路由器,同时获得相关数据作为采集结果。Traceroute程序将主要采集三项性能指标:每跳时延、每跳丢包以及路由表。这些指标都是通过发送指定TTL值的特定端口的UDP报文,接收中间路由器的响应的端口不可达ICMP报文而得到的。TraceRoute测量进程和子代理进程之间的交互方式和规范与Ping测量进程相同,其数据交互格式按照RFC2925中traceRouteResultsTable、traceRouteProbeHistoryTable和traceRouteHopsTable描述的规范进行。
图4,是测量探针的工作状态机。SET I表示管理中心以SNMP SET的形式发送来的驱动测量探针执行某项采集任务的命令;SET III表示管理中心以SNMP SET的形式发送来的终止测量探针执行某项采集任务的命令;GET I表示管理中心主动使用SNMP GET的命令来读取测量探针本地的某项采集任务当前已获得的采集结果;GET II表示管理中心主动使用SNMP GET的命令来读取测量探针本地的状态参数。其中出现的任何告警被随时通过Syslog发送到设定的符合syslog标准的网络告警处理中心。
图5,是性能管理中心的各个模块之间的协作关系。探针管理中心与探针之间的有3种交互方式,一是基于测量基础设施资源管理目的的交互,通过LDAP协议实现;二是基于测量任务管理目的的交互,管理中心的任务管理模块通过SNMP的set操作向探针发出任务相关的指令,通过get操作获取探针的任务执行状态信息;三是基于测量数据收集目的的交互行为,管理中心的测量数据处理模块在任务管理模块的调度下,通过SNMP的get操作从探针读取测量数据。另外的一种可能操作在图5中没有表述出来,如果把管理中心作为一个数据处理和分析的服务提供者,那么探针作为单个探测器工作时,可以通过调用管理中心提供的数据分析服务在远地进行数据的处理和分析,最终获得一些轻量级的探测器端测量应用。这种方式是通过远程调用实现的,其灵活性有限,适合于一些轻量级并且固化在探针上的应用,只能是随着探针的升级而得以扩充。性能管理中心作为唯一的用户接口,用户可以将探针作为资源直观地实施管理,可以方便地对探针的任务进行监管,最重要的是能够在可视化环境下使用基于测量的应用达到网络管理、网络优化的目标。
图6,时延抖动-真实主机与硬件探针对比。网络探针主要探测网络参数,反映出该网络的性能,探针的探测参数的准确性也是一个较大的问题,为此,以探针探测参数之一的时延抖动为例,我们对新闻网站进行了测试,在9:00-18:00时间段,每隔半小时进行一次测量。测量结果如图6所示,由图可以看出,在真实主机时延抖动小的情况下硬件探针测量出的时延抖动也小,在真实主机时延抖动大的情况下硬件探针检测出的时延抖动也大。根据这两种情况,可以得出探针的测量数据与真实主机的测量数据基本一致,可以用网络探针的测量数据来检测网络的运行情况。
图7,探针选取数对网络测量精确度的影响。网络探针对于检测网络性能检测有着极其重要的作用,在实际运用当中,网络探针既可以检测网络的性能参数,也可以用来检测网络故障。网络探针的选取对测量得到的参数准确程度有关,网络探针的选取数越准确,对于测得的参数准确度越高,网络故障检测更加准确迅速。为了验证,我们对网络探针数与网络性能参数的优化率实际关系进行了测试探究,对某一局域网进行了测试,根据测试参数我们对网络进行了可用性评价得出网络参数符合度,如图7所示,横坐标为网络探针的选取数,纵坐标为所测网络参数的符合度,由图可知随着网络探针的选取数增加,符合度开始上升,当网络探针的选取率增加到某一值时,网络参数符合度趋于一个定值。由此可知,在某一网络环境下网络探针的选取数都有一个最佳数,该局域网的最佳网络探针的选取数最佳为15。
图8,时延-端到端时延测试测量结果。网络探针实现端到端的数据监测,利用网络探针,实现对链路的端到端以及主机的性能监测,测试条件为500个特定的IP包50B,时间间隔为200ms,每发送50个特定的IP包,包长增加3B,采用UDP协议,实际测量从源主机到目标主机,监测结果如图8所示,可以看出,该链路时延变化趋于平稳,主机性能较为优良。
Claims (2)
1.一种基于面向物联网的网络性能管理测量探针的实现方法,其特征在于设计一种多用途IP网络探针的体系结构模型;***由主控模型、算法模型、观测模型组成由并符合SNMP标准,并通过测网络的综合态势图以直观地提供不同层面属性的即时播放功能;主控模块分为三个部分组成子代理、监听模型、处理模型,子代理初始化模型是将读取并解析配置文件,建立到snmpd的AgentX协议连接开始监听并收发报文,监听模型表示为在无线网络中开始监听的信号量,当开始监听为1,结束为0;信号通信度表示为信号处理阈值,处理器通信度表示为处理器通信阈值;
信号通信度计算描述为在无线传感器网络内,相邻两探针之间的信号通信度用x表示为两个相邻信号点;相邻探针N1和N2之间的信号通信信用度表示为
根据网络动态特性,将CtlTable、ResultTable和HistoryTable注册到snmpd主代理中,安装信号最大值
处理器通信度计算描述为相邻探针之间处理器开识处理阈值用f(x)表示,N为相邻信号器处理信号,μ表示信号处理次数;T表示相邻相邻处理器直接处理通信度,处理器开始接受各种信号,包括定时信号和相关的SNMP SET报文触发的信号,如有新的测量任务下达,数据发生变化处理器处理表示为
相邻探针处理器通信度为
信号处理器则会触发相应操作,创建新的测量进程、分配共享内存和信号量资源,最后将所有资源使用信息登记到进程控制表中,以供数据和状态检测模块使用;
数据和状态检测模块是子代理中最复杂和核心的模块,数据和状态的检测决定了测量探针的准确性评估函数表示为G(s);
sGs=∮(S2+2S)ds+Fi+S(x)1
评估函数的约束条件为探针实用性检测,约束条件表示为
为当前局面;
其主要功能是定期查询测量进程的工作状态,如已退出则回收所有测量进程占据的资源;
传统内存时间长、效率低,故其引入共享内存提高内存使用效率,共享内存表示为F,共享内存表示为
通过共享内存信号量,信号量表示为
以及各种数据表项资源pnx;
根据进程控制表中指定的共享内存id、信号量id,从指定的共享内存区域内获得测量结果信息,并将信息转换到子代理的结果表、历史表、跳表中,该模块涉及到访问互斥、资源回收、进程管理以及共享内存诸多方面的管理,因此是整个代理设计和实现过程中的关键和难点;
我们选择共享内存作为基础,在此基础上封装一个高速的数据通道,共享内存是当前操作***中提供所有进程间通信操作中,效率和速度最快的一种;共享内存效率表示为It
当采用共享内存时,εit增加,效率变大,
根据共享内存,信号量,共享内存效率综合得出共享因子W表示为
W=aFi+bS(x)+cIt
大量的测量数据以及复杂控制信息能够迅速准确的传达,通过采用共享内存方式,大大提高了探针的处理速度,在普通的奔3PC上,能够承受100,000包/秒SNMP GET的报文强度。
2.如权利要求1所述的面向物联网的网络性能管理测量探针的实现方法,其特征在于,为了更合理的分配资源管理,设计实现了一个资源管理器R,通过采用资源管理器,探针很好地解决了复杂的资源管理问题,维护了一个很好的***结构,为探针开发和维护打下了坚实的基础,同时也增加了稳定性并解决了资源泄漏问题;
资源问题可表示为/>
采用会话面模式,为其他子***或模块提供了统一的接口,资源管理器的核心是进程表,其他结构采用MIB库结构,因此在性能管理中心可以实时查看探针的内部资源Ci使用情况:
通过采用资源管理器,探针很好地解决了复杂的资源管理问题,维护了一个很好的统结构,为探针开发和维护打下了坚实的基础,同时也增加了稳定性并解决了资源泄漏问题;
设计了探针部署优化算法,X和Y表示不同探针部署采集的数据,j为采集次数;
所述探针部署优化算法主要分为两个阶段:探针拓扑图生成和探针地址与子网地址映射表的生成,基于节点收敛算法的前提条件:
1)已知被测量网络的拓扑结构的无向连通图G,分别用R、C和E标记G中的端点和边;
2)评估每跳链路的性能状态,并分别用0或1为中的每条边赋权值;
基于节点收敛算法的优化目标:
1)通过放置最少的网络探针,能够测量网络的所有端到端路径;
2)通过缩短网络探针间的距离,能够使主动测量所侵扰的路径长度缩小;网络探针进行博弈所基于的博弈类型包括通信信任度和能量信任度用Tij表示相邻网络探针通信信用度,相邻的网络探针通信信用度可描述为
考虑到数据有时传输并不及时准确我们可用可信系数引入可信系数λi表示通信信用度k为节点数;
能量信用度描述为相邻两个探针间的能量信任值,属于相邻两个探针间能量任值
数据因素信任描述为
节点N相邻节点的采集数据的一致性信任为Tj
探针n采集数据一致次数,探针采集数据不一致次数。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011367259.1A CN114257486B (zh) | 2020-11-29 | 2020-11-29 | 面向物联网的网络性能管理测量探针的实现方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011367259.1A CN114257486B (zh) | 2020-11-29 | 2020-11-29 | 面向物联网的网络性能管理测量探针的实现方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114257486A CN114257486A (zh) | 2022-03-29 |
CN114257486B true CN114257486B (zh) | 2024-06-04 |
Family
ID=80789529
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011367259.1A Active CN114257486B (zh) | 2020-11-29 | 2020-11-29 | 面向物联网的网络性能管理测量探针的实现方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114257486B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115102828A (zh) * | 2022-08-26 | 2022-09-23 | 歌尔股份有限公司 | 一种故障分析方法及装置 |
CN116232956B (zh) * | 2023-05-06 | 2023-07-18 | 国网智能电网研究院有限公司 | 网络时延带内遥测方法、装置、电子设备及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101013975A (zh) * | 2007-01-24 | 2007-08-08 | 中国人民解放军理工大学指挥自动化学院 | 测试ip网络中任意两个端***之间性能参数的方法及*** |
CN102801587A (zh) * | 2012-08-29 | 2012-11-28 | 北京邮电大学 | 面向大规模网络的虚拟化监测***与动态监测方法 |
CN104618128A (zh) * | 2014-06-30 | 2015-05-13 | 北京阅联信息技术有限公司 | 一种基于多线程的节点网络探测分析的***及方法 |
CN107046481A (zh) * | 2017-04-18 | 2017-08-15 | 国网福建省电力有限公司 | 一种信息***综合网管***综合分析平台 |
CN110380912A (zh) * | 2019-08-16 | 2019-10-25 | 上海锵戈科技有限公司 | 一种基于snmp的大规模网络链路性能测量方法及*** |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070250625A1 (en) * | 2006-04-25 | 2007-10-25 | Titus Timothy G | Real-time services network quality control |
-
2020
- 2020-11-29 CN CN202011367259.1A patent/CN114257486B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101013975A (zh) * | 2007-01-24 | 2007-08-08 | 中国人民解放军理工大学指挥自动化学院 | 测试ip网络中任意两个端***之间性能参数的方法及*** |
CN102801587A (zh) * | 2012-08-29 | 2012-11-28 | 北京邮电大学 | 面向大规模网络的虚拟化监测***与动态监测方法 |
CN104618128A (zh) * | 2014-06-30 | 2015-05-13 | 北京阅联信息技术有限公司 | 一种基于多线程的节点网络探测分析的***及方法 |
CN107046481A (zh) * | 2017-04-18 | 2017-08-15 | 国网福建省电力有限公司 | 一种信息***综合网管***综合分析平台 |
CN110380912A (zh) * | 2019-08-16 | 2019-10-25 | 上海锵戈科技有限公司 | 一种基于snmp的大规模网络链路性能测量方法及*** |
Non-Patent Citations (1)
Title |
---|
一种有效的网络运维管理***的设计与实现;李宏;左延智;张宗鹏;吴训吉;;数字通信世界(第04期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN114257486A (zh) | 2022-03-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114257486B (zh) | 面向物联网的网络性能管理测量探针的实现方法 | |
Kona et al. | A Framework for Network Management Using Mobile Agents. | |
US6182136B1 (en) | Automated service elements discovery using core service specific discovery templates | |
JP2577540B2 (ja) | コンピュータ・ネットワークの性能及びステータスをモニタする方法及びシステム | |
US5812529A (en) | Method and apparatus for network assessment | |
US20140215077A1 (en) | Methods and systems for detecting, locating and remediating a congested resource or flow in a virtual infrastructure | |
CN109075996B (zh) | 用于监视网络性能的监视控制器及因此执行的方法 | |
JP2002508555A (ja) | 複合ネットワークの動的モデリングおよびその中での障害の影響の予測 | |
WO2014116702A1 (en) | Methods and systems for estimating and analyzing flow activity and path performance data in cloud or distributed systems | |
Lundgren et al. | Experiences from the design, deployment, and usage of the UCSB MeshNet testbed | |
Zhang et al. | RINGLM: A link-level packet loss monitoring solution for software-defined networks | |
US7944843B2 (en) | Path based network management method and apparatus for data communication networks | |
Al-Kasassbeh et al. | Analysis of mobile agents in network fault management | |
Marotta et al. | Through the Internet of Things--A Management by Delegation Smart Object Aware System (MbDSAS) | |
US20050157654A1 (en) | Apparatus and method for automated discovery and monitoring of relationships between network elements | |
Adhicandra et al. | Using mobile agents to improve performance of network management operations | |
Zacharis et al. | Performance evaluation of topology discovery protocols in software defined networks | |
CN114268560A (zh) | 面向网络端到端性能监测的代理框架设计方法 | |
JP4117291B2 (ja) | ネットワーク情報を収集、分析し、ネットワーク構成情報を作成する装置、ネットワーク構成情報を作成する方法、及びネットワーク構成情報を作成するプログラム | |
Ranjitha et al. | A case for cross-domain observability to debug performance issues in microservices | |
CN112398707A (zh) | 分布式自动化测试管理方法、装置、设备及存储介质 | |
Coviello et al. | Bridging network monitoring and the grid | |
Legrand et al. | Automatic deployment of the network weather service using the effective network view | |
Kamangar et al. | Distributed Network Monitoring Using Mobile Agents Paradigm. | |
Al-Kasassbeh et al. | The architecture of the intelligent mobile agent in network fault management |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |