,,,
(南瑞集團有限公司(國網(wǎng)電力科學研究院有限公司),南京 211100)
圖1 數(shù)據(jù)分流萬兆加密裝置整體設計框圖
目前主流縱向加密認證裝置最高帶寬密文數(shù)據(jù)吞吐率大約為1000 Mb/s。為了進一步提高數(shù)據(jù)加解密速率與安全性,滿足現(xiàn)場業(yè)務需求,高性能萬兆縱向加密認證裝置應運而生。
在兩個不同局域網(wǎng)之間交換數(shù)據(jù)最常用的安全策略是使用縱向加密認證裝置,即身份認證與數(shù)據(jù)加解密方式進行業(yè)務交互。傳統(tǒng)縱向加密認證裝置根據(jù)網(wǎng)絡帶寬與數(shù)據(jù)傳輸吞吐率要求,分為百兆型、千兆型縱向加密認證裝置,其基本結構都由一個帶有雙網(wǎng)口的控制主板和一個數(shù)據(jù)加解密模塊組成。
為了克服現(xiàn)有電力專用縱向加密認證裝置加解密速率不足以及應用局限性,研究了一款內(nèi)容分發(fā)式加密裝置,利用萬兆以太網(wǎng)在線數(shù)據(jù)多通道分發(fā)處理機制創(chuàng)建多條數(shù)據(jù)傳輸鏈路,增強并發(fā)處理能力,同時通過多個加密單元并行運算,用以提高數(shù)據(jù)加解密速率,為新型萬兆型加密認證裝置設計提供理論依據(jù)。
數(shù)據(jù)分流萬兆加密裝置整體設計框圖如圖1所示。該系統(tǒng)中包括兩臺分發(fā)式網(wǎng)絡裝置、加密裝置、加密裝置核心處理單元。工作原理如下:①加密裝置核心處理單元初始化萬兆以太網(wǎng)數(shù)據(jù)傳輸環(huán)境;②依據(jù)規(guī)則,兩端分發(fā)式網(wǎng)絡裝置分別對網(wǎng)絡報文進行報文過濾、負載均衡算法處理;③將網(wǎng)絡數(shù)據(jù)包按負載均衡算法分發(fā)至某個加密裝置,選擇規(guī)則配置的算法進行數(shù)據(jù)加密;④對端分發(fā)式網(wǎng)絡裝置獲取加密數(shù)據(jù),網(wǎng)絡協(xié)議重新構建萬兆速率網(wǎng)絡報文數(shù)據(jù),轉發(fā)至萬兆以太網(wǎng)。
系統(tǒng)中兩側分發(fā)式網(wǎng)絡裝置采用的硬件平臺基于T4240,操作系統(tǒng)為Linux,T4240是飛思卡爾(現(xiàn)被NXP收購)公司的QorIQ T系列多核處理器。運行在24個主頻為1.8 GHz的虛擬內(nèi)核上,每顆處理器具備3通道72位(8位 ECC)DDR3內(nèi)存,內(nèi)存總容量為12 GB,每通道使用9片x8數(shù)據(jù)位寬顆粒,數(shù)據(jù)速率支持1866 MT/s。每顆處理器板載8 MB BOOT_NOR FLASH和8 GB APPLICATION_NAND FLASH,擁有8個千兆口和3個萬兆口有線以太網(wǎng)接口。
分發(fā)式網(wǎng)絡裝置采用先進的數(shù)據(jù)通道加速架構(DPAA),DPAA提供了一種硬件數(shù)據(jù)加速平臺,實現(xiàn)了用戶態(tài)下數(shù)據(jù)包的零拷貝,減少了協(xié)議棧的響應時間,加快了數(shù)據(jù)包的處理時間。DPAA分流功能從內(nèi)核選擇任務,允許這些內(nèi)核執(zhí)行更有價值的任務或以更低的頻率、成本和功率實現(xiàn)應用性能目標。DPAA包括:幀管理器(Frame Manager),負責在以太網(wǎng)端口上實施警管、分類和日程安排;隊列管理器(Queue Manager),執(zhí)行排隊、擁塞控制、工作量分配和分組排序;緩沖管理器(Buffer Manager),將數(shù)據(jù)包分配給緩沖器,以最大限度減少內(nèi)存消耗;安全塊(Security Block),用來實施加密算法;模式匹配搜索引擎(Pattern Matching Engine),用來搜索數(shù)據(jù)包里的文本字符串,進行統(tǒng)一的威脅管理。
圖2 加密裝置結構
加密裝置和加密裝置核心處理單元的硬件系統(tǒng)基于RISC體系結構的嵌入式微處理器(PowerPC 8241),嵌入式主板集成三個以太網(wǎng)接口,分別是內(nèi)網(wǎng)口、外網(wǎng)口、心跳接口。配置串口用于對加密認證網(wǎng)關進行監(jiān)控管理;電力專用密碼卡單元(內(nèi)嵌電力專用密碼算法和RSA公私密鑰算法)對網(wǎng)絡通信數(shù)據(jù)進行加密與認證;雙機接口支持加密認證網(wǎng)關的雙機熱備和鏈路冗余備份,避免丟失重要數(shù)據(jù);硬件看門狗時刻監(jiān)控系統(tǒng)狀態(tài),保證加密認證網(wǎng)關穩(wěn)定、可靠運行。加密裝置和加密裝置核心處理單元共有10臺形成陳列模式,所有裝置內(nèi)網(wǎng)口和外網(wǎng)口設置相同的IP地址,裝置采用靜態(tài)ARP地址綁定。9臺加密裝置的ARP地址學習、密鑰交互和日志報警由加密裝置核心單元同步來完成(見圖2)。
萬兆加密裝置測試結構圖如圖3所示。
圖3 萬兆加密裝置測試結構圖
2.3.1 網(wǎng)絡初始化流程
分發(fā)式網(wǎng)絡裝置收到報文(經(jīng)過報文解析后),如果是ARP請求幀,則傳送至加密裝置核心處理單元。加密裝置核心處理單元接收到ARP請求并且檢查是否與自己的IP地址匹配,如果加密裝置核心處理單元發(fā)現(xiàn)請求的IP地址與自身的IP地址不匹配,它將丟棄ARP請求。初始化流程如下:
① 加密裝置核心處理單元確定ARP請求中的IP地址與自己的IP地址匹配,則將ARP請求的IP地址和MAC地址映射添加到本地ARP緩存中。
② 加密裝置核心處理單元將包含其MAC地址的ARP回復消息直接發(fā)送回萬兆以太網(wǎng)數(shù)據(jù)收發(fā)處理模塊1,模塊1再將ARP回復消息發(fā)至ARP的主機上。
③ 加密裝置核心處理單元通過心跳線將狀態(tài)同步包分別廣播至加密裝置1~9設備上,這些設備接收狀態(tài)同步包,進行報文檢查,如果報文正確,則將MAC地址映射添加到本地ARP緩存中,并且通過命令arp-s 123.123.123.111 XX:XX:XX:XX:XX:XX寫成靜態(tài)ARP,網(wǎng)絡地址解析過程已成功完成。
2.3.2 通信工作過程
分發(fā)式網(wǎng)絡裝置收到報文(經(jīng)過報文解析后),如果是密鑰同步報文,則傳送至加密裝置核心處理單元。如果此時加密裝置核心處理單元還沒有完成密鑰同步工作,則將報文丟棄。通信工作過程如下:
① 加密裝置核心處理單元投入使用前,須首先進行設備的初始化操作,包括安裝調度證書服務系統(tǒng)根證書、裝置管理系統(tǒng)的設備證書、本裝置的主備操作員證書、與本裝置通信節(jié)點的設備證書以及本裝置的設備私鑰。會話密鑰協(xié)商采用簡化的IKE密鑰協(xié)商協(xié)議:設通信雙方為加密裝置核心處理單元1(發(fā)起方)和加密裝置核心處理單元2(應答方),會話密鑰協(xié)商在IP報文層面進行,其中IP地址為雙方裝置的IP地址,協(xié)商過程的形象描述如下:
加密裝置核心處理單元1 加密裝置核心處理單元2
Request,SN, ECert2(r1), ESkey1(H(r1)),
——————————————→
Response, SN+1, ECert1(r2), ESkey2(H(r2)),
←——————————————
Acknowledge,SN+2, H(r1⊕r2)
——————————————→
在密鑰協(xié)商報文的設計中,添加隨機序列號,防止抗重放攻擊。同時對協(xié)商報文采用數(shù)字簽名和公鑰加密,防止通信抗抵賴。若雙方都已經(jīng)驗證對方身份,并持有會話密鑰DK=r1⊕r2;,則進入通信加密階段;若協(xié)商失敗,加密認證網(wǎng)關給出協(xié)商失敗報警信息,通知對端裝置并重新發(fā)起協(xié)商。加解密工作模式采用隧道模式,通信密鑰為對稱密鑰,用于加密認證網(wǎng)關之間的通信加密,128位分組寬度在建立連接時動態(tài)協(xié)商產(chǎn)生,拆除連接時失效。
② 通過分發(fā)式網(wǎng)絡裝置將10G口的IP數(shù)據(jù)包進行分流至加密裝置1~9和加密裝置核心處理單元,并且分發(fā)式裝置進行負載均衡算法。
③ 分發(fā)式網(wǎng)絡裝置實時地根據(jù)網(wǎng)絡流量和加密裝置節(jié)點的連接、負載狀況以及響應時間等綜合信息將數(shù)據(jù)包重新導向負載較輕加密裝置節(jié)點上。
④ 依據(jù)規(guī)則配置,兩端萬兆以太網(wǎng)數(shù)據(jù)收發(fā)處理模塊分別對原始網(wǎng)絡報文進行過濾、分揀處理,加密裝置1~9設備將數(shù)據(jù)包經(jīng)規(guī)則加密后送至分發(fā)式網(wǎng)絡裝置,數(shù)據(jù)集中至10G口轉發(fā)出去。
⑤ 萬兆加密裝置B中分發(fā)式網(wǎng)絡裝置收到報文(經(jīng)過報文解析后),進行負載均衡算法后發(fā)送至加密裝置和加密裝置核心處理單元。通過密鑰解密后,由分發(fā)式網(wǎng)絡裝置集中發(fā)送至網(wǎng)絡測試儀2口。
2.3.3 加密裝置和加密裝置核心處理單元同步過程
加密裝置和加密裝置核心處理單元同步過程如下:
① 加密裝置與加密裝置核心處理單元進行心跳交互,監(jiān)測自身的工作狀態(tài),將報警信息上報加密裝置核心處理單元。
② 加密裝置診斷自身工作狀態(tài),實現(xiàn)容錯處理、主動復位等功能。
③ 信息交互:加密裝置核心處理單元每隔一定的周期將本機ARP緩存表和密鑰信息發(fā)送至加密裝置,加密裝置收到同步信息后將心跳確認包發(fā)送至加密裝置核心處理單元。如果在一定周期內(nèi)沒有收到心跳確認包,加密裝置核心處理單元將通知分發(fā)式網(wǎng)絡裝置,分發(fā)式網(wǎng)絡裝置收到加密裝置核心處理單元報文,認為這臺加密裝置離線,不再發(fā)送數(shù)據(jù)至此加密裝置,直到加密裝置核心處理單元再次發(fā)送此加密裝置上線報文。
通過實驗仿真測試基于DPAA技術數(shù)據(jù)分流萬兆加密裝置,本裝置支持兩種數(shù)據(jù)傳輸方式:明文傳輸和密文傳輸,明文傳輸模式是指數(shù)據(jù)從一側系統(tǒng)傳輸?shù)郊用苎b置上,加密裝置不進行任何處理,直接通過隧道傳輸?shù)搅硪粋鹊南到y(tǒng)。密文傳輸是指首先對報文進行加解密處理,再通過分發(fā)式網(wǎng)絡裝置傳輸?shù)搅硪粋认到y(tǒng)。
明文傳輸數(shù)據(jù)時,分發(fā)式網(wǎng)絡裝置將數(shù)據(jù)分流至各個加密裝置,通過負載均衡算法保證各加密裝置節(jié)點負載大致相同。在密文傳輸模式時,分發(fā)式網(wǎng)絡裝置將密鑰同步報文發(fā)送至加密裝置核心處理單元,再通過其同步至各臺加密裝置,隧道建立好后,數(shù)據(jù)通信時,通過分發(fā)式網(wǎng)絡裝置利用負載均衡算法將數(shù)據(jù)包發(fā)送至各臺加密裝置。經(jīng)過測試,兩種方案的明文傳輸速度為9.5 Gbps,在密文傳輸時,采用本方案的傳輸速度為8 Gbps,應用本設計的分流萬兆加密裝置在密文傳輸模式時,數(shù)據(jù)傳輸速度明顯提高,且能節(jié)省硬件資源,提高CPU的資源利用率。