一种基于绝对单向技术的数据湖设计方法

2022-04-01 12:11李佳鹏王洪钧赵恺锋
关键词:应用层信息网单向

梁 怿,李佳鹏,王洪钧,赵恺锋,姚 东,秦 华

(国家管网集团联合管道有限责任公司 西气东输分公司,上海 200122)

引 言

随着物联网、大数据、人工智能、云计算等前沿技术的迅猛发展,在油气管道领域以智慧管道作为发展方向已经成为全行业的共识。智慧管道的着力点之一就是利用数字化系统生成的海量数据进行智能分析和决策,以指导管道的全生命周期管理。目前,虽然天然气管网在各个层面建立了不同的辅助管理系统,包括:实现远控智能分输的SCADA系统[1-2],管理供应链的ERP系统,管理管道巡护员的GPS巡线系统等,并且对单一系统有了非常深入的挖掘和使用,但各系统互相独立,数据呈分散化态势,决策还是得依赖于管理人员的经验。只有完成对数据的汇总融合,让一维化的数据变得立体化,才能进一步实现智能化分析。数据湖[3-5]就是打破各系统间壁垒,让各信息孤岛的数据进行有机整合的手段,可以说数据湖就是智慧管道的基础。建设数据湖的关键点在于:各系统的网络载体不一致,分别位于工控网、信息网以及互联网中,而为了保护网络安全,3种网络在设计时是互相独立的,如何在不危害网络安全的前提下实现对数据的融合是首要解决的问题。为了推进智慧管道建设,选取西气东输作为试点,提出了基于绝对单向技术的方案,建设了数据湖。

1 网络现状

工控网用于连接工艺设备,以实现对生产的远程监控与安全保护。工控网在3种网络中的安全等级最高,其与信息网、因特网没有物理或逻辑上的连接。信息网是中国石油集团的办公内网,是承载中石油办公通信与业务流转的网络,信息网与互联网通过代理服务器进行连接,即所有从信息网发出至互联网的报文将经代理服务器中转后才能到达目的地。西气东输数据湖位于信息网中,位于信息网和互联网中的系统很容易就能将数据传送至湖中,但位于工控网中的数据则由于缺少数据通道而无法到达数据湖。

2 通信架构

2.1 安全原则

(1)网络的数据入口越多,网络的安全性越低。

(2)建立由高安全等级网络向低安全等级网络的绝对物理单向数据通道时,不会降低高安全等级网络本身的安全性[6-8];

(3)区域只有在物理和逻辑上不可达才是安全的。若数据可达,那么无论设置了多少安全设备,采用了多少层的中间转发,也只能降低危险,而不能彻底消除危险,因为只要是正常数据能够到达的区域,恶意数据同样能够到达[9-10]。

2.2 单向通信

信息网设备与工控网设备处于两个完全隔离的“孤岛”上,两张网络间没有任何数据可达的通路。若在两张网间建立双向的数据通道,则等同于信息网与工控网合并成了一张网络,工控网的安全等级将降低至与信息网一致,这是绝对不允许的。既要建立数据通道,又不能影响工控网的安全性,最好的方式是建立从工控网到信息网的单向连接[11-13],即数据只能从工控网出发到达信息网,而不能反向通行。

单向连接分为逻辑单向和物理单向两种方式(表1)。逻辑单向是在数据通道上设置防火墙或具有配置功能的网闸,然后通过设置安全策略来丢弃反向报文,以保证数据的单向通行。物理单向是直接对物理层载体进行限制,即切断反向传输的线缆,仅保留允许方向的线缆。物理单向也称作绝对单向。

表1 物理单向与逻辑单向的区别

总体看来,逻辑单向易实现,但安全性低;物理单向实现困难,但安全性高。为了保障数据通道的安全性,西气东输数据湖选用了基于以太网的物理单向方案。方案以双绞线作为物理层载体,但仅保留了工控网侧的Tx端和信息网侧的Rx端,剪断工控网侧的Rx端和信息网侧的Tx端。同时,为了适应单向物理载体,还在信息网和工控网内设置了通信代理,用于实现与网内设备的双向通信及网间的单向传输(图1)。

图1 信息网与工控网数据通道示意图

3 网络结构

根据TCP/IP对等模型,网络通信由下往上分别由物理层、链路层、网络层、传输层和应用层组成。物理层、链路层、网络层和传输层统称为下四层,用于实现端到端的通信,由网络设备及附属协议来实现。应用层用于传输具体数据,由终端的软件来实现。

3.1 下四层调整

由于物理层载体由双向变更为单向,所以在其之上的链路层、网络层和传输层协议也需要进行适应性的调整。

(1)链路层上对ARP协议的工作方式进行了调整。默认的ARP学习过程需要本端发出ARP Request,然后对端反馈ARP Reply后才能完成,由于物理载体仅能单向通行,所以ARP Reply报文无法返回本端。因此,在工控网侧的服务器上人工指定了信息网侧服务器IP与MAC地址的映射关系,以跳过ARP学习阶段。

(2)网络层的IP协议可以正常工作,但其附属的ICMP协议将会失效。ICMP用于网络通信的故障诊断,其要求基于双向载体或至少能在数据流的逆向方向通信,因此在服务器上禁用了ICMP协议,以减少无用的数据包。

(3)传输层是应用层协议的载体,有TCP Socket和UDP Socket两种。目前几乎所有的工业应用层协议,包括Modbus TCP,IEC 104,OPC,CIP等是基于TCP Socket实现的。基于TCP Socket的应用层协议的可靠性更强,本端应用层协议在进行数据传输时,TCP协议会对每个报文打上标识,对端在接收到报文也将反馈TCP Ack表示已经收到该报文,然后本端根据TCP Ack来识别传输过程中是否发生了报文丢失等异常情况,并自动采取相应的弥补措施,如进行重传等,以确保每个报文都成功送达。但是TCP Socket要基于双向可达的物理层载体来实现,而UDP Socket则可以在单向载体上完成数据传输[14],因此需要将工业应用层协议由TCP Socket迁移至UDP Socket。

3.2 应用层协议设计

为了适应单向链路,在数据湖上设计了基于UDP的私有单向传输应用层协议IUTP(Industrial Unidirectional Transmission Protocol)。协议报文由Header(表2),Data和Checksum 3部分构成。

表2 IUTP Header结构

Data用于装载实际发送的数据,最大长度为1 465 Bytes。若超过1 465 Bytes会引起数据分片,进而造成传输效率降低。Checksum是基于CRC-16算法的校验和,占用2 Bytes,用于对Header和Data的完整性进行校验,若在数据传输过程中IUTP报文发生了字符丢失或变更,接收端能够凭借Checksum识别发现,然后丢弃错误报文。

3.3 应用层可靠性增强

应用层对传输机制进行了优化,用于解决传输层迁移至UDP后数据传输可靠性不足的问题。数据湖在传输过程中对Reed-Solomon算法[15-18]进行了简化和改良,在保证高刷新率的同时对原始数据插入了纠错数据,若在传输过程中发生数据丢失,则接收端服务器能够利用纠错冗余数据对已丢失的数据包进行恢复。

(1)

式中:D1,D2,…,Dn表示切割后的原始数据,n表示切割的数量,m表示最多允许丢失的数据包数量,C1,C2,…,Cm表示插入的纠错冗余数据包。

假设在在数据传输过程中D2和C1数据块丢失,则可通过逆矩阵恢复获取原始数据。

(2)

3.4 服务器安全策略

工控网与信息网的单向通信部署完毕后,还对两台服务器设置了相应的安全策略[19-21],包括:

(1)通过软件防火墙阻塞了除单向传输协议外的所有端口;

(2)在工控网侧服务器上启用了应用层加密/解密协议。数据离开工控网侧服务器前进行数据加密,数据穿越单向链路到达信息网侧服务器后,再进行数据解密;

(3)在服务器上部署了基于白名单的安全软件。白名单软件在服务器投用之初进行一次深度扫描,然后基于系统运行的进程形成白名单列表。白名单软件根据列表进行“非白即黑”的决策,即仅允许列表中的进程运行,列表之外的其他程序一律禁止。

4 应用测试

4.1 可靠性测试

数据湖投用之前,西气东输开展了对单向传输的可靠性测试。测试内容是对单向传输设置不同的刷新速率,然后查看传输丢包率(图2)。单次测试运行的周期为72 h。测试结果显示:当数据传输周期大于或等于1.8 s时,丢包率低于10-5。

图2 不同刷新率下数据传输的丢包率

4.2 安全性测试

数据湖投用之前,西气东输组织公司内外专家开展了2次渗透测试,测试均在真实环境下进行。测试内容包括:(1)提供信息网的接入点,尝试通过单向数据通道打入工控网;(2)提供互联网的接入点,尝试通过信息网与互联网之间的数据通道打入信息网;(3)提供工控网侧服务器的全部权限,尝试攻击信息网侧服务器;(4)提供信息网的接入点,尝试攻击信息网侧服务器;(5)提供工控网的接入点,尝试攻击工控网侧服务器。测试结果显示所有的渗透攻击行为均未成功,表明西气东输数据湖的单向通信架构可以实现在不同网络之间进行数据的安全传输。

4.3 试运行

安全性和可靠性测试通过后,西气东输组织对数据湖开展了试运行,一期上线2项数据分析功能:(1)结合站场压缩机启停情况,站场进出口压力情况,计量系统流量数据以及管道生产管理系统的填报数据,实时展示西气东输入口关键站场的天然气流向;(2)结合各站场PLC系统模块运行状态,ERP备件调拨使用情况以及设备故障库更新情况,形成模块寿命统计表。试运行情况显示:数据湖工作稳定可靠,未出现宕机、空转等异常情况。

5 结 论

西气东输数据湖提供了一种设计方案,让原本处于信息孤岛的不同系统进行了交互,实现了由工控网至信息网的单向数据传输。相较于系统处于信息孤岛时的状态,新型通信架构下工控网的安全性与过去持平,信息网的安全性在理论上略有降低。在通信可靠性方面,由于工控网与信息网的数据传输为单向链路,没有确认反馈机制,虽然通过改良的Reed-Solomon算法增强了数据的纠错能力,但是在理论上的可靠性仍稍低于基于双向链路的TCP 传输。西气东输数据湖的单向通信架构,在安全性和功能性之间找到一个较好的平衡点,在尽量不影响网络安全的前提下,实现了较高可靠性的数据传输。单向通信架构为智慧管网数据湖的设计提供了一个较好的参考范例,值得推广应用。

猜你喜欢
应用层信息网单向
2022年中国种猪信息网全年计划
单向空间
单向街书店:智力、思想和文化生活的公共空间
传输层和应用层的隧道技术
基于分级保护的OA系统应用层访问控制研究
知世界
物联网技术在信息机房制冷系统中的应用