更新时间: 2023-07-12
安全 CRC (循环冗余码)
所有基于CIP安全的安全传输都使用安全CRC校验,确保信息传送的完整性。安全 CRC 校验是防止传输数据可能遭受破坏的基本检测方法。它们对每个数据段提供多达四个汉明码,由于协议的冗余,对这个传输还提供了覆盖全部的更大的汉明码。 安全CRC校验在安全发送器中产生,并在安全接收器中检查。 中间路由设备不进行安全CRC检验。因此,使用端到端的安全CRC校验,个体的数据连接的CRC 不是安全功能的一部分。这就免除了对中间设备的认证需求,并且证明了安全协议与网络技术无关。安全CRC也提供了一种坚强的保护机制,允许检测下层数据链路的错误,诸如位填充或碎片。
个体连接CRC与安全无关,但它们仍然起作用。这提供了另一层保护,在本地连接有瞬态错误时,允许数据重发,抵御干扰。
冗余和交叉检查
数据和带交叉检查的CRC冗余提供一个附加的检查方法,检测传送数据可能出现的错误。使用协议高效的汉明码,这些方法允许长安全数据包—多至 250 字节—以高完整性传输。对于两个字节或更小的短包,数据冗余是不需要的;无论如何,冗余CRC是交叉检查,确保了完整性。
安全和标准的不同方法
CIP 安全协议仅用于安全设备,能够防止标准设备假装成安全设备。
安全连接
CIP 安全提供两种安全连接:
• 单播连接;
• 多播连接。
一个单播连接,允许一个安全验证器客户机连接到一个安全验证器服务器,使用两个链路层连接。
单播连接
一个多播连接,允许连接多达15个安全验证服务器,接收来自安全验证器客户机的安全数据。当**个安全验证服务器与一个安全验证客户机建立连接时, 建立了一对链路层连接,一个用于数据与时间修正,一个用于时间协调。每个新安全验证服务器使用已有时间与时间修正连接,并建立一个与安全验证客户机的新时间协调。
多播连接
为了优化在 DeviceNet 上的吞吐能力,每个多播连接使用三个数据连接。数据与时间修正报文使用分开的连接发送。这样可以使单一 CAN 帧的短报文在DeviceNet上传输,减少使用带宽,因此时间修正和时间协调报文可在很短的周期里传送。
多播报文的传送是通过路由处理的,路由器把来自DeviceNet 数据与时间修正报文合并起来,把到达DeviceNet 的报文分开发送。因为安全报文内容是不变化的,路由器不提供安全功能。