用电信息采集接口测试数据传输请求量动态调整策略

2018-06-26 04:32
关键词:传输数据数据量阈值

,  , ,

(1. 中国电力科学研究院, 北京 100192; 2. 国网浙江省电力公司电力科学研究院,浙江 杭州 310014)

用电信息采集系统为各类智能用电信息化系统提供基础数据。为了解决对外提供数据的统一管理问题,系统中建立了统一接口数据平台,为各类系统提供统一的接口服务。目前,单个省级电力公司每日传输的数据量高达数百万条次,接口运行压力巨大。为了保证统一接口平台的运行稳定性,需要对统一接口平台进行测试。用电信息采集系统数据量非常庞大,依据目前规模,一个省级电力公司每日处理总数据量接近1 TB,因此在测试过程中面临着海量数据的传输问题[1-2]。

目前,用电信息采集系统统一接口平台主要采用Web Service的方式同外围系统进行交互。Web Service具有跨平台、通用性好等特点;但是,由于其采用基于XML的协议,需要接口双方基于XML协议进行解析,在面临海量数据交互时存在效率低的问题,因此必须研究一种适合海量数据的数据传输策略,以满足统一接口平台测试要求。

随着数据应用不断深化,电力企业对数据传输优化的重视程度不断提高,关于数据传输优化问题的研究在各类科研及其应用领域广泛开展。何恒靖等[3]研究了云计算在用电信息采集系统中的应用前景,对将云计算应用到数据传输策略中具有指导意义。彭立志[4]针对现有互联网流量识别技术中存在的问题,如数据采集困难,特征提取技术和非平衡识别技术有待提高等,提出互联网识别技术应发展的3个方向。郑永康等[5]提出闭环设计的IEC 61850一致性测试系统,通过开放性的算例平台提供自定义算例接口,可根据实际需要自行添加和修改测试算例。

从以上研究分析可以发现,传统数据传输改进往往是采用固定的模式对数据请求进行发送,然而传输通道可能存在各种各样的情况,例如高频电磁干扰、传输线发生断裂和通讯拥塞等,从而导致接口传递的数据出现错误和丢失。由于在最底层的计算机通信网络提供的服务是不可靠的分组传送,因此当传送过程中出现错误以及在网络硬件失效或网络负荷太大时,数据包有可能丢失、延迟、重复和乱序,影响数据传输和处理的效率和可靠性。作为数据传输端的Web Service接口平台对网络负载的均衡提出更高的要求,传统的数据传输方法在面临上述问题时,其数据传输性能大幅降低,因此,必须研究一种基于反馈信息、自适应于网络传输环境变化的数据传输策略。针对这一需求,本文中提出一种基于自适应动态反馈传输机制的数据传输请求调整策略,以达到增加传输数据量的目的,实现基于Web Service接口数据传输的负载均衡,保障测试数据并行处理能够高效地开展。

1 数据传输请求量动态调整策略

1.1 基于测试环境的数据传输需求

为了实现用电信息采集系统与外部业务系统之间的数据交互所构建的接口一致性及互操作测试系统的运行,首先进行统一接口平台的自动化测试,验证统一接口平台功能、性能等各方面指标是否满足客户要求,避免因接口错误导致信息交互异常。在对统一接口平台进行测试的过程中,用接口一致性及互操作测试系统模拟外部业务系统,作为数据传输请求发送端,向采集系统发送传输数据请求。用电信息采集系统统一接口平台作为数据传输介质,负责将用电信息采集系统的数据传输到测试系统;用电信息采集系统作为数据传输请求的接收端,负责发送请求数据。作为数据传输请求的源头,测试系统需采用合适的传输控制手段,在资源允许的前提下,最大限度地降低接口的网络负担,提高接口的吞吐能力,使测试数据高效、准确地传输,保障测试系统的数据处理能力。

为了满足用电信息采集系统与外部业务系统跨平台、安全的数据交互需求,用电信息采集系统统一接口平台采用Web Service的数据交互方式。Web Service的传输数据由标准文本组成,任何平台和程序语言都可以使用;格式的转换不受限制,可以满足不同应用系统的需求,但是,当接口平台的数据交互量较大时,解释程序的执行效率会变低,大批量数据交互将会受限,且一旦发生数据传输中断,整个数据包必须重传[6]。为了保证统一接口平台高效的数据传输,应尽可能避免数据重传。

基于以上测试环境的数据传输需求,数据传输时不仅需要考虑各种影响因素,还需要考虑数据传输介质的传输效率[7]。选择合适的数据传输请求量,一方面可以避免数据传输过程中出现错误,另一方面可以避免网络硬件失效或网络负荷太大的异常情况,确保测试系统自动地完成动态数据传输。基于以上考虑,本文中提出一种基于动态资源的数据传输请求量调整策略,该策略在不同的传输负载情况下,自动根据传输接口的资源信息,采用不同的调整策略,实时调整数据传输请求量,从而在保证数据传输可靠性和抗干扰性的基础上实现数据的高效传输。

1.2 数据传输请求量动态调整策略设计

为了保证采集系统发送的数据能够完整、高效地通过统一接口平台传输到测试系统,需要借助标准传输控制(TCP)拥塞控制的原理,设计一种根据传输接口负载情况动态调整数据传输请求量的传输策略。根据当前周期测试端已接收数据量和待传数据量,对比当前周期接收数据的总耗时,预估下一周期的待传数据量即下一周期传输负载率R。将R映射至3个不同效用区域,根据R的取值确定数据传输请求量的调整策略。在不同R取值下,数据传输请求量增长示意图如图1所示。

图1 数据传输请求量增长示意图

由图可以看出,根据传输负载率R将数据传输请求策略分为3个步骤,分别为“快速启动”“平缓增长”和“回归发送”。在低负载区域,测试端采用“快速启动”策略以“数据快速增长”方式增加数据传输请求量,尽快提高传输路径的负载量,同时避免不必要的数据包丢失;在高负载区域,采用“平缓增长”策略以“线性方式”调整数据传输请求量,减少突发数据量的产生,尽量维持稳定数据传输发送请求,避免数据传输请求的丢失概率增加;当传输路径出现过载时,采用“回归发送”策略,先减少数据传输请求量,然后计算R值,映射到对应的负载区域,再次调整数据传输请求量。动态调整数据传输请求量的传输策略流程如图2所示。

从图中可知,阈值直接关系到数据传输请求量的策略选择,因此需要设计一种基于动态规划的最优阈值控制策略,有效增强网络数据传输性能,降低接口网络负担,提高接口吞吐能力,保证系统的整体处理能力。

2 数据传输请求量动态调整策略实现

2.1 影响数据传输的主要因素

在进行接口数据传输时,网络负荷过大、数据传输资源缺乏等情况下可能会出现数据丢失、 延迟以及重复的现象。为了确保测试系统能够利用现有资源动态调整数据传输状态,提高数据传输效率、处理效率和可靠性,需要对以下影响数据传输的主要因素进行分析[8]。

D—数据传输请求量;ρ—负载阈值;R—传输负载率。图2 动态调整数据传输请求量的传输策略流程图

1)传输负载率。传输负载是在传输路径中已承载的数据传输量。在传输带宽一定的条件下,传输负载会影响数据传输时间和测试端的数据接收效率。当数据传输延迟,测试端就可能将传输失败的结果反馈给接口平台,接口平台接收到测试系统的传输失败反馈后会将数据重新发送,这样便会加大传输路径的负载压力,这也是将传输负载作为影响数据传输的主要因素之一[9]。

为了衡量传输负载的传输效果,将其与传输路径可提供的最大传输量进行比例计算作为下一周期传输负载率R,其计算公式为

(1)

式中:v为时间间隔ti测试方接收的数据量,v/ti表示单位时间内测试端平均数据传输量;α为当前周期传输数据量与下一周期传输数据量的参数比;β为待传输数据量的传输时间与已传输数据量的时间参数比;ζ为传输路径的利用率;C为传输路径的最大带宽;tρ为到达负载阈值ρ所用的时间。

2)可用带宽。传输路径中的可用带宽作为数据传输的重要资源,对数据传输效率有着重大影响[10]。本文中使用测试端观测到的数据传输完毕后的响应速率来估计数据传输时的可用带宽。数据传输完毕返回的响应速率与数据传输量、数据传输时间以及数据传输请求信息有关,具体表示为

(2)

式中:bn为在tn时刻第n个数据传输完毕时估计的可用带宽;tn-1为第n-1个数据传输完毕的时刻;vn为第n个数据传输量;dn为tn时刻数据传输请求的端到端时延,通常以第n个数据传输请求的端到端往返时间进行确定。

2.2 数据传输请求量计算

基于数据传输策略设计,测试端根据影响数据传输的主要因素分别执行不同的策略,实现数据传输请求数量的动态调整。本文中基于传输路径的负载状况选择不同的数据传输请求量调整策略。任意时刻t,当0≤R<ρ(ρ为负载阀值)时,即负载尚未到达高负载阈值时,测试端则采用“快速启动”策略,快速的增加数据传输请求量,即

(3)

式中:D为本次数据传输请求量;D′为上次数据传输请求量;a为第n-1次请求数据传输时间与第n-2次请求数据传输时间的倍数。

当ρ

(4)

当R>1时,数据传输请求量“回归发送”,测试端谨慎地减小数据传输请求量,即

(5)

2.3 基于动态规划的最优阈值控制策略

上节中基于传输负载率对数据传输请求量进行动态调整,传输负载率所在的区间决定了数据传输请求量的计算方式,在“快速启动”阶段的数据传输请求量迅速增长,达到短时间内提升数据传输率的目的。达到负载阈值后,此时数据传输请求量维持在一个较高的水平,且变化相对缓慢,在整个数据传输过程中占比为75%以上,因此高低负载分界的阈值ρ在数据传输请求量的调整中起到关键作用。本节中提出一种基于动态规划的最优阈值控制策略,对阈值ρ进行动态优化调整。

2)对[ρmin,ρmax]内的阈值进行遍历赋值,

(6)

(7)

①若vk≥vmax,返回步骤5),

②若vk

6)若vk-vk-1<0且n≤3,则k=k+1,将第k次迭代的集合ρk内最大值赋值给ρmax,最小值赋值给ρmin,n=n+1,返回步骤2)。

7)若vk-vk-1<0且n>3,返回步骤1)。

基于动态规划确定最优阈值ρ, 以实现最大数据传输速率, 避免数据处理延时的影响, 当传输路径、 传输质量变化时, 可对阈值ρ进行重新迭代优化。

在数据传输过程中,根据传输路径的实时资源动态调整数据传输请求量和最优负载率阈值,有效地降低了数据传输过程中的丢包率,同时更好地保证数据传输的可靠性。

3 实验及分析

实验运行环境部署于某省级电力公司运行的用电信息采集统一接口平台测试系统,使用2台4路PC服务器搭建测试服务器,用电信息采集系统统一接口平台与接口测试系统之间建立2条测试用数据链路,其中一条带宽为1 Gbps的以太网,另一条为4条带宽为1 Gbps聚合而成的以太网,其带宽接近4 Gbps。 选取该电力公司2016年7—9月500万家典型用户的部分采集数据作为接口测试数据,其中高压客户数量为10万家,低压客户数量为490万家。

3.1 传输数据量测试

通过前面的描述可知,在传输负载率取值不同的情况下,数据传输请求量选择不同的调整策略。在不同的数据请求量情况下,数据传输的数据量不同,通过2组实验,在相同时间内,分别在不同带宽、不同数据源数量前提下进行10次测试,比较本文中提出的策略与经典拥塞控制的TCP Westwood算法的平均数据量[11]。

TCP Westwood算法的主要思想是通过在发送端持续不断地检测确认字符(acknowledgement,ACK)的到达速率来进行带宽估计,当拥塞发生时用带宽估计值来调整拥塞窗口和慢启动阈值,采用累加增长适应下调(additive increase and adaptive decreasen,AIAD)的拥塞控制机制。TCP Westwood算法能够提高网络的吞吐量,且具有良好的公平性和与现行网络的互操作性[12];但是,由于该算法不能很好地判别传输过程中丢包的原因,因此会导致拥塞机制频繁调用,造成处理效率降低。

实验1。选取带宽为1 Gbps的通信链路,测试端模拟外部业务系统的数据请求发送源个数为k,k的取值从[1,16]、[80,100]、[1,100]这3个范围随机选取10次,测试不同k值下TCP Westwood算法和本文中提出的策略在1 s时间内测试系统接收到的数据量,最后求10次实验的平均数据量,其结果如图3所示。

图3 带宽为1 Gbps时的平均数据量

实验2。选取带宽为4 Gbps的通信链路,测试端模拟外部业务系统的数据请求发送源个数为k,k的取值从[1,16]、[80,100]、[1,100]这3个范围随机选取10次,测试不同k值下TCP Westwood算法和本文中提出的策略在1 s时间内测试系统接收到的数据量,最后求10次实验的平均数据量,其结果如图4所示。

图4 带宽为4 Gbps时的平均数据量

由图3、4中可以看出,在系统测试环境下,数据源个数较少、个数较多、个数变化量较大时,数据传输请求量动态调整策略相对传统测试数据传输方式均增大了数据传输的数据量,且稳定性能更好。

3.2 可靠性性能测试

在不同的带宽下,分别测试本文中提出的策略与TCP Westwood算法丢失数据量,比较这2个算法的可靠性[12]。

实验中分别在带宽是1、4 Gbps时,测试端模拟外部业务系统的数据请求发送源个数为k,k的取值从[1,16]、[80,100]、[1,100]这3个范围随机选取10次,求取10次数据传输丢弃数据量的平均值。本文中提出的策略与TCP Westwood算法的实验结果如图5、 6所示。

图5 1 Gbps带宽下数据请求丢弃总量对比图

图6 4 Gbps带宽下数据请求丢弃总量对比图

在不同带宽条件下,测试系统采用本文中提出的调整策略造成的数据请求丢弃量均少于传统算法。由于丢弃数减少,因此重传及超时也随之减少,提高了数据传输路径的利用率。

3.3 阈值变化对数据传输影响测试

在带宽为4 Gbps、数据源个数k=20的条件下,观察阈值ρ对数据传输的影响。当ρ取固定值时,与基于动态规划的最优阈值控制策略生成的动态ρ进行数据传输时间的对比分析。ρ固定值取0.3,在阈值控制策略中初始ρmin=0.1、ρmax=1和m=20。传输效率对比结果如图7所示。由图可以看出,在数据传输量相同情况下,阈值ρ变化时的数据传输时间要少于阈值ρ是固定值时的,特别是当传输数据量增大到百万级别时,传输时间差距更为明显。

图7 阈值变化对数据传输时间的影响

由以上实验数据可知,数据传输量动态调整策略具有较好的稳定性和对TCP友好性。根据影响数据传输效率的因素参数进行动态传输数据请求量的调整,从而获得较大的网络传输量,减少拥塞的发生,减小了数据请求的丢弃率。利用基于动态规划的最优阈值控制策略对阈值ρ进行动态生成,从而更加准确地获取传输数据请求量,缩短数据传输时间,提高数据传输效率。

4 结语

本文中提出的数据传输请求量动态调整策略,改进了传统测试数据传输方法。基于数据传输路径的传输负载率,将负载率映射到对应的效应区间,分别采用“快速启动”“平缓增长”“回归发送”的数据传输请求量调整策略,以负载估计、可用带宽估计动态调整测试端的数据传输请求量。为了减少数据传输量时变及反馈数据延迟的影响,提出了基于动态规划的最优阈值调整策略,实现关键阈值的动态调整。

实验结果表明,数据传输量动态调整策略不仅有效增大传输的数据量,减少数据请求丢弃量,降低数据传输压力,而且通过动态规划的方法调整最优负载率阈值,提高了数据传输效率。综上,本策略高效可行,能够改善用电信息采集系统统一接口测试数据的传输能力和可靠性,保障后续接口测试工作的开展。

猜你喜欢
传输数据数据量阈值
基于单片机的物联网传输数据高并发读写系统设计
基于SSL VPN实现安全共享疾控单位之间的数据
基于大数据量的初至层析成像算法优化
基于深度强化学习的物联网传输数据实时调度方法
采用红细胞沉降率和C-反应蛋白作为假体周围感染的阈值
高刷新率不容易显示器需求与接口标准带宽
宽带信号采集与大数据量传输系统设计与研究
小波阈值去噪在深小孔钻削声发射信号处理中的应用
苹果专利可采用光纤输出灯光并传输数据将光纤隐藏于车辆部件内
基于迟滞比较器的双阈值稳压供电控制电路