摘要:随着机房监控技术的不断发展和普及,机房监控系统的开发也成了当今软件技术的热门技术。众所周知智能设备与服务主机之间的通讯是监控软件开发的难点和重点,那么监控系统中通讯技术也将成为监控领域研究的重要课题。本文将讨论一种计算机机房监控系统通讯技术中误码分析和过滤方法。这是一种对监控系统设备通讯数据采集可扩展的误码分析和过滤方法,可以使整个系统生成的通讯误码率低,从而,监控系统可以对所有智能设备进行统一有效的管理与实时监控。 |
技术领域与背景
为加强统筹管理,通信运营商将分布在不同地理位置的基站/机房中逐年大幅度增加的智能设备作为监控点,通过不同的网络连接方式接入到网管中心,组成集中机房监控系统,如何对多种多样的大量的监控点的原始数据进行分析,实现对所有智能设备进行统一有效的管理,是衡量集中监控系统性能的核心指标之一。导致原始数据错误的原因包括校验错误、地址冲突、长度错误、特征码错误,以及返回数据中某些值超过标准值。例如,现有的对英国依顿福兰(Eaton-Williams)公司出品的空调的通讯数据的误码分析和过滤方法,采用标准Modbus通讯协议,直接对返回的数据进行数据公式换算,未进行地址检查和16位循环冗余校验(Cyclic Redundancy Check,缩略词为CRC)码即CRC 16校验,存在的不足是,如果监控的设备比较多,接线比较复杂,会导致设备地址发生冲突,发送的是监控某一设备的命令,收到的返回数据却是另一设备的;而且由于没有进行CRC 16校验,返回数据可能与实际数据不一致。又例如,现有的对科华公司出品的三相380V输入、三相380V输出的三进三出型不间断电源(Uninterruptible Power System,缩略词为UPS)的通讯数据误码分析和过滤方法,采用ASCII方式的通讯协议,是直接将收到的返回数据和实际中的数据对应,未进行特征码检查和长度检查,存在的不足是,如果返回数据过短或者由于没有进行特征码检查,返回数据也可能与实际数据不一致。
为解决上述技术中存在的缺陷,一种计算机机房监控系统通讯数据误码分析和过滤方法应运而生,解决方案中主要用到了数据通讯技术和误码分析技术以及过滤技术。
误码分析与过滤方法的实现
这种计算机监控系统通讯数据误码分析和过滤方法,监控点是分布在不同地理位置的基站/机房中的智能设备,所述智能设备预先设置相应的设备地址、波特率、数据位、停止位和校验方式,其中校验方式包括奇校验、偶校验和无校验位中的一种,配用的动态数据策略库包括设定的检查和校验用的标准数据,包括地址冲突检查、长度检查、数据校验、特征码检查、值域检查、关联值检查、黑名单字符集,以及全字符检查用的标准数据。
二、设备返回数据。所述智能设备收到服务器根据设备的通讯协议发送的相应命令后返回采集数据。
三、数据分析。分析返回数据是否为正常数据,包括地址冲突检查、长度检查、数据校验、特征码检查、值域检查、关联值检查、黑名单字符集,以及全字符检查。
分析返回数据是否为正常数据,研发人员根据智能设备的通讯协议,调用相关动态策略库中对应的方法进行分析。
若智能设备的通讯协议为标准Modbus,则其分析步骤如下:首先,调用动态数据策略库中的地址冲突检查方法arrSend(0)<>arrRec(0),检查发送命令的设备地址和返回数据设备地址是否发生冲突,调用sCmdDataType.ToUpper <> ”HEX” 方法,判断数据类型是否是十六进制(HEX);然后,调用动态数据策略库中的bitCRCn方法进行CRC16校验。
若智能设备的通讯协议为ASCII方式的通讯协议,则其分析步骤如下:首先,调用动态数据策略库中的长度检查,检查返回数据的长度是否在超过设定的标准值范围;然后,调用动态数据策略库中的sSource.substring(0,1)方法进行特征码检查,检查返回数据中是否包含“!”和“/”。
若智能设备的通讯协议为电总通讯协议,则其分析步骤如下:首先,调用动态数据策略库中的特征码检查,检查返回数据的特征码是否包含“~”;其次,调用动态数据策略库中的Check7ECode方法进行和校验。
地址冲突检查:检查能设备的物理地址是否发生冲突。
长度检查:检查返回数据的长度是否在设定的标准值范围内。
数据校验:包括CRC校验以及和校验,所述CRC校验是16位循环冗余校验,所述和校验是通讯协议为电总协议才进行的校验,是除SOI、EOI和CHKSUM外,将其他字符ASCII码值累加求和所得结果模65536余数取反加1。
特征码检查:检查某些通讯协议的基本格式中的起始标志位是否正确,如果不正确,返回数据即为无效数据,数据类型是ASCII码;包括检查“!”、“$”、“^”、“:”、“~”等特殊字符 。