鸿 网 互 联 www.68idc.cn

当前位置 : 服务器租用 > 手机系统开发 > WP7 > >

基于ARM7的GPRS无线VPN路由器设计

来源:互联网 作者:佚名 时间:2015-09-01 09:16
欢迎进入IT技术社区论坛,与200万技术人员互动交流 >>进入 近年来蜂窝式移动通信系统在中国的发展非常迅速,不仅给用户带来了方便快捷的语音通信服务,而且还能提供灵活的数据通信服务。 本文提出了一种新型的基于arm7的嵌入式设备―――GPRS无线VPN路由器的设
欢迎进入IT技术社区论坛,与200万技术人员互动交流 >>进入
     近年来蜂窝式移动通信系统在中国的发展非常迅速,不仅给用户带来了方便快捷的语音通信服务,而且还能提供灵活的数据通信服务。

        本文提出了一种新型的基于arm7的嵌入式设备―――GPRS无线VPN路由器的设计方法,使得原先使用有线通信系统的各种业务终端设备能够非常方便地接入到GPRS网络中,利用无线移动网络提供的数据服务来进行数据通信。

      1 概述

      1.1 arm简介

       ARM (Advanced RISC Machines) ,既可以认为是一个公司的名字,也可以认为是对一类微处理器的通称,还可以认为是一种技术的名字。1991年ARM公司成立于英国剑桥, ARM公司是专门从事基于RISC技术芯片设计开发的公司,作为知识产权供应商,本身不直接从事芯片生产,靠转让设计许可由合作公司生产各具特色的芯片,世界各大半导体生产商从ARM公司购买其设计的ARM微处理器核,根据各自不同的应用领域,加入适当的外围电路,从而形成自己的ARM微处理器芯片进入市场。ARM微处理器目前包括下面几个系列, ARM7系列、ARM9系列、ARM9E系列、ARM10E系列、SecurCore系列、Intel 的Xscale以及Strongarm。它们共同构成了当今嵌入式领域的主流微处理器。

      1.2 GPRS简介

       GPRS(General Packet Radio Service)是通用分组无线业务的简称,是在GSM基础上发展起来的一种分组交换的数据承载和传输方式。与原有的GSM比较, GPRS在数据业务的承载和支持上具有非常明显的优势:通过多个GSM时隙的复用,支持的数据传输速率更高,理论峰值达115kbps;不同的网络用户共享同一组GPRS信道,但只有当某一个用户需要发送或接收数据时才会占用信道资源。这样,通过多用户的业务复用,更有效地利用无线网络信道资源,特别适合突发性、频繁的小流量数据传输,很好地适应数据业务的突发性特点; GPRS计费方式更加灵活,可以支持按数据流量来进行计费;与无线应用协议(WAP)技术不同, GPRS能够随时为用户提供透明的IP通道,可直接访问Internet中的所有站点和资源;采用信道复用技术,每一个GPRS用户都能够实现永远在线。

      2 硬件部分

      2.1 设计思路

        无线路由器电路板通过无线通信模块连接GPRS移动网络,通过以太口连接内部终端设备或者内部局域网。无线路由器具备网络路由功能,能够在两个网络之间转发数据。各种终端设备发出的数据通过以太口被处理器接收,处理器对数据进行相应处理后(例如加/解密)再通过串行口发送给无线通信模块,由它转发到GPRS网络中。同理,反向的数据经过相反的路径最终送回终端设备。

       2.2 硬件设计

       嵌入式处理器采用三星公司的S3C4510B,它是基于以太网应用系统的高性价比的16/32位RISC微控制器,内含一个由ARM公司设计的16/32位arm7TDMI RISC处理器核。通过GPRS网进行数据传输需要使用GPRS模块。目前, GPRS模块一般是指带有GPRS功能的GSM模块,模块通过外接天线与蜂窝小区基站通信, 收发无线数据。本设计中GPRS 模块采用Wavecom公司的W ISMO Quik Q2400系列.其他各部分基本功能描述如下:

       串行接口电路用于S3C4510B与GPRS模块以及其他应用系统进行短距离双向串行通讯; 复位电路可完成系统上电复位和在系统工作时用户按键复位;电源电路为整个系统提供工作所需的电压,包括5V, 3.6V以及3.3V;10MHz有源晶振为系统提供工作时钟; FLASH存储器可存放已调试好的应用程序、嵌入式操作系统或其他在系统掉电后需要保存的用户数据等;

      SDRAM存储器作为系统运行时的主要区域,系统及用户数据、堆栈均位于SDRAM存储器中;10M/100M以太网接口为系统提供以太网接入的物理通道;I2C存储器可存储少量需要长期保存的用户数据.

      2.3 硬件连接

      完整的硬件连接图如图1所示。


                                                                 图1 硬件连接图

      3 软件部分

       在此无线路由器中使用的操作系统是uClinux,它是专门应用于没有MMU的微控制器上的操作系统。uClinux操作系统中已经内嵌了TCP/IP网络协议的实现代码,在内核中设置“IP转发”就能实现静态路由功能。为了实现拨号登录移动网络以及VPN的功能,则需要用到2个网络应用程序: PPP应用程序和IPSec应用程序。图2是整个系统的软件结构层次图。


                                                   图2 软件结构层次图

      3. 1 uClinux 的移植

       uClinux 的源代码和开发工具可以免费从http: //www.uclinux.org上下载得到。www.uclinux.org上定期为新推出的Linux内核推出相应的源码包。最新的版本为uClinux-dist-20040408.tar.gz,也可以从该网站上免费下载得到。这个源码包里包含了uCL inux -2.6.2、uCL inux-2.4.24、2.0.39、uClibc和已经移植到uClinux下的用户应用程序。tar xzvf uClinux-dist-20040408.tar.bz将其解压缩到/home/uClinux-dist下。另外还需要从www.uclinux.org/pub/uClinux/arm-elf -tools/上下载ARM 交叉编译器: arm-elf-tools-20030314.sh,执行以建立uClinux-ARM的交叉编译环境。为了使uClinux能顺利地在无线路由器上跑起来,需要针对此硬件平台对uClinux再进行修改。在/home/uClinux-dist/linux-2.4.x/include/asm-armnommu/下的hardware.h文件包含了S3C4510B片内特殊功能寄存器以及其他相关硬件信息的定义。可以在此对其进行修改。另外还可以在make xconfig的时候将vendor选为Samsung,并选中Customize Kernel Settings一项,之后可以在出现的System Type中对相关参数进行修改,主要包括系统的主时钟频率、FLASH和SDRAM的起始地址及大小等。最终通过编译即可得到无线路由器运行所需要的image.rom和image.ram。

      3. 2 PPP应用程序

       PPP应用程序用来通过无线通信模块拨号登录移动网络,登录过程遵循PPP (Point-to-Point Protocol)通信协议。目前uClinux操作系统中已包含的多种应用程序中有一种实现PPP协议的程序pppd,只需要根据无线移动网络通信的特征,修改pppd源代码中的部分配置参数,就能够得到需要的PPP应用程序。以下是进行拨号登陆移动网络的脚本程序:
#! /bin/sh
/usr/sbin/pppd\
 nodetach\
 connect"/etc/ppp/peers/gprs-connect-chat"\
 disconnect"/etc/ppp /peers/gprs-disconnect-chat"\
 /dev/ttyS0\
 115200\
 nocrtscts\
 local\
 defaultroute\
 novj\
 nobsdcomp\
 novjccomp\
 nopcomp\
 noaccomp\
 noauth

       其中用来实现拨号和挂断的脚本gprs-connect-chat和

[1] [2] 

网友评论
<