发明内容
针对现有技术存在的缺陷,本发明提供一种异构网络协议标准智件、云监控管理系统和方法,可有效解决上述问题。
本发明采用的技术方案如下:
本发明提供一种异构网络协议标准智件,包括:
异构协议库,用于存储与每一类智能设备对应的通信协议;所述通信协议具体指:需采集的所述智能设备的实时监控参数;所述异构协议库为动态链接库的组织结构,由多个相互独立的动态协议库文件构成;每个所述动态协议库文件唯一对应一个智能设备,用于存储需采集该智能设备的实时监控参数;并且,每个所述动态协议库文件可以被独立调用;
标准通信接口,用于与智能设备通信;其中,所述标准通信接口的前端安装至少一种通信接口转换器;所述通信接口转换器的一端与所述智能设备的通信接口适配,所述通信接口转换器的另一端与所述标准通信接口适配,通过所述通信接口转换器,实现具有不同类型通信接口的智能设备与所述异构网络协议标准智件之间的通信;
处理器,采用单进程多线程方式,采集并处理各个所述智能设备在当前时刻的设备运行参数,具体包括:
进程:用于在所述异构协议库初始化时,所述进程被启动,所述进程根据所述异构网络协议标准智件当前连接的所述智能设备的标识,从所述异构协议库中,将与各个所述智能设备对应的动态协议库文件动态加载到内存;
启动单元,用于启动与当前连接的智能设备数量相同的线程,每个线程与唯一一个所述智能设备对应;
线程,用于被所述启动单元启动后,采用下列方式运行:
(1)所述线程从内存中读取对应的所述智能设备的动态协议库文件,对所述动态协议库文件进行解析,获得与所述智能设备对应的通信协议,进而获得需采集的所述智能设备的实时监控参数;
(2)所述线程向所述智能设备发送上传所述实时监控参数的命令;
(3)所述线程接收所述智能设备上传的实时监控参数响应数据;
(4)所述线程一方面将所接收到的所述实时监控参数存储到存储单元;所述线程另一方面对所接收到的所述监控参数进行数据正确性校验,即:对数据的包头、包尾、数据长度和数据自身校验均进行逐一检查,如果完全通过检验,再对所述监控参数进行状态解析,得到所述智能设备的当前设备运行状态;
(5)所述线程将解析得到的所述设备运行状态暂存到数据列表里,并会根据所述智能设备上传的实时监控参数响应数据,实时更新所述数据列表;
封装单元,用于定时对所述数据列表中的所述设备运行状态进行封装,得到标准数据包;然后,将所述标准数据包上传到云监控管理中心。
优选的,还包括:
线程注销单元,用于当所述线程运行结束后,注销所述线程;
存储单元,用于存储所述异构网络协议标准智件接收到的各智能设备的实时监控参数;以及,所述异构网络协议标准智件解析得到的各智能设备的运行状态。
优选的,所述标准通信接口为RJ45以太网口。
优选的,所述封装单元封装得到的所述标准数据包为XML标记语言格式的标准数据包。
优选的,所述标准数据包包含智能设备的ID、IP、名称、实时模拟量值、状态量和/或告警量信息。
优选的,还包括:嵌入式web发布单元;
所述嵌入式web发布单元用于:接收所输入的异构网络协议标准智件的IP地址,从而将浏览器跳转到异构网络协议标准智件的web页面,通过所述web页面,可显示或编辑所述异构网络协议标准智件存储的信息;可对所述异构网络协议标准智件的所述异构协议库进行升级操作;可对所述异构网络协议标准智件的硬件进行升级操作。
本发明还提供一种云监控管理系统,包括云监控管理中心和分别部署在各个网络节点的异构网络协议标准智件;
所述异构网络协议标准智件的一端采用标准通信接口与各个智能设备连接;
所述异构网络协议标准智件的另一端通过通信网络与所述云监控管理中心连接。
本发明还提供一种云监控管理方法,包括以下步骤:
S1,在各个网络节点分别部署异构网络协议标准智件;各个所述异构网络协议标准智件的一端通过通信接口转换器与各种类型的智能设备连接;各个所述异构网络协议标准智件的另一端均连接到云监控管理中心连接;
S2,所述异构网络协议标准智件采用单进程多线程方式,实时采集所述智能设备的设备运行参数,并对所述设备运行参数进行解析、封包后,得到标准数据包;然后,将所述标准数据包上传到云监控管理中心。
优选的,还包括:
所述云监控管理中心可自动发现网络中的各个所述异构网络协议标准智件,并对所述异构网络协议标准智件进行管理;具体管理方式包括:
所述云监控管理中心可读取到所述异构网络协议标准智件的全部信息,包括:所述异构网络协议标准智件的IP、异构协议库版本号、硬件版本号、设备列表;此处,还可更改所述异构网络协议标准智件的IP、更新异构协议库版本号、升级主程序、重启所述异构网络协议标准智件的远程操作。
优选的,所述云监控管理中心采用以下两种方式之一自动发现网络中的各个所述异构网络协议标准智件:
方式一:所述异构网络协议标准智件被设置为主动模式后,主动不断向外发送寻址包;当所述云监控管理中心接收到所述寻址包时,所述云监控管理中心建立与所述异构网络协议标准智件的通信连接;
方式二:所述云监控管理中心不断向外发送寻址包;当某个所述异构网络协议标准智件接收到所述寻址包时,立即向所述云监控管理中心发送响应包;当所述云监控管理中心接收到所述响应包时,所述云监控管理中心建立与所述异构网络协议标准智件的通信连接。
本发明提供的异构网络协议标准智件、云监控管理系统和方法具有以下优点:
在每个网络节点部署异构网络协议标准智件,异构网络协议标准智件采用标准化输入模式,可兼容更多类型的智能设备;异构网络协议标准智件采用标准化输出模式,方便进行云端部署;此外,异构网络协议标准智件采用可异构的协议库和多线程的处理机制,既有效降低了云管理服务器的处理速度,又提高了数据采集和处理的速度,实现对各个智能设备进行实时监控。
具体实施方式
以下结合附图对本发明进行详细说明:
结合图1,本发明提供一种异构网络协议标准智件,采用低功耗设计,满载功率小于15W;包括:
(1)异构协议库
异构协议库,用于存储与每一类智能设备对应的通信协议;所述通信协议具体指:需采集的所述智能设备的实时监控参数;所述异构协议库为动态链接库的组织结构,由多个相互独立的动态协议库文件构成;每个所述动态协议库文件唯一对应一个智能设备,用于存储需采集该智能设备的实时监控参数;并且,每个所述动态协议库文件可以被独立调用;
具体的,智能设备的类型众多,例如,包括UPS、开关电源、精密空调、电量仪、发电机等等,每种智能设备分别由不同厂家生产,同一厂家也会生产不用型号和不同系列的产品,因此,每种产品的运行参数均会有所不同,由此形成了各种通信协议。本发明中,将每种设备的通信协议封装到异构协议库,从而建立了需监控的参数与智能设备之间的精确对应关系。
(2)标准通信接口
标准通信接口,用于与智能设备通信;其中,所述标准通信接口的前端安装至少一种通信接口转换器;所述通信接口转换器的一端与所述智能设备的通信接口适配,所述通信接口转换器的另一端与所述标准通信接口适配,通过所述通信接口转换器,实现具有不同类型通信接口的智能设备与所述异构网络协议标准智件之间的通信;
具体的,因为各种智能设备的厂家、型号、应用场合各不相同,因此,通信接口也不一样,从通信方式区分,主要包括RS232、RS485、TCP&UDP等,从接口类型区分,主要包括DB9、DB25、RJ45、RJ11等。可见,智能设备的前端通信接口各式各样。
因此,本发明中,为了提高异构网络协议标准智件对各类智能设备的兼容性,同时,在尽量控制异构网络协议标准智件配置复杂度的原则下,将异构网络协议标准智件采用统一的标准通信接口,如,采用RJ45以太网口方式接入,前端采用通信接口转换器进行通信方式和通信接口转换,实现了异构网络协议标准智件和各类智能设备之间的兼容性。
(3)处理器
处理器,采用单进程多线程方式进行智能设备运行数据的采集、解析、封包和转发,一个标准的异构网络协议标准智件可允许同时进行250个协议数据的发送、接收、解析和封包转发,每个协议均能各自进行自身的数据参数计算和状态的解析;具体包括:
进程:用于在所述异构协议库初始化时,所述进程被启动,所述进程根据所述异构网络协议标准智件当前连接的所述智能设备的标识,从所述异构协议库中,将与各个所述智能设备对应的动态协议库文件动态加载到内存;
本发明中,在异构协议库初始化时,将智能设备对应的动态协议库文件动态加载到内存,方便后续进行调用,从而减少了反复进行异构协议库的操作,节省系统占用资源;
启动单元,用于启动与当前连接的智能设备数量相同的线程,每个线程与唯一一个所述智能设备对应;采用一个智能设备对应唯一一个线程的算法进行数据的独立发送和接收,线程相互之间不会形成任何干扰影响,而且,根据智能设备数量加载对应数量的线程,不会过多的占用内存空间。
线程,用于被所述启动单元启动后,采用下列方式运行:
(1)所述线程从内存中读取对应的所述智能设备的动态协议库文件,对所述动态协议库文件进行解析,获得与所述智能设备对应的通信协议,进而获得需采集的所述智能设备的实时监控参数;
(2)所述线程向所述智能设备发送上传所述实时监控参数的命令;
(3)所述线程接收所述智能设备上传的实时监控参数响应数据;
(4)所述线程一方面将所接收到的所述实时监控参数存储到存储单元;所述线程另一方面对所接收到的所述监控参数进行数据正确性校验,即:对数据的包头、包尾、数据长度和数据自身校验均进行逐一检查,如果完全通过检验,再对所述监控参数进行状态解析,得到所述智能设备的当前设备运行状态;
(5)所述线程将解析得到的所述设备运行状态暂存到数据列表里,并会根据所述智能设备上传的实时监控参数响应数据,实时更新所述数据列表;
封装单元,用于定时对所述数据列表中的所述设备运行状态进行封装,得到标准数据包;其中,数据包可以整包封装,也可以根据第三方要求,封装为1K的容量小的标准数据包,再进行转发;然后,将所述标准数据包上传到云监控管理中心。
此外,封装单元封装得到的所述标准数据包为XML标记语言格式的标准数据包。标准数据包包含智能设备的ID、IP、名称、实时模拟量值、状态量和/或告警量信息。
还包括:
线程注销单元,用于当所述线程运行结束后,注销所述线程。
存储单元,用于存储所述异构网络协议标准智件接收到的各智能设备的实时监控参数;以及,所述异构网络协议标准智件解析得到的各智能设备的运行状态;
还包括:嵌入式web发布单元;
所述嵌入式web发布单元用于:接收所输入的异构网络协议标准智件的IP地址,从而将浏览器跳转到异构网络协议标准智件的web页面,通过所述web页面,可显示或编辑所述异构网络协议标准智件存储的信息;可对所述异构网络协议标准智件的所述异构协议库进行升级操作;可对所述异构网络协议标准智件的硬件进行升级操作。
本发明中,对于异构协议库,采用以下两次编译方式,使其能够动态加载到内存中:
第一次对异构协议库进行编辑,产生OBJ文件,第二次编译时,调用Link对OBJ文件进行链接,Link可以通过改变参数而调整编译链接后的结果。
参数调整如下:
usage:LINK[options][files][commandfile]
options:
/ALIGN:#
/BASE:{address|filename,key}
/COMMENT:comment
/DEBUG
/DEBUGTYPE:{CV|COFF}
/DEF:filename
/DEFAULTLIB:library
/DELAY:{NOBIND|UNLOAD}
/DELAYLOAD:dll
/DLL
/DRIVER[:{UPONLY|WDM}]
/ENTRY:symbol
/EXETYPE:DYNAMIC
/EXPORT:symbol
/FIXED[:NO]
/FORCE[:{MULTIPLE|UNRESOLVED}]
/GPSIZE:#
/HEAP:reserve[,commit]
/IMPLIB:filename
/INCLUDE:symbol
/INCREMENTAL:{YES|NO}
/LARGEADDRESSAWARE[:NO]
/LIBPATH:dir
/LINK50COMPAT
/MACHINE:{ALPHA|ARM|IX86|MIPS|MIPS16|MIPSR41XX|PPC|SH3|S
/MAP[:filename]
/MAPINFO:{EXPORTS|FIXUPS|LINES}
/MERGE:from=to
/NODEFAULTLIB[:library]
/NOENTRY
/NOLOGO
/OPT:{ICF[,iterations]|NOICF|NOREF|NOWIN98|REF|WIN98}
/ORDER:filename
/OUT:filename
/PDB:{filename|NONE}
/PDBTYPE:{CON[SOLIDATE]|SEPT[YPES]}
/PROFILE
/RELEASE
/SECTION:name,[E][R][W][S][D][K][L][P][X]
/STACK:reserve[,commit]
/STUB:filename
/SUBSYSTEM:{NATIVE|WINDOWS|CONSOLE|WINDOWSCE|POSIX}[,#[.
/SWAPRUN:{CD|NET}
/VERBOSE[:LIB]
/VERSION:#[.#]
/VXD
/WARN[:warninglevel]
/WINDOWSCE:{CONVERT|EMULATION}
/WS:AGGRESSIVE
上述参数中,参数“/EXPORT”就是让生成的DLL具有输出函数的功能,GamBas编译链接时没有加入这个参数选项,因此不能生成直接独立输出的函数。因此,需要通过手工编译,但是每次编译的时候,实际是没有OBJ文件输出的,所以首要任务是截获OBJ文件,通过分析得知,GamBas系统在链接编译后,自动将OBJ文件删除掉,因此,需要在GamBas系统链接前终止编译,所以本发明中,通过做一个假Link替换工程目录里的真Link,而把真Link改名为LinkMX。
然后,进行异构协议库的编译工作,当编译提示结束的时候,发现OBj文件全部在工程目录里,把所有的OBJ文件复制出来,用LinkMX参数部分加上/ENTRY:__vbaS/EXPORT:fun1/EXPORT:fun2/OUT:"c:\abc\ProjectOK.dll"/BASE:0x11000000/SUBSYSTEM:WINDOWS,4.0/VERS参数重新链接编译,这样得到的函数就是一个可以独立调用的动态链接库文件函数。有了动态链接库文件函数后,在异构网络协议标准智件运行前不需要进行预加载所有的协议到内存中,只要根据设备类型选择对应的动态协议库文件进行加载,从而节省了系统资源,加快了系统的运行速度,而且,因为每个动态协议库均是加载后独立运行的,设备参数的相互之间不会形成干扰。
如图2所示,本发明还提供一种云监控管理系统,包括云监控管理中心和分别部署在各个网络节点的异构网络协议标准智件;
所述异构网络协议标准智件的一端采用标准通信接口与各个智能设备连接;
所述异构网络协议标准智件的另一端通过通信网络与所述云监控管理中心连接。
应用上述云监控管理系统,本发明还提供一种云监控管理方法,包括以下步骤:
S1,在各个网络节点分别部署异构网络协议标准智件;各个所述异构网络协议标准智件的一端通过通信接口转换器与各种类型的智能设备连接;各个所述异构网络协议标准智件的另一端均连接到云监控管理中心连接;
S2,所述异构网络协议标准智件采用单进程多线程方式,实时采集所述智能设备的设备运行参数,并对所述设备运行参数进行解析、封包后,得到标准数据包;然后,将所述标准数据包上传到云监控管理中心。
还包括:
所述云监控管理中心可自动发现网络中的各个所述异构网络协议标准智件,并对所述异构网络协议标准智件进行管理;具体管理方式包括:
所述云监控管理中心可读取到所述异构网络协议标准智件的全部信息,包括:所述异构网络协议标准智件的IP、异构协议库版本号、硬件版本号、设备列表;此处,还可更改所述异构网络协议标准智件的IP、更新异构协议库版本号、升级主程序、重启所述异构网络协议标准智件的远程操作。
云监控管理中心采用以下两种方式之一自动发现网络中的各个所述异构网络协议标准智件:
方式一:所述异构网络协议标准智件被设置为主动模式后,主动不断向外发送寻址包;当所述云监控管理中心接收到所述寻址包时,所述云监控管理中心建立与所述异构网络协议标准智件的通信连接;
方式二:所述云监控管理中心不断向外发送寻址包;当某个所述异构网络协议标准智件接收到所述寻址包时,立即向所述云监控管理中心发送响应包;当所述云监控管理中心接收到所述响应包时,所述云监控管理中心建立与所述异构网络协议标准智件的通信连接。
以下介绍本发明提供的一种云监控管理系统和云监控管理方法的具体应用场景:
某数据中心在北京设置总部,在深圳、苏州和沈阳均设有分中心,各分中心里除了有服务器外,还有众多的UPS和空调等智能设备。对各智能设备的原管理方式,北京总部无法实时了解各分中心智能设备的运行情况,给企业高管运营决策带来了盲区。
通过在各分中心配置异构网络协议标准智件后,实时的将各厂家、各品牌的设备运行数据传输到北京总部,形成实时的数据报告,企业高管在任何地方均能实时了解各智能设备的运行情况和效率等参数,给重大决策提供了资料。
其中,异构网络协议标准智件采用低功耗非Windows操作系统,具体采用的为Xubuntu快速、轻量级且节省能源的操作系统,体积只有13.4*12.4*3.6,重量只有0.6kg,安装和运行速度快,省电,9-15V宽电压供电,满负荷运行时功耗小于15W;
异构网络协议标准智件采用了云端管理系统,降低了现场工程师的工作难度和工作周期,现场工程师只需要将异构网络协议标准智件连接到网络并将现场UPS、空调等智能设备连接到异构网络协议标准智件,系统管理员就能在总部或任意分中心的网络终端发现该异构网络协议标准智件,并对其进行配置管理,通过登录内置的嵌入WEB页面,查看各智能设备的运行状态。
异构网络协议标准智件采用了网络标准标记语言输出,监控管理中心非常方便的将各分中心设备的运行数据接入到管理平台,形成动态的、可视化的数据图表展示和有用的管理分析报表。
由此可见,本发明提供的异构网络协议标准智件、云监控管理系统和云监控管理方法,具有以下优点:
(1)异构网络协议标准智件采用标准的RJ45以太网口方式与前端智能设备进行实时通信,所有的数据包均以TCP/IP数据格式进行网络数据格式传输,因此,前端智能设备的物理位置没有区域上的限制,也实现了异构网络协议标准智件兼容更多类型的智能设备;
(2)异构网络协议标准智件将数据包封装成标准的XML标记语言格式,再将封装后的数据包发送到云监控管理中心,实现了异构协议的标准化输出,方便实现异构网络协议标准智件和云监控管理中心的兼容性,方便云端部署;
(3)通过部署异构协议库,可使异构网络协议标准智件自动对不同智能设备的运行参数进行采集,提高了采集速度,实现了对智能设备实时监控的需求;
(4)异构网络协议标准智件采用网络化标准的跨平台展现方式,可以在网络的任意终端登录到异构网络协议标准智件,从而浏览智能设备的运行参数等信息。
(5)异构网络协议标准智件采用单进程多线程方式,一个智能设备对应唯一一个线程的算法进行数据的独立发送和接收,线程相互之间不会形成任何干扰影响,而且,根据智能设备数量加载对应数量的线程,不会过多的占用系统资源和内存空间。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视本发明的保护范围。