999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

一種帶有加解密功能的數(shù)據(jù)擺渡模塊設(shè)計(jì)

2018-09-07 02:31:52,,,
關(guān)鍵詞:系統(tǒng)設(shè)計(jì)

,,,

(南京南瑞集團(tuán)公司,南京 211100)

引 言

在兩個(gè)不同安全防護(hù)等級(jí)網(wǎng)絡(luò)之間交換數(shù)據(jù)最常用的方法是使用網(wǎng)絡(luò)隔離裝置對(duì)數(shù)據(jù)以非網(wǎng)絡(luò)傳輸?shù)姆绞竭M(jìn)行數(shù)據(jù)傳輸。傳統(tǒng)網(wǎng)絡(luò)隔離裝置的基本結(jié)構(gòu)是兩個(gè)完全獨(dú)立的主機(jī)系統(tǒng)加一個(gè)數(shù)據(jù)擺渡模塊。為了進(jìn)一步增加數(shù)據(jù)擺渡的安全性,目前新興的網(wǎng)絡(luò)隔離裝置的基本結(jié)構(gòu)在傳統(tǒng)網(wǎng)絡(luò)隔離裝置的基礎(chǔ)上增強(qiáng)了加解密功能,首先對(duì)數(shù)據(jù)進(jìn)行加解密處理,再對(duì)數(shù)據(jù)進(jìn)行擺渡。網(wǎng)絡(luò)隔離裝置中數(shù)據(jù)加解密的性能和數(shù)據(jù)擺渡的性能直接決定了整個(gè)系統(tǒng)的性能。

現(xiàn)有的數(shù)據(jù)擺渡模塊一般有電子開關(guān)、單向FIFO、光纖和使用協(xié)處理器(FPGA等)擺渡數(shù)據(jù)4種方式,目前應(yīng)用最廣泛的是使用協(xié)處理器的方式。對(duì)數(shù)據(jù)的加密功能則主要有在主機(jī)系統(tǒng)上通過(guò)軟件實(shí)現(xiàn)數(shù)據(jù)加密、分離的加解密模塊這兩種方式。

軟件實(shí)現(xiàn)的加密方式在安全性方面有隱患,且加解密性能對(duì)主機(jī)系統(tǒng)的性能有很大的依賴性。分離的加解密模塊一般做成一塊獨(dú)立的加密卡,加密卡上的核心器件主要包括協(xié)處理器和密碼芯片等,一般通過(guò)PCI/PCIe接口和主機(jī)進(jìn)行數(shù)據(jù)交換,通過(guò)密碼芯片對(duì)數(shù)據(jù)進(jìn)行加解密處理。

分離的加密模塊提高了系統(tǒng)的安全性,但與傳統(tǒng)的網(wǎng)絡(luò)隔離裝置相比,增加了分離加密模塊的隔離裝置,在數(shù)據(jù)擺渡之前首先要將數(shù)據(jù)通過(guò)PCI/PCIe接口寫入到加解密模塊進(jìn)行加解密處理,加解密完成后的數(shù)據(jù)返回到主機(jī)系統(tǒng),主機(jī)系統(tǒng)再將加解密完成后的數(shù)據(jù)寫入到擺渡模塊進(jìn)行數(shù)據(jù)擺渡,在性能上打了折扣,同時(shí)還要額外占用主機(jī)系統(tǒng)的一個(gè)PCI/PCIe接口和CPU資源,增加了硬件成本。

本文以XILINX公司的XC7A100T系列 FPGA為硬件平臺(tái),利用FPGA的并行性[1]特點(diǎn),設(shè)計(jì)了一款帶有加解密功能的高速數(shù)據(jù)擺渡模塊,在保證系統(tǒng)安全性的基礎(chǔ)上,提高了數(shù)據(jù)加解密和傳輸?shù)男阅埽瑫r(shí)降低了整個(gè)系統(tǒng)的硬件成本。

1 硬件方案設(shè)計(jì)

如圖1所示,本設(shè)計(jì)選用了兩片XILINX公司的XC7A100T FPGA芯片作為數(shù)據(jù)處理核心,數(shù)據(jù)擺渡模塊與主板之間采用PCIe接口通信。XC7A100T FPGA芯片該最多支持一個(gè)PCIe x4 Lane核,每個(gè)Lane線速為5 Gbps。

為了提高數(shù)據(jù)傳輸速率,降低擺渡模塊PCB硬件設(shè)計(jì)的難度,擺渡模塊的兩塊FPGA之間通過(guò)FPGA I/O口自帶的SERDES資源實(shí)現(xiàn)的高速串行接口進(jìn)行數(shù)據(jù)通信,與傳統(tǒng)的并行接口相比,利用FPGA內(nèi)部SERDES資源實(shí)現(xiàn)的高速串行接口具有速度快、傳輸距離遠(yuǎn)、占用芯片引腳少的優(yōu)點(diǎn)。此外還利用FPGA的并行性特點(diǎn),采用流水線的方式處理數(shù)據(jù)包,進(jìn)一步提高了數(shù)據(jù)處理的速度。

圖2 擺渡模塊FPGA邏輯架構(gòu)框圖

為了滿足網(wǎng)絡(luò)隔離裝置對(duì)數(shù)據(jù)加解密性能的要求,本文設(shè)計(jì)的數(shù)據(jù)擺渡模塊選用了北京宏思電子技術(shù)有限責(zé)任公司公司的SSX30-D密碼芯片以及北京華大信安科技有限公司的IS32U320A密碼芯片作為數(shù)據(jù)加解密處理及身份認(rèn)證、密鑰協(xié)商的核心模塊。

SSX30-D為高性能分組密碼算法芯片,實(shí)現(xiàn)了SM1(原名SCB2)密碼算法,性能最高為1.4 Gbps,在擺渡模塊中主要用作數(shù)據(jù)的加解密處理, IS32U320A芯片提供多種硬件協(xié)處理器及其配套安全算法庫(kù),支持 RSA、SM2、SM3、SM4等密碼算法,在數(shù)據(jù)擺渡模塊中主要用作密鑰協(xié)商和身份認(rèn)證。數(shù)據(jù)擺渡模塊硬件系統(tǒng)示意圖如圖1所示。

圖1 數(shù)據(jù)擺渡模塊硬件系統(tǒng)示意圖

在硬件電路設(shè)計(jì)上,F(xiàn)PGA芯片XC7A100T具有BGA484封裝,扇出的信號(hào)較多,此外還需要1 V、1.2 V、1.8 V、3.3 V等多種電平標(biāo)準(zhǔn),PCIe接口的差分對(duì)走線對(duì)PCIe信號(hào)的完整性要求較高。基于以上因素,本文設(shè)計(jì)的數(shù)據(jù)擺渡模塊采用了8層PCB板設(shè)計(jì)方案,從頂層到底層依次為信號(hào)層1、地平面1、信號(hào)層2、地平面2、信號(hào)層3、電源層1、電源層2、信號(hào)層4;同時(shí)對(duì)PCIE的差分對(duì)信號(hào)以及SSX30-D的數(shù)據(jù)總線做了等長(zhǎng)處理。

2 數(shù)據(jù)擺渡模塊程序設(shè)計(jì)

2.1 FPGA內(nèi)邏輯電路設(shè)計(jì)

本設(shè)計(jì)使用XILINX公司的Vivado軟件開發(fā)擺渡模塊FPGA器件的邏輯程序,F(xiàn)PGA內(nèi)邏輯程序設(shè)計(jì)主要包括:PCIe IP核的定制設(shè)計(jì)、DMA控制器的設(shè)計(jì)、數(shù)據(jù)解析模塊的設(shè)計(jì)、SSX30-D密碼芯片控制模塊的設(shè)計(jì)、IS32U320A密碼芯片控制模塊的設(shè)計(jì)、數(shù)據(jù)接收模塊的設(shè)計(jì)、中斷控制模塊的設(shè)計(jì)等,F(xiàn)PGA內(nèi)邏輯架構(gòu)框圖如圖2所示。

在PCIe數(shù)據(jù)通信中,有兩種數(shù)據(jù)傳輸方式: DMA(Direct Memory Access)和PIO(Programmed Input-Output)[3]。在DMA模式下,數(shù)據(jù)傳送不是由CPU負(fù)責(zé)處理,而是由一個(gè)特殊的處理器DMA控制器來(lái)完成,因此占用極少的CPU資源。在PIO模式下,數(shù)據(jù)傳送由CPU執(zhí)行I/O端口指令來(lái)按照字節(jié)或更大的數(shù)據(jù)單位來(lái)處理,占用大量的CPU資源,數(shù)據(jù)傳輸速度也大大低于DMA模式[4]。

本設(shè)計(jì)采用兩者相結(jié)合的方式,在DMA控制器中兼容了PIO控制器,通過(guò)PIO控制器將主機(jī)系統(tǒng)內(nèi)存中DMA[2]讀寫的起始地址寫入PCIe BAR空間, DMA控制器根據(jù)BAR空間中的地址主機(jī)系統(tǒng)內(nèi)存中的數(shù)據(jù)讀入到FPGA中的FIFO中緩存,再將FPGA處理完成的數(shù)據(jù)寫入到主機(jī)系統(tǒng)內(nèi)存中。

方:您在從事分編工作數(shù)年后又改換為情報(bào)檢索服務(wù)工作,并且發(fā)表了不少相關(guān)研究成果。您能簡(jiǎn)要介紹一下其中發(fā)生轉(zhuǎn)變的情況嗎?

數(shù)據(jù)解析模塊主要將FIFO中緩存的數(shù)據(jù)進(jìn)行解析,并根據(jù)包頭字段定義的格式將數(shù)據(jù)包分別寫入到不同的下級(jí)FIFO中緩存,下級(jí)FIFO主要包括明文透?jìng)鱂IFO、SM1緩存FIFO、SM2緩存FIFO三種,明文透?jìng)鱂IFO中緩存的數(shù)據(jù)包直接通過(guò)FPGA內(nèi)的SERDES接口傳輸?shù)搅硗庖粔KFPGA;SM1緩存FIFO中緩存的數(shù)據(jù)包在SSX30-D密碼芯片控制模塊的控制下,寫入到SSX30-D密碼芯片進(jìn)行加解密處理,處理完成后的數(shù)據(jù)包再通過(guò)FPGA內(nèi)的SERDES接口傳輸?shù)搅硗庖粔KFPGA;SM2緩存FIFO中的數(shù)據(jù)包在IS32U320A密碼芯片控制模塊下寫入到IS32U320A芯片內(nèi)部進(jìn)行處理,處理完成后的數(shù)據(jù)返回到FPGA并通過(guò)DMA控制器寫入到主機(jī)系統(tǒng)內(nèi)存中。

數(shù)據(jù)接收模塊主要負(fù)責(zé)接收另外一塊FPGA傳輸過(guò)來(lái)的數(shù)據(jù),并寫入到接收FIFO中緩存,DMA控制器讀取接收FIFO中的數(shù)據(jù)并通過(guò)PCIe接口寫入到主機(jī)系統(tǒng)內(nèi)存中。

中斷控制模塊主要負(fù)責(zé)發(fā)送中斷到主機(jī)系統(tǒng),通知主機(jī)系統(tǒng)讀取數(shù)據(jù),PCIe設(shè)備的中斷方式主要有傳統(tǒng)中斷、MSI中斷兩種方式[5]。傳統(tǒng)中斷為電平觸發(fā),MSI中斷為邊沿觸發(fā),一個(gè)PCIe設(shè)備最多支持4個(gè)傳統(tǒng)中斷,MSI中斷方式最多可以達(dá)到32個(gè)。本設(shè)計(jì)使用MSI中斷方式,并能根據(jù)主機(jī)系統(tǒng)的CPU核個(gè)數(shù)動(dòng)態(tài)調(diào)整中斷數(shù)目,在每個(gè)CPU的核上綁定一個(gè)MSI中斷,使得CPU資源的使用更加均勻。

2.2 數(shù)據(jù)擺渡模塊驅(qū)動(dòng)程序設(shè)計(jì)

網(wǎng)絡(luò)隔離裝置的系統(tǒng)一般為L(zhǎng)inux,數(shù)據(jù)擺渡模塊的Linux驅(qū)動(dòng)程序的核心是DMA部分的設(shè)計(jì)。本設(shè)計(jì)的DMA部分在借鑒了PCIe網(wǎng)卡的驅(qū)動(dòng)架構(gòu)基礎(chǔ)上設(shè)計(jì)了更適合自己的一套DMA架構(gòu)。首先在驅(qū)動(dòng)程序的初始化模塊(probe)中申請(qǐng)兩塊DMA緩存區(qū),一塊作為發(fā)送描述符緩存區(qū),一塊作為接收描述符緩存區(qū)。兩塊緩存區(qū)中分別存放了數(shù)百個(gè)DMA描述符,并分別為每個(gè)描述符申請(qǐng)對(duì)應(yīng)的數(shù)據(jù)DMA緩存區(qū)。描述符的結(jié)構(gòu)體定義如下:

struct dma_desc {

u32 sa; //數(shù)據(jù)緩存區(qū)對(duì)應(yīng)的源地址

u32 da; //數(shù)據(jù)緩存區(qū)對(duì)應(yīng)的目的地址

u32 length; //數(shù)據(jù)緩存區(qū)中的數(shù)據(jù)長(zhǎng)度

u32 status; //描述符的狀態(tài)

u32 next; //下一個(gè)描述符的地址

};

DMA分為兩個(gè)過(guò)程:數(shù)據(jù)從系統(tǒng)內(nèi)存搬運(yùn)到FPGA和數(shù)據(jù)從FPGA搬運(yùn)到系統(tǒng)內(nèi)存。數(shù)據(jù)從系統(tǒng)內(nèi)存搬運(yùn)到FPGA過(guò)程如下:用戶首先將數(shù)據(jù)寫入到發(fā)送描述符對(duì)應(yīng)的數(shù)據(jù)緩存區(qū),并將數(shù)據(jù)的長(zhǎng)度寫入描述符的length變量中,通過(guò)PIO模式將描述符的起始地址寫入到數(shù)據(jù)擺渡模塊FPGA內(nèi)的PCIe BAR空間中。FPGA內(nèi)的DMA控制器根據(jù)BAR空間中描述符的起始地址啟動(dòng)DMA,將描述符讀入到FPGA,再根據(jù)描述符中的內(nèi)容,將描述符對(duì)應(yīng)的數(shù)據(jù)緩存區(qū)中的數(shù)據(jù)讀入到FPGA,最后通過(guò)DMA更新主機(jī)系統(tǒng)中描述符中的status狀態(tài)值。用戶通過(guò)status狀態(tài)值可確定DMA過(guò)程是否結(jié)束。

數(shù)據(jù)從FPGA搬運(yùn)到系統(tǒng)內(nèi)存的過(guò)程與之有所區(qū)別,驅(qū)動(dòng)在加載時(shí),將接收描述符緩存區(qū)的地址通過(guò)PIO模式寫入到BAR空間,F(xiàn)PGA中有數(shù)據(jù)待傳輸?shù)街鳈C(jī)系統(tǒng)時(shí),DMA控制器首先根據(jù)BAR空間中接收描述符的地址將描述符讀入到FPGA,并根據(jù)描述符中的內(nèi)容將數(shù)據(jù)傳輸?shù)街鳈C(jī)系統(tǒng)中描述符對(duì)應(yīng)的數(shù)據(jù)緩存區(qū),并更新描述符中的status狀態(tài)值。最后通過(guò)中斷通知主機(jī),主機(jī)接收到中斷后,通過(guò)描述符中的status狀態(tài)值判別哪些描述符對(duì)應(yīng)的數(shù)據(jù)緩存區(qū)有數(shù)據(jù)可讀,將數(shù)據(jù)讀走后恢復(fù)描述符中的status狀態(tài)值。

3 實(shí)驗(yàn)測(cè)試

3.1 實(shí)驗(yàn)環(huán)境

為了突出實(shí)驗(yàn)效果,對(duì)安裝了本擺渡模塊的網(wǎng)絡(luò)隔離裝置和安裝了分離的數(shù)據(jù)加密模塊的網(wǎng)絡(luò)隔離裝置分別進(jìn)行測(cè)試。安裝本設(shè)計(jì)方案的網(wǎng)絡(luò)隔離裝置實(shí)物圖如圖3所示。安裝分離的加解密模塊的網(wǎng)絡(luò)隔離裝置如圖4所示。兩臺(tái)裝置系統(tǒng)主板軟硬件相同,CPU為Cavium Octeon III系列,主頻為2.4 GHz,操作系統(tǒng)為L(zhǎng)inux,內(nèi)核版本3.10。

圖3 安裝了本方案的網(wǎng)絡(luò)隔離裝置

圖4 安裝了分離加密模塊的網(wǎng)絡(luò)隔離裝置

3.2 數(shù)據(jù)測(cè)試

本擺渡模塊支持兩種數(shù)據(jù)擺渡方式:明文透?jìng)骱兔芪膫鬏敗C魑耐競(jìng)髂J绞侵笖?shù)據(jù)從一側(cè)的主機(jī)系統(tǒng)傳輸?shù)綌[渡模塊上的FPGA后不進(jìn)行任何處理,直接通過(guò)SERDES接口傳輸?shù)搅硗庖粔KFPGA進(jìn)而傳輸?shù)搅硪粋?cè)的主機(jī)系統(tǒng)。密文傳輸是指首先對(duì)報(bào)文進(jìn)行加解密處理,再通過(guò)擺渡模塊傳輸?shù)搅硪粋?cè)的主機(jī)系統(tǒng)。

明文透?jìng)鲾?shù)據(jù)時(shí),單獨(dú)安裝分離加密模塊的網(wǎng)絡(luò)隔離裝置與應(yīng)用本方案的網(wǎng)絡(luò)隔離裝置在數(shù)據(jù)傳輸路徑上相同。密文傳輸模式時(shí),單獨(dú)安裝分離加密模塊的網(wǎng)絡(luò)隔離裝置首先要將數(shù)據(jù)寫入加密模塊進(jìn)行加解密處理,處理完成后返回主機(jī)系統(tǒng),再寫入到擺渡模塊進(jìn)行傳輸。

應(yīng)用本方案的網(wǎng)絡(luò)隔離裝置首先將數(shù)據(jù)寫入擺渡模塊,經(jīng)過(guò)加解密處理后,直接進(jìn)行傳輸,省去了數(shù)據(jù)返回主機(jī)及重新寫入擺渡模塊的過(guò)程。經(jīng)過(guò)測(cè)試,兩種方案的明文透?jìng)餍阅芤恢拢瑸?.5 Gbps;密文傳輸時(shí),采用本方案的網(wǎng)絡(luò)隔離裝置傳輸速度為1.2 Gbps,采用分離加密模塊的網(wǎng)絡(luò)隔離裝置傳輸速度為800 Mbps。應(yīng)用本設(shè)計(jì)的網(wǎng)絡(luò)隔離裝置在密文傳輸模式時(shí),數(shù)據(jù)傳輸速度有明顯優(yōu)勢(shì),且能節(jié)省硬件資源,提高CPU的資源利用率。

結(jié) 語(yǔ)

聶云杰、王元強(qiáng)(碩士),朱孟江、趙華(本科):主要研究方向?yàn)殡娏ο到y(tǒng)嵌入式設(shè)計(jì)。

猜你喜歡
系統(tǒng)設(shè)計(jì)
Smartflower POP 一體式光伏系統(tǒng)
WJ-700無(wú)人機(jī)系統(tǒng)
ZC系列無(wú)人機(jī)遙感系統(tǒng)
何為設(shè)計(jì)的守護(hù)之道?
《豐收的喜悅展示設(shè)計(jì)》
流行色(2020年1期)2020-04-28 11:16:38
基于PowerPC+FPGA顯示系統(tǒng)
半沸制皂系統(tǒng)(下)
瞞天過(guò)海——仿生設(shè)計(jì)萌到家
連通與提升系統(tǒng)的最后一塊拼圖 Audiolab 傲立 M-DAC mini
設(shè)計(jì)秀
海峽姐妹(2017年7期)2017-07-31 19:08:17
主站蜘蛛池模板: 中文精品久久久久国产网址 | 4虎影视国产在线观看精品| 亚洲精品图区| 无码中文AⅤ在线观看| 国产毛片片精品天天看视频| 亚洲第一黄片大全| 园内精品自拍视频在线播放| 国产亚洲欧美日韩在线一区| 日韩福利视频导航| 欧美a在线| 国产成人一区二区| 五月婷婷综合色| 人人91人人澡人人妻人人爽| 国产成人综合网| 性喷潮久久久久久久久| 91麻豆国产精品91久久久| 免费一级α片在线观看| 国产日韩欧美在线视频免费观看| 亚洲成人高清无码| 五月天婷婷网亚洲综合在线| 92精品国产自产在线观看 | 麻豆国产精品| 国产美女91视频| 91在线视频福利| 亚洲色欲色欲www网| 国产国语一级毛片在线视频| 亚洲国产系列| 成人福利在线观看| 国产高清自拍视频| 国产小视频免费观看| 精品国产乱码久久久久久一区二区| a欧美在线| 狠狠久久综合伊人不卡| 欧美精品二区| 久久精品亚洲热综合一区二区| 精品天海翼一区二区| 欧美成人国产| 91午夜福利在线观看| 欧美19综合中文字幕| 极品av一区二区| 国产成年无码AⅤ片在线| 免费一级大毛片a一观看不卡| 亚洲欧洲自拍拍偷午夜色无码| 99视频在线免费观看| 97超碰精品成人国产| 色135综合网| 91无码视频在线观看| 亚洲第一综合天堂另类专| 国产在线一二三区| 免费在线国产一区二区三区精品| 欧美日韩国产综合视频在线观看 | 91精品国产丝袜| 国产中文一区a级毛片视频| 99热线精品大全在线观看| 日本成人一区| 2020极品精品国产 | 亚洲精品不卡午夜精品| 国产国产人成免费视频77777| 亚洲精品片911| 欧美爱爱网| 国产亚洲高清视频| 黄色在线不卡| 精品久久蜜桃| 国产成人一区免费观看 | 九九精品在线观看| 福利在线不卡| 久久精品无码中文字幕| 国产福利免费在线观看| 久久综合丝袜日本网| 99国产精品一区二区| 婷婷成人综合| 亚洲精品在线影院| 青青青国产在线播放| 国产精品自在自线免费观看| 第一区免费在线观看| 久热中文字幕在线| 欧美一级在线看| 国产亚洲欧美在线中文bt天堂| 亚洲日韩精品欧美中文字幕| 伊人色天堂| 欧美a在线看| 国产啪在线|