由于操作过于频繁,请点击下方按钮进行验证!

工业网络中的安全

       和其他基于工业标准网络的安全协议一样,CIP(公共工业协议)加入另外的安全服务,使数据以更高的完整性传送。和其他网络又有所不同,CIP 安全呈现了一种可伸缩、网络独立的方法,用于网络的设计,明确定义的应用层描述了各种安全服务。自从安全功能集成到每个设备—而不是在网络结构中—CIP 安全允许一般设备和安全设备运行在同一个开放网络上。这个特性使用户可灵活选择网络结构—有或者没有安全 PLC—用于他们功能安全网络。这种方法也使来自多个厂商的安全设备能够通过标准的CIP网络实现无缝的通信,而不需要管理复杂的网关。

1. 概述

        硬线的安全系统使用安全继电器相互连接,提供安全功能。硬线系统的开发和维护比较困难,只能满足多数的基本应用。此外,这些系统中的设备位置具有严格的距离限制。
        因为上述问题,以及造价的考虑,对使用标准通信网络实现安全服务有了高度的期盼。开发安全网络的关键不是建立的网络不能失败,而是建立一种机制,使网络在失效时能使安全设备转移到一个已知状态。如果用户知道一旦出现失效,系统会换转到什么状态,他们就能够使应用处于安全状态。但这意味着需要更多的检查和冗余编码信息。
        所以,为了增加安全的要求,德国安全总线委员会(German Safety Bus committee)扩展了现有的铁路标准。这个委员会为安全网络开发人员提供了安全网络的设计指南,使他们的网络和安全设备遵从 IEC 61508 的标准。
        基于这些标准,CIP 扩展了高完整性的安全服务。结果是一个可伸缩、可路由、网络独立的安全层降低了对专用安全网关的要求。因为所有安全设备使用相同的协议,使用相同的介质,使用方法也和标准的网络是一样的。
        CIP 安全是对标准CIP 的一种扩展,它通过了 TÜV 的认证,可用于 IEC 61508 SIL 3 和 EN 954-1 类别 4 的应用。它在原来的模型中增加了CIP 安全应用层(红色部分),见图1。 增加部分包括了几个安全相关的对象和安全设备描述、在DeviceNet上实现CIP安全的细节,也就是我们熟知的 DeviceNet 安全。


 
图 1 包括安全的 CIP 通信层

        因为安全应用层扩展不依赖标准CIP的完整性,可以与数据链路层,数据链路通信接口使用同一通道。可以使用标准的路由器实现安全数据通信。见图2。路由安全报文是可行的,因为末端设备可以负责数据的完整性。如果在数据传送或在中间路由器出现出现错误时,末端设备会检测出故障,并且采取适当行动。


图 2  安全数据的路由

        这种路由能力使得DeviceNet安全单元能够快速的响应来自其他单元的互锁要求信息,比如与骨干网络,诸如 EtherNet/IP 实现互锁,如图3所示。只有需要的安全数据才通过路由到达请求的单元,这样减少了系统对带宽的需求。结合本地安全单元的快速响应和安全数据的跨路由传输,用户可以构建大型的、反映迅速的安全应用。这种结构的另外一个好处是具有多网多点传送安全报文的能力。


图 3 网络路由

2. 安全功能的实现

        如在图1指出的那样,所有 CIP 安全设备也是基于在标准CIP的功能之下的。扩展了的CIP安全应用层指定使用一种安全验证器对象。这种对象负责管理CIP的安全连接(标准CIP连接由通信对象来管理),像在安全应用对象和连接层的一个接口,如图3所示。安全验证器使用下节描述方法确保安全数据传送的完整性。


图 4 安全验证器之间的关系

安全验证器对象执行的功能为:
        • 使用一个客户机验证器产生安全数据和协调时间来生成一个安全应用;
        • 客户机使用一个连接数据生成器传输数据和一个连接接收器接收协调时间报文;
        • 接收安全的应用使用一个服务器验证器接收和检查数据;
        • 服务器使用一个连接接收器接收数据和一个连接生成器发送协调时间报文。

        连接生成器和接收器没有安全信息包的概念,所以不执行安全功能。而保证安全数据传输和检查高完整性的责任,完全依仗安全验证器。

 

[DividePage:NextPage]

3. 确保完整性

      CIP 安全不能防止通信错误的发生;确切地说,它是通过检查出错误和使设备执行适当动作来确保传输的完整性。
       安全验证器负责检查这些通信错误。必须检出的九种通信错误见表1,还有相关的五种CIP安全检测错误的方法。


 

表 1 错误检测方法

3.1. 时间期望值与时间戳

        所有 CIP 安全数据的产生都带有一个时间戳,用于安全接收器计算生成数据的年龄。这种检测方法要优于多数传统的接收定时器。接收定时器能够告诉你这次报文和上一次报文间隔的时间,但它们不能准确转达关于数据的实际年龄信息。时间戳可以检测出传输、介质访问/仲裁、排队、重试和路由的延时时间。


图 5 时间戳

       在发送器和接收器之间使用ping请求和ping应答进行时间协调,见图5。建立连接之后,发送器生成一个ping请求,引起接收器一个带有接收时间的ping应答。发送器将记录发送时间和接收时间的时间差,并存储这个偏差值。发送器将把这个偏差值加上发送时间做为所有后续数据发送的时间戳。当接收器接收一个数据报文,用时间戳减去它的内部时钟值,就可以得出数据的年龄。如果数据年龄小于允许的最大年龄值,数据被认为是可用的;否则,连接将转到安全状态。设备应用得到通报,所以连接的安全状态得到了适当地反映。
ping请求和应答序列将周期性地重复,来修正任何发送器或接收器的时基的漂移。

3.2. 产品标识 (PID)

        一个产品标识符是对所有由安全连接发送数据的编码,以确保每个接收报文到达了正确的接收器。PID 包括了一个电子钥匙、设备序列号和CIP连接序列号。任何安全设备不小心接收一个不正确的PID将转到安全状态。任何安全设备如果没有在期望的时间内,接收到正确的PID报文,也将转到安全状态。这种方法可确保报文在多网应用中的正确路由。

3.3. 安全 CRC (循环冗余码)

       所有基于CIP安全的安全传输都使用安全CRC校验,确保信息传送的完整性。安全 CRC 校验是防止传输数据可能遭受破坏的基本检测方法。它们对每个数据段提供多达四个汉明码,由于协议的冗余,对这个传输还提供了覆盖全部的更大的汉明码。 安全CRC校验在安全发送器中产生,并在安全接收器中检查。 中间路由设备不进行安全CRC检验。因此,使用端到端的安全CRC校验,个体的数据连接的CRC 不是安全功能的一部分。这就免除了对中间设备的认证需求,并且证明了安全协议与网络技术无关。安全CRC也提供了一种坚强的保护机制,允许检测下层数据链路的错误,诸如位填充或碎片。
       个体连接CRC与安全无关,但它们仍然起作用。这提供了另一层保护,在本地连接有瞬态错误时,允许数据重发,抵御干扰。

3.4. 冗余和交叉检查

        数据和带交叉检查的CRC冗余提供一个附加的检查方法,检测传送数据可能出现的错误。使用协议高效的汉明码,这些方法允许长安全数据包—多至 250 字节—以高完整性传输。对于两个字节或更小的短包,数据冗余是不需要的;无论如何,冗余CRC是交叉检查,确保了完整性。

3.5. 安全和标准的不同方法

        CIP 安全协议仅用于安全设备,能够防止标准设备假装成安全设备。

4. 安全连接

      CIP 安全提供两种安全连接:
       • 单播连接;
       • 多播连接。

        一个单播连接,见图6,允许一个安全验证器客户机连接到一个安全验证器服务器,使用两个链路层连接。


图 6 单播连接

       一个多播连接,见图7,允许连接多达15个安全验证服务器,接收来自安全验证器客户机的安全数据。当第一个安全验证服务器与一个安全验证客户机建立连接时, 建立了一对链路层连接,一个用于数据与时间修正,一个用于时间协调。每个新安全验证服务器使用已有时间与时间修正连接,并建立一个与安全验证客户机的新时间协调。


图 7 多播连接

       为了优化在 DeviceNet 上的吞吐能力,每个多播连接使用三个数据连接,见图8。数据与时间修正报文使用分开的连接发送。这样可以使单一 CAN 帧的短报文在DeviceNet上传输,减少使用带宽,因此时间修正和时间协调报文可在很短的周期里传送。
       多播报文的传送是通过路由处理的,路由器把来自DeviceNet 数据与时间修正报文合并起来,把到达DeviceNet 的报文分开发送。因为安全报文内容是不变化的,路由器不提供安全功能。


图 8 在 DeviceNet上的多播连接

 

[DividePage:NextPage]

5. 报文包段

     CIP 安全有四种报文段:
      • 数据;
      • 时间戳;
      • 时间修正;
      • 时间协调。

      这些格式的描述超过了本文章的范围。故在此不予讨论。

6. 配置

      在安全设备用于一个安全系统之前,它们必须事先配置,建立连接。配置过程需要一个配置工具把配置数据传送至安全设备。有两种配置的方法:
      • 配置工具直接到设备,或者
      • 提供一个中间设备。

      在工具至设备的配置情况,见图9,配置工具直接向设备写配置信息。
      在中间设备配置的情况,工具首先写至一个发生器,然后发生器(1)使用发生器至对象下载(3)或者使用安全打开服务(Safety_Open)(4)。安全打开服务(4)是唯一用于配置设备的一种安全连接。


图 9 配置传送

7. 连接建立

      CIP 提供一种连接建立机制,使用一个向前打开(Forward_Open)服务,允许在本地或者跨多网通过路由器建立生产者至消费者连接,对向前打开的一个扩展,称为安全打开服务(Safety_Open),可以为安全创建相同的多网络连接。

      有两种类型的安全打开请求:
      • 类型 1:带有配置
      • 类型 2:没有配置

      使用类型 1 的安全打开请求,配置和连接的同时,允许使用简单和相对小的配置数据实现设备的快速配置。
       使用类型 2 安全打开请求,安全设备首先需要配置,然后建立一个安全连接。这种配置和连接的分开允许设备具有比较大而且复杂的配置数据。
      两种情况下,安全打开请求建立所有以下链路层的连接
      –跨越本地网络,以及所有中间网络和路由器。

8. 配置执行

      CIP 安全提供下列保护方法确保配置的完整性:
      • 安全网络号;
      • 密码保护;
      • 配置所有者;
      • 配置锁定。

8.1. 安全网络号

      安全网络号提供一个在安全系统的每个网络中,唯一的网络识别符。安全网络号,结合本地设备地址,使得在安全系统的任何设备都有唯一的地址。

8.2. 密码保护

      所有安全设备都支持可选密码的使用。密码机制提供了附加的保护方法,没有正确的密码就禁止了对设备的重新配置。

8.3. 配置所有者

      可以指定和强迫应用一个 CIP 安全设备的所有者。每个安全设备可以指定,仅用选定的发生器才能配置,或者配置工具才能完成配置。

8.4. 配置锁定

      配置锁定为用户提供一种机制,确保所有设备在用于一个安全应用之前,都通过验证和测试。

9. 安全设备

      在一个安全设备中的相关对象见图10。 注意 CIP 安全是对 CIP 对象模型的扩展,带有附加的安全 I/O ,安全验证器和安全监督对象。

图 10 安全设备对象

10. 安全监督器

       安全监督对象为安全设备提供一个公共配置接口。安全监督对象集中和调整应用对象状态行为和相关状态信息、例外状态指示(报警和警告)、定义一个属于安全设备指定对象的行为模型。
.
11. CIP 安全总结

       CIP 安全是一种可伸缩、可路由、网络独立的安全协议,是基于CIP体系结构的扩展。这个概念可以用于从设备层网络如 DeviceNet 到高层网络如 EtherNet/IP 的方案中,CIP 的网络独立性允许安全连接的多网络路由。多网络路由和多播报文功能为用户创建本地单元的快速响应和远程单元的互连,建立了坚实的基础,满足了今天安全应用的需要。CIP 安全的设计使得扩展未来的网络技术成为可能。


声明:本网站所收集的部分公开资料来源于互联网,转载的目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。本站部分作品是由网友自主投稿和发布、编辑整理上传,对此类作品本站仅提供交流平台,不为其版权负责。如果您发现网站上所用视频、图片、文字如涉及作品版权问题,请第一时间告知,我们将根据您提供的证明材料确认版权并按国家标准支付稿酬或立即删除内容,以保证您的权益!联系电话:010-58612588 或 Email:editor@mmsonline.com.cn。

网友评论 匿名:

分享到