微波EDA网,见证研发工程师的成长!
首页 > 射频和无线通信 > 射频无线通信文库 > 一种基于VPN网关的电原理设计与实现

一种基于VPN网关的电原理设计与实现

时间:03-25 来源:互联网 点击:

到以太网络,在设计中选用了AC101TF[2] 10/100以太网收发器。图6为其基本元件和需要连接到MPC855T的管脚,其中HST-005S为隔离变压器。当855T发送数据时,设置接到RTS的发送允许管脚,同样地,当收发器接收数据时,设置接收允许(RENA)线然后置位855T的CD。最后,收发器上有一个冲突管脚,驱动控制器上的CTS就可以响应冲突。如果RENA和/或CLSN出现,激活载波检测。

2.6 快速以太网控制器(FEC)接口电路
10/100Mbps快速以太网控制器集成了FIFO可以独立地实现突发模式的DMA传输,因此,在不影响CPM性能条件下,可获得高性能的快速以太网接口。图7为FEC方框图。快速以太网控制器FEC,嵌入式PowerPC核,系统接口单元SIU,通信处理模块CPM都使用32-bit的内部总线。
根据设计要求,VPN网关工作在10Mbps以太网环境中,为了保证其两个以太网口的工作平衡,把FEC配置成10Mbps工作模式,使用7线串行模式与外部的以太网收发器连接,仍然选用AC101TF为外部收发器,其线路连接与图7类似。
2.7 存储器电路
MPC855T的存储器控制器可用来控制8个块。它可以连接SRAM、EPROM、Flash EPROM、同步DRAM及其他外置设备而无须附加逻辑电路,它还支持地址总线复用,定时清除计时器,以及产生行及列的地址选择波形。

如图8所示,通用目的片选机构设计成SRAM、EPROM、Flash EPROM和其他外设的接口。用户可编程机构UPM允许接到多种存储器设备,同GPCM一样,用户可编程机构产生一个片选,但一个已经编程为波形,或用于一个DRAM块的RAS,每一个UPM的4个字节选择都同样编程为波形,变成DRAM块的CAS,UPMA有4个字节选择,UPMB有4个字节选择。另外,有6个通用目的线,它可以编程为所需的在一个时钟周期内波形,这些通用目的线,特别适合于支持一些新的存储器技术,如同步DRAM,用户可编程机构产生TA,事实上,在这种机构中有可以外部提供TA。
2.8 加密模块的接口和设计
为了使用不同的硬件加密算法,将加密模块设计成子板的结构,在主板上设计了两个双排孔座,各有50个引脚。主要信号有32根数据线D[31:0]、16 根地址线A[29:14]、读写R/W、输出使能OE、中断请求IRQ4、片选CS3、同步时钟S_CLK以及突发模式传输控制线TS、BURST、TA、BDIP、TEA、+5V电源和地线。按这样设计的接口,可以很方便地与多种硬件加密算法芯片做成的加密模块相连接,如国密办批准的SSF10B及国外的网络安全协处理器。
为了测试和满足不同用户的需求,设计了两款加密模块。(1)SSF10:其32-bit数据宽度版本为SSF10B。SSF10算法为分组密码算法,支持ECB、CBC、CFB和OFB工作模式。要求工作平台的CPU能对PWC、PWD、PRC、PRD信号产生等待周期。/PRD的有效时间应大于PCLK的时钟周期T。(2)三重DES:为了与采用IPSec协议和Triple DES算法的VPN客户端互通,设计了一款硬件Triple DES加密模块,其算法用VHDL语言写成,并由FPGA完成运算。FPGA选用Altera公司的EP1K30[3]芯片,该芯片有30000个逻辑门电路,可以满足Triple DES的需要。
3 VPN网关的实现
这部分的主要工作是将原有x86平台上的应用软件移植到MPC855T平台上,作为一个VPN网关,应具备两大功能:(1)路由功能:安全加密路由平台介于局域网与边界路由器之间,应具备一定的路由转发功能。(2)IPSec协议族功能:具备IPSec协议标准描述的所有功能。
3.1 系统总体框架和工作模式
系统总体框架由5个部分组成:(1)硬件层:基于mpc855t平台,提供软件运行环境。(2)Linux内核:嵌入式Linux/ppc-2.4.4。将IPSec实现和防火墙支持编译到内核中。(3)系统服务和工具。(4)管理控制台界面。(5)升级服务。
由于本设计使用DOC或Flash Memory作为存储介质,文件系统工作方式宜用Ram Disk方式。在此方式下,系统工作时根文件系统在ram disk上,系统异常掉电不会对真正的文件系统造成破坏。但因为所有的配置信息都在SDRAM中,掉电将会丢失所有配置信息,因此需要以后台进程定期检查配置文件的变动情况,将有变动的文件及时写回DOC/Flash中。
3.2 IPSec实现中的硬件加密算法
在本文设计的VPN安全网关中,加密算法的安全、高效,是VPN网关安全性和有效性的重要保证。为此在设计中,采用了一种硬件加密模块[4]的方式,使得VPN网关可以在硬件上使用不同的加密算法。在默认配置中,使用国密办批准的分组加密算法芯片SSF10。为了使用硬件加密模块,需要在Linux内核的IPSec实现中添加和修改相应的代码,下面对其简单说明。
因IPSec实现在内核中的特殊位置,并且MPC855T的主频较低(80MHz),采用访问设备驱动文件的方式访问硬件SSF10加密模块会造成速率大幅降低,因此,我们采用I/O直接访问硬件SSF10芯片,这样需将模块驱动中的操作分散到IPSec实现的相关部分,替换原来的软件加密算法。同理,可以使用硬件DES/3DES、硬件AES[5]算法和其他的国密办批准的算法,用硬件实现数据加密。对IPSec的一个实现freeswan算法部分进行修改,使其可以实现硬件算法。完成修改后,使用内核make menuconfig命令,选中Networking options->[*]IPSEC:Use SSF10......,重新编译即可使用SSF10硬件算法模块。
4 结束语
创新点:开发由VPN安全网关、VPN客户端和VPN安全管理中心三部份组成的VPN安全系统。为保证公网上传输数据的安全,设计开发一款VPN安全网关,用于构建上述的VPN安全系统。同PowerPC MPC8xx一样,MPC82xx也是一款集成了微处理器和外围器件控制器的通信处理器,可以用于多种通信设备中。但是MPC82xx具有更高的操作速度:系统内核微处理器支持100-333MHz的处理速度,并具有更强大的网络处理能力,支持3个快速通信控制器(FCCs),4个串行通信控制器(SCCs),2个多通道控制器(MCCs),适合用于100Mbps以太网环境中的网络设备。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top