本發(fā)明涉及數(shù)據(jù)傳輸技術(shù),尤其是涉及一種能保證傳輸速度和數(shù)據(jù)可靠性的基于網(wǎng)絡(luò)接口的無反饋單向數(shù)據(jù)傳輸設(shè)備及傳輸方法。
背景技術(shù):
近年來,黨政機關(guān)、企事業(yè)單位和軍隊等團體組織開發(fā)建設(shè)了很多安全性要求特別高或者涉及秘密的計算機信息系統(tǒng),這些系統(tǒng)通常按照保密級別分為不同的網(wǎng)絡(luò),一般都會有一個公共網(wǎng)絡(luò),一個涉密網(wǎng)絡(luò),如何按照國家保密局或軍隊規(guī)定要求實現(xiàn)不同密級網(wǎng)絡(luò)之間數(shù)據(jù)安全傳輸已成為我國信息化建設(shè)中一個亟需解決的重要課題。在涉密網(wǎng)絡(luò)與非涉密網(wǎng)絡(luò)之間開發(fā)一套具備單向、安全、高效、穩(wěn)定等特性的單向數(shù)據(jù)傳輸安全傳輸系統(tǒng)就有著廣泛的應(yīng)用前景?,F(xiàn)在實現(xiàn)單向數(shù)據(jù)傳輸?shù)募夹g(shù)有以下幾種:基于擺渡技術(shù),基于有控制信息反饋的單向傳輸技術(shù)?;跀[渡技術(shù)則在特殊情況下可以實現(xiàn)數(shù)據(jù)的反向傳輸,基于有控制信息反饋的單向傳輸技術(shù)也有可能會產(chǎn)生泄密問題。對于普通的數(shù)據(jù)傳輸來說,因為存在應(yīng)答機制,所以對于數(shù)據(jù)的可靠性是有保證的,但單向傳輸,相當(dāng)于把數(shù)據(jù)傳到漫無目標(biāo)的空間去,沒有任何反饋,所以數(shù)據(jù)的可靠性,系統(tǒng)的穩(wěn)定性及傳輸速率就成了研究的重要課題。
技術(shù)實現(xiàn)要素:
為解決上述問題,本發(fā)明的目的在于提供一種能保證傳輸速度和數(shù)據(jù)可靠性的基于網(wǎng)絡(luò)接口的無反饋單向數(shù)據(jù)傳輸設(shè)備。
本發(fā)明通過以下技術(shù)措施實現(xiàn)的,一種基于網(wǎng)絡(luò)接口的無反饋單向數(shù)據(jù)傳輸設(shè)備,用于將外網(wǎng)數(shù)據(jù)向內(nèi)網(wǎng)進行單向傳輸?shù)脑O(shè)備,包括外網(wǎng)電路模塊、內(nèi)網(wǎng)電路模塊和至少二根連接外網(wǎng)電路模塊與內(nèi)網(wǎng)電路模塊的光纖;所述外網(wǎng)電路模塊包括連接到外網(wǎng)網(wǎng)絡(luò)設(shè)備的網(wǎng)絡(luò)接口與處理器模塊,連接處理器模塊的FPGA數(shù)據(jù)處理電路,連接FPGA數(shù)據(jù)處理電路的至少二個光纖發(fā)送模塊,以及電源控制模塊,所述外網(wǎng)電路模塊的FPGA數(shù)據(jù)處理電路將收到的數(shù)據(jù)按光纖發(fā)送模塊的個數(shù)分組打包,然后將打包好的數(shù)據(jù)發(fā)到對應(yīng)的通道,每個數(shù)據(jù)包重復(fù)發(fā)送多次;所述內(nèi)網(wǎng)電路模塊包括連接到內(nèi)網(wǎng)網(wǎng)絡(luò)設(shè)備的網(wǎng)絡(luò)接口與處理器模塊,連接處理器模塊的FPGA數(shù)據(jù)處理電路,連接FPGA數(shù)據(jù)處理電路的至少二個光纖接收模塊,以及電源控制模塊。
作為一種優(yōu)選方式,所述內(nèi)網(wǎng)電路模塊中的處理器模塊和FPGA數(shù)據(jù)處理電路均含有高速緩存,通過多級緩存機制降低因內(nèi)網(wǎng)接收數(shù)據(jù)較慢導(dǎo)致的數(shù)據(jù)丟失風(fēng)險。
作為一種優(yōu)選方式,所述內(nèi)網(wǎng)電路模塊中有一報警模塊。
作為一種優(yōu)選方式,所述報警電路為聲光報警電路。
本發(fā)明還公開了一種基于網(wǎng)絡(luò)接口的無反饋單向數(shù)據(jù)的傳輸方法,用于將外網(wǎng)數(shù)據(jù)向內(nèi)網(wǎng)進行單向傳輸,包括如下步驟:
步驟一.外網(wǎng)電路模塊通過網(wǎng)絡(luò)接口與處理器模塊接收到外網(wǎng)計算機的數(shù)據(jù)后,傳送給FPGA數(shù)據(jù)處理電路,如在預(yù)定的時間內(nèi)沒有收到外網(wǎng)計算機的數(shù)據(jù),處理器模塊則自動生成心跳數(shù)據(jù)包發(fā)送到FPGA數(shù)據(jù)處理電路。
步驟二FPGA數(shù)據(jù)處理電路將收到的數(shù)據(jù)按通道的個數(shù)分組打包,然后將打包好的數(shù)據(jù)發(fā)到對應(yīng)的光纖發(fā)送模塊,每個數(shù)據(jù)包重復(fù)發(fā)送預(yù)定次;;
步驟三.光纖發(fā)送模塊通過光纖將數(shù)據(jù)發(fā)送給與其匹配的光纖接收模塊;
步驟四.各光纖接收模塊將接收到的數(shù)據(jù)包發(fā)送到FPGA數(shù)據(jù)處理模塊并進行校驗,校驗成功后再判斷這個數(shù)據(jù)包是否已經(jīng)收到,如果已經(jīng)收到,則放棄這個數(shù)據(jù)包,接著FPGA電路還將各個通道收到的數(shù)據(jù)包組合成最終數(shù)據(jù);
步驟五.FPGA數(shù)據(jù)處理模塊將最終數(shù)據(jù)發(fā)送處理器模塊;
步驟七.若處理器判斷最終數(shù)據(jù)不是心跳數(shù)據(jù)包,則通過網(wǎng)絡(luò)接口發(fā)送最終數(shù)據(jù)給內(nèi)網(wǎng)計算機,否則丟棄最終數(shù)據(jù)。
作為一種優(yōu)選方式,步驟五后包括步驟六:
處理器模塊判斷預(yù)定的時間內(nèi)是否得到最終數(shù)據(jù),如得到最終數(shù)據(jù)則執(zhí)行步驟七,否則執(zhí)行步驟八;
步驟七.報警電路報警。
本發(fā)明的數(shù)據(jù)發(fā)送模塊與數(shù)據(jù)接收模塊均采用高速FPGA數(shù)據(jù)處理模塊,其使用32位總線連接控制網(wǎng)絡(luò)接口的處理器芯片,當(dāng)FPGA的時鐘為100M時,其與處理器芯片之間的數(shù)據(jù)交換可以達到3.2Gbps,保證了數(shù)據(jù)可以高速到達FPGA處理模塊;采用多通道并行發(fā)送的方式,發(fā)送端模塊與接收端模塊支持多個光模塊,這樣可以建立多個從發(fā)送端到接收端的單向數(shù)據(jù)通道,幾個通道可以同時工作,外網(wǎng)電路模塊的FPGA數(shù)據(jù)處理電路將收到的數(shù)據(jù)按通道的個數(shù)分組打包,然后將打包好的數(shù)據(jù)發(fā)到對應(yīng)的通道,每個數(shù)據(jù)包重復(fù)發(fā)送多次,內(nèi)網(wǎng)電路模塊和高速FPGA數(shù)據(jù)處理電路接收到每個通道的數(shù)據(jù)包就作校驗,校驗成功后再判斷這個數(shù)據(jù)包是否已經(jīng)收到,如果已經(jīng)收到,則放棄這個數(shù)據(jù)包,否則將數(shù)據(jù)包送到內(nèi)網(wǎng)電路模塊的處理器模塊,使用多次發(fā)送方式,對通道的個數(shù)沒有要求,同時可以通過調(diào)整發(fā)送次數(shù)來控制誤碼率(當(dāng)整體誤碼率稍高時,可以增加發(fā)送次數(shù)來降低)。
附圖說明
圖1為本發(fā)明實施例的結(jié)構(gòu)框圖。
具體實施方式
下面結(jié)合實施例并對照附圖對本發(fā)明作進一步詳細(xì)說明。
本實施例的一種基于網(wǎng)絡(luò)接口的無反饋單向數(shù)據(jù)傳輸設(shè)備,請參考圖1,包括外網(wǎng)電路模塊200、內(nèi)網(wǎng)電路模塊400和至少二根連接外網(wǎng)電路模塊200與內(nèi)網(wǎng)電路模塊400的600光纖,以及為外網(wǎng)電路模塊200和內(nèi)網(wǎng)電路模塊400供電的開關(guān)電源模塊300;所述外網(wǎng)電路模塊200包括連接到外網(wǎng)計算機100的網(wǎng)絡(luò)接口與處理器模塊203,連接處理器模塊203的FPGA數(shù)據(jù)處理電路204,連接FPGA數(shù)據(jù)處理電路204的至少二個光纖發(fā)送模塊202,以及電源控制模塊201,所述外網(wǎng)電路模塊200的FPGA數(shù)據(jù)處理電路204將收到的數(shù)據(jù)按通道的個數(shù)分組打包,然后將打包好的數(shù)據(jù)發(fā)到對應(yīng)的光纖發(fā)送模塊202,每個數(shù)據(jù)包重復(fù)發(fā)送多次;所述內(nèi)網(wǎng)電路模塊400包括連接到內(nèi)網(wǎng)計算機500的網(wǎng)絡(luò)接口與處理器模塊403,連接處理器模塊403的FPGA數(shù)據(jù)處理電路402,連接FPGA數(shù)據(jù)處理電路402的至少二個光纖接收模塊401,以及電源控制模塊405。
本實例中選擇的處理器為Cortex A9雙核處理器,這個處理器與高速FPGA集成在一起,形成一個SOC芯片(ALTERA公司的Cyclone V,具體型號為5CSXFC6D6F31C8-N)及附屬電路,但各自帶有不同的緩沖區(qū)(RAM),其和高速FPGA通過內(nèi)部32位并行總線連接。高速FPGA數(shù)據(jù)處理模塊核心芯片也是SOC芯片(型號5CSXFC6D6F31C8-N),它可以完成數(shù)據(jù)打包及校驗等工作,另外,還含有6個串行收發(fā)器(每個的最高速度可以達到3.125Gbps),通過串行收發(fā)器將并行數(shù)據(jù)轉(zhuǎn)換成串行數(shù)據(jù)再通過光模塊發(fā)送出去,也可以接收光模塊的串行數(shù)據(jù)轉(zhuǎn)換成并行數(shù)據(jù)送到FPGA數(shù)據(jù)處理模塊對應(yīng)的緩沖區(qū)。光模塊使用恒寶通公司的HSFP-60-3312S-SSF,每個光模塊含發(fā)送口與接收口,在其作為光纖發(fā)送模塊202時懸空接收口,可以將收到的串行信號轉(zhuǎn)換成光信號,通過光模塊的發(fā)送口發(fā)送出去,在其作為光纖接收模塊401時懸空發(fā)送口,將從接收口收到的光信號轉(zhuǎn)成串行信號發(fā)送到FPGA核。電源電路將12V直流電源轉(zhuǎn)換成5V和3.3V直流電源,確保各部分的電源供應(yīng)。
用于將外網(wǎng)數(shù)據(jù)向內(nèi)網(wǎng)進行單向傳輸?shù)姆椒?,包括如下步驟:
步驟一.外網(wǎng)電路模塊200通過網(wǎng)絡(luò)接口與處理器模塊203接收到外網(wǎng)計算機100的數(shù)據(jù)后,傳送給FPGA數(shù)據(jù)處理電路204,處理器模塊203若在設(shè)定的時間內(nèi)沒有收到外網(wǎng)計算機發(fā)來的數(shù)據(jù),則自動定時發(fā)送特定數(shù)據(jù)包(心跳數(shù)據(jù)包)并發(fā)送到FPGA數(shù)據(jù)處理模塊204;
步驟二FPGA數(shù)據(jù)處理電路204將收到的數(shù)據(jù)按通道的個數(shù)分組打包,然后將打包好的數(shù)據(jù)發(fā)到對應(yīng)的光纖發(fā)送模塊202,每個數(shù)據(jù)包重復(fù)發(fā)送預(yù)定次,具體發(fā)送次數(shù)取決于實施例中對誤碼率的調(diào)整;
步驟三.光纖發(fā)送模塊202通過光纖600將數(shù)據(jù)發(fā)送給與其匹配的光纖接收模塊401;
步驟四.各光纖接收模塊401將接收到的數(shù)據(jù)包發(fā)送到FPGA數(shù)據(jù)處理模塊402并進行校驗,校驗成功后再判斷這個數(shù)據(jù)包是否已經(jīng)收到,如果已經(jīng)收到,則放棄這個數(shù)據(jù)包,接著FPGA數(shù)據(jù)處理電路402還將各個通道收到的數(shù)據(jù)包組合成最終數(shù)據(jù);
步驟五.FPGA數(shù)據(jù)處理模塊402將最終數(shù)據(jù)發(fā)送處理器模塊403;
步驟七.若處理器模塊403判斷最終數(shù)據(jù)不是心跳數(shù)據(jù)包,則通過網(wǎng)絡(luò)接口發(fā)送最終數(shù)據(jù)給內(nèi)網(wǎng)計算機500,否則丟棄最終數(shù)據(jù)。
本裝置的數(shù)據(jù)發(fā)送模塊與數(shù)據(jù)接收模塊均采用高速FPGA數(shù)據(jù)處理模塊,其使用32位總線連接控制網(wǎng)絡(luò)接口的處理器芯片,當(dāng)FPGA的時鐘為100M時,其與處理器芯片之間的數(shù)據(jù)交換可以達到3.2Gbps,保證了數(shù)據(jù)可以高速到達FPGA處理模塊;采用多通道并行發(fā)送的方式,發(fā)送端模塊與接收端模塊可以支持多個光模塊,這樣可以建立多個從發(fā)送端到接收端的單向數(shù)據(jù)通道,幾個通道可以同時工作,外網(wǎng)電路模塊的FPGA數(shù)據(jù)處理電路將收到的數(shù)據(jù)按通道的個數(shù)分組打包,然后將打包好的數(shù)據(jù)發(fā)到對應(yīng)的通道,每個數(shù)據(jù)包重復(fù)發(fā)送多次,內(nèi)網(wǎng)電路模塊和高速FPGA數(shù)據(jù)處理電路接收到每個通道的數(shù)據(jù)包就作校驗,校驗成功后再判斷這個數(shù)據(jù)包是否已經(jīng)收到,如果已經(jīng)收到,則放棄這個數(shù)據(jù)包,否則將數(shù)據(jù)包送到內(nèi)網(wǎng)電路模塊的處理器模塊,使用多次發(fā)送方式,對通道的個數(shù)沒有要求,同時可以通過調(diào)整發(fā)送次數(shù)來控制誤碼率(當(dāng)整體誤碼率稍高時,可以增加發(fā)送次數(shù)來降低)。
在一實施例的基于網(wǎng)絡(luò)接口的無反饋單向數(shù)據(jù)傳輸設(shè)備,請參考圖1,在前面技術(shù)方案的基礎(chǔ)上具體可以是,內(nèi)網(wǎng)電路模塊400中的處理器模塊403和FPGA數(shù)據(jù)處理電路402均含有高速緩存,通過多級緩存機制降低因內(nèi)網(wǎng)接收數(shù)據(jù)較慢導(dǎo)致的數(shù)據(jù)丟失風(fēng)險。采用多級高速緩存來降低數(shù)據(jù)溢出的概率,數(shù)據(jù)接收模塊的高速FPGA數(shù)據(jù)處理模塊與內(nèi)網(wǎng)處理器模塊均有高速緩存,當(dāng)內(nèi)網(wǎng)計算機接收端軟件未啟動或內(nèi)網(wǎng)計算機接收端接收速率偏慢時,首先使用內(nèi)網(wǎng)處理器模塊對應(yīng)的緩沖區(qū),當(dāng)內(nèi)網(wǎng)處理器模塊對應(yīng)的緩沖區(qū)滿時,不再向FPGA模塊取數(shù)據(jù),待數(shù)據(jù)緩沖區(qū)有空時再繼續(xù)取數(shù)據(jù);FPGA模塊繼續(xù)接收光模塊數(shù)據(jù)存儲到自己的緩沖區(qū)。
在一實施例的基于網(wǎng)絡(luò)接口的無反饋單向數(shù)據(jù)傳輸設(shè)備,請參考圖1,在前面技術(shù)方案的基礎(chǔ)上具體可以是,內(nèi)網(wǎng)電路模塊400中有一報警模塊404。
在一實施例的基于網(wǎng)絡(luò)接口的無反饋單向數(shù)據(jù)傳輸設(shè)備,請參考圖1,在前面技術(shù)方案的基礎(chǔ)上具體可以是,報警電路404為聲光報警電路。
在一實施例的基于網(wǎng)絡(luò)接口的無反饋單向數(shù)據(jù)傳輸方法,請參考圖1,在前面技術(shù)方案的基礎(chǔ)上具體可以是,步驟五后包括:
步驟六.處理器模塊403判斷預(yù)定的時間內(nèi)(該時間大于數(shù)據(jù)發(fā)送模塊設(shè)定好的心跳發(fā)送間隔)是否得到最終數(shù)據(jù),如得到最終數(shù)據(jù)則執(zhí)行步驟七,否則執(zhí)行步驟八;
步驟八報警電路404報警。
以上是對本發(fā)明基于網(wǎng)絡(luò)接口的無反饋單向數(shù)據(jù)傳輸設(shè)備及方法進行了闡述,用于幫助理解本發(fā)明,但本發(fā)明的實施方式并不受上述實施例的限制,任何未背離本發(fā)明原理下所作的改變、修飾、替代、組合、簡化,均應(yīng)為等效的置換方式,都包含在本發(fā)明的保護范圍的內(nèi)。