基于MPC8245的嵌入式VPN的研究與開(kāi)發(fā)
1 引言
基于IPsec的VPN是最重要的網(wǎng)絡(luò )安全設施之一。自L(fǎng)inux內核版本2.47開(kāi)始,內核實(shí)現了IPsec的無(wú)縫集成,Linux 2.6內核在支持嵌入式系統方面作了大量改進(jìn),在內存管理、進(jìn)程調度、搶占性、響應時(shí)間等多方面性能都有顯著(zhù)提高,因此基于新Linux 2.6內核設計開(kāi)發(fā)嵌入式VPN硬件網(wǎng)關(guān)設備具有性能高,擴展性好,易于升級等諸多優(yōu)點(diǎn)。在嵌入式設備硬件的選擇上,Motorola公司的 MPC8245處理器采用嵌入式PowerPC603e內核,將高性能32位處理器與浮點(diǎn)、存儲器管理、分支預測單元、16K數據及16K指令緩存集成在一起,是面向網(wǎng)絡(luò )基礎設施、存儲設備及電信產(chǎn)品中需要SoC集成與PCI連接的系統首選,非常適合于高端防火墻、VPN虛擬網(wǎng)關(guān)、以太網(wǎng)三層交換機以及工業(yè)控制中心板等高端嵌入式網(wǎng)絡(luò )設備的開(kāi)發(fā),本文將對Linux 2.6內核在基于MPC8245嵌入式系統上的移植,并在此基礎上対實(shí)現嵌入式IPsec VPN安全網(wǎng)關(guān)設備進(jìn)行深入討論。
2 嵌入式Linux VPN總體設計
2.1 VPN安全網(wǎng)關(guān)的總體功能模塊設計
圖1為基于MPC8245處理器的嵌入式Linux系統上開(kāi)發(fā)設計的IPsec VPN安全網(wǎng)關(guān)總體設計圖。VPN分為兩部分:(1)IPsec服務(wù),在Linux內核中實(shí)現,內核IPsec VPN處理邏輯使用兩個(gè)安全數據庫SPD和SAD,報文通過(guò)IPsec處理時(shí)需查詢(xún)SAD和SPD,根據加密策略、算法進(jìn)行處理;(2)密鑰管理機制 IKE等IPsec控制部件,在應用層中設計,主要包括:
用戶(hù)管理與配置界面,用于管理員控制臺的配置;
系統管理模塊,負責接收處理用戶(hù)命令或讀取配置文件,調用相應的模塊接口完成,返回給顯示終端,并進(jìn)行相應日志記錄;
密鑰管理機制IKE模塊,處理來(lái)自控制臺的管理消息、來(lái)自網(wǎng)絡(luò )中其它VPN網(wǎng)關(guān)的IKE交互消息以及來(lái)自?xún)群说南ⅲ?BR>
VPN內核消息處理模塊,通過(guò)NETLINK套接字,負責與內核中的內核消息管理模塊交互,實(shí)現IKE與內核安全關(guān)聯(lián)數據庫、安全策略數據庫之間的消息傳遞。
圖1 基于MPC8245的嵌入式Linux VPN 安全網(wǎng)關(guān)的總體設計
評論