基于PowerPC的VPN网关设计
和完整性等安全性能。
VPN安全网关的设计目标
(1) 完整实现IPSec协议簇,完全支持VPN的要求。
(2) 要建立在具有自主版权的、安全性完全控制在自己手中的内核操作系统之上。
(3) 要确保自身的安全、协议的安全和信息通道的安全。采用国密办批准的加密算法,由硬件实现数据加解密。
(4) 要具有较高的性价比,满足低端网络的要求。明文吞吐率10Mbp s;启用IPSec协议,以隧道方式加密传输时,吞吐率大于4Mbp s。
(5) 设计与实现要采用先进的硬、软件技术和方法。
(6) 尽可能方便管理、灵活配置和界面友好。
技术思想
(1) 软件: ①自主开发的嵌入式安全操作系统内核;②由于L inux OS的源代码的开放性及其在网络产品中的优异表现,因而可以用其构建具有自主知识产权的VPN安全网关(采用嵌入式L inux 2. 4. 4 For PowerPC,内核根据需要裁减,并加入相应的硬件驱动程序,完成对FlashMemory和DOC文件系统的支持) ;③网络协议和IPSec协议层; ④数据加/解密算法由采用国密办批准的硬件加密芯片SSF10B实现; ⑤管理系统层需支持手工和通过SMC (安全管理中心)配置IPSec策略。
(2) 硬件:根据设计要求,该VPN网关将用于10Mbp s以太网环境中,设计采用目前在通信业中使用较广的Mo2torola通信处理器PowerPC MPC8xx作为主CPU,选用其中一款性价比较高的控制器MPC855T。在硬件平台的设计中,本着满足性能要求,保证高可靠性和高性价比的原则,采用有多种硬件选项的设计,来满足设计要求。
linux操作系统文章专题:linux操作系统详解(linux不再难懂)
嵌入式L inux操作系统的构建
通常的嵌入式系统开发大致可以分为硬件设计、装载或引导嵌入式系统、在嵌入式系统上建立开发平台以及开发应用等四个步骤。
利用ppcboot引导
ppcboot是德国Denk软件工程中心开发的引导程序,我们在研究开发中使用了其中的ppcboot-1. 1. 5作为开发蓝本,对其代码进行了修改,以满足硬件设计的要求。
ppcboot源码树的目录结构
CHANGELOG / /记录历次版本升级时的修改内容
COPYING
CRED ITS
MAKEALL
Makefile / /制作文件
README / /必读的文件
System. map / /当编译连接完成后,所生成的ppcboot二进
/ /制中所有函数、数据的地址信息
board / /各种与板子硬件关联的. c模块
common / /一些通用ppcboot命令集的. c模块
config. mk
cpu / /与MPC8xx硬件关联的系统初始化. c代码
disk / /磁盘分区支持
doc / /技术文档目录
examp les / /一些简单的、无需操作系统的应用程序
fs / /ppcboot中对文件系统的支持
include / /头文件
net / /网络协议支持
ppc PowerPC / /处理器运行时环境支持
ppcboot / / elf32格式的ppcboot二进制执行文件
ppcboot. bin / / raw二进制格式的ppcboot执行文件
ppcboot. map / / s2record格式的ppcboot执行文件
rtc / /实时时钟支持
tools / /与ppcboot相关的一些工具软件
ppcboot的特点
经修改后, ppcboot-1. 1. 5 具有如下特性: ( 1 ) 支持bootm,直接从flash引导L inux,并提供软件工具集,可构建出最终烧结用的影像; (2) 支持从doc或flash memory引导L inux,并提供工具集,可构建出最终烧结用的影像; (3) 板上flash /doc读、写、擦除功能; (4) 支持串行口kermit协议下载代码或数据; (5) 支持scc1以太网口启动tftp下传数据:如内核、ramdisk、autoscrip t等影像; ( 6) 支持串行口srecord下载代码或数据; (7) 支持autoscrip t; (8) 提供板上内存读写,格式化显示,可进行简单测试。
当完成ppcboot-1. 1. 5的改写后,对其进行编译,得到二进制的ppcboot. bin代码,然后将其烧录在板上的BOOTEPROM中,这样就可以在上电后完成对系统的引导。
建立L inux开发平台
修改和编译嵌入式L inux内核
Linux内核有自己的结构体系,进程管理、内存管理和文件系统是其最基本的三个子系统。图2 为L inux 内核的结构。图中虚线框中部分可以看成是Linux内核的单内核结构,因此修改内核必须注意各子系统间的协调。
![](../img/eep/emb/emb-47231ysplmlhdhxs.jpg)
Linux开发平台使用内核版本为2. 4. 4的PowerPC嵌入式L inux操作系统作为VPN 网关的基本软件平台。为了支持硬件平台,需要对内核进行修改,并增加相应设备的驱动程序。
(1) 驱动程序列表。
DOC 驱动程序源码: /home / sjw01 / linux/drivers/mtd /devices/ doc2000. c;
以太网驱动程序源码: / home / sjw01 / linux/ arch /ppc /8xx _ io / enet_scc1. c fec. c;
RTC 驱动程序源码: /home / sjw01 / linux/drivers/unis _ rtc / rtc8xx. h rtc8xx. c setrtc8xx. cMkaefile setrtc8xx;
串口驱动程序源码: /home / sjw01 / linux/ arch /ppc /8xx_ io / uart. c;
flash memory 驱动程序源码: /home / sjw01
- 基于PowerPC和嵌入式Linux的VPN网关设计(11-01)
- μC/OS的任务调度实现方法及其在PowerPC上的优化(10-29)
- 基于PowerPC和Linux的VPN网关设计(01-14)
- uCOS-II优先级任务调度在PowerPC上的移植和优化(08-15)
- 全新EDK8.1简化嵌入式设计(06-04)
- ARM DSP X86 POWERPC MIPS FPGA简介(11-11)