一种单向光闸数据传输方法、系统、电子设备和介质与流程

文档序号:17585681发布日期:2019-05-03 21:17阅读:1133来源:国知局
一种单向光闸数据传输方法、系统、电子设备和介质与流程

本申请涉及一种单向光闸数据传输方法、系统、电子设备和介质。



背景技术:

单向安全隔离光闸,简称“单向光闸”。由外网端主机、安全隔离交换卡及内网端主机构成,内外端主机分别安装标准的linux操作系统,通过安全隔离卡及只发只收的光纤进行连接。其部署在两个不同的安全域之间,通常情况下,外网端主机部署在低密端,内网端主机部署在高密端。

单向安全隔离光闸属于信息单向导入技术,其工作原理类似于“二极管”单向导电的特性,采用硬件架构设计使数据仅能从外网端主机(低密级)传输至内网端主机(高密级),中间没有任何形式的反馈信号,所有需要“握手”确认的通信协议在信息单向导入系统中都会失去意义,保证了数据传输的安全性。

但目前存在的单向安全隔离光闸中的安全隔离交换卡具备无反馈、不可靠的特性,中间进行数据传输的过程容易出现丢包的现象,数据传输的可靠性是目前研究开发中需要面对的一个重要问题。



技术实现要素:

本申请的一个方面提供了一种单向光闸数据传输方法,单向光闸包括外网端主机及内网端主机,其中,外网端主机处于第一安全域,内网端主机处于第二安全域,所述方法包括:外网端主机从第一安全域获取原始数据,并对原始数据加冗编码,将经过加冗编码的数据发送至内网端主机;内网端主机接收该经过加冗编码的数据并进行解码,得到所述原始数据。

可选地,外网端主机包括至少一个数据隧道分组,每个数据隧道分组包括至少一个用于接收原始数据的数据隧道,不同的数据隧道分组用于接收不同业务类型的原始数据,其中,外网端主机从第一安全域获取原始数据,包括:根据原始数据的业务类型,从对应的数据隧道分组中获取原始数据。

可选地,外网端主机包括至少一个编码器,不同的所述编码器对应不同的加冗编码级别,每个数据隧道对应一个编码器,其中,外网端主机对所述原始数据加冗编码,包括:将从数据隧道中获取的原始数据发送至对应的编码器进行加冗编码。

可选地,内网端主机包括与至少一个编码器一一对应的解码器,其中,内网端主机对经过加冗编码的数据进行解码,包括:采用与编码器所对应的解码器,对经过加冗编码的数据进行解码。

可选地,对经过加冗编码的数据进行解码,包括:对满足预设条件的经过加冗编码的数据进行解码;预设条件包括解码器接收经过加冗编码的数据的数据包个数大于或等于原始数据的数据包个数。

可选地,经过加冗编码的数据的数据包包括:用于确定解码器的加冗级别、用于将解码得到的原始数据进行分组输出的数据隧道号、用于对原始数据的业务类型进行标示的数据类型、用于确定解码顺序的分组序号。

可选地,将经过加冗编码的数据发送至所述内网端主机,包括:将发送经过加冗编码的数据的速度限制在预设数值范围内。

本申请的另一个方面提供了一种单向光闸数据传输系统,单向光闸包括外网端主机及内网端主机,其中,外网端主机处于第一安全域,内网端主机处于第二安全域,所述系统包括:数据编码发送模块,用于外网端主机从第一安全域获取原始数据,并对原始数据加冗编码,将经过加冗编码的数据发送至内网端主机;数据接收解码模块,用于内网端主机接收该经过加冗编码的数据并进行解码,得到原始数据。

本申请的再一个方面提供了一种电子设备,所述设备包括:处理器;存储器,其存储有计算机可执行程序,该程序在被所述处理器执行时,使得所述处理器执行如上文所述的单向光闸数据传输方法。

本申请的又一个方面提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上文所述的单向光闸数据传输方法。

附图说明

为了更完整地理解本申请及其优势,现在将参考结合附图的以下描述,其中:

图1示意性示出了本申请实施例提供的单向光闸数据传输方法的应用场景图;

图2示意性示出了本申请实施例提供的单向光闸数据传输方法的方法流程图;

图3示意性示出了本申请实施例提供的单向光闸数据传输方法的应用场景中外网端主机和内网端主机框图;

图4示意性地示出了本申请实施例中编码器加冗编码的数据包格式;

图5示意性地示出了本申请实施例中对经过加冗编码的数据进行解码的步骤流程图;

图6示意性地示出了本申请实施例中原始数据通过编码器和解码器进行数据传输数据包的流程图;

图7示意性地示出了本申请实施例的单向光闸数据传输系统;

图8示意性示出了根据本申请实施例提供的电子设备框图。

具体实施方式

以下,将参照附图来描述本申请的实施例。但是应该理解,这些描述只是示例性的,而并非要限制本申请的范围。在下面的详细描述中,为便于解释,阐述了许多具体的细节以提供对本申请实施例的全面理解。然而,明显地,一个或多个实施例在没有这些具体细节的情况下也可以被实施。此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本申请的概念。

在此使用的术语仅仅是为了描述具体实施例,而并非意在限制本申请。在此使用的术语“包括”、“包含”等表明了所述特征、步骤、操作和/或部件的存在,但是并不排除存在或添加一个或多个其他特征、步骤、操作或部件。

接下来结合附图对本申请进行示例性说明:

如图1所示,图1为本申请实施例提供的单向光闸数据传输方法的应用场景,单向光闸包括外网端主机、内网端主机,将外网端主机和内网端主机进行连接的安全隔离交换卡和光纤。其中,外网端主机处于第一安全域,内网端主机处于第二安全域,该第一安全域的安全级别低于第二安全域。

第一安全域例如公共网络,第二安全域例如公司、企业、学校、政府部门、国防安全部门等的私有网络,对于这些公司、企业、学校、政府部门、国防安全部门而言,期望内部数据、文件不对外开放不流出,但外部的资源信息可以直接进行获取,因此可以采用单向光闸进行实现。

单向光闸属于信息单向导入技术,其工作原理类似于“二极管”单向导电的特性,通过安全隔离交换卡和光纤使数据仅能从外网端主机(安全级别较低端)传输至内网端主机(安全级别较高端)。

处于第一安全域中的前置机为用户使用端,内置用户的各种应用,处于第二安全域中的后置机同样为用户使用端,内置用户的各种应用。单向光闸的数据传输流向如图1中箭头所示,由处于第一安全域中的前置机产生的原始数据,外网端主机将原始数据通过安全隔离交换卡和光纤发送至内网端主机,内网端主机再将该数据发送至处于第二安全域中的后置机。与该箭头相反的方向数据不能进行传输。

本申请的一个实施例提供了一种单向光闸数据传输方法,参见图2,所述方法可以包括以下步骤:

在步骤s101中,所述外网端主机从第一安全域获取原始数据,并对所述原始数据加冗编码,将经过加冗编码的数据发送至所述内网端主机。

在一个示例中,如图1所示,外网端主机从第一安全域中的前置机获取原始数据,通过文件导入模块或者数据库导入模块实现,该文件导入模块或者数据库导入模块具体可以为数据接口,通过数据接口的形式将原始数据导入外网端主机。

在一个示例中,如图3所示,图3示出了本申请一个实施例提供的单向光闸数据传输方法中应用场景中外网端主机和内网端主机框图。

外网端主机包括至少一个数据隧道分组,每个数据隧道分组包括至少一个用于接收原始数据的数据隧道,不同的数据隧道分组用于接收不同业务类型的原始数据,其中,所述外网端主机从第一安全域获取原始数据,包括:根据原始数据的业务类型,从对应的数据隧道分组中获取原始数据。

通过数据接口的形式将前置机中的原始数据导入外网端主机的文件导入模块或者数据库导入模块中,根据原始数据的导入来源将其分为文件业务类型数据或者数据库业务类型数据。外网端主机中的数据隧道分组可以作为原始数据传输的载体,根据原始数据的不同业务类型建立数据隧道分组,即文件业务类型数据或者数据库业务类型数据可以对应两个数据隧道分组,该两个数据隧道分组均可以包含若干个数据隧道,例如图3中外网端主机中文件业务类型数据中对应的是隧道0,数据库业务类型数据对应的是隧道1和隧道2。并且在创建这些隧道后,为了避免数据传输出现隧道拥挤或者错误,可以对数据的传输和隧道设置对应的逻辑关系。即文件业务类型数据的数据传输只通过隧道0进行,数据库业务类型数据的数据传输只通过隧道1和隧道2进行。

在一个可选的方式中,外网端主机包括至少一个编码器,不同的编码器对应不同的加冗编码级别,每个数据隧道对应一个编码器,其中,外网端主机对原始数据加冗编码,包括:将从数据隧道中获取的原始数据发送至对应的编码器进行加冗编码。

如图3所示,例如外网端主机可以包括4个编码器,编码器0、编码器1、编码器2和编码器3,该4个编码器的加冗编码级别逐渐增大,加冗编码级别是指加冗编码后的数据冗余度。编码器的加冗编码级别越高,数据冗余度越高,即当原始数据包的个数为n个,编码处理后得到的数据包为m个,数据冗余度越高,m的值越大,当原始数据包出现丢包时,数据冗余度高使得解码时对数据的纠错恢复率增高。

需要说明的是,其中编码器0可以为无加冗,即没有对原始数据进行加冗编码,此处的无加冗可以是根据用户需求进行,当用户认为需要传输的原始数据不需要加冗编码进行传输时则可以选用。另外相比于现有技术而言,即使本申请的一个实施例中提供无加冗编码器,对原始数据的发送同样可以减少丢包率,本申请的实施例采用数据隧道的方式将不同业务类型数据通过不同数据隧道分组进行传输,然后汇集或者经过加冗级别不为零的编码器进行加冗编码后,通过发送端进行发送,该发送端位于安全隔离交换卡上。而现有技术中没有数据隧道以及编码器,并将数据汇集后进行发送,而是原始数据均单独发送至发送端,发送端在接收到原始数据后直接发送至接收端,没有数据的汇集过程丢包率较大。

其中编码器对原始数据的加冗算法采用fec(forwarderrorcorrection)向前纠错算法,即通过编码器对原始数据进行编码,产生额外的冗余纠错编码。定义fec(n,m)进行编解码处理,n代表原始数据包的个数,m代表加冗编码后的数据包个数。由于单向光闸中间的安全隔离交换卡具备无反馈、不可靠的特性,中间传输过程可能出现丢包,解码器则能够对残存的数据进行差错检测、纠错恢复,最终再将数据包进行还原。

在步骤s102中,所述内网端主机接收该经过加冗编码的数据并进行解码,得到所述原始数据。

在一个示例中,外网端主机中的原始数据经过编码器进行加冗编码后,通过位于第一安全域中的安全隔离交换卡上的发送端将该经过加冗编码的数据发送至位于第二安全域中的安全隔离交换卡上的接收端。

其中,内网端主机包括与至少一个编码器一一对应的解码器,内网端主机对经过加冗编码的数据进行解码,包括:采用与所述编码器所对应的解码器,对经过加冗编码的数据进行解码。

如图3所示,例如内网端主机同样地包括4个解码器,解码器0、解码器1、解码器2和解码器3,分别对应于内网端主机中的4个编码器,此处的一一对应是指数据冗余度的对应。

参见图4,图4示意性地示出了本申请实施例中编码器加冗编码的数据包格式,该经过加冗编码的数据的数据包包括:

用于确定解码器的加冗级别,即在第二安全域中的安全隔离交换卡上的接收端接收到数据后,需要根据经过加冗编码的数据的数据包中的加冗级别确定其应分发至哪个对应的解码器进行解码。

用于对原始数据的业务类型进行标示的数据类型,例如将其标示为文件业务类型数据或者数据库业务类型数据。

用于将解码得到的原始数据进行分组输出的数据隧道号,通过解码器进行解码之后的得到是还原的原始数据,在第二安全域中的后置机中同样根据这些原始数据的数据类型在内网端主机中建立数据隧道分组,即文件业务类型数据或者数据库业务类型数据可以对应两个数据隧道分组,该两个数据隧道分组均可以包含若干个数据隧道,例如图3中内网端主机中文件业务类型数据中对应的是隧道0,数据库业务类型数据对应的是隧道1和隧道2。同样地,为了避免数据传输出现隧道拥挤或者错误,可以对数据的传输和隧道设置对应的逻辑关系。即文件业务类型数据的数据传输只通过隧道0进行,数据库业务类型数据的数据传输只通过隧道1和隧道2进行。因此根据数据隧道号,解码器在对数据进行解码后则可以确定将解码后的数据输出至哪个对应的隧道进行输出。

用于确定解码顺序的分组序号,在解码时,解码器中存在缓冲机制,数据包并不是一次全进入解码器中进行解码,而是在缓冲区中按分组序号进行排队,依次进入编码器,因此在编码时可以在数据包中加入分组序号。

示例性地,参见图4,在编码器的实际编码过程中,数据包会经过应用层、编码层、分发层进行处理。应用层为将数据隧道传输的数据包进行汇聚,并送到编码器中;编码层通过编码器将数据隧道号、数据类型、长度等添加到原始数据的包头中以及对原始数据进行加冗编码;分发层则将组内索引、加冗级别、分组序号、时间戳等添加至原始数据的包头中,形成经过加冗编码的数据的数据包。

由于编码器采用的向前纠错算法定义fec(n,m)进行编解码处理,n代表原始数据包的个数,m代表加冗编码后的数据包个数。所述对经过加冗编码的数据进行解码,包括:对满足预设条件的所述经过加冗编码的数据进行解码;所述预设条件包括所述解码器接收经过加冗编码的数据的数据包个数大于或等于原始数据的数据包个数。换言之,该向前纠错算法要求解码器接收经过加冗编码的数据的数据包个数大于或等于原始数据的数据包个数才能进行解码纠错,恢复原始数据。

在一个可选的方式中,如图5所示,所述对经过加冗编码的数据进行解码的步骤可通过步骤201至步骤203来完成。

在步骤s201中,判断编码数据包中的原始数据是否有缺失。

该编码数据包是指上文中所述的经过加冗编码的数据的数据包。参见图6,图6为原始数据通过编码器和解码器进行数据传输数据包的流程图。其中,通过源端应用获取到原始数据包(即通过所述外网端主机从第一安全域获取原始数据),图6中数据包0、1、2、3、4为原始数据包,经过编码器进行加冗编码后得到的数据包为数据包0、1、2、3、4、5、6、7。但是可以看出数据包0~7从编码器通过安全隔离交换卡传输到解码器的过程中出现了丢包,数据包1、3、6丢包,因此,通过步骤s201的判断步骤,可以得到此时原始数据是缺失的,数据包1、3、6均为原始数据包。

在步骤s202中,若是,判断所述解码器接收到的编码数据包的个数是否大于或等于原始数据包的个数。

继续参见图7,解码器接收到的编码数据包(即进行加冗编码后得到的数据包)为数据包0、2、4、5、7,因此此时解码器接收到的编码数据包的个数为5个,而在步骤s201中原始数据包为数据包0、1、2、3、4,即原始数据包的个数为5个。此时解码器接收到的编码数据包的个数等于原始数据包的个数。

在步骤s203中,若是,对所述解码器接收到的编码数据包进行纠错恢复。

根据步骤s202中的判断可知,此时解码器接收到的编码数据包的个数等于原始数据包的个数,因此是满足本申请实施例中向前纠错算法的要求的,可以对编码数据包进行纠错恢复,还原得到原始数据。

另外,在本申请的一个示例中,将经过加冗编码的数据发送至所述内网端主机,包括:将发送经过加冗编码的数据的速度限制在预设数值范围内。由于在实际应用中,有时会出现内网端主机数据处理过慢的情况,从而导致内网端主机数据包接收时机的错失,丢失成片的安全隔离交换卡信息。为了避免这样的问题出现,可以在外网端主机发送数据时,在数据包列队中,设置对发送速度的限制,例如将其控制在预设数值范围之内,该预设数值可以为正常传输速率的1/2倍。

综上所述,由于安全隔离交换卡的吞吐能力最高可达128mb,而单向光闸的正常工作时吞吐能为10~50mb。本申请利用安全隔离交换卡的吞吐能力大,具有空闲宽带,通过将外网端主机获取的原始数据进行加冗编码,将加冗编码后的数据经过该安全隔离交换卡发送至内网端主机进行解码纠错,还原得到原始数据,提高了单向光闸数据传输的可靠性。并且利用数据隧道的方式进行原始数据的获取和传输,减少了丢包率。

参见图7,图7示例性示出了根据本申请实施例的单向光闸数据传输系统,所述单向光闸包括外网端主机及内网端主机,其中,所述外网端主机处于第一安全域,所述内网端主机处于第二安全域,所述系统700包括:数据编码发送模块701,用于所述外网端主机从第一安全域获取原始数据,并对所述原始数据加冗编码,将经过加冗编码的数据发送至所述内网端主机;数据接收解码模块702,用于所述内网端主机接收该经过加冗编码的数据并进行解码,得到所述原始数据。

根据本申请的实施例的模块、子模块、单元、子单元中的任意多个、或其中任意多个的至少部分功能可以在一个模块中实现。根据本申请实施例的模块、子模块、单元、子单元中的任意一个或多个可以被拆分成多个模块来实现。

图8示意性示出了根据本申请实施例的电子设备的框图。

如图8所示,电子设备800包括处理器801和存储器802。该电子设备800可以执行根据本申请实施例的方法。

具体地,处理器801例如可以包括通用微处理器、指令集处理器和/或相关芯片组和/或专用微处理器(例如,专用集成电路(asic)),等等。处理器801还可以包括用于缓存用途的板载存储器。处理器801可以是用于执行根据本申请实施例的方法流程的不同动作的单一处理单元或者是多个处理单元。

存储器802,例如可以是能够包含、存储、传送、传播或传输指令的任意介质。例如,可读存储介质可以包括但不限于电、磁、光、电磁、红外或半导体系统、装置、器件或传播介质。可读存储介质的具体示例包括:磁存储装置,如磁带或硬盘(hdd);光存储装置,如光盘(cd-rom);存储器,如随机存取存储器(ram)或闪存;和/或有线/无线通信链路。其存储有计算机可执行程序,该程序在被所述处理器执行时,使得所述处理器执行如上文所述的直播间标签的添加方法。

本申请还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的设备/装置/系统中所包含的;也可以是单独存在,而未装配入该设备/装置/系统中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被执行时,实现根据本申请实施例的方法。

根据本申请的实施例,计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本申请中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本申请中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、有线、光缆、射频信号等等,或者上述的任意合适的组合。

本领域技术人员可以理解,本申请的各个实施例和/或权利要求中记载的特征可以进行多种组合或/或结合,即使这样的组合或结合没有明确记载于本申请中。特别地,在不脱离本申请精神和教导的情况下,本申请的各个实施例和/或权利要求中记载的特征可以进行多种组合和/或结合。所有这些组合和/或结合均落入本申请的范围。

尽管已经参照本申请的特定示例性实施例示出并描述了本申请,但是本领域技术人员应该理解,在不背离所附权利要求及其等同物限定的本申请的精神和范围的情况下,可以对本申请进行形式和细节上的多种改变。因此,本申请的范围不应该限于上述实施例,而是应该不仅由所附权利要求来进行确定,还由所附权利要求的等同物来进行限定。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1