OPC是通讯协议吗安全性

目录

1 安全防护

1.1 防火墙

1.2 网闸

2 OPC是通讯协议吗

2.1 什么通讯协议

2.2 那么OPC又是什么?


OPC官方说明文档

1 安全防护

本文阐述了控制网络以OPC接口接入信息网络应当采用的安全防护。

1.1 防火墙

防火墙是大家熟知的网络安全产品,并被用作控制网络与信息网络的安全隔离。实际上,这样的方案是不合适的。

http://api1.wangxinzhihui.com:88/upload/2555592a-1a76-11ee/3dedd81d0c23ea84f88f.png

      这是由于防火墙由于其自身机理的原因,存在很多先天不足,主要包括:

1)   由于防火墙本身是基于TCP/IP协议体系实现的,所以它无法解决TCP/IP协议体系中存在的漏洞。

2)   防火墙只是一个策略执行机构,它并不区分所执行政策的对错,更无法判别出一条合法政策是否真是管理员的本意。从这点上看,防火墙一旦被攻击者控制,由它保护的整个网络就无安全可言了。

3)   防火墙无法从流量上判别哪些是正常的,哪些是异常的,因此容易受到流量攻击。

4)   防火墙的安全性与其速度和多功能成反比。防火墙的安全性要求越高,需要对数据包检查的项目(即防火墙的功能)就越多越细,对CPU和内存的消耗也就越大,从而导致防火墙的性能下降,处理速度减慢。

5)   防火墙准许某项服务,却不能保证该服务的安全性,它需要由应用安全来解决。

 

从实际应用来看,防火墙较为明显的局限性包括以下几方面:

1)   OPC基于DCOM机制,无法穿透防火墙

2)   防火墙不能阻止感染病毒的程序和文件的传输。就是防火墙只能做网络四层以下的控制,对于应用层内的病毒、蠕虫都没有办法。

3)   防火墙不能防范全新的威胁,更不能防止可接触的人为或自然的破坏。

4)   防火墙不能防止由自身安全漏洞引起的威胁。

5)   防火墙对用户不完全透明,非专业用户难于管理和配置,易造成安全漏洞。

6)   防火墙很难为用户在防火墙内外提供一致的安全策略,不能防止利用标准网络协议中的缺陷进行的攻击,也不能防止利用服务器系统漏洞所进行的攻击。

7)   由于防火墙设置在内网与外网通信的信道上,并执行规定的安全策略,所以防火墙在提供安全防护的同时,也变成了网络通信的瓶颈,增加了网络传输延时,如果防火墙出现问题,那么内部网络就会受到严重威胁。

8)   防火墙仅提供粗粒度的访问控制能力。它不能防止数据驱动式的攻击。

防火墙正是由于这些缺陷与不足,以防火墙为核心的安全防御体系未能有效地防止工业控制网络攻击。

1.2 网闸

在防火墙的发展过程中,人们最终意识到防火墙在安全方面的局限性。高性能、高安全性、易用性方面的矛盾没有很好地解决。防火墙体系架构在高安全性方面的缺陷,驱使人们追求更高安全性的解决方案,人们期望更安全的技术手段,网闸应运而生。

网闸的指导思想与防火墙也有很大的不同,体现在防火墙的思路是在保障互联互通的前提下,尽可能安全;而网络隔离的思路是在必须保证安全的前提下,尽可能支持数据交换,如果不安全则断开。

网闸主要目标是解决目前信息安全中的各种漏洞:操作系统漏洞、TCP/IP漏洞、应用协议漏洞、链路连接漏洞、安全策略漏洞等,网络隔离是目前唯一能解决上述问题的安全技术。

网闸主要的技术原理是从OSI模型的七层上全面断开网络连接,同时采用“2+1”的三模块架构,即内置有两个主机系统,和一个用于建立安全通道可交换数据的隔离单元。这种架构可以实现连接到外网和内网的两主机之间是完全网络断开的,从物理上进行了网络隔离,消除了数据链路的通信协议,剥离了TCP/IP协议,剥离了应用协议,在安全交换后进行了协议的恢复和重建。通过TCP/IP协议剥离和重建技术消除了TCP/IP协议的漏洞。在应用层对应用协议进行剥离和重建,消除了应用协议漏洞,并可针对应用协议实现一些细粒度的访问控制。从TCP/IP的OSI数据模型的所有七层断开后,就可以消除目前TCP/IP存在的所有攻击。

http://api1.wangxinzhihui.com:88/upload/2555592a-1a76-11ee/d04a90587fb6d83ff045.png

   网闸的应用同防火墙,部署于控制网络与信息网络之间,实现过程控制系统和管理信息系统之间进行单向物理隔离并传输过程数据。

http://api1.wangxinzhihui.com:88/upload/2555592a-1a76-11ee/c111ad429d5c61cbc2fc.png

2 OPC是通讯协议吗

2.1 什么通讯协议

OPC是当前工业互联常用的通讯技术,我们经常会说OPC通讯协议,那OPC是通讯协议吗?严格地说,OPC不是通讯协议,而是一种通讯规范,是一种通讯接口标准

首先,来看什么是通讯协议?通讯协议就是两个(或多个)设备之间通信必须要遵循的一种协议。通过通信信道互连起来的多个数据通信系统,要实现协同信息交换,它们之间必须具有共同的约定,约定信息在哪条通道间交流,什么时间交流,交流什么信息,信息怎样交流。这个约定就是通信协议。

不同的通信协议虽然具有不同的特点和功能,但它们都包含了三个基本要素:

语法:定义了数据传输的格式和结构,以确保发送方和接收方都能正确地解释数据内容。

语义:定义了数据的意义和目的,以确保通信双方在数据传输过程中能够理解对方的意图。

定时:定义了数据的传输速率和时间,以确保通信的有效性和流畅性。

通信中的数据往往以数据包的形式进行传送的,我们把这样的一个数据包称作为一帧数据。比较可靠的通信协议往往包含有以下几个组成部分:帧头、地址信息、数据类型、数据长度、数据块、校验码、帧尾。这些组成部分构成了语法,其中数据代表的意义就是语义。

比如:以下是Modbus协议读取线圈的报文。

其中,报文格式就是语法,其语义为:读取服务器1号从站输出线圈,起始地址为0x13=19,对应地址为00020,线圈数量为0x1B=27,即读取1号从站输出线圈,地址从00020-00046,共27个线圈的状态值。

2.2 那么OPC又是什么?

OPC是英文“OLE for Process Control”的缩写,是工业自动化领域中的一种工业通信标准。它通过定义一些在不同平台上具有通用性的规范,实现了各种设备、不同制造厂商及不同代表的设备可互联互通。

经典OPC是第一代OPC技术, 英文全称为:OLE for Process Control。OLE技术是基于微软公司的COM/DCOM技术,因此经典OPC本质上是基于COM/DCOM的过程控制技术。经典OPC提供了一整套过程控制中数据交换的软件标准和接口,包括:

1)OPC DA(OPC Data Access):OPC数据访问接口,这是最常用到的接口,接口定义了数据交换的规范,包括:过程值、更新时间、数据品质等信息。目前OPC DA经历1.0版本(1997年)、2.0版本(2002年)、3.0版本(2003年)。

2) OPC AE (OPC Alarms & Events):OPC报警与事件接口,接口定义了报警、事件消息、变量的状态及如何管理。

3) OPC HDA(OPC Historical Data Access): OPC历史数据访问接口,接口定义了访问及分析历史数据的方法。

4) OPC XML-DA:XML数据访问,脱离Windows COM/DCOM技术,提供基于XML、SOAP、HTTP的数据交换。

5) OPC DX(Data eXchange):提供在OPC服务器之间交换数据的功能,该标准的主要目的是为来自不同制造商的设备和程序之间的数据交换创建网关。

可以看出,OPC一整套过程控制中数据交换的软件标准和接口规范,定义了服务器和客户端双方通讯接口的要求。以OPC DA为例。

OPC Server必须提供OPCServer对象接口,OPCGroup对象接口,OPCItem对象接口,OPCClient通过调用这些接口与OPC服务器实现数据交换,而不用去关心通讯报文的语法、语义。

所以,严格地说,OPC不是通讯协议,是通讯规范。用形象的比喻来说,OPC更像描述插头、插座的规范,而通讯协议则更像是描述邮件如何传输,信封如何封装。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/109606.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

分布式事务解决方案之可靠消息最终一致性

分布式事务解决方案之可靠消息最终一致性 什么是可靠消息最终一致性事务 可靠消息最终一致性方案是指当事务发起方执行完成本地事务后并发出一条消息,事务参与方(消息消费者)一定能 够接收消息并处理事务成功,此方案强调的是只要消息发给事务参与方最终…

SpringMVC多文件上传

文章目录 一、文件上传1.1 导入pom依赖1.2 配置文件上传解析器1.3 设置文件上传表单1.4 实现文件上传 二、文件下载三、多文件上传四、JRebel的使用 一、文件上传 1.1 导入pom依赖 <commons-fileupload.version>1.3.3</commons-fileupload.version><dependency…

LeetCode(力扣)435. 无重叠区间Python

LeetCode435. 无重叠区间 题目链接代码 题目链接 https://leetcode.cn/problems/non-overlapping-intervals/ 代码 class Solution:def eraseOverlapIntervals(self, intervals: List[List[int]]) -> int:if not intervals:return 0intervals.sort(keylambda x: x[0])co…

关于content-type的理解

一.content-type的结论 告诉后端传过去的数据是什么类型的数据 二.没有请求体 (1)没有请求体的情况下content-type没有意义。 (2):图示 里面是没有请求体的 (3)有请求体的情况 二.常见的三种方式 (1)application/x-www-form-urlencoded(默认) 参数的表现形式: 传递之前可以…

如何将一个字符串转换为驼峰命名法(camel case)?

聚沙成塔每天进步一点点 ⭐ 专栏简介⭐ 思路⭐ 示例⭐ 写在最后 ⭐ 专栏简介 前端入门之旅&#xff1a;探索Web开发的奇妙世界 记得点击上方或者右侧链接订阅本专栏哦 几何带你启航前端之旅 欢迎来到前端入门之旅&#xff01;这个专栏是为那些对Web开发感兴趣、刚刚踏入前端领…

揭秘弹幕游戏制作

最近好多人问弹幕游戏&#xff0c;甚至是招人的也要DOTS做弹幕游戏... 实际上目前的弹幕游戏绝大多数应该和DOTS没有半点关系&#xff0c;别忘了DOTS这项技术渲染问题还没能够被合理解决呢 所以目前用的全都是GPU Instance这项技术&#xff0c;于是乎我决定下场写这篇帖子&am…

2000-2018年各省能源消费和碳排放数据

2000-2018年各省能源消费和碳排放数据 1、时间&#xff1a;2000-2018年 2、范围&#xff1a;30个省市 3、指标&#xff1a;id、year、ENERGY、COAL、碳排放倒数*100 4、来源&#xff1a;能源年鉴 5、指标解释&#xff1a; 2018年碳排放和能源数据为插值法推算得到 碳排放…

【SpringMVC】自定义注解与AOP结合使用

目录 一、SpringMVC之自定义注解 1.1 Java注解简介 1.2 为什么要用注解 1.3 注解的分类 ⭐ 1.3.1 JDK基本注解 1.3.2 JDK元注解 1.3.3 自定义注解 1.4 自定义注解三种使用案例 1.4.1 案例一&#xff08;获取类与方法上的注解值&#xff09; 1.4.2 案例二&#xff0…

Linux中使用Docker安装ElasticSearch7.10.x集群

使用Docker安装ElasticSearch7.10.x单节点请访问这里 一、集群环境说明 服务器IP地址192.168.137.1&#xff0c;192.168.137.2&#xff0c;192.168.137.3 二、前期准备 1. 拉取镜像 docker pull elasticsearch:7.10.12. 首先需要创建一个用于生成秘钥的初始容器&#xff0…

rocketmq

&#x1f353;代码仓库 https://gitee.com/xuhx615/rocket-mqdemo.git &#x1f353;基本概念 ⭐生产者(Producer)&#xff1a;消息发布者⭐主题&#xff08;Topic&#xff09;&#xff1a;topic用于标识同一类业务类型的消息⭐消息队列&#xff08;MessageQueue&#xff09…

徐亦达机器学习:Kalman Filter 卡尔曼滤波笔记 (一)

P ( x t P(x_t P(xt​| x t − 1 ) x_{t-1}) xt−1​) P ( y t P(y_t P(yt​| x t ) x_t) xt​) P ( x 1 ) P(x_1) P(x1​)Discrete State DM A X t − 1 , X t A_{X_{t-1},X_t} AXt−1​,Xt​​Any π \pi πLinear Gassian Kalman DM N ( A X t − 1 B , Q ) N(AX_{t-1}B,Q)…

海康威视热成像实时测温java - 23版

在20年写了一篇实时测温demo博客&#xff0c;看来帮了不少人。今天刚好又有需求&#xff0c;需要采温。也碰到了不少问题&#xff0c;特此记录 1、环境 摄像头&#xff1a;海康 型号&#xff1a;DS-2TD2528T-7/Q 序列&#xff1a;EA0406775 服务器&#xff1a;winServer J…