典型协议简介

工业控制系统

协议的安全性工业控制系统(ICS)广泛应用于电力、油气、市政、水利、铁路、化工、制造业等行业 的数据采集与监视控制。针对 ICS 的安全问题进行研究,要求我们对 ICS 的网络操作具有基 本的了解,而这种了解又要求我们对其使用的通信协议
具有基本的分析和研究。有很多特定的协议(下文将这些协议统称为工控协议)可用于 ICS,但是特定的行业通常 仅使用其中的一种或几种特定的协议。ICS 系统发展之初,使用的协议基本上都是基于串行链 路的现场(总线)协议。随着以太网
技术的出现、发展和互联网技术的日益进步,早期基于 串行链路的现场(总线)协议基本上都出现了基于以太网(或者互联网)的演化版本。1. 协议的行业应用情况
目前,我国 ICS 的市场规模[GK]约为 100 亿元,但是由于各个行业对 ICS 的要求不同,因 此发展也不完全相同。其中,在电力行业中,ICS 应用最为广泛,约占整个 ICS 市场的半壁 江山,如图 3.2 所示。
其他, 12% 油气管线, 8%
变电站自动化, 其他, 50% 40%
调度自动化, 10%
市政, 30%
市政 油气管线 其他 调度自动化 变电站自动化
图 3.2 工业控制系统市场分布情况 电力系统中,变电站自动化约占到 ICS 市场的 40%,是 ICS 最大的应用领域,同时技术
发展也最为成熟。目前,变电站的综合自动化已经在我国得到大规模应用。其中,以远程终
端单元、微机保护装置为核心,将变电所的控制、信号、测量、计费等回路纳入计算机系统, 从而取代传统的控制保护屏,降低变电站的占地面积和设备投资,提高二次系统的可靠性。 电力调度自动化约占到 ICS 市场的 10%,在提高电网运行的可靠性、安全性与经济效益等方 面有着不可替代的作用。作为能量管理系统(EMS)的一个最主要的子系统,为 EMS 系统提 供大量的实时数据,在减轻调度员的负担,实现电力调度自动化与现代化,提高调度的效率 和水平等方面有重要的作用。
市政行业约占到 ICS 市场的 30%,包括:供水、供电、供暖、供气、水处理、交通等多 个具体行业。这些行业进入门槛低,价格竞争激烈,利润水平低。目前,市政行业 ICS 整体 市场增长缓慢,但是由于各行业的环保要求逐步提高,水处理领域的增长相对较快。油气管
线领域约占 ICS 市场的 8%,市场集中度相对较高,但市场增长不稳定。该行业项目数量虽然 不多,但是项目金额较大,客户购买力较强。其它行业约占 ICS 市场的 12%,包括水利、铁 路、化工、制造业等多个具体行业。目前,这些行业在我国还属于 ICS 的新兴市场,相对来 说虽然目前增长不快但有巨大的增长潜力。
通过对上述主要行业中使用的 ICS 系统及其采用的工控协议的广泛和深入的调研,几种 典型的工控协议及其行业使用情况如下表 3-1 所示。
表格 3-1 工控协议在 ICS 中的使用情况
行业 细分 协议
电力 变电站自动化 Modbus、Profibus、DNP3、IEC 调度自动化 60870-5-101/104、ICCP(IEC 60870-6,
油气 油气管线、油气井 Modbus、Profibus、DNP3
市政 供水、供电、供暖、供气、水处理、交

其他 水利、铁路、化工、制造业
具体来说,ICS 进入电力行业较早,发展时间最长,采用的协议也最多,主要包括: Modbus[MBUS]、DNP3[DNP]、IEC 60870-5-101/104[IEC60870-5]、ICCP(即 IEC 60870-6 或者 TASE.2)[IEC60870-6]和 IEC 61850[IEC61850]等。其它行业的 ICS 发展相对滞后,使用情况比较类 似且相对电力行业的 ICS 要简单很多,采用的协议主要是 Modbus、Profibus[PBUS]、DNP3 三 种。

  1. 典型协议简介
    工控协议可分为使用串行链路通信的现场(总线)协议和使用以太网通信的以太网协议 (包括 TCP/IP 协议之上的某些应用层协议)。
    例如,基于串行链路的 MODBUS RTU、MODBUS ASCII、MODBUS PLUS 和基于以太 网的 MODBUS TCP;基于串行链路的 PROFIBUS FMS、PROFIBUS DP、PROFIBUS PA 和基于以太网的 PROFINET CBA、PROFINET IO;基于串行链路的的 DNP3 和基于以太网
    的 DNP3/UDP、 DNP/TCP;基于串行链路的 IEC 60870-5-101 和基于以太网的 IEC 60870-5-104(国际上,一般将 IEC 60870-5-104 看作 IEC 60870-5-101 的以太网演化版本, 虽然两者在报文格式上存在巨大的差异,但是可用于完成相同的任务。目前,国内还有另一
    种直接在以太网上实现的 IEC 60870-5-101协议,该协议使用 IEC 60870-5-101的报文格式, 但是使用以太网作为传输介质)。除了上述几种传统的通用协议,电力行业 ICS 广泛使用的 协议还有 ICCP(IEC 60870-6,TASE.2)和 IEC 61850 等协议。
    下面,我们对几个主要行业广泛使用的 6 种典型工控协议作一个简单的介绍。包括: Modbus、PROFIBUS、DNP3、IEC 60870-5-101/104、ICCP(即 IEC 60870-6 或者 TASE.2) 和 IEC 61850。
    1979 年,PLC 的发明者美国 Modicon 公司(现为法国施耐德电气公司的一个品牌)发明 了全球第一个可真正用于工业控制的现场(总线)协议 MODBUS。随着工业的发展和互联网 技术的日益进步,MODBUS 协议也不断得到更新和扩展。目前,出现了多种 MODBUS 协议 变种,例如:使用串行链路的现场(总线)协议 MODBUS RTU、MODBUS ASCII、MODBUS PLUS,以及使用以太网的以太网协议 MODBUS TCP 等。MODBUS 标准定义了 OSI 模型第 1/2/7 层的协议,如图 3.3 所示。
    图 3.3 MODBUS 协议栈
    MODBUS 协议采用主-从结构,提供连接到不同类型总线或者网络的设备之间的客户机 - 服务器通信。客户机(主站)使用不同的功能码请求服务器(从站)执行不同的操作,服务 器执行功能码定义的操作并向客户机发送响应,或者在操作中检测到差错时发送异常响应。
    1987 年,德国联邦科技部集中西门子等十几家公司以及多个研究机构,按照 OSI 参考模 型制订现场总线的德国国家标准 PROFIBUS。1991 年 4 月,PROFIBUS 在 DIN19245 中发 表,并正式成为德国国家标准。开始时,PROFIBUS 中只有 PROFIBUS-FMS 协议;1993 年, 引入了 PROFIBUS-DP 协议;1994 年,又引入了 PROFIBUS-PA 协议,从而使得 PROFIBUS 更加完善。而 PROFINET 是现场总线标准 PROFIBUS 在以太网上的新一代标准。
    Profibus以 OSI作为参考模型,包括 PROFIBUS-FMS、PROFIBUS-DP和 PROFIBUS-PA 三种协议。其中 PROFIBUS-FMS 协议最早出现,PROFIBUS-PA 协议出现最晚,而目前广 为使用的是 PROFIBUS-DP 协议,这三种协议的关系如图 3.4 所示。
    |现 场 总 线 数 据 链 路 层|
    |数 据 链 路 层 -物 理 层 接 口|数 据 链 路 层 -物 理 层 接 口|
    PA物 理 层 物 理 层 RS 485 GB/T
    图 3.4 FMS、DP 和 PA
    其中,PROFIBUS-FMS 对第一层、第二层和第七层(应用层)均加以定义。PROFIBUS-DP 使用了第一层(物理层),第二层(数据链路层)和应用用户接口,第三层到第七层未予描 述。应用用户接口规定了用户系统以及不同设备可调用的应用功能,并详细说明了各种不同 PROFIBUS-DP 设备的设备行为,还提供了 RS 485 传输技术和光纤传输技术。直接数据链路 映射(DDLM)提供应用用户接口到第二层服务的映射。该结构确保了快速和高效的数据传输。 PROFIBUS-PA采用了扩展的 PROFIBUS-DP协议,使用耦合器能很方便地将 PROFIBUS-PA 设备集成到 PROFIBUS-DP 网络中,而根据 IEC 61158-2(GB/T 16657-2)标准,这种通过 总线给现场设备供电的传输技术可确保其本质的安全性。
    在 IEC 60870-5 协议规范还未标准化之前(当时仍处于紧张开发过程中),智能网格建 设中不同供应商的产品之间的互操作需求已经非常强烈。1993 年,通用电气-哈里斯加拿大子 公司(前身为加拿大 Westronic 公司)以部分完成的 IEC 60870-5 协议规范作为基础开发了 一种开放且可快速实现的协议,该协议专用于满足北美需求,这就是 DNP3 协议的来源。DNP3 对数据链路层、伪传输层和应用层进行了描述,使用串行链路进行数据通信。
    DNP3 的链路规约数据单元(LPDU)采用的可变长帧格式 FT3 定义为:一个固定长度的 报文头,后面跟着可选的数据块(每个数据块还附有一个 l6 位的 CRC 校验码)。DNP3 的伪 传输层专门设计用于请求站和响应站间传输超出链路规约数据单元长度限制的信息。在 DNP3 中,只有被指定的主站能够发送应用层的请求报文,而从站则只能发送应用层的响应报文(包
    括主动响应报文)。
    相对于 IEC 60870-5-104 对 IEC 60870-5-101 的修改,TCP/IP 上的 DNP3 并没有对串行 链路上的 DNP3 作任何实质上的修改,而是将整个链路规约数据单元(LPDU)作为 TCP/IP 之上的应用层数据进行传输(也可能是基于 UDP)。
    EC 60870-5-101 是远动设备及系统传输规约中基本远动任务配套标准,适用于具有编码 比特串行数据传输的远动设备和系统。而 IEC 60870-5-104 则是采用标准传输规约集的 IEC 60870-5-101 网络访问,即 IEC 60870-5-104 是 IEC 60870-5-101 在 TCP/IP 上的实现。
    DNP3和 IEC 60870-5-101/104都遵从 IEC 60870-5的数据链路帧格式(IEC 60870-5-1) 和链路传输过程(IEC 60870-5-2),两者之间存在很多相似之处。此处,仅简单介绍一下两 者间存在的差异(两者应用层完全不同,此处不涉及应用层),如下表所示:
    表 DNP3 和 IEC 60870-5-101/104 的差异
    |差异** ||DNP3 ||IEC 60870-5-101/104 |
    |传输方式** ||平衡方式 ||平衡方式和非平衡方式|
    |字符格式** ||8 位数据位、1 位起始位和|1 位|8 位数据位、1 位起始位和 1 位停止|
    |||停止位 ||位、1 位奇偶校验|
    |帧格式** ||使用 FT 3,只有变长帧||使用 FT 1.2,有变帧长帧、固定帧长|
    |||||帧和单字节帧|
    |链路层控制字段||||将部分应用层命令定义为链路层控|
    |||||制功能,使得部分命令报文不包括应|
    |||||用层数据 |
    |链路地址字段||单一地址格式,地址长度固定为||支持 IEC 60870-5-2中定义的大部分|
    |||16 位,包含源地址和目的地址||地址格式,但是只包含从站链路层地|
    |||||址,且地址长度可选|
    |伪传输层** ||在数据链路层和应用层之间加|||
    |||入伪传输层,允许将应用层数据|||
    |||分段组装在多个链路帧中传输|||
    远方控制应用服务元素 2(Tele-control Application Service Element 2,TASE.2)又名 控制中心间通信协议(Inter Control-center Communication Protocol,ICCP),可利用标准 的底层网络通信协议,在多个控制中心间通过广域或局域网实现实时数据及其它信息的相互 传输。
    TASE.2 的产生和发展经历了两个阶段。从 1993 年开始,IEC TC57 WG07 选择当时已 经广泛应用的挪威 ELCOM90 协议(同期还有美国西部电网的 WSCC 等)为基础,制定了国 际标准 TASE.1,该标准以 ISO9072 ROSE 为基础。由于 TASE.1 与 ISO/ITU-T 的兼容性差, 因此受到美国和德国的坚决反对;于是美国电科院(EPRI)牵头开发了 ICCP,并于 1996 年
    将其纳入 IEC 体系(IEC 60870-6),称为 TASE.2。该标准以 ISO 9506 MMS(Manufacturing Message Specification)为基础[MMS]。初期,TASE.2 与 TASE.1 并列为国际标准,但互不兼 容,形成了欧洲与美国两个系列相争的局面。但由于 MMS 己经广泛应用于各行各业,故 TASE.2 较 TASE.1 适应性更强。随着欧洲发电联盟(UCPTE)宣布采用 TASE.2,持续数年 的争论也随之结束,TASE.2 成为全球统一的通信协议。
    变电站自动化技术发展很快,国内外厂商相继推出了多种变电站自动化系统产品。为使 不同厂商的产品具有互操作性(Interoperation),1995 年国际电工委员会第 57 技术委员会 (IEC TC57)成立了 3 个工作组 10/11/12(WG 10/11/12)负责制定 IEC 61850 标准。工作 组成员分别来自欧洲、北美和亚洲国家,他们有电力调度、继电保护、电厂、操作运行及电 力企业的技术背景,其中有些成员参加过北美及欧洲一些标准的制定工作。3 个工作组有明确 的分工:第 10 工作组负责变电站数据通信协议的整体描述和总体功能要求;第 11 工作组负 责站级数据通信总线的定义;第 12 工作组负责过程级数据通信协议的定义。
    IEC 61850 按照变电站自动化系统所要完成的控制、监视和继电保护三大功能从逻辑上将 系统分为 3 层,即变电站层、间隔层和过程层,并定义了 3 层间的 10 种逻辑接口。

参考资料

绿盟 2013年工业控制系统及其安全性研究报

友情链接

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值