一种基于虚拟终端的用电信息采集系统主站压力测试方法及系统与流程

文档序号:16847917发布日期:2019-02-12 22:28阅读:267来源:国知局
一种基于虚拟终端的用电信息采集系统主站压力测试方法及系统与流程

本发明涉及电力技术领域,更具体地,涉及一种基于虚拟终端的用电信息采集系统主站压力测试方法及系统。



背景技术:

用电信息采集系统已基本实现“全覆盖、全采集”,发挥了显著作用。用电信息采集系统主站是用电信息采集系统的核心部分,通过集中器终端实现用电信息的自动采集、计量异常监测、电能质量监测、用电分析和管理等功能,用电信息采集系统主站的性能状态直接影响了用电信息采集系统主站的运行,因此,用电信息采集系统主站的测试不可或缺。传统主站压力的测试采用系统主站与多台集中器终端通过网络进行连接的方式搭建,此方式需要安装多台集中器终端,成本高、连接复杂难度大,且难以方便的建立连接不同数量集中器终端的测试环境,使得用电信息采集系统主站也难以实现不同数量终端连接的自动化测试。



技术实现要素:

为了解决背景技术存在的传统方式下对用电信息采集系统主站进行压力测试,成本高、连接复杂难度大且无法实现数量较多集中器的测试的问题,本发明提供了一种基于虚拟终端的用电信息采集系统主站压力测试方法及系统,所述方法及系统通过设置用于模拟集中器终端的虚拟终端,通过服务器建立多个独立线程按需求配置多个用于压力测试的虚拟终端,实现对用电信息采集系统主站进行压力测试,所述一种基于虚拟终端的用电信息采集系统主站压力测试方法包括:

构建用于模拟集中器终端的虚拟终端,所述虚拟终端用于实现实体的集中器终端与主站间通信的所有功能;

根据预设的配置参数,配置n个虚拟终端;

建立主站与n个虚拟终端中每一个的虚拟终端的通信,并按预设规则确认通信状态以及功能是否正常;

根据预设规则控制n个虚拟终端对主站进行压力测试,并获得压力测试结果。

进一步的,所述虚拟终端支持的通信协议包括376.1协议、698.45协议以及ssal电力专用安全传输协议;所述虚拟终端可实现的功能包括登录主站、发送心跳包、定时上报用电信息以及接收主站下发的指令并反馈。

进一步的,根据实际环境对所述n个虚拟终端进行配置,确定所述n个虚拟终端中每一个的业务类型、业务执行频率、业务执行成功率以及业务执行时间。

进一步的,在虚拟服务器上根据主站的ip地址以及端口参数建立n个独立线程,所述每个独立线程与主站之间通过socket连接,所述每个独立线程对应一个虚拟终端。

进一步的,建立主站与n个虚拟终端中每一个的虚拟终端的通信,并按预设规则确认通信状态是否正常,包括:

根据虚拟终端与主站间的通信协议,虚拟终端产生报文帧并发送至主站,并接收主站的确认应答;若主站确认应答无误,则通信建立完成;

根据预设的心跳间隔时间,向主站发送心跳报文,以确认通信连接正常。

进一步的,建立主站与n个虚拟终端中每一个的虚拟终端的通信,并按预设规则确认功能是否正常,包括:

所述虚拟终端根据预设的时间间隔向所述主站上报业务报文,所述业务报文包括终端ip、终端台区号、终端下接电能表数量、电能表表号以及电能表用户号;

所述主站接收到所述业务报文后,确认所述业务报文对应的协议格式是否正确,并按照对应的协议格式向所述虚拟终端回复确认帧。

进一步的,建立主站与n个虚拟终端中每一个的虚拟终端的通信,并按预设规则确认功能是否正常,包括:

所述虚拟终端根据预设的时间间隔向所述主站上报业务报文,所述业务报文包括终端ip、终端台区号、终端下接电能表数量、电能表表号以及电能表用户号;

所述主站接收到所述业务报文后,确认所述业务报文对应的协议格式是否正确,并按照对应的协议格式向所述虚拟终端回复确认帧。

进一步的,主站根据预设规则向所述虚拟终端发送数据指令报文和/或功能指令报文;

所述虚拟终端判断报文合法性并解析报文,根据报文指令进行动作,并生成回复报文,按照对应的协议向主站发送回复报文;

所述数据指令用于使虚拟终端反馈包括终端ip、终端台区号、终端下接各电能表的实时用电量、剩余金额、费率电价、阶梯电价以及费率时段的数据;

所述功能指令包括报警指令、报警解除指令、保电指令、保电解除指令、拉闸指令以及合闸指令。

进一步的,所述根据预设规则控制n个虚拟终端对主站进行压力测试,包括:

设置n个虚拟终端中每一个的上传业务报文的类型和上传时间间隔;

控制n个虚拟终端按预设规则同时与主站进行通信。

进一步的,所述n个虚拟终端的每一个与主站进行通信前,所述方法包括:

根据预设规则在所述虚拟终端和主站间进行身份鉴别并进行密钥协商;

发送数据的一方根据协商确定的加密密钥对所述数据进行加密;

接收数据的一方根据协商确定的解密密钥对所述数据进行解密。

所述一种基于虚拟终端的用电信息采集系统主站压力测试系统,所述系统包括:

虚拟终端构建单元,所述虚拟终端构建单元构建用于模拟集中器终端的虚拟终端,所述虚拟终端用于实现实体的集中器终端与主站间通信的所有功能;

配置单元,所述配置单元用于根据预设的配置参数,配置n个虚拟终端;

通信测试单元,所述通信测试单元用于建立主站与n个虚拟终端中每一个的虚拟终端的通信,并按预设规则确认通信状态以及功能是否正常;

压力测试单元,所述压力测试单元用于根据预设规则控制n个虚拟终端对主站进行压力测试,并获得压力测试结果。

进一步的,所述虚拟终端支持的通信协议包括376.1协议、698.45协议以及ssal电力专用安全传输协议;所述虚拟终端可实现的功能包括登录主站、发送心跳包、定时上报用电信息以及接收主站下发的指令并反馈。

进一步的,所述配置单元用于根据实际环境对所述n个虚拟终端进行配置,确定所述n个虚拟终端中每一个的业务类型、业务执行频率、业务执行成功率以及业务执行时间。

进一步的,所述配置单元用于在虚拟服务器上根据主站的ip地址以及端口参数建立n个独立线程,所述每个独立线程与主站之间通过socket连接,所述每个独立线程对应一个虚拟终端。

进一步的,根据虚拟终端与主站间的通信协议,虚拟终端产生报文帧并发送至主站,并接收主站的确认应答;若主站确认应答无误,则通信建立完成;

根据预设的心跳间隔时间,向主站发送心跳报文,以确认通信连接正常。

进一步的,所述虚拟终端根据预设的时间间隔向所述主站上报业务报文,所述业务报文包括终端ip、终端台区号、终端下接电能表数量、电能表表号以及电能表用户号;

所述主站接收到所述业务报文后,确认所述业务报文对应的协议格式是否正确,并按照对应的协议格式向所述虚拟终端回复确认帧。

进一步的,主站根据预设规则向所述虚拟终端发送数据指令报文和/或功能指令报文;

所述虚拟终端判断报文合法性并解析报文,根据报文指令进行动作,并生成回复报文,按照对应的协议向主站发送回复报文;

所述数据指令用于使虚拟终端反馈包括终端ip、终端台区号、终端下接各电能表的实时用电量、剩余金额、费率电价、阶梯电价以及费率时段的数据;

所述功能指令包括报警指令、报警解除指令、保电指令、保电解除指令、拉闸指令以及合闸指令。

进一步的,所述压力测试单元用于设置n个虚拟终端中每一个的上传业务报文的类型和上传时间间隔;控制n个虚拟终端按预设规则同时与主站进行通信。

进一步的,所述系统还包括密钥单元;所述密钥单元用于根据预设规则在所述虚拟终端和主站间进行身份鉴别并进行密钥协商;发送数据的一方根据协商确定的加密密钥对所述数据进行加密;接收数据的一方根据协商确定的解密密钥对所述数据进行解密。

本发明的有益效果为:本发明的技术方案,给出了一种基于虚拟终端的用电信息采集系统主站压力测试方法及系统,所述方法及系统通过设置用于模拟集中器终端的虚拟终端,通过服务器建立多个独立线程按需求配置多个用于压力测试的虚拟终端,通过单个虚拟终端与主站完成通信、功能等测试,并通过控制n个虚拟终端与主站间的通信,可按需完成不同程度的压力测试,通过在服务器上建立独立线程对接每个虚拟终端,在加密允许的情况下,所述方法及系统最高可实现65535个虚拟终端同时访问主站的压力测试;所述方法及系统使用虚拟终端模拟实际的集中器终端,解决了成本高、连接复杂等问题,并实现了按需设置不同程度压力测试的自动化运行,极大提高了主站测试的效率。

附图说明

通过参考下面的附图,可以更为完整地理解本发明的示例性实施方式:

图1为本发明具体实施方式的一种基于虚拟终端的用电信息采集系统主站压力测试方法的流程图;

图2为本发明具体实施方式的一种基于虚拟终端的用电信息采集系统主站压力测试系统的结构图。

具体实施方式

现在参考附图介绍本发明的示例性实施方式,然而,本发明可以用许多不同的形式来实施,并且不局限于此处描述的实施例,提供这些实施例是为了详尽地且完全地公开本发明,并且向所属技术领域的技术人员充分传达本发明的范围。对于表示在附图中的示例性实施方式中的术语并不是对本发明的限定。在附图中,相同的单元/元件使用相同的附图标记。

除非另有说明,此处使用的术语(包括科技术语)对所属技术领域的技术人员具有通常的理解含义。另外,可以理解的是,以通常使用的词典限定的术语,应当被理解为与其相关领域的语境具有一致的含义,而不应该被理解为理想化的或过于正式的意义。

图1为本发明具体实施方式的一种基于虚拟终端的用电信息采集系统主站压力测试方法的流程图;如图1所示,所述方法包括:

步骤110,构建用于模拟集中器终端的虚拟终端,所述虚拟终端用于实现实体的集中器终端与主站间通信的所有功能;

所述虚拟终端支持多种通信协议,所述协议包括376.1协议、698.45协议以及ssal电力专用安全传输协议;所述虚拟终端可实现的功能包括登录主站、发送心跳包、定时上报用电信息以及接收主站下发的指令并反馈。

步骤120,根据预设的配置参数,配置n个虚拟终端;

根据实际环境对所述n个虚拟终端进行配置,确定所述n个虚拟终端中每一个的业务类型、业务执行频率、业务执行成功率以及业务执行时间。

通过如上所述的多个参数配置每一个虚拟终端,以实现最大程度的模拟现实的情况;为后续设置压力测试时各虚拟终端的配合奠定了基础。

在虚拟服务器上根据主站的ip地址以及端口参数建立n个独立线程,所述每个独立线程与主站之间通过socket连接,所述每个独立线程对应一个虚拟终端。

以本实施例为例,所述虚拟服务器最大可建立65535个独立线程,对应65535个虚拟终端可与主站之间进行通信。

进一步的,在所述主站与所述虚拟终端进行通信时,通过对通信过程的加密以保证数据的安全;

根据预设规则在所述虚拟终端和主站间进行身份鉴别并进行密钥协商;

当互相进行身份鉴别确认相互身份后,进行密钥协商,确定加解密密钥;当虚拟终端与主站确认好身份并完成密钥协商后,再次进行通信前无需在进行身份鉴别和密钥协商,根据已协商好的密钥对数据进行加解密。

发送数据的一方根据协商确定的加密密钥对所述数据进行加密;

接收数据的一方根据协商确定的解密密钥对所述数据进行解密。

进一步的,所述主站对应的加解密设备可支持的加解密终端最大数量为m;若所述n>m,则在进行数据加密传输的前提下,实际可同时与主站进行数据通信的虚拟终端数量最大为m个;若n≤m,则同时与主站进行数据通信的虚拟终端数量即为n个。

步骤130,建立主站与n个虚拟终端中每一个的虚拟终端的通信,并按预设规则确认通信状态以及功能是否正常;

首先确认所述虚拟终端和主站间的通信状态是否正常:

根据虚拟终端与主站间的通信协议,虚拟终端产生报文帧并发送至主站,并接收主站的确认应答;若主站确认应答无误,则说明通信可用,通信建立完成;

根据预设的心跳间隔时间,向主站发送心跳报文,以确认通信连接正常。所述主站根据是否按预设的间隔时间接收到了对应的心跳报文确定与该虚拟终端是否保持连接正常状态。

进一步确认所述虚拟终端向所述主站发送业务报文是否正常;

所述虚拟终端根据预设的时间间隔向所述主站上报业务报文,所述业务报文包括终端ip、终端台区号、终端下接电能表数量、电能表表号以及电能表用户号;

所述主站接收到所述业务报文后,确认所述业务报文对应的协议格式是否正确,并按照对应的协议格式向所述虚拟终端回复确认帧。

进一步确认所述虚拟终端接收所述主站的指令进行反馈是否正常;

主站根据预设规则向所述虚拟终端发送数据指令报文和/或功能指令报文;

所述虚拟终端判断报文合法性并解析报文,根据报文指令进行动作,并生成回复报文,按照对应的协议向主站发送回复报文;

所述数据指令用于使虚拟终端反馈包括终端ip、终端台区号、终端下接各电能表的实时用电量、剩余金额、费率电价、阶梯电价以及费率时段的数据;当接收的报文为所述数据指令时,所述虚拟终端根据数据指令所要求反馈的数据生成报文,作为回复报文。

所述功能指令包括报警指令、报警解除指令、保电指令、保电解除指令、拉闸指令以及合闸指令。当所述接收的报文为功能指令时,所述虚拟终端根据功能指令所指示内容进行动作。

步骤140,根据预设规则控制n个虚拟终端对主站进行压力测试,并获得压力测试结果。

进一步的,所述根据预设规则控制n个虚拟终端对主站进行压力测试,包括包括并发压力测试,重复压力测试、量级压力测试等;

设置n个虚拟终端中每一个的上传业务报文的类型和上传时间间隔;

控制n个虚拟终端按预设规则同时与主站进行通信。

本实施例中,通过控制每一个的上传业务报文的类型和上传时间间隔,可实现多个虚拟终端同时访问主站,以确认所述主站可承受的最大并发量;通过对一项业务进行重复的数据通信,以确认主站在重复接收数据上的压力测试结果。

图2为本发明具体实施方式的一种基于虚拟终端的用电信息采集系统主站压力测试系统的结构图。如图2所示,所述系统包括:

虚拟终端构建单元,所述虚拟终端构建单元构建用于模拟集中器终端的虚拟终端,所述虚拟终端用于实现实体的集中器终端与主站间通信的所有功能;

进一步的,进一步的,所述虚拟终端支持的通信协议包括376.1协议、698.45协议以及ssal电力专用安全传输协议;所述虚拟终端可实现的功能包括登录主站、发送心跳包、定时上报用电信息以及接收主站下发的指令并反馈。

配置单元,所述配置单元用于根据预设的配置参数,配置n个虚拟终端;

进一步的,所述配置单元用于根据实际环境对所述n个虚拟终端进行配置,确定所述n个虚拟终端中每一个的业务类型、业务执行频率、业务执行成功率以及业务执行时间。

进一步的,所述配置单元用于在虚拟服务器上根据主站的ip地址以及端口参数建立n个独立线程,所述每个独立线程与主站之间通过socket连接,所述每个独立线程对应一个虚拟终端。

通信测试单元,所述通信测试单元用于建立主站与n个虚拟终端中每一个的虚拟终端的通信,并按预设规则确认通信状态以及功能是否正常;

进一步的,根据虚拟终端与主站间的通信协议,虚拟终端产生报文帧并发送至主站,并接收主站的确认应答;若主站确认应答无误,则通信建立完成;

根据预设的心跳间隔时间,向主站发送心跳报文,以确认通信连接正常。

进一步的,所述虚拟终端根据预设的时间间隔向所述主站上报业务报文,所述业务报文包括终端ip、终端台区号、终端下接电能表数量、电能表表号以及电能表用户号;

所述主站接收到所述业务报文后,确认所述业务报文对应的协议格式是否正确,并按照对应的协议格式向所述虚拟终端回复确认帧。

进一步的,主站根据预设规则向所述虚拟终端发送数据指令报文和/或功能指令报文;

所述虚拟终端判断报文合法性并解析报文,根据报文指令进行动作,并生成回复报文,按照对应的协议向主站发送回复报文;

所述数据指令用于使虚拟终端反馈包括终端ip、终端台区号、终端下接各电能表的实时用电量、剩余金额、费率电价、阶梯电价以及费率时段的数据;

所述功能指令包括报警指令、报警解除指令、保电指令、保电解除指令、拉闸指令以及合闸指令。

压力测试单元,所述压力测试单元用于根据预设规则控制n个虚拟终端对主站进行压力测试,并获得压力测试结果。

进一步的,所述压力测试单元用于设置n个虚拟终端中每一个的上传业务报文的类型和上传时间间隔;控制n个虚拟终端按预设规则同时与主站进行通信。

进一步的,所述系统还包括密钥单元;所述密钥单元用于根据预设规则在所述虚拟终端和主站间进行身份鉴别并进行密钥协商;发送数据的一方根据协商确定的加密密钥对所述数据进行加密;接收数据的一方根据协商确定的解密密钥对所述数据进行解密。

在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本公开的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。

本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。本说明书中涉及到的步骤编号仅用于区别各步骤,而并不用于限制各步骤之间的时间或逻辑的关系,除非文中有明确的限定,否则各个步骤之间的关系包括各种可能的情况。

此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本公开的范围之内并且形成不同的实施例。例如,在权利要求书中所要求保护的实施例的任意之一都可以以任意的组合方式来使用。

本公开的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本公开还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者系统程序(例如,计算机程序和计算机程序产品)。这样的实现本公开的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。

应该注意的是上述实施例对本公开进行说明而不是对本公开进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本公开可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干系统的单元权利要求中,这些系统中的若干个可以是通过同一个硬件项来具体体现。

以上所述仅是本公开的具体实施方式,应当指出的是,对于本领域的普通技术人员来说,在不脱离本公开精神的前提下,可以作出若干改进、修改、和变形,这些改进、修改、和变形都应视为落在本申请的保护范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1