跨正向隔离装置文件传输协议的设计与实现

作者:张浩然;耿战霞;鹿海成 刊名:科技创新与应用 上传者:杨婧

【摘要】为满足跨正向隔离装置传输文件的需求,设计了一种文件传输协议,制定了报文格式及工作机制,给出了发送端和接收端的状态迁移过程。然后基于C++语言/Qt框架,实现了发送端和接收端的编程。该协议设计简单、易于实现,便于扩展,具有一定的通用性。

全文阅读

2017年 24 期 科技创新与应用 Technology Innovation and Application 设计创新跨正向隔离装置文件传输协议的设计与实现 张浩然,耿战霞,鹿海成 (许继电气直流输电系统公司,河 南 许 昌 461000) 摘 要 :为满足跨正向隔离装置传输文件的需求,设计了一种文件传输协议,制定了报文格式及工作机制,给出了发送端和接收端的状态 迁移过程。然后基于C++语言/Qt框 架 ,实现了发送端和接收端的编程。该协议设计简单、易于实现,便于扩展,具有一定的通用性。 关键词:正向隔离装置;文件传输协议;设计 ;实现中图分类号:TM769 文献标志码:A 文章编号:2095-2945(2017)24-0101-03 引言 2.1报文格式 为保障电力信息网络的安全性,电力系统根据安全等级 把信息网络划分为I、域、芋等区。i/域区向芋区传递数据要求 有正向隔离装置做隔离。 网络隔离技术在确保保障电力信息网络安全的同时,也 给信息的跨区通信带来了不便。本文设计了一个可透过正向 隔离装置的文件传输协议,据此实现的文件传输系统系统,为 I/域区向芋区的数据传输提供了很好的支持。 1 正向隔离装置工作原理 正向隔离装置主要功能体现在禁止两个区域的应用之间 直接建立TCP连接。它将两个区域的应用之间的TCP连接分 解成两个区域的应用各自到隔离装置内外两个网卡的两个 TCP虚拟连接。隔离装置内外两个网卡在装置内部为非网络 连接。正向隔离装置工的作模式如图1所示。 FTPAFID共定义了三种报文。其中数据报文和保活报文 由发送端产生,确认报文由接收端产生。 数据报文用于传送文件。第一个字段(1Byte)表示类型 码;第二个字段(2Byte)表示数据长度;从第三个字段开始到 报文末为数据段。数据报文共定义了三种操作码:文件名称 (值为0x01),文件内容(值为0x02)和文件hash字符串(值为 0x03)。 保活报文用于在不传送文件时检测通信状态。保活报文 为一个字节,字节数值为0x0f。 确认报文为一个字节,用于确认接收到的报文。其值为 0xff时表示收到的报文正确,而值为0x00时表示收到的报文 错误或收到的文件校验错误。 具体的报文结构如图2 所示。 数据报文: 操作码 数据长度 数据 1字节 2 字节 1 N 字节 图 1 正向隔离装置工作示意图 正向隔离装置只允许表示层与应用层数据单向传输,即 从安全区III到安全区I/II的应答报文禁止携带应用数据(最 多只能通过一个字节的数据,而且要么全为0,要么全为1)。 电力二次系统i/域区与芋区增设正向隔离装置后,普通 的 C/S和 B/S程序无法穿越该装置,需按隔离装置编程规定 修改程序,才能进行数据通信。 这使得常规网络中容易解决的问题,变得复杂了。如芋区 的应用想要获得i/域区的文件,常见的文件共享方法如ftp 服务、共享文件夹等都无法使用。需使用专门的跨正向隔离装 置的文件传输系统。虽然正向隔离装置的生产商都提供了基 于 Java的文件透传系统,但并非所有的设备都能运行Java程 序,特别是资源紧张的嵌人式设备。而若部署专门的文件传输 服务器,又增加了成本。因此,有必要自行开发跨正向隔离装 置的文件传输系统。2 文件传输协议 现有的FTP等文件传输协议都需发送端和接收端交互大 量的控制报文,以对数据的发送、接收、重传等进行控制。而正 向隔离装置禁止从芋区到I/域区的报文携带应用数据。这使 得现有协议都无法使用。因此,本文设计了一种新的文件传输 协议 FTPAFID (跨正向隔离装

参考文献

引证文献

问答

我要提问