一种单向数据传输系统和传输方法

文档序号:7896024阅读:702来源:国知局
专利名称:一种单向数据传输系统和传输方法
技术领域
本发明涉及网络数据传输技术,特别是涉及单向数据传输系统和传输方法。
技术背景
目前在一些对安全具有特殊要求的场合,为了保障安全,通常做法是把网络分为 外部网络和内部网络,外网被认为是不安全的,而内网是安全的,可以保证数据和信息的安 全性。外网和内网之间不能直接通信,通常的数据交换是通过人工进行内部网络和外部网 络的数据传输,或者使用防火墙一类的安全产品实现数据安全传输。但是目前的这样传输 方案的缺点是数据的传输效率都比较低,无法满足一些对性能和安全性都有着很高要求的 行业,比如视频语音的传输。发明内容
本发明的目的在于提供一种单向数据传输系统及其传输方法,不但能保证内网和 外网的完全隔离,同时还能够实现数据的线性高速传输,而且可以保证传输数据的安全可罪。
为实现上述目的,本发明采用了如下技术方案
一种单向数据传输系统,包括连接外网的发送模块和连接内网的接收模块,其特 征在于,所述发送模块和接收模块之间通过分光设备连接,其中所述发送模块又包括用于 将数据发送给分光设备的发送光网卡,发送光网卡的数据发送口连接分光设备的输入端, 而数据接收口连接分光设备的一个输出端口 ;所述接收模块又包括用于接收数据的接收光 网卡,接收光网卡的数据接收口连接分光设备的另一个输出端口。
上述单向数据传输系统,优选的,所述发送模块和接收模块配置的发送光网卡和 接收光网卡都是千兆Intel光网卡,这样能保证传输速度达到千兆每秒。发送光网卡和接 收光网卡的连接采用分光设备连接,这样能保证连接外网的发送模块到连接内网的接收模 块的单向数据传输。对于具有30%和70%两个输出端口的分光设备,发送光网卡连接分光 设备的30 %输出端口,而接收光网卡连接分光设备的70 %输出端口。
进一步的,上述单向数据传输系统,所述发送模块包括用于存储待传输数据的内 存盘;用于将数据从内存盘中读入系统缓存的文件读取模块;用于将系统缓存中的数据进 行打包发送的数据打包发送模块,在该模块设置有发送光网卡。所述接收模块包括用于接 收和校验数据,并将通过检验的有效数据保存到系统缓存中的数据接收和校验模块,在该 模块设置有接收光网卡;用于把系统缓存中的数据写入内存盘中的数据写入模块;用于暂 时存储接收到的有效数据的内存盘。
进一步的,上述单向数据传输系统还可以包括用于将接收模块要求进行文件重 传的信息发送出去的短信告警发送模块;用于接收文件重传信息,并将该文件重传信息传 递给发送模块的短信告警接收模块。
优选的,上述短信告警发送模块和短信告警接收模块分别是带有加密功能的短信告警发送模块和短信告警接收模块。
基于上述单向数据传输系统,本发明提供了一种实现从外网到内网的单向数据传 输方法,在外网设置具有发送光网卡的发送模块,而在内网设置具有接收光网卡的接收模 块;发送模块和接收模块之间通过具有两个输出端口的分光设备连接;将发送光网卡的数 据发送口连接分光设备的输入端,而将分光设备的一个输出端口连接发送光网卡的数据接 收口,另一个输出端口连接接收光网卡的数据接收口 ;采用UDP协议将待传输数据从发送 模块经分光设备单向传输到接收模块。
上述单向数据传输方法,可采用具有30%和70%两个输出端口的分光设备,发送 光网卡连接分光设备的30%输出端口,而接收光网卡连接分光设备的70%输出端口。所述 发送光网卡和接收光网卡优选采用千兆Intel光网卡。
上述单向数据传输方法,所述发送模块和接收模块各自设置有内存盘,通过下述 步骤进行单向数据传输
1)发送模块把待传输数据从其内存盘中读入系统缓存中,然后从系统缓存中取数 据打包成UDP数据包,并为每个数据包编号,在UDP目的地址字段中写入包序号、包数据大 小和MD5码,然后将数据包通过发送光网卡发送给分光设备;
2)分光设备将接收到的数据传递给接收光网卡;
3)接收模块对接收光网卡接收到的数据进行包序号、包数据大小和MD5码的校 验,将通过校验的有效数据保存到系统缓冲中,MD5码不一致的数据包则判断为非法数据包 直接丢弃,然后将系统缓冲中的数据写入其内存盘中,在文件接收并写入完毕后再放入指 定的磁盘位置。
进一步的,发送模块把发送完的文件保存到备份目录中,以备传输出错后重传。接 收模块在接收并校验数据的时候,如果包序号比对出现错乱,或者要传输的数据大小与实 际接收的数据大小不一致的情况下,会判断为传输出错。在这种情况下,接收模块可以把文 件重传信息传递给短信告警发送模块。短信告警发送模块把需要重传的文件信息通过GSM 短信形式发送给处于外网的短信告警接收模块。短信告警接收模块再把接收到的文件重传 信息传递给发送模块,发送模块根据文件信息把传输失败的文件从备份目录中取出重新发 送一遍。这样可以进一步提高文件传输的容错性。优选的,短信告警发送模块对需要重传 的文件信息进行加密处理后发送,短信告警接收模块对接收到的加密信息解密后传递给发 送模块。
本发明的单向数据传输系统简称光闸,实现了数据的线性高速传输。其中数据包 的发送采用UDP协议,UDP协议具有无连接的特点,并且结构简单。为了保证数据传输的可 靠性,利用了 UDP协议的目的地址段的数据空间写上了自有的协议数据,分别是数据包编 号(即包序号)、数据包大小以及文件MD5码信息。发送模块在发送数据的时候为每个数据 包编号并写入数据包大小,接收模块根据数据包的编号和数据大小信息顺序写入数据并且 校验数据的完整性,同时通过数据包中的MD5码信息判断数据包是否为有效数据或者是非 发送模块发送的非法数据信息。
此外,本发明的光闸优选采用相对安全的Linux操作系统,操作系统设置有内存 盘,内存盘的大小为机器物理内存的50%。利用内存盘技术,在传输文件的时候,可以实现 数据的快速读取和写入。发送模块从内存盘读取需要发送的数据文件,接收模块把接收到的数据直接写到内存盘,这样比直接从硬盘上读写文件效率要高很多。由于内存有限,如果 接收端存储的数据大于内存盘的大小,可以把大文件分段从内存盘移动到磁盘,最后把几 个小的文件片段合并成一个大文件,完成一次数据的传输。
综上,本发明的单向数据传输系统可以保证内外网络的完全隔离,外网的数据只 能单向传输到内网,内网的数据无法传输到外网;还可以实现数据的快速实时传输,不仅能 满足文件的传输,还能满足视频和音频等数据流的大量实时传输;并且该系统结构简单,易 于使用。


图1是实施例所述单向数据传输系统的系统主流程原理图。
图2是实施例中发送模块和接收模块通过分光设备实现单向分光连接的结构示 意图。
具体实施方式
为了使本技术领域的人员更好的理解本发明,下面结合附图和具体实施例对本发 明作进一步的详细说明。
在图1所示的光闸实例中,带有箭头的连接线代表数据的传输方向,发送模块和 接收模块之间的数据流向是单向的。
在发送模块部分,文件读取模块把用户数据文件从内存盘中读入系统缓存中,每 次读取1400个字节大小数据块到系统缓存,数据打包发送模块负责从系统缓存中一次取 1400个字节数据打包成一个个的UDP数据包,并在每个UDP的目的地址字段中依次写入包 序号、包数据大小、MD5码三段信息,再把数据通过发送光网卡发送出去。其中MD5码是用 于校验数据包有效性的。每个文件对应一个MD5码,凡是属于同一个文件的数据包,都具有 相同的MD5码。数据打包发送模块把发送完的文件保存到备份目录,以备出错后重传。备 份文件保存时间可以设定,例如默认保存一个月。
在接收模块部分,数据接收和校验模块把从接收光网卡所接收到的数据依次校验 包序号、包数据大小以及MD5校验信息后,把数据按照包序号依次保存到系统缓存,数据写 入模块把缓存中的数据写入内存盘中。文件接收并写入完毕后再放入指定的磁盘位置中。 对于MD5码不一致的数据包,则可以判断为非法的数据包,直接丢弃。
数据接收模块在接收并校验数据的时候,如果出现包序号比对错乱,或者用户数 据大小与实际接收的数据大小不一致的情况,会判断为传输出错。出现这种情况,接收模块 会把文件重传信息传递给短信告警发送模块。短信告警发送模块把需要重传的文件信息通 过GSM短信形式发送给处于外网的短信告警接收模块。短信告警接收模块把接收到的文件 重传信息传递给发送模块,发送模块根据文件信息把传输失败的文件从备份目录中取出后 重新发送一遍。这样可以进一步提高文件传输的容错性。
系统的短信告警发送模块和短信告警接收模块是可选模块。实际使用可以不使用 这两个模块。为了提高安全性,如果使用的话,可以选用带加密功能的短信告警发送模块和 短信告警接收模块。
图2展示的是光闸发送模块和接收模块之间通过光网卡通信传输的单向连接方式,其中的分光设备可以是一个输出部分具有30%和70%两个输出端的分光器。发送模块 的发送光网卡的数据发送口 1连接分光设备Whput端(输入端),数据接收口 2连接分光 设备的输出部分的30%端;接收模块的接收光网卡的数据接收口 4连接分光设备的输出部 分的70%端,数据发送口 3则不做连接。数据单向从发送端发送到接收端,而接收端的数据 无法进入发送端。这样保证了数据的单向性。
为了保证光闸发送模块和接收模块之间的数据传输速度达到最大,采用Intel 公司的光网卡,Intel公司提供了光网卡在Linux操作系统下的驱动程序源代码,在获取 到驱动源代码之后,对驱动代码中的传输部分代码进行优化,可使得数据传输峰值达到了 980Mb/s,基本接近千兆以太网的传输极限,真正实现了千兆传输。
尽管为说明目的公开了本发明的具体实施例和附图,其目的在于帮助理解本发明 的内容并据以实施,但是本领域的技术人员可以理解在不脱离本发明及所附的权利要求 的精神和范围内,各种替换、变化和修改都是可能的。本发明不应局限于本说明书的实施例 和附图所公开的内容,本发明要求保护的范围以权利要求书界定的范围为准。
权利要求
1.一种单向数据传输系统,包括连接外网的发送模块和连接内网的接收模块,其特征 在于,所述发送模块和接收模块之间通过分光设备连接,其中所述发送模块又包括用于将 数据发送给分光设备的发送光网卡,发送光网卡的数据发送口连接分光设备的输入端,而 数据接收口连接分光设备的一个输出端口 ;所述接收模块又包括用于接收数据的接收光网 卡,接收光网卡的数据接收口连接分光设备的另一个输出端口。
2.如权利要求1所述的单向数据传输系统,其特征在于,所述分光设备具有30%和 70%两个输出端口,发送光网卡的数据接收口连接分光设备的30%输出端口,而接收光网 卡的数据接收口连接分光设备的70%输出端口。
3.如权利要求1所述的单向数据传输系统,其特征在于,所述发送模块包括用于存储待传输数据的内存盘;用于将数据从内存盘中读入系统缓存的文件读取模块;及用于将系统缓存中的数据进行打包发送的数据打包发送模块,该数据打包发送模块设 置有发送光网卡。
4.如权利要求1所述的单向数据传输系统,其特征在于,所述接收模块包括用于接收和校验数据,并将通过检验的有效数据保存到系统缓存中的数据接收和校验 模块,该数据接收和校验模块设置有接收光网卡;用于把系统缓存中的数据写入内存盘中的数据写入模块;及用于暂时存储接收到的有效数据的内存盘。
5.如权利要求1所述的单向数据传输系统,其特征在于,该单向数据传输系统还包括用于将接收模块要求进行文件重传的信息发送出去的短信告警发送模块;和用于接收文件重传信息,并将该文件重传信息传递给发送模块的短信告警接收模块。
6.一种从外网到内网的单向数据传输方法,在外网设置具有发送光网卡的发送模块, 而在内网设置具有接收光网卡的接收模块;发送模块和接收模块之间通过具有两个输出端 口的分光设备连接;将发送光网卡的数据发送口连接分光设备的输入端,而将分光设备的 一个输出端口连接发送光网卡的数据接收口,另一个输出端口连接接收光网卡的数据接收 口 ;采用UDP协议将待传输数据从发送模块经分光设备单向传输到接收模块。
7.如权利要求6所述的单向数据传输方法,其特征在于,所述分光设备具有30%和 70%两个输出端口,将30%输出端口连接发送光网卡的数据接收口,70%输出端口连接接 收光网卡的数据接收口。
8.如权利要求6所述的单向数据传输方法,其特征在于,在发送模块和接收模块中各 自设置内存盘,然后通过如下步骤进行数据传输1)发送模块先将其内存盘中的待传输数据读入系统缓存中,再从系统缓存中取数据打 包成UDP数据包,并为每个数据包编号,在UDP目的地址字段中写入包序号、包数据大小和 MD5码,然后将数据包通过发送光网卡发送给分光设备;2)分光设备将接收到的数据传递给接收光网卡;3)接收模块对接收光网卡接收到的数据进行包序号、包数据大小和MD5码的校验,将 通过校验的有效数据保存到系统缓冲中,MD5码不一致的数据包则判断为非法数据包直接 丢弃,然后将系统缓冲中的数据写入其内存盘中,在文件接收并写入完毕后再放入指定的 磁盘位置。
9.如权利要求6所述的单向数据传输方法,其特征在于,发送模块把发送完的文件保 存到备份目录中,当传输出错时,接收模块将文件重传信息传递给短信告警发送模块;短信 告警发送模块把该信息发送给处于外网的短信告警接收模块;短信告警接收模块再把接收 到的文件重传信息传递给发送模块;发送模块根据文件重传信息把传输失败的文件从备份 目录中取出重新发送一遍。
10.如权利要求9所述的单向数据传输方法,其特征在于,所述短信告警发送模块对文 件重传信息进行加密处理后发送,短信告警接收模块对接收到的加密信息解密后传递给发 送模块。
全文摘要
本发明公开了一种单向数据传输系统和传输方法。所述传输系统包括连接外网的发送模块、连接内网的接收模块和将两模块连接起来的分光设备,其中发送模块又包括用于将数据发送给分光设备的发送光网卡,发送光网卡的数据发送口连接分光设备的输入端,而数据接收口连接分光设备的一个输出端口;所述接收模块又包括用于接收数据的接收光网卡,接收光网卡的数据接收口连接分光设备的另一个输出端口。该系统结构简单,易于使用,不仅保证了内网和外网的完全隔离,同时还能够实现数据的线性高速传输,并保证了传输数据的安全可靠。
文档编号H04L29/06GK102035843SQ201010594789
公开日2011年4月27日 申请日期2010年12月17日 优先权日2010年12月17日
发明者刘云华, 朱贺军, 蒋晓刚, 陈锐 申请人:北京锐安科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1