CN114268560A - 面向网络端到端性能监测的代理框架设计方法 - Google Patents

面向网络端到端性能监测的代理框架设计方法 Download PDF

Info

Publication number
CN114268560A
CN114268560A CN202011361417.2A CN202011361417A CN114268560A CN 114268560 A CN114268560 A CN 114268560A CN 202011361417 A CN202011361417 A CN 202011361417A CN 114268560 A CN114268560 A CN 114268560A
Authority
CN
China
Prior art keywords
agent
data
measurement
calculation
mib
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.)
Withdrawn
Application number
CN202011361417.2A
Other languages
English (en)
Inventor
王军
吴小军
汤磊
高连锋
袁桂平
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Gannan Normal University
Original Assignee
Gannan Normal University
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Gannan Normal University filed Critical Gannan Normal University
Priority to CN202011361417.2A priority Critical patent/CN114268560A/zh
Publication of CN114268560A publication Critical patent/CN114268560A/zh
Withdrawn legal-status Critical Current

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)
  • Computer And Data Communications (AREA)

Abstract

如何采用标准SNMP协议通过远程代理获取网络性能参数是网管人员非常关心的问题,本文提出的面向网络端到端性能监测的代理框架设计方法的优化方法定义了解决该问题的相关标准和MIB,但未规定实现框架和技术。针对这个问题,提出了2925代理实现框架,并对其功能、模块进行了重点描述,对实现框架中所采用的相关核心技术进行了简要阐明。实践表明,本框架所实现的2925代理在稳定性和性能上都有很好地表现。

Description

面向网络端到端性能监测的代理框架设计方法
技术领域
本发明属于数据通信领域,具体涉及网络端到端性能监测的开放式RFC2925 协议代理框架,Net-SNMP开源平台的研究与分析,高速数据通道的设计和资源管理等应用。
背景技术
IP网络是目前数据通信的重点发展方向,然而对IP网络的定量科学管理是长期以来困扰通信界的难题,也是制约IP网络健康发展的大问题。以往对IP网络运营质量的考评,只能停留在定性和含糊的评估上。如今我们需要一套符合网络实际情况的IP网络性能管理系统,从而将对IP网络含糊的定性管理转变为科学的定量管理,为网络维护人员提供一个有力的工具。所谓网络性能管理,就是通过收集网络适当的参数(实时的或历史的统计数据)来估算当前网络的运行情况。从IP网络中有效地提取所定义的性能指标参数则是整个网络性管理系统的基石。性能代理则主要是负责收集管理系统所需要的性能指标参数,是性能管理系统的重要组件。SNMP已经成为IP网络的事实工业标准,因此开发基于SNMP 标准的性能管理系统则非常有必要,这样性能管理系统可以和现有的网管系统进行无缝的整合,从而达到综合网管的效果。
网络端到端性能监测可以依赖厂商设备提供的监测机制,比如采用开发式的RFC2925协议,主要进行时延、丢包、抖动等网络质量参数的采集。RFC 2925 是由著名的分布式管理工作组(DISMAN)提出的,定义了远程Ping、TraceRoute 操作的MIB(管理信息库)管理对象,旨在远程代理或主机上发起Ping或 TraceRoute测量,同时在远程管理端能对测量结果进行收集和检索。但RFC 2925 文档并没有定义代理的体系结构及实现方式,因此该标准只是对管理端和代理之间的MIB接口进行了定义和规范,所以要实现2925代理,则需要开发者根据该文档定义的MIB规范对代理架构和程序进行设计和实现。
Net-SNMP是一套开源的SNMP软件开发工具,同时由于其性能及稳定性都比较好,因此在当前SNMP软件开发中应用非常广泛,基于此Linux也将其纳为默认的代理软件。采用Net-SNMP开发代理,有三种方式扩展代理(Snmpd):静态链接形式,共享链接库形式和AgentX子代理协议。前两种方式是直接对 Snmpd代理进行MIB扩展,只是采用的形式不同。AgentX子代理协议方式是将扩展的代理作为Snmpd的一个子代理运行,Snmpd不需要做任何改动,同时子代理作为一个单独的进程运行,因此可以更好地实现资源管理、MIB表与表之间复杂的逻辑关系,所以考虑到2925概念表及表比较多,而且表之间的逻辑关系非常复杂,所以采用AgentX子代理协议方式实现代理是比较理想的一种选择。
发明内容
本发明的目的是提出一种面向RFC 2925代理框架设计的优化方法,根据 RFC2925定义的MIB规范对代理架构和程序进行设计和实现,采用AgentX子代理协议方式实现代理。以便通过远程代理获取网络性能参数。
为解决上述发明,将整个过程分为四个阶段,分别是2925代理功能描述, 2925代理工作状态机,2925代理模块框架和测量模块结构。
一、2925代理功能描述
2925代理在性能管理系统中的位置如图1所示。2925代理在接收到管理中心发送来的采集命令后,开始执行采集任务,同时把采集结果放在MIB库中,等待管理中心来读取。2925代理采集任务的执行参数由相应的控制表和2925代理本地的配置文件提供,2925代理的采集任务包括两方面:按照RFC2925的标准Ping目标路由器以及TraceRoute目标路由器,同时获得相关数据作为采集结果。
2925代理将主要采集如下几项性能指标:
(1)时延t
(2)双向时延抖动系数μ
(3)丢包率η
(4)路由跃点数T
这些指标都是通过发送特定的IP包来测试的。使用的原理和具体协议包格式,可参阅RFC 792。
二、2925代理工作状态机
2925代理的工作状态机如图2所示。
SET I表示管理中心以SNMP SET的形式发送来的驱动2925代理执行某项采集任务的命令;
SET III表示管理中心以SNMP SET的形式发送来的终止2925代理执行某项采集任务的命令;
GET I表示管理中心主动使用SNMPGET的命令来读取2925代理本地的某项采集任务当前已获得的采集结果;
GET II表示管理中心主动使用SNMP GET的命令来读取2925代理本地的状态参数。
其中出现的任何告警被随时通过Syslog模块发送到指定的符合Syslog标准的网络告警处理中心。
三、2925代理模块框架
2925代理是基于开放源码软件Net-SNMP5.1开发的,2925代理从结构上看(图3所示),是Net-SNMP5.1的Snmpd主代理的一个子代理。Snmpd和2925 代理之间通过AgentX协议进行数据和控制信息交互。当Snmpd收到属于2925 代理的SNMP协议报文时将报文通过AgentX协议转发到2925代理,2925代理处理完请求之后,再将处理结果通过AgentX协议返回给Snmpd,最后Snmpd 将得到的处理结果封装成SNMP响应报文返回给管理中心。
2925代理中的MIB库存储了所有的测量控制参数和结果,是整个测量代理的核心部分。2925代理主要完成的任务包括:
(1)接受和处理来自Snmpd的AgentX协议报文。
(2)调度管理Ping和TraceRoute两个测量程序。
(3)检查测量结果并将其存储在2925代理相应的MIB库中。
(4)根据告警条件,发送相应SYSLOG告警信息。
(5)根据设定条件,发送TRAP报文。
图3中除Ping测量模块和TraceRoute测量模块外,其余模块、数据表格及共享内存都在2925代理进程内。进程控制表和测量控制表为代理逻辑控制表,进程控制表主要用于代理进程对测量进程的控制,测量控制表主要用于控制测量进程按照指定参数和规则进行相应的测量操作。测量结果表和测量历史表用于保存测量结果数据和测量历史数据。
主控模块主要负责2925代理的初始化,读取并解析配置文件,建立到Snmpd 的AgentX协议连接开始监听并收发报文,将测量控制表,测量结果表和测量历史表注册到Snmpd主代理中,安装信号处理器开始接受各种信号,包括定时信号和相关的SNMP SET报文触发的信号等等。如有新的测量任务下达,信号处理器则会触发相应操作,创建新的测量进程、分配共享内存和信号量等资源,最后将所有资源使用信息登记到进程控制表中,以供数据和状态检测模块使用。
数据和状态检测模块是2925代理中最复杂的核心模块,其主要功能是定期查询测量进程的工作状态,如已退出则回收所有测量进程占据的资源,包括共享内存、信号量以及各种数据表项资源等,否则根据进程控制表中指定的共享内存 ID、信号ID,从指定的共享内存区域内获得测量结果信息,并将信息转换到2925 代理的结果表、历史表、路由跳表中。该模块涉及到访问互斥、资源回收、进程管理以及共享内存等诸多方面的管理,因此是整个代理设计和实现过程中的关键和难点。
Syslog模块采用标准的Syslog技术,将代理运行过程中所产生错误信息以及告警信息发送到标准的Syslog告警处理中心。
TRAP模块可以根据配置文件设定的需要,向指定的服务器发送RFC 2925 中描述的pingNotifications和traceRouteNotifications 2种类型的TRAP报文。
由于RFC 2925中没有规定实现告警采用的技术,因此为了提高2925代理的灵活性和可用性,在代理中实现了两种标准的告警处理技术。这种设计给用户增加了灵活的选择,同时也能够很好地和现有网管平台的告警处理中心整合在一起。
四、测量模块结构
1.ping测量模块
Ping测量模块以动态lib库的形式存在,代理的采集任务执行时以子进程的方式进行采集任务,同时把采集结果放在指定的共享内存区域,等待数据和状态检测模块将其映射到MIB库中。参数由相应的控制表提供,Ping测量模块按照 RFC2925的标准Ping目标路由器,同时获得相关数据作为采集结果。
Ping程序将主要采集如下几项性能指标:
(1)时延
(2)丢包
(3)时延抖动
Ping测量进程和2925代理进程之间采用共享内存的方式进行数据交互。数据交互格式按照RFC 2925中pingResultsTable和pingProbeHistoryTable描述的规范进行。2925代理进程以子进程方式调用Ping测量进程,测量进程获取共享内存地址,根据控制表参数发送ICMP报文,然后调用接收报文模块接收响应报文,并根据响应报文计算测量结果,同时更新共享内存中的结果表和历史表。如果测量完毕或2925代理进程终止测量操作,Ping测量进程先更新共享内存中的测量数据然后退出。
2.TraceRoute测量模块
TraceRoute测量模块在测量流程上和Ping测量模块是一模一样的,因此它的模块结构和图4相同。
TraceRoute测量模块以动态lib库的形式存在,代理的采集任务执行时以子进程的方式进行采集任务,同时把采集结果放在指定的共享内存区域,等待数据和状态检测模块将其映射到MIB库中。TraceRoute测量模块按照RFC2925的标准TraceRoute目标路由器,同时获得相关数据作为采集结果。
TraceRoute程序将主要采集如下几项性能指标:
(1)每跳时延
(2)每跳丢包
(3)路由表
TraceRoute测量进程和2925代理进程之间的交互方式和规范与Ping测量进程相同,其数据交互格式按照RFC 2925中traceRouteResultsTable、traceRouteProbeHistoryTable和traceRouteHopsTable描述的规范进行。
所述面向网络端到端性能监测的代理框架设计方法的计算包括:2925的功能指数的计算、信息交互质量的计算、系统资源的利用率的计算、2925代理的处理速度的计算。
而且2925功能指数计算描述为:
2925代理将主要采集几项性能指标有:时延t、双向时延抖动系数P、丢包率η、和路由跃点数T。
时延t的计算:
t=kt1+lt2+mt3
其中t1是发送时延,t2是传播时延,t3是接收时延,k、l、m为各阶段所占权重。若发送数据的长度为s,信道带宽为b,从源点到终点共经过n段链路,那么总的延时t:
Figure RE-GDA0002892904800000051
双向时延抖动系数P、丢包率η、和路由跃点数T这些指标都是通过发送特定的IP包来测试的。功能系数计算可描述为
Figure RE-GDA0002892904800000052
Figure RE-GDA0002892904800000053
若0≤E≤1,那么说明2925代理的性能较优,无需进一步优化,若E>1,则需要进一步优化。
而且信息交互质量计算描述为:
W={t,v,p},其中t是传输数据时间,v是数据平均传输速率,p是数据最大传输功率,传输数据的大小R。
假设t时刻的输入信号为x(t),通过无线信道传输,其输出y(t)计算可描述为
Figure RE-GDA0002892904800000061
其中h(t)是信道调制冲激响应,n(t)是随机噪声信号。信道传输误差率η(t)的计算可描述为
Figure RE-GDA0002892904800000062
数据传输速率v(t)与当时的网络传输速率vp(t)和数据大小R、传输功率p(t)相关,其计算描述为
Figure RE-GDA0002892904800000063
根据以上参数可求得信息互交质量W计算可描述为
Figure RE-GDA0002892904800000064
其中T为数据传输时间。
而且系统资源利用率计算描述为:
假设某个特定进程的运行进度为ξi,进程运行时共享内存大小为ωi,信号量的大小为θi,相关的MIB库的内存大小为τi,当前运行时间为ti。其运行进度可描述为
Figure RE-GDA0002892904800000065
共享内存大小ωi:
Figure RE-GDA0002892904800000071
相关的MIB库的内存大小为τi
Figure RE-GDA0002892904800000072
其中ρ为存储系数。
若当时有n个进程正在运行,系统资源的利用率P:
Figure RE-GDA0002892904800000073
而且2925代理的处理速度计算描述为:
假设测量模块产生测量数据的速率为ν(t),它的数据传输功率为η(t),共享内存大小为ω,那么出其代理的处理速度ε(t)计算可描述为:
Figure RE-GDA0002892904800000074
T为数据处理相关系数,在普通的奔3PC上
Figure RE-GDA0002892904800000075
且T≥100ω2,所以
Figure RE-GDA0002892904800000081
附图说明
图1 RF 2925代理在性能管理系统中的位置
图2 RF 2925代理工作状态机
图3 RF 2925代理模块框架图
图4 Ping测量模块结构图
图5端到端的时延测试结果
图6指定IP包的丢包率
图7路由表
具体实施方式
基于开源工具Net-SNMP,我们开发了符合RFC 2925标准的代理。目前该代理已经在学院实验室的IP域网中得到了实验。学院实验室的IP域网性能管理系统的节点中全部采用了我们研发的2925代理。近一年的使用情况表明,本RFC 2925代理除了能够很好地提供了RFC 2925规定的各种功能外,运行稳定可靠,达到了使用需求。
下面结合附图及实施实例对本发明作进一步的说明。
以源主机和目标主机作为仿真对象,仿真RFC 2925代理采集数据信息,仿真条件为1000个特定的IP包100B时间为200ms,每发送10个特定的IP包,包长增加5B,采用UDP协议。RFC 2925代理在接收到管理中心发送来的采集命令后,开始执行采集任务。仿真RFC2925代理采集时延结果数据,实测从源主机到目标主机,根据发送的这些特定的IP包的实时效果通过Ping和TraceRoute 测量模块来采集对应的时延数据,同时将多个时延数据分析得出时延抖动数据,采集结果如图5所示。
源主机向目标主机发送一定数量的特定的IP包,RFC 2925代理通过Ping 和TraceRoute测量模块实时监测丢包数量,计算出对应状状态的丢包率,丢包率的采集结果数据如图6所示。RFC 2925代理通过TraceRoute测量模块,监测出的RFC 2925代理的路由表如图7所示,源主机开始发送特定的IP包,在发送到目标主机的路由表,其中有多条到达相同目的地的路由记录,路由器采用的是跃点数值小的路由。采集成功后将采集结果放入MIB库中,而后管理中心主动使用SNMP GET的命令获取采集结果,对时延、时延抖动、丢包率和路由表采集结果进行处理,根据告警条件,发送相应SYSLOG告警信息。从而从而达到网络管理员管理网络的功效。

Claims (1)

1.面向网络端到端性能监测的代理框架设计方法的优化方法,其特征在于,该发明过程可分为四个阶段:代理功能描述、代理工作状态机、代理模块框架和测量模块结构。其中代理功能描述阶段,代理的采集任务主要包括两方面:按照RFC2925的标准Ping目标路由器以及TraceRoute目标路由器,同时获得相关数据作为采集结果,主要采集四项性能指标:时延t、双向时延抖动率P、丢包率η和路由跃点数T,代理工作状态机描述为管理中心与代理的指令关系;
代理模块框架阶段,Snmpd和代理之间通过AgentX协议进行数据和控制信息交互,其信息互交质量W与传输数据时间t、数据平均传输速率v和数据最大传输功率p有关,信息互交质量保障数据的传输质量和信息的准确程度;2925代理结构采用MIB库结构,可以和其它在代理中定义的MIB表项一样采用相同处理和调用接口,在进程表中,详细记录了每个测量进程的进程ID、共享内存ID及大小ω、信号量θ索引以及当前测量进程运行状态ξ、MIB库内存大小τ、测量进程相关的控制表项和结果表项的指针信息等,所有这些资源是和特定进程绑定的,当进程退出时,通过进程ID找到相应表项,利用其中登记的信息,依次回收共享内存、信号量以及相关MIB库内存,删除相应的进程控制表、测量结果表和测量历史表表项,由此提高了系统资源利用率P,减少代理的运行负担;
测量模块结构阶段分为ping测量模块和TraceRoute测量模块,通过生产者消费者模型,测量模块作为生产者不断产生测量数据,代理作为消费者不断将数据映射到MIB库中,代理处理数据的速度ε(t)与数据数据产生的速率v(t)和数据传输功率η(t)相关,在两者之间制定相应的通信协议以及数据格式,因此大量的测量数据以及复杂控制信息能够迅速准确的传达;
所述面向网络端到端性能监测的代理框架设计方法的计算包括:的功能指数的计算、信息交互质量的计算、系统资源的利用率的计算、代理的处理速度的计算;
(1)代理功能指数计算描述为:
代理将主要采集几项性能指标有:时延t、双向时延抖动系数P、丢包率η、和路由跃点数T,时延t的计算:
t=kt1+lt2+mt3
其中t1是发送时延,t2是传播时延,t3是接收时延,k、l、m为各阶段所占权重;若发送数据的长度为s,信道带宽为b,从源点到终点共经过n段链路,那么总的延时t:
Figure FDA0002804081830000021
双向时延抖动系数P、丢包率η、和路由跃点数T这些指标都是通过发送特定的IP包来测试的,功能系数计算可描述为
Figure FDA0002804081830000022
Figure FDA0002804081830000023
若0≤E≤1,那么说明2925代理的性能较优,无需进一步优化,若E>1,则需要进一步优化;
(2)信息交互质量计算描述为:
W={t,v,p},其中t是传输数据时间,v是数据平均传输速率,p是数据最大传输功率,传输数据的大小R,假设t时刻的输入信号为x(t),通过无线信道传输,其输出y(t)计算可描述为
Figure FDA0002804081830000024
其中h(t)是信道调制冲激响应,n(t)是随机噪声信号,信道传输误差率η(t)的计算可描述为
Figure FDA0002804081830000025
数据传输速率v(t)与当时的网络传输速率vp(t)和数据大小R、传输功率p(t)相关,其计算描述为
Figure FDA0002804081830000031
根据以上参数可求得信息互交质量W计算可描述为
Figure FDA0002804081830000032
其中T为数据传输时间;
(3)系统资源利用率计算描述为:
假设某个特定进程的运行进度为ξi,进程运行时共享内存大小为ωi,信号量的大小为θi,相关的MIB库的内存大小为τi,当前运行时间为ti,其运行进度可描述为
Figure FDA0002804081830000033
共享内存大小ωi:
Figure FDA0002804081830000034
相关的MIB库的内存大小为τi
Figure FDA0002804081830000035
其中ρ为存储系数,若当时有n个进程正在运行,系统资源的利用率P:
Figure FDA0002804081830000036
(4)代理的处理速度计算描述为:
假设测量模块产生测量数据的速率为ν(t),它的数据传输功率为η(t),共享内存大小为ω,那么出其代理的处理速度ε(t)计算可描述为:
Figure FDA0002804081830000041
T为数据处理相关系数,在普通的奔3PC上
Figure FDA0002804081830000042
Figure FDA0002804081830000043
且T≥100ω2,所以
Figure FDA0002804081830000044
CN202011361417.2A 2020-11-28 2020-11-28 面向网络端到端性能监测的代理框架设计方法 Withdrawn CN114268560A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011361417.2A CN114268560A (zh) 2020-11-28 2020-11-28 面向网络端到端性能监测的代理框架设计方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011361417.2A CN114268560A (zh) 2020-11-28 2020-11-28 面向网络端到端性能监测的代理框架设计方法

Publications (1)

Publication Number Publication Date
CN114268560A true CN114268560A (zh) 2022-04-01

Family

ID=80824490

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011361417.2A Withdrawn CN114268560A (zh) 2020-11-28 2020-11-28 面向网络端到端性能监测的代理框架设计方法

Country Status (1)

Country Link
CN (1) CN114268560A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115242673A (zh) * 2022-07-21 2022-10-25 深圳市凯利华电子有限公司 一种检测路由器网络稳定的检测装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115242673A (zh) * 2022-07-21 2022-10-25 深圳市凯利华电子有限公司 一种检测路由器网络稳定的检测装置

Similar Documents

Publication Publication Date Title
Chowdhury et al. Payless: A low cost network monitoring framework for software defined networks
US7120678B2 (en) Method and apparatus for configurable data collection on a computer network
Jain et al. Applying big data technologies to manage QoS in an SDN
CN101933313A (zh) 将针对网络设备的网络流中的网络地址解析为主机名称的方法
CN101933290A (zh) 基于流信息对网络设备上的acl进行配置的方法
CN114157554B (zh) 故障排查方法、装置、存储介质及计算机设备
Cao et al. {ENVI}: elastic resource flexing for network function virtualization
Zhang et al. RINGLM: A link-level packet loss monitoring solution for software-defined networks
Jahromi et al. An application awareness framework based on SDN and machine learning: Defining the roadmap and challenges
CN114268560A (zh) 面向网络端到端性能监测的代理框架设计方法
KR100567320B1 (ko) 인터넷 트래픽 측정을 위한 플로우 생성 방법
Henni et al. Probe-SDN: A smart monitoring framework for SDN-based networks
Duffield et al. Trajectory engine: A backend for trajectory sampling
KR20220029142A (ko) Sdn 컨트롤러 서버 및 이의 sdn 기반 네트워크 트래픽 사용량 분석 방법
KR100440582B1 (ko) 엠피엘에스(mpls)기반 인터넷 망에서의 경로별트래픽 규모 측정 장치 및 방법
CN112242937B (zh) 一种网络测速方法、装置、电子设备及计算机可读介质
CN114257486B (zh) 面向物联网的网络性能管理测量探针的实现方法
Lim et al. Decentralizing network management
Dasari et al. Application Performance Monitoring in Software Defined Networks
JP4589939B2 (ja) 接続情報管理方法及び装置及びプログラム
Wang et al. SCSCDaylight: Network Monitoring Tools for Software-Defined Networks Based on Opendaylight
CN114024895B (zh) 一种基于tr069的网络路线优化方法和系统
Metter Resilience, Availabilty, and Serviceability Evaluation in Software-defined Networks
Nguyen et al. Approximating the end-to-end delay using local measurements: A preliminary study based on conditional expectation
Coviello et al. Bridging network monitoring and the grid

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
WW01 Invention patent application withdrawn after publication

Application publication date: 20220401

WW01 Invention patent application withdrawn after publication