APP下载

远动104规约接收序号不连续问题的分析与解决

2016-02-16石文江黄佳伟朱亮亮陈兴元

东北电力技术 2016年7期
关键词:厂站规约模数

石文江,黄佳伟,朱亮亮,陈兴元

(国网大连供电公司电力调度控制中心,辽宁 大连 116011)

远动104规约接收序号不连续问题的分析与解决

石文江,黄佳伟,朱亮亮,陈兴元

(国网大连供电公司电力调度控制中心,辽宁 大连 116011)

远动104规约I帧序号计数的连续性对SCADA系统的安全稳定运行具有重要意义,针对104规约运行中经常出现的“接收序号不连续”问题,通过典型报文分析找到了问题原因及解决方法,即模数测试方法和I帧序号人工清零重新计数的方法。

远动104规约;接收序号;模数;I帧;SCADA

随着电力调度数据专网实现对大部分变电站的覆盖,基于TCP/IP网络通信的DL/T634.5104规约[1](以下简称CS104)由于其运维简便、链路可靠得到了用户的青睐,目前已取代DL/T634.5101规约成为调控中心的主数据源。但在大连调控中心主站系统的实际运行中经常周期性地出现某些厂站的画面数据刷新时断时续、遥控时好时坏的问题,通过对这些厂站的实录报文进行过滤排查,发现问题几乎都出现在主站前置服务器报错“接收序号不连续”的期间,典型报文如图1所示。文献[1-6]总结了CS104现场应用经验,文献[7]应用信息安全技术对CS104的APDU及其传输模式进行了研究,但这些文献均没有涉及接收序号不连续的问题,本文根据规约[8]标准深入分析了故障报文,找出了问题产生的原因,并提出了相应的解决方法。

1 报文分析

1.1 序号计数原理

图1 主站端实录报文

图2 CS104控制域格式

CS104报文只有3种报文格式:用于信息传输的I格式、用于编号监视的S格式、用于通信控制的U格式,其中发送和接收序号计数仅发生在I帧中,U帧没有序号,S帧只有接收序号,U、S帧均不参与序号的累加计数。I、U、S帧报文的控制域如图2所示,它们从报文中的帧头68和帧长L后的第3个字节开始,到第6个字节结束。发送方的前后2个I帧中的发送序号必须是连续加1的,接收方的前后2个I帧中的接收序号也必须是连续加1的,由于I帧报文中的发送序号和接收序号的最低位固定为0,因此它在报文中呈现出连续的偶数。S帧用于向对方确认所接收到I帧报文的个数,即接收方将最后收到的I帧发送序号加1(在报文中加2)作为S帧的接收序号发送给对方,以便对方清除发送缓冲区中序号小于该S帧接收序号的I帧数据。

1.2 主厂站间故障定位

从图1第1个下划线标识部分及其上下相邻报文看,厂站上传的I帧报文的发送序号是连续的,发送序号从0x77B8到0x77C4,图1中的下划线(1)是主站应答的S帧报文,其报文的接收序号为0x77C0(实际序号为30 656/2=15 328)等于紧接上一个厂站的I帧发送序号0x77BE+2(实际序号为15 328+1=15 329),因此得到主站的确认。随后出现的“接收序号不连续”的报文,根据厂站端记录的报文来分析,序号的计数也是连续的,因此造成该问题的原因在主站端。

1.3 故障原因分析

问题原因可以从主站在故障点前后下发的报文来分析。图1中下划线(3)是主站接收到7帧接收序号不连续的I帧报文后发出的1帧U格式启动激活报文(STARTDT),图1中下划线(4)是主站紧接着下发的总召报文,该报文中的发送序号和接收序号都是0,因此可以推定主站试图通过U格式启动激活命令来实现厂站I帧序号的清零并重新计数的目的,这主要是因为主站的模数设定为0x77c6(报文中低前高后,十进制为30662,实际序号15 331),即序号0x77c4的下一个序号应为0,但从随后厂站上送的I帧来看,发送序号依旧继续计数,见图1中下划线(2),导致主站判断为接收序号不连续的错误。但这里厂站也存在一个严重缺陷,当主站发送的总召报文中的发送和接收序号突然变0,即出现了不连续的情况时,该厂站并没有丢弃该报文,而是继续响应总召,并且所应答的I帧报文的发送序号继续原有计数,在厂站向主站传送24帧单点遥信(数据类型0x01,报文的第7个字节)和5帧短浮点数遥测(数据类型0x0d)后总召结束,但终因主站不向厂站应答S帧进行确认而使厂站在图1中下划线(5)的时点出现t1超时而关闭会话,主站被迫连续发送U格式启动激活报文来试图建立会话,随后在图1中下划线(6)时会话被重新打开,I帧从零开始重新计数(图1中下划线(6)和(7)),通信恢复正常。所以从长时间看,该厂站由于CS104调试中遗留的bug而呈现画面数据刷新时断时续,遥控操作时好时坏的现象出现。

2 问题的解决方法

2.1 严格验证序号编码的正确性

CS104的I帧序号的连续编码是保证所传信息合法性的重要措施之一,在厂站接入主站的施工调试中必须严格验证。因此图1中的厂站CS104的软件版本必须修改升级,对接收序号不连续的I帧必须丢弃,并及时回1个S帧报文给主站告知厂站所接收到的合法I帧报文的数目,接着马上关闭本次会话,随后主动打开。

2.2 模数的设定与测试

序号的连续编码终究是要溢出的。CS104的模数就是避免溢出而设定的一个值,使序号编码在达到模数-1时重新从零开始计数,循环不止。但在DL/T634.5104—2009规约中没有明确规定其具体值,这导致了不同厂家的CS104模数设定值不同。但根据ITU_T X.25 2.3.2.2.1的规定,模数值可以取8,128或32 768。由于远动信息量大,主厂站在线连续通信时间长,因此CS104模数宜取32 768,这个值可以通过地区电网CS104的实施细则予以明确,主站和所有的厂站需共同遵守。为了测试厂站和主站CS104通信I帧报文序号达到32 767(在报文中低前高后排列为f0 ff)后是否从零开始计数,可以将厂站的遥测变化上送阀值设为0,对于新建厂站还要选中1路遥测人工加入模拟量,以便加快厂站上送主站的I帧报文的速度,如果以1 s 1帧I格式的报文计算,大概需要9 h就能看到结果。对主站下传报文的模数测试比较困难,按10 min 1次下发总召和对时计算,需要114天才能看到结果,为此在主站CS104程序中应增加监控程序,对每个厂站监视当主站下发的I帧的发送序号由32 767变到0时厂站是否正常响应,如果某个厂站不能正常响应,应产生报警记录到SCADA告警窗并向该厂站发送远方复位命令的报文。

2.3 序号人工清零重新计数的方法

调度自动化系统正常运行时,CS104的I帧序号的连续性是不应被打断的,但由于某些特殊原因需要人工清零并重新计数时,不宜使用图1中主站下发U格式启动激活命令的方法。因为在CS104中,STARTDT、STOPDT被设计用来切换冗余组内的数据连接,在DL/T634.5104—2009 10.7部分中明确指出了“一个冗余组中的每个连接的发送/接收计数器连续计数,与是否使用STARTDT/STOPDT无关”,虽然在10.7部分提到了“任何连接如果不是处于STOPPED状态,则在新的连接启动事件发生时应被立即关闭。这意味着可使用不对称超时t1(超时t2同)缩短切换时间,即改变控制站t1使之小于被控站的t1”,但它的主要目的是用于缩短冗余组内数据连接的切换时间,并保证在冗余组内只有一个激活连接,而不是在激活连接上通过下发U格式STARTDT报文使该连接立即被关闭,从而实现重新从零开始计数的目的。并且规约强调在连接切换时,序号应保持连续计数,这对预防黑客软件窃入有重要意义。要实现I帧序号计数的人工清零,能够快速且合法的做法是主站向厂站下发远方复位命令,它的一个I帧报文的示例如下:68 0E D0 01 C6 77 69 01 06 00 3F 00 00 00 00 01,其中D0 01是报文发送序号(0x01d0),C6 77为报文接收序号(0x77c6),69为十六进制数据类型(十进制为105),紧接着的01是VSQ(只有1个信息体),06 00是传送原因(远方复位激活),3F 00是ASDU公共地址(与站地址同),紧接着的00 00 00是信息体地址(固定为0),最后一个字节01是QRP复位进程命令限定词(进程的总复位)。

3 结束语

CS104在调度自动化系统中越来越重要,它的安全稳定运行是保证SCADA系统安全可靠的基石,它也是SCADA网络安全防护的一个重点。CS104的I帧序号的连续计数是保证CS104稳定运行的关键,而在新建厂站接入调度主站的施工调试中,运维人员往往忽视了这一环节的严格验收。本文提出的解决“接收序号不连续”问题的方法,在现场应用中已被证明是有效的,并且所采用的报文分析方法对解决CS104运行中出现的其它问题也有借鉴意义。

[1]石文江,李 论,洪一云.提高厂站接入主站调试效率的方法[J].东北电力技术,2015,36(6):21-26.

[2]石文江,潘鹏飞,陈朝红.曹屯变RTU改造工程二次安全防护技术[J].东北电力技术,2008,29(6):48-52.

[3]石文江.外置式实时报警分类指示器的研发与应用[J].东北电力技术,2013,34(7):15-17.

[4]张建设,马维青,郭晋洋.IEC 60870-5-104协议在远动通信中的应用[J].电力系统自动化,2003,27(11):91-93.

[5]廖泽友,蔡运清.IEC 60870-5-103和IEC 60870-5-104协议应用经验[J].电力系统自动化,2003,27(4):66-68.

[6]关鸿耀,刘 榕.IEC 60870-5-104协议在水电厂集控通信中的应用[J].电力系统自动化,2011,35(2):5-7.

[7]刘 念,段 斌.IEC 60870-5-104远动协议的一种安全报文探讨[J].电力系统自动化,2005,29(2):93-96.

[8]远动设备及系统第5-104部分传输规约采用标准传输协议集的IEC60870-5-101网络访问:DL/T634.5104-2009[S].

Analysis and Solution on Receiving Serial Number Discontinuous Problem in Telecontrol Protocol 104

SHI Wen⁃jiang,HUANG Jia⁃wei,ZHU Liang⁃liang,CHEN Xing⁃yuan
(State Grid Dalian Power Supply Company Dispacth Center,Dalian,Liaoning 116011,China)

Continuity of I frame's serial number in telecontrol protocol 104 is very important to safe and stable operation of SCADA,this paper is aimed at the problem of“Receiving Signal Discontinuity”which often occurs in the running of 104 protocol,the cause of the problem is given by the analysis of typical recorded message,the methods about modulus test and I frame's serial number manual reset are also given in this paper.

Telecontrol protocol 104;Receiving message's serial number;Modulus;I frame;SCADA

TM734

A

1004-7913(2016)07-0044-03

石文江(1970—),男,高级工程师,从事调度自动化系统运维管理工作。

2016-04-28)

猜你喜欢

厂站规约模数
基于供区的输电网接线图厂站网格布局算法
BIM技术在燃气厂站的应用
传统自然资源保护规约的民俗控制机制及其现实意义
基于单片机和模数化设计的低压侧电压监视与保护装置
基于无线自组网和GD60规约的路灯监控系统的设计
模数化设计方法在景观铺装设计中的应用
一种在复杂环境中支持容错的高性能规约框架
厂站自动化与调度自动化的现状与技术发
浅谈厂站自动化及调度自动化的现状与技术发展
一种改进的LLL模糊度规约算法