CN106850188B - 一种基于多路异构单向传输通道的数据传输系统 - Google Patents

一种基于多路异构单向传输通道的数据传输系统 Download PDF

Info

Publication number
CN106850188B
CN106850188B CN201710053841.2A CN201710053841A CN106850188B CN 106850188 B CN106850188 B CN 106850188B CN 201710053841 A CN201710053841 A CN 201710053841A CN 106850188 B CN106850188 B CN 106850188B
Authority
CN
China
Prior art keywords
data
transmission
transmission channel
data block
channel
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201710053841.2A
Other languages
English (en)
Other versions
CN106850188A (zh
Inventor
薛惠锋
刘瑞
胡泉
杨越
佟轶
顾升高
李雪巍
孙运乾
占敏
张博
孙毅方
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
China Academy Of Aerospace Systems Science And Engineering
Original Assignee
China Academy Of Aerospace Systems Science And Engineering
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by China Academy Of Aerospace Systems Science And Engineering filed Critical China Academy Of Aerospace Systems Science And Engineering
Priority to CN201710053841.2A priority Critical patent/CN106850188B/zh
Publication of CN106850188A publication Critical patent/CN106850188A/zh
Application granted granted Critical
Publication of CN106850188B publication Critical patent/CN106850188B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0643Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0061Error detection codes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0071Use of interleaving
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0442Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply asymmetric encryption, i.e. different keys for encryption and decryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Power Engineering (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Communication Control (AREA)

Abstract

一种基于多路异构单向传输通道的数据传输系统,包括发送端和接收端,发送端和接收端均采用五层体系架构实现,五层体系架构包括管理层、服务层、调度层、链路层和传输通道层,传输通道层包括发送端控制单元、多路单向无反馈传输通道和接收端控制单元。本发明算法不依赖具体的硬件技术,适用于各种异构单向传输通道,可以动态调整传输通道的数量,具备灵活扩展性和广泛适应性,能够实现多通道数据单向传输,满足大数据实时传输需求,当传输通道出现故障时,收发双方能够及时发现并排除问题,保证传输可靠性。

Description

一种基于多路异构单向传输通道的数据传输系统
技术领域
本发明涉及一种基于多路异构单向传输通道的数据传输系统,属于信息安全传输技术领域。
背景技术
随着信息化建设与安全保密建设的不断发展,由非密网向涉密网进行数据单向传输的需求非常强烈,目前常用的解决方案是通过单向隔离网闸确保数据的单向传输。单向隔离网闸虽然解决了数据严格单向传输的问题,但是其单路传输的方式受限于固定带宽,无法满足大数据实时传输需求,又由于单向传输机制的无反馈特性,当传输通道出现故障时,收发双方不能及时发现并排除问题,传输可靠性无法保障。因此亟需一种高速、可靠、安全的单向传输技术来解决这一问题。
与单路传输技术相比,多路传输技术可以通过多路并发、通道冗余复用等技术提高传输速率和可靠性。目前多路单向传输技术的研究也逐渐丰富,但往往受限于底层传输实现,而基于异构传输通道的调度与系统实现尚未见相关报告。
中国专利公开号CN105656883A,公开日2016年6月8日,发明创造名称为一种适用于工控网络的单向传输内外网安全隔离网闸,该申请案公开了一种使用自定义协议进行单向传输的安全隔离网闸。该系统设计基于单通道进行数据单向传输,数据传输速率受通道带宽限制,无法满足大数据实时传输需求。中国专利公开号CN101867417A,公开日2010年10月20日,发明创造名称为基于光纤多路耦合的单向传输方法,该申请案公开了一种通过修改收发两端网卡驱动程序来实现多路并行单向传输的方法。该方法传输通道为单一的光纤方式,且需要修改网卡驱动程序,无法动态调整传输通道数量,步骤繁琐可靠性差。太原理工大学学报,2015年第46卷中《带环回校验的并发多路光单向安全高速传输技术研究》设计的多路单向高速传输系统,采用环回校验机制保障单向传输正确性,并实现了并发多路传输。该方法需提供分光器环回线路,传输机制采用FPGA实现,由于存在环回线路,传输通道和传输协议设计复杂。
发明内容
本发明的技术解决问题是:克服现有技术的不足,提供一种基于多路异构单向传输通道的数据传输系统,实现多通道数据单向传输,满足大数据实时传输需求,当传输通道出现故障时,收发双方能够及时发现并排除问题,保证传输可靠性。
本发明的技术解决方案是:一种基于多路异构单向传输通道的数据传输系统,包括发送端和接收端,发送端和接收端均采用五层体系架构实现,所述五层体系架构包括管理层、服务层、调度层、链路层和传输通道层;
发送端管理层:用于进行传输策略配置、管理传输通道层的各路单向无反馈传输通道、对系统访问者进行身份认证、对重要操作行为进行安全审计、对传输任务和传输通道进行监控;
发送端服务层:对发送端应用系统进行身份认证,认证通过后,缓存接收到的应用数据,利用数据缓存算法根据该应用数据的传输优先级将其放入对应缓存队列的尾部;提供当前各缓存队列情况、数据发送情况、各路单向无反馈传输通道状态信息,供发送端管理层或外部系统查询;
发送端调度层:利用数据抽取算法从发送端服务层缓存队列中抽取数据,对抽取的每个数据计算MD5值,并进行数据拆分,得到包含多个数据块的数据块组,其中各个数据块大小相同;根据配置的传输策略,对拆分得到的数据块组依次进行交织处理、前向纠错编码和协议封装处理,然后利用数据分发算法对协议封装处理后的数据块组进行冗余传输调度,为各个数据块分配传输通道编号,并输出给发送端链路层;
发送端链路层:计算各个数据块的CRC校验码,将CRC校验码和通道编号放入相应数据块尾部形成数据帧,按照传输协议对数据帧进行封装,将封装后的数据帧发送给传输通道层;同时定期向各路单向无反馈传输通道发送同步信号,所述同步信号包括发送端当前时间、各传输通道的流水号信息;
传输通道层:包括发送端控制单元、多路单向无反馈传输通道和接收端控制单元;发送端控制单元读取数据帧尾部的通道编号,根据通道编号将数据帧分配给相应单向无反馈传输通道进行传输;接收端控制单元接收单向无反馈传输通道传输过来的数据帧,发送给接收端链路层;各路单向无反馈传输通道定期向接收端链路层发送来自发送端链路层的同步信号;
接收端链路层:对接收到的数据帧进行解析,得到CRC校验码和数据块,对得到的数据块进行CRC校验,丢弃校验错误的数据块,将校验正确的数据块传递给接收端调度层;接收各单向无反馈传输通道的同步信号,从中提取发送端当前时间和各传输通道流水号,分析传输状态并上报;
接收端调度层:将来自接收端链路层的数据块按块中携带的数据标识及块序号放入对应缓存队列的相应位置,利用数据选举算法对由于冗余传输而产生的重复数据块进行选举得到正确数据块,若某个数据块丢失,则进行前向纠错译码,以恢复丢失的数据块;对接收到的各数据块进行协议解析,得到每个数据块的有效载荷信息,通过重组还原应用数据,计算重组数据的MD5值,判断重组数据是否有效,将有效的数据传递给接收端服务层;
接收端服务层:对接收端应用系统进行身份认证,对来自接收端调度层的数据进行缓存,然后发送给通过身份认证的接收端应用系统;提供当前各缓存队列情况、数据接收情况、各单向无反馈传输通道状态信息,供接收端管理层或外部系统查询;
接收端管理层:根据发送端管理层的传输策略进行相应配置、管理各路单向无反馈传输通道、对系统访问者进行身份认证、对重要操作行为进行安全审计、对传输任务和传输通道进行监控。
所述多路单向无反馈传输通道为多路异构传输通道,传输通道层能够根据需要动态添加或删减传输通道。
所述传输策略配置包括根据实际需求设置各传输任务的优先级、数据冗余次数以及数据是否进行纠错处理。
所述数据缓存算法的实现方法如下:
步骤一:接收应用数据,并查询数据的传输优先级P;
步骤二:查找优先级为P的缓存队列;若查找到队列,转步骤四,否则执行下一步骤;
步骤三:新建优先级为P的缓存队列,进入步骤四;
步骤四:将应用数据存放到该缓存队列的末尾。
所述数据抽取算法的实现方法如下:
步骤一:依据缓存队列优先级,为每个缓存队列分配最大可抽取数据个数,分配原则为高优先级的缓存队列,最大可抽取数据个数多于低优先级的缓存队列;
步骤二:轮询各缓存队列;
步骤三:判断当前缓存队列是否为空;若为空,转步骤二,否则执行步骤四;
步骤四:判断从当前缓存队列中已抽取的数据个数是否达到上限;若达到上限,转步骤二,否则执行步骤五;
步骤五:从当前缓存队列头部取出一个数据,然后转步骤四。
所述数据分发算法的实现方法如下:
步骤一:针对编码后的数据块组查询传输策略配置,获得传输冗余次数,根据预先设计的传输分组个数m,将数据块组分为m个子分组;
步骤二:选取一个数据子分组等待发送;
步骤三:计算各单向无反馈传输通道权重,根据计算结果选取权重最大的传输通道;
步骤四:判断选取的传输通道是否传输过此数据子分组,若从未传输过,执行步骤五,否则,增加该传输通道的负载量,转步骤三重新选择传输通道;
步骤五:为数据子分组分配传输通道编号;
步骤六:判断数据子分组是否为数据块组的最后一个子分组,若是最后一个,执行步骤七,否则转步骤二继续循环处理;
步骤七:判断数据块组的传输次数是否达到冗余次数要求,若达到,执行步骤八,否则转步骤二继续循环处理;
步骤八:数据块组全部分配完成,转步骤一继续处理下一个数据块组。
所述步骤三中利用如下公式计算第n路单向无反馈传输通道权重Fn的方法:
式中n表示第n路传输通道;Bn为第n路传输通道的带宽;Ln为接收端根据第n路传输通道历史传输情况统计获得的通道丢包率,并反馈给发送端管理层;C为丢包率的修正参数;Un为第n路传输通道负载量;Tn为第n路传输通道系数,依据通道类型设置;k1、k2、k3、k4为保证各项指标平衡的比例系数。
所述数据选举算法的实现方法如下:
步骤一:提取每个数据块拷贝中有效载荷,具有相同有效载荷的数据块拷贝划分为一组,统计各组内数据块拷贝的个数,将其作为各数据块拷贝的得票数;所述数据块拷贝是指由于冗余传输而产生的重复数据块;
步骤二:选取得票数最多的数据拷贝作为正确的数据块,若存在多个相同票数的数据拷贝,则选择来自丢包率低的传输通道的数据块作为正确数据块。
与现有技术相比,本发明具有如下有益效果:
(1)本发明能够对接各种异构的单向无反馈传输通道,并综合利用各通道技术优势,通过数据分发算法统一调度,满足大数据实时单向传输需求的同时,极大提升了数据传输速率和可靠性。
(2)本发明算法不依赖具体的硬件技术,适用于各种异构单向传输通道,可以动态调整传输通道的数量,同时不需要修改网卡驱动程序,传输通道和传输协议简单,具备灵活扩展性和广泛适应性。
(3)本发明通过数据分发算法和数据选举算法,实现各传输通道的负载均衡,提高了数据传输的可靠性。
(4)本发明采用五层结构设计,确保在信息处理各环节均有监管,确保信息数据的安全性、可控性,不同层级间接口明确,既实现了系统体系完整,又能向其他应用系统提供良好的二次开发接口。
附图说明
图1为本发明基于多路异构单向传输通道的数据传输系统示意图;
图2为发送端调度层发送数据流程图;
图3为接收端调度层接收数据流程图;
图4为以一路单向无反馈传输通道为例的传输通道层逻辑结构图;
图5为数据缓存算法流程图;
图6为数据抽取算法流程图;
图7为数据分发算法流程图;
图8为数据选举算法流程图。
具体实施方式
如图1所示,本发明提出一种基于多路异构单向传输通道的数据传输系统,包括发送端和接收端,发送端和接收端均采用五层体系架构实现,五层体系架构包括管理层、服务层、调度层、链路层和传输通道层。传输通道层包括发送端控制单元、多路异构单向无反馈传输通道和接收端控制单元。
发送端管理层:用于进行传输策略配置、管理各路单向无反馈传输通道、对系统访问者进行身份认证、对重要操作行为进行安全审计、对传输任务和传输通道进行监控。
发送端管理层包括传输策略配置、传输通道管理、访问身份认证、安全审计、运行监控五个模块。
传输策略配置模块允许用户根据实际需求设置各传输任务(传输数据)的优先级、数据冗余次数、数据是否进行纠错处理等策略参数。
传输通道管理模块负责管理系统中的各路异构传输通道,包括设置各通道的传输特性,控制各通道的生效、失效状态等。
访问身份认证模块对访问者身份进行鉴别,只有合法用户才能登录系统,并只能访问允许访问的系统资源。
安全审计模块对系统的各类操作、策略配置变更等重要操作行为进行审计,并记录详细的安全审计日志。
运行监控模块实时监控系统的各种运行状态,包括监视传输任务运行情况,控制传输任务启动和停止,监视传输通道的运行状态和性能等。
发送端服务层:包括身份认证接口、数据接收接口和信息查询接口。通过身份认证接口对发送端应用系统进行身份认证,只接收来自认证通过的应用系统数据。数据接收接口管理一系列优先级不同的缓存队列,当接收到来自应用系统的数据后,利用数据缓存算法根据该数据的传输优先级将其放入对应缓存队列的尾部;发送端管理层或外部系统通过信息查询接口查询当前各缓存队列情况、数据发送情况、各单向无反馈传输通道状态信息。
如图5所示,数据缓存算法的实现方法如下:
步骤一:接收应用数据,并查询数据的传输优先级P;
步骤二:查找优先级为P的缓存队列;若查找到队列,转步骤四,否则执行下一步骤;
步骤三:新建优先级为P的缓存队列,进入步骤四;
步骤四:将应用数据存放到该缓存队列的末尾。
发送端调度层:利用数据抽取算法从发送端服务层缓存队列中抽取数据,对抽取的每个数据计算MD5值,并进行数据拆分,得到包含多个数据块的数据块组,其中各个数据块大小相同;根据配置的传输策略,对拆分得到的数据块组依次进行交织处理、前向纠错编码和协议封装处理,然后利用数据分发算法对编码封装后的数据块组进行冗余传输调度,为各个数据块分配传输通道编号,并输出给发送端链路层。
发送端调度层包括传输调度模块、数据拆分模块、协议封装模块、纠错编码模块。
传输调度模块负责抽取服务层缓存队列中的应用数据给数据拆分模块进行处理;根据各路异构通道的传输带宽、丢包率等传输特性,为经协议封装后的数据块组分配传输通道,具体实现过程见调度算法中数据抽取和数据分发算法。
数据拆分模块计算每个抽取数据的MD5值,然后将其拆分成固定大小的一组数据块,最后一块不足的部分用0填补。
纠错编码模块对拆分后的数据块分组进行前向纠错编码(FEC),生成冗余数据块。
协议封装模块按照私有协议对各数据块进行封装。私有协议共定义了5种数据块格式,分别是起始数据块、分块数据块、冗余数据块、结束数据块和同步信号数据块。起始数据块负责告知接收端新的应用数据传输开始,并传递数据的各种属性信息,内容包括数据标识、数据总大小、分块总数、发送时间、数据的MD5值等。分块数据块内容包括数据标识、数据块序号及数据内容。冗余数据块是对分块数据块进行前向纠错编码后的到的冗余数据块,内容包括数据标识、数据块序号及冗余数据。结束数据块负责通知接收端该组数据已经全部发送,内容为数据标识。同步信号数据块用于监测数据通道状态,内容包括同步流水号和发送端主机时间。
如图2所示,发送端调度层发送数据具体步骤如下:
步骤一,按照数据抽取算法抽取服务层缓存队列中的应用数据;
数据抽取算法的实现方法如下:
(1.1)、依据缓存队列优先级,为每个缓存队列分配最大可抽取数据个数,分配原则为高优先级的缓存队列,最大可抽取数据个数多于低优先级的缓存队列;
(1.2)、轮询各缓存队列;
(1.3)、判断当前缓存队列是否为空;若为空,转步骤(1.2),否则执行步骤(1.4);
(1.4)、判断从当前缓存队列中已抽取的数据个数是否达到上限;若达到上限,转步骤(1.2),否则执行步骤(1.5);
(1.5)、从当前缓存队列头部取出一个数据,然后转步骤(1.4)。
数据抽取算法的流程图如图6所示。
步骤二,判断是否抽取到数据;是则执行下一步骤,否则等待设定时间后转步骤一;
步骤三,计算每个抽取数据的MD5值;
步骤四,将每个抽取数据拆分成包含多个数据块的数据块组,其中各个数据块大小相同,数据块组中最后一块不足的部分用0填补;
步骤五,查询应用数据的传输策略,判断是否进行前向纠错编码处理;是则执行下一步骤,否则转步骤八;
步骤六,对数据块组进行交织处理;
步骤七,对数据块组进行前向纠错编码,生成FEC冗余数据块;
步骤八,对所有数据块进行私有协议封装,并按起始数据块→分块数据块1→分块数据块2……→FEC冗余数据块1→FEC冗余数据块2……→结束数据块顺序排序,并放入待传输队列;
步骤九,按数据分发算法将数据块组分配到各传输通道进行发送。然后转步骤一循环执行。
如图7所示,数据分发算法的实现方法如下:
(1)针对编码后的数据块组查询传输策略配置,获得传输冗余次数,根据预先设计的传输分组个数m,将数据块组分为m个子分组;
(2)选取一个数据子分组等待发送;
(3)利用公式(1)计算各单向无反馈传输通道权重,根据计算结果选取权重最大的传输通道;
式中n表示第n路传输通道;Bn为第n路传输通道的带宽;Ln为接收端根据第n路传输通道历史传输情况统计获得的通道丢包率,并反馈给发送端管理层;C为丢包率的修正参数;Un为第n路传输通道负载量;Tn为第n路传输通道系数,依据通道类型设置;k1、k2、k3、k4为保证各项指标平衡的比例系数。
(4)判断选取的传输通道是否传输过此数据子分组,若从未传输过,执行步骤(5),否则,增加该传输通道的负载量,转步骤(3)重新选择传输通道;
(5)为数据子分组分配传输通道编号;
(6)判断数据子分组是否为数据块组的最后一个子分组,若是最后一个,执行步骤(7),否则转步骤(2)继续循环处理;
(7)判断数据块组的传输次数是否达到冗余次数要求,若达到,执行步骤(8),否则转步骤(2)继续循环处理;
(8)数据块组全部分配完成,转步骤一继续处理下一个数据块组。
发送端链路层:包括数据发送模块和传输通道监测模块。数据发送模块计算各数据块的CRC校验码,将校验码和通道编号放入相应数据块尾部形成数据帧,按照传输协议对数据帧进行封装,将封装后的数据帧发送给传输通道层。传输通道监测模块定期向各路单向传输通道发送同步信号,同步信号中包含发送端当前时间、各传输通道的流水号信息。
传输通道层:包括发送端控制单元、多路单向无反馈传输通道和接收端控制单元;发送端控制单元读取数据帧尾部的通道编号,根据通道编号将数据帧分配给相应单向无反馈传输通道,并将数据帧拆分成多个传输数据包进行传输;接收端控制单元接收单向无反馈传输通道传输过来的数据帧,发送给接收端链路层;各路单向无反馈传输通道定期向接收端链路层发送来自发送端链路层的同步信号。
传输通道层负责数据帧严格单向传输,允许通道动态地添加或删减。通过制定统一的接口协议,可与各异构单向传输通道进行无缝集成。单向传输通道包括目前市场主流的光闸产品、网闸产品、单向网卡、FPGA单向传输卡等。
接口协议规定了系统与单向传输通道间的连接方式、通信方式、通信协议、日志格式等。如图4所示,发送端控制单元与数据传输模块A之间,数据传输模块B与接收端控制单元之间均采用socket方式进行网络通信。在建立Socket连接后,必须进行基于标识及其令牌的双向握手认证,才能开始数据通信。在双向握手认证过程中,通信双方各产生一个时间戳,双方均要计算(对方时间戳HASH码+令牌)的HASH码,并随同其它信息发送给对方进行验证。
传输数据包分为协议标记、协议头、数据三部分。协议标记供通信双方判别接收的数据包的协议是否正确。协议头描述了数据包的元数据,包括以下五个部分:命令、数据长度、数据ID、数据包序号、预留字段。
数据传输过程具体步骤如下:
步骤一,发送端控制单元读取数据帧尾部的通道编号,根据通道编号将数据帧分配给相应单向无反馈传输通道,并将待发送的数据帧按照数据包最大长度分为若干数据块,这些数据块分配相同的数据ID;
步骤二,发送端控制单元通过双向握手认证,与数据传输模块A建立可信socket连接;
步骤三,发送端控制单元向数据传输模块A发送开始数据包,数据传输模块A回复成功或失败应答包;
步骤四,发送端控制单元在收到成功应答包后,向数据传输模块A发送数据包,直到所有数据均发送完毕,数据传输模块A回复成功或失败应答包;
步骤五,发送端控制单元向数据传输模块A发送结束数据包,数据传输模块A回复成功或失败应答包;
步骤六,发送端控制单元关闭socket连接;
步骤七,数据传输模块B按照步骤二至六过程,与接收端控制单元建立可信socket连接,将数据包发送到数据接收端。
接收端链路层:主要包括数据接收模块、传输通道监测模块和传输统计模块。数据接收模块对接收到的数据帧进行解析,得到CRC校验码和数据块,对得到的数据块进行CRC校验,丢弃校验错误的数据块,并记录CRC校验错误帧个数,将校验正确的数据块传递给接收端调度层;传输通道监测模块接收各单向无反馈传输通道的同步信号,若超过阈值时间未收到同步信号,则认为该通道发生故障;如果正常接收到同步信号,则从中提取发送端当前时间和各传输通道流水号,若流水号不连续,则说明出现了数据帧丢失。传输统计模块根据接收到的数据帧个数、同步信号内的通道流水号、CRC校验错误帧个数等信息,统计传输的丢包率和错包率。
接收端调度层:将来自接收端链路层的数据块按块中携带的数据标识及块序号放入对应缓存队列的相应位置,利用数据选举算法对由于冗余传输而产生的重复数据块进行选举得到正确数据块,若某个数据块丢失,则进行前向纠错译码,以找回丢失的数据块;对接收到的各数据块进行协议解析,得到每个数据块的有效载荷信息,通过重组还原应用数据,计算重组数据的MD5值,判断重组数据是否有效,将有效的数据传递给接收端服务层。
接收端调度层包括数据缓存模块、数据选举模块、纠错译码模块、协议解析模块、数据重组模块。
数据缓存模块对从接收端链路层传递上来的每个数据块,根据其数据标识放入相对应的缓存队列。若未找到对应的缓存队列,则表示数据为新到的一组数据块,需要新建立一个对应的队列。缓存队列中数据块按照块序号顺序进行排放。当接收到结束数据块时,表明发送端已经发送完同一组的所有数据块。在接收到结束数据块后一段时间(阈值等待时间)内,若未接收到该组的数据块,则认为该组内所有数据块均已接收完成,可进行后续处理。
数据选举模块对由冗余传输产生的多个重复数据块拷贝进行选举操作,选出含有正确有效载荷的数据块,具体实现过程见数据选举算法。
如图8所示,数据选举算法的实现方法如下:
步骤一:提取每个数据块拷贝中有效载荷,具有相同有效载荷的数据块拷贝划分为一组,统计各组内数据块拷贝的个数,将其作为各数据块拷贝的得票数;所述数据块拷贝是指由于冗余传输而产生的重复数据块;
步骤二:选取得票数最多的数据拷贝作为正确的数据块,若存在多个相同票数的数据拷贝,则选择来自丢包率低的传输通道的数据块作为正确数据块。
纠错译码模块,若接收到的一组数据块中存在数据块丢失,则根据丢失数据块序号,利用冗余数据块进行前向纠错译码,恢复丢失的数据块。
协议解析模块按照私有协议对各分块数据块进行解析,提取出有效载荷信息。
数据重组模块根据块序号,将数据块中有效载荷信息排序重组,并计算重组数据的MD5值,与起始数据块中携带的MD5值对比,检查传输是否有效,将有效的数据传递给接收端服务层
如图3所示,接收端调度层接收数据具体步骤如下:
步骤一,接收来自接收端链路层的数据块;
步骤二,判断数据块是否为起始数据块;是则执行下一步骤,否则转步骤五;
步骤三,根据数据块中数据标识,检查对应的缓存队列是否存在;不存在则执行下一步骤,存在则转步骤五;
步骤四,根据起始数据块中数据标识、数据总大小、分块总数等相关信息建立缓存队列;
步骤五,查找数据块相对应的缓存队列,按照数据块类型和块序号,将其放入缓存队列中相应位置;
步骤六,检查数据是否接收完全;是则转步骤九,否则执行下一步骤;
步骤七,检查是否接收到结束数据块;是则执行下一步骤,否则转步骤一;
步骤八,判断等待时间是否达到阈值;是则执行下一步骤,否则转步骤一;
步骤九,按照数据选举算法,从重复的数据块拷贝中选取正确数据块;
步骤十,判断是否存在丢失数据块;是则执行下一步骤,否则转步骤十三;
步骤十一,根据冗余数据块,进行前向纠错译码,恢复丢失数据块;
步骤十二,判断是否存在丢失数据块;是则转步骤十七,否则执行下一步骤;
步骤十三,对数据块进行解交织处理;
步骤十四,按私有协议解封装,从数据块中提取有效载荷信息,根据块序号重组应用数据,删除缓存队列;
步骤十五,计算重组数据的MD5值,与起始数据块中携带的MD5值进行对比,判断是否相等;是则执行下一步骤,否则转步骤十七;
步骤十六,将重组数据传递给接收端服务层;
步骤十七,记录重组失败的应用数据信息。
接收端服务层:包括身份认证接口、数据分发接口和信息查询接口。通过身份认证接口对接收端应用系统进行身份认证,通过数据分发接口对来自接收端调度层的数据进行缓存,然后发送给通过身份认证的接收端应用系统;接收端管理层或外部系统通过信息查询接口查询当前各缓存队列情况、数据接收情况、各单向无反馈传输通道状态信息。
接收端管理层:根据发送端管理层的传输策略进行相应配置、管理各路单向无反馈传输通道、对系统访问者进行身份认证、对重要操作行为进行安全审计、对传输任务和传输通道进行监控。
接收端管理层包括传输策略配置、传输通道管理、访问身份认证、安全审计、运行监控五个模块。
其中传输通道管理、访问身份认证、安全审计、运行监控四个模块与发送端管理层实现方式一样,传输策略配置用于对接收端管理层数据纠错处理方式进行设置,设置内容与发送端管理层一致。
本发明算法不依赖具体的硬件技术,适用于各种异构单向传输通道,可以动态调整传输通道的数量,具备灵活扩展性和广泛适应性。本发明数据分发算法基于异构单向传输通道,综合利用各通道技术优势,统一调度,实现负载均衡与可靠性保障。本发明采用五层结构设计,确保在信息处理各环节均有监管,确保信息数据的安全性、可控性,不同层级间接口明确,既实现了系统体系完整,又能向其他应用系统提供良好的二次开发接口。
本发明说明书中未作详细描述的内容属于本领域专业技术人员的公知技术。

Claims (5)

1.一种基于多路异构单向传输通道的数据传输系统,其特征在于:包括发送端和接收端,发送端和接收端均采用五层体系架构实现,所述五层体系架构包括管理层、服务层、调度层、链路层和传输通道层;
发送端管理层:用于进行传输策略配置、管理传输通道层的各路单向无反馈传输通道、对系统访问者进行身份认证、对重要操作行为进行安全审计、对传输任务和传输通道进行监控;
发送端服务层:对发送端应用系统进行身份认证,认证通过后,缓存接收到的应用数据,利用数据缓存算法根据该应用数据的传输优先级将其放入对应缓存队列的尾部;提供当前各缓存队列情况、数据发送情况、各路单向无反馈传输通道状态信息,供发送端管理层或外部系统查询;
发送端调度层:利用数据抽取算法从发送端服务层缓存队列中抽取数据,对抽取的每个数据计算MD5值,并进行数据拆分,得到包含多个数据块的数据块组,其中各个数据块大小相同;根据配置的传输策略,对拆分得到的数据块组依次进行交织处理、前向纠错编码和协议封装处理,然后利用数据分发算法对协议封装处理后的数据块组进行冗余传输调度,为各个数据块分配传输通道编号,并输出给发送端链路层;
所述数据分发算法的实现方法如下:
步骤一:针对编码后的数据块组查询传输策略配置,获得传输冗余次数,根据预先设计的传输分组个数m,将数据块组分为m个子分组;
步骤二:选取一个数据子分组等待发送;
步骤三:计算各单向无反馈传输通道权重,根据计算结果选取权重最大的传输通道;
利用如下公式计算第n路单向无反馈传输通道权重Fn
式中n表示第n路传输通道;Bn为第n路传输通道的带宽;Ln为接收端根据第n路传输通道历史传输情况统计获得的通道丢包率,并反馈给发送端管理层;C为丢包率的修正参数;Un为第n路传输通道负载量;Tn为第n路传输通道系数,依据通道类型设置;k1、k2、k3、k4为保证各项指标平衡的比例系数;
步骤四:判断选取的传输通道是否传输过此数据子分组,若从未传输过,执行步骤五,否则,增加该传输通道的负载量,转步骤三重新选择传输通道;
步骤五:为数据子分组分配传输通道编号;
步骤六:判断数据子分组是否为数据块组的最后一个子分组,若是最后一个,执行步骤七,否则转步骤二继续循环处理;
步骤七:判断数据块组的传输次数是否达到冗余次数要求,若达到,执行步骤八,否则转步骤二继续循环处理;
步骤八:数据块组全部分配完成,转步骤一继续处理下一个数据块组;
发送端链路层:计算各个数据块的CRC校验码,将CRC校验码和通道编号放入相应数据块尾部形成数据帧,按照传输协议对数据帧进行封装,将封装后的数据帧发送给传输通道层;同时定期向各路单向无反馈传输通道发送同步信号,所述同步信号包括发送端当前时间、各传输通道的流水号信息;
传输通道层:包括发送端控制单元、多路单向无反馈传输通道和接收端控制单元;发送端控制单元读取数据帧尾部的通道编号,根据通道编号将数据帧分配给相应单向无反馈传输通道进行传输;接收端控制单元接收单向无反馈传输通道传输过来的数据帧,发送给接收端链路层;各路单向无反馈传输通道定期向接收端链路层发送来自发送端链路层的同步信号;
接收端链路层:对接收到的数据帧进行解析,得到CRC校验码和数据块,对得到的数据块进行CRC校验,丢弃校验错误的数据块,将校验正确的数据块传递给接收端调度层;接收各单向无反馈传输通道的同步信号,从中提取发送端当前时间和各传输通道流水号,分析传输状态并上报;
接收端调度层:将来自接收端链路层的数据块按块中携带的数据标识及块序号放入对应缓存队列的相应位置,利用数据选举算法对由于冗余传输而产生的重复数据块进行选举得到正确数据块,若某个数据块丢失,则进行前向纠错译码,以恢复丢失的数据块;对接收到的各数据块进行协议解析,得到每个数据块的有效载荷信息,通过重组还原应用数据,计算重组数据的MD5值,判断重组数据是否有效,将有效的数据传递给接收端服务层;
所述数据选举算法的实现方法如下:
步骤一:提取每个数据块拷贝中有效载荷,具有相同有效载荷的数据块拷贝划分为一组,统计各组内数据块拷贝的个数,将其作为各数据块拷贝的得票数;所述数据块拷贝是指由于冗余传输而产生的重复数据块;
步骤二:选取得票数最多的数据拷贝作为正确的数据块,若存在多个相同票数的数据拷贝,则选择来自丢包率低的传输通道的数据块作为正确数据块;
接收端服务层:对接收端应用系统进行身份认证,对来自接收端调度层的数据进行缓存,然后发送给通过身份认证的接收端应用系统;提供当前各缓存队列情况、数据接收情况、各单向无反馈传输通道状态信息,供接收端管理层或外部系统查询;
接收端管理层:根据发送端管理层的传输策略进行相应配置、管理各路单向无反馈传输通道、对系统访问者进行身份认证、对重要操作行为进行安全审计、对传输任务和传输通道进行监控。
2.根据权利要求1所述的一种基于多路异构单向传输通道的数据传输系统,其特征在于:所述多路单向无反馈传输通道为多路异构传输通道,传输通道层能够根据需要动态添加或删减传输通道。
3.根据权利要求1所述的一种基于多路异构单向传输通道的数据传输系统,其特征在于:所述传输策略配置包括根据实际需求设置各传输任务的优先级、数据冗余次数以及数据是否进行纠错处理。
4.根据权利要求3所述的一种基于多路异构单向传输通道的数据传输系统,其特征在于:所述数据缓存算法的实现方法如下:
步骤一:接收应用数据,并查询数据的传输优先级P;
步骤二:查找优先级为P的缓存队列;若查找到队列,转步骤四,否则执行下一步骤;
步骤三:新建优先级为P的缓存队列,进入步骤四;
步骤四:将应用数据存放到该缓存队列的末尾。
5.根据权利要求4所述的一种基于多路异构单向传输通道的数据传输系统,其特征在于:所述数据抽取算法的实现方法如下:
步骤一:依据缓存队列优先级,为每个缓存队列分配最大可抽取数据个数,分配原则为高优先级的缓存队列,最大可抽取数据个数多于低优先级的缓存队列;
步骤二:轮询各缓存队列;
步骤三:判断当前缓存队列是否为空;若为空,转步骤二,否则执行步骤四;
步骤四:判断从当前缓存队列中已抽取的数据个数是否达到上限;若达到上限,转步骤二,否则执行步骤五;
步骤五:从当前缓存队列头部取出一个数据,然后转步骤四。
CN201710053841.2A 2017-01-24 2017-01-24 一种基于多路异构单向传输通道的数据传输系统 Active CN106850188B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710053841.2A CN106850188B (zh) 2017-01-24 2017-01-24 一种基于多路异构单向传输通道的数据传输系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710053841.2A CN106850188B (zh) 2017-01-24 2017-01-24 一种基于多路异构单向传输通道的数据传输系统

Publications (2)

Publication Number Publication Date
CN106850188A CN106850188A (zh) 2017-06-13
CN106850188B true CN106850188B (zh) 2018-09-14

Family

ID=59119561

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710053841.2A Active CN106850188B (zh) 2017-01-24 2017-01-24 一种基于多路异构单向传输通道的数据传输系统

Country Status (1)

Country Link
CN (1) CN106850188B (zh)

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107493292B (zh) * 2017-09-03 2023-04-07 深圳市中锐源科技有限公司 异构多通道安全隔离的信息传输系统及方法
CN107786464B (zh) * 2017-09-22 2020-04-21 烽火通信科技股份有限公司 一种实现节点间通信的方法及装置
CN108847915B (zh) * 2018-05-29 2020-11-24 北京光润通科技发展有限公司 应用纠错编码技术重构源端数据实现单向传输的方法
CN108924059A (zh) * 2018-07-05 2018-11-30 郑州云海信息技术有限公司 一种基于动态调节虚拟逻辑通道实现报文传输的方法
CN111355752A (zh) * 2018-12-20 2020-06-30 阿里巴巴集团控股有限公司 基于网闸的文件传输方法、装置及设备
CN111464258B (zh) * 2019-01-18 2022-10-11 阿里巴巴集团控股有限公司 一种数据校验方法、装置、计算设备及介质
CN111917812B (zh) * 2019-05-10 2022-09-30 北京百度网讯科技有限公司 数据的传输控制方法、装置、设备以及存储介质
CN110831010B (zh) * 2019-10-21 2024-04-16 上海鹄恩信息科技有限公司 一种多通道数据发送及接收方法及装置和数据传输系统
CN110852931B (zh) * 2019-11-18 2023-08-22 天津津航计算技术研究所 一种适用于vpx架构的高性能cpu刀片装置
CN112436998B (zh) * 2020-11-12 2023-05-02 北京天融信网络安全技术有限公司 一种数据传输方法及电子设备
CN112788030B (zh) * 2021-01-11 2022-04-05 北京鼎轩科技有限责任公司 一种高低密网络间的数据交换方法及系统
CN112804227B (zh) * 2021-01-11 2022-01-14 北京鼎轩科技有限责任公司 数据单向传输装置、方法、电子设备及存储介质
CN112787888A (zh) * 2021-01-16 2021-05-11 鸣飞伟业技术有限公司 一种基于无反馈的数据单向传输共享切换技术的系统
CN113014356B (zh) * 2021-02-09 2022-05-27 中国人民解放军战略支援部队信息工程大学 基于数据编码的数据处理方法及装置、设备
CN112994841B (zh) * 2021-02-09 2022-05-27 中国人民解放军战略支援部队信息工程大学 基于指令编码的数据处理方法及装置、设备
CN113328958B (zh) * 2021-05-06 2022-03-11 北京连山科技股份有限公司 一种基于udp缓存优化的多链路大批量传输方法和系统
CN113595977A (zh) * 2021-06-17 2021-11-02 国网上海能源互联网研究院有限公司 一种基于电力隔离装置的大数据云穿越方法及系统
CN114499993B (zh) * 2021-12-30 2022-11-29 郑州大学 一种基于单向光闸的高可靠性安全传输与控制系统及方法
CN114172900A (zh) * 2022-02-11 2022-03-11 北京安帝科技有限公司 基于单向网闸的文件传输方法及系统
CN115459896B (zh) * 2022-11-11 2023-03-03 北京超摩科技有限公司 多通道数据传输的控制方法、控制系统、介质及芯片
CN115794731B (zh) * 2023-01-29 2023-07-04 北京超摩科技有限公司 一种用于芯粒间多通道数据链路传输的解耦控制方法
CN118113641A (zh) * 2023-12-22 2024-05-31 深圳市联瑞电子有限公司 高可靠性单向传输方法、装置、设备及存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101834700A (zh) * 2010-05-12 2010-09-15 北京邮电大学 一种基于数据包的单向可靠传输方法及收发装置
CN101867417A (zh) * 2010-07-01 2010-10-20 中国人民解放军国防科学技术大学 基于光纤多路耦合的单向传输方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6085253A (en) * 1997-08-01 2000-07-04 United Video Properties, Inc. System and method for transmitting and receiving data
CN202841192U (zh) * 2012-09-01 2013-03-27 林宏刚 一种支持广域网的高速、可靠的单向传输系统
CN102983939B (zh) * 2012-11-13 2015-09-23 北京空间飞行器总体设计部 一种用于航天器多级子网的上行数据通信方法
CN103338112A (zh) * 2013-07-15 2013-10-02 中国科学院信息工程研究所 一种数据单向导入方法及系统
CN105429797B (zh) * 2015-11-12 2019-06-11 北京航空航天大学 基于opnet的航空电子系统afdx网络仿真验证系统

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101834700A (zh) * 2010-05-12 2010-09-15 北京邮电大学 一种基于数据包的单向可靠传输方法及收发装置
CN101867417A (zh) * 2010-07-01 2010-10-20 中国人民解放军国防科学技术大学 基于光纤多路耦合的单向传输方法

Also Published As

Publication number Publication date
CN106850188A (zh) 2017-06-13

Similar Documents

Publication Publication Date Title
CN106850188B (zh) 一种基于多路异构单向传输通道的数据传输系统
CN105991384B (zh) 兼容时间触发以太网与1553b的航天以太网通信方法
CN101702667B (zh) 一种基于多个网络模式的多信道同步工作方法
CN102098301B (zh) 多链路自适应的数据传输方法与系统
CN102959911B (zh) 一种设备和方法
US8565095B2 (en) Context controlled data tap utilizing parallel logic for integrated link monitoring
CN108645450B (zh) 一种智慧城市环保系统
CN102412990B (zh) 具有集中管理和实时传输功能遥感卫星原始数据记录系统
CN104158625B (zh) 一种地铁调度通信的信息传输分发方法
CN106059936B (zh) 云系统组播文件的方法及装置
CN202841192U (zh) 一种支持广域网的高速、可靠的单向传输系统
CN102185833A (zh) 一种基于fpga的fc i/o并行处理方法
CN115022084B (zh) 一种网络隔离网闸数据交换方法及其应用
CN107360233A (zh) 文件上传的方法、装置、设备及可读存储介质
CN109547456B (zh) 基于信息单向传输技术具有可控交互能力的网络隔离系统
CN102594672A (zh) 适用于低可靠网络环境下高质量互联网通讯的方法及系统
CN105515835B (zh) 一种具有通信完整性检查功能的航空航天tte网络系统级网关
Van Hook et al. An approach to DIS scalability
CN105553630A (zh) 一种航空飞行参数的多路数据融合方法
CN102118361A (zh) 一种基于网络协议的数据传输控制方法和装置
CN109379207A (zh) 一种业务复用方法、业务解复用方法以及相关设备
CN110417687A (zh) 一种报文发送与接收方法及装置
CN108882064A (zh) 一种基于gpon系统的端口数据包发送方法及系统
CN115660791B (zh) 一种差旅服务的订单处理方法及系统
CN102084220A (zh) 远端读取电表的方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
CB03 Change of inventor or designer information

Inventor after: Xue Huifeng

Inventor after: Zhang Bo

Inventor after: Sun Yifang

Inventor after: Liu Rui

Inventor after: Hu Quan

Inventor after: Yang Yue

Inventor after: Tong Die

Inventor after: Gu Shenggao

Inventor after: Li Xuewei

Inventor after: Sun Yunqian

Inventor after: Zhan Min

Inventor before: Liu Rui

Inventor before: Sun Yifang

Inventor before: Hu Quan

Inventor before: Yang Yue

Inventor before: Tong Die

Inventor before: Gu Shenggao

Inventor before: Li Xuewei

Inventor before: Sun Yunqian

Inventor before: Zhan Min

Inventor before: Zhang Bo

CB03 Change of inventor or designer information
GR01 Patent grant
GR01 Patent grant