APP下载

嵌入式3G路由器实用功能的设计与实现

2014-09-10李保广

计算机工程与设计 2014年5期
关键词:优盘路由器嵌入式

闫 巧,李保广

(深圳大学 计算机与软件学院,广东 深圳518000)

0 引 言

目前3G网络覆盖全球范围,能够向用户提供高速的全球无线漫游服务。所研发的路由器将3G信号转换为WIFI信号,使得智能手机、个人电脑等具有WIFI接入功能的设备得以实时接入互联网,实现了无线局域网共享3G无线网络[1],该款路由器具有高速稳定、小巧方便的特性,在此基础之上,设计并实现了短信发送和接收功能、文件共享功能和数字媒体服务器功能,满足用户对不同功能的需求,方便用户使用。本文详细介绍了这些功能的设计思路与实现过程。

1 系统体系结构

研发的3G路由器硬件平台采用的是雷凌公司生产的RT5350开发板[2],如图1所示,其CPU主频是360MHz,拥有16KB的数据缓存和32KB的指令缓存,具有低成本、高集成度、体积小和低功耗的特性,集成4个LAN口、一个WAN口和一个USB口。USB接口既可以插入USB 3G网卡,支持联通WCDMA、电信CDMA2000、移动TD-SCDMA等3种模式的3G网卡,也可以插入USB存储设备,如优盘、移动硬盘等。

系统软件平台采用的是嵌入式Linux系统[3],内核版本为2.6.21,具有体积小巧效率高,源码开放性能稳的特性,同时Linux平台下拥有众多开源免费的软件供移植和二次开发。上层应用软件主要是嵌入式Web服务器GoA-head Web Server、uShare、pppd、Wget等[4]。系统体系结构如图2所示。

利用GoAhead Web Server开发设计路由器设置页面,页面采用框架设计,左侧为功能目录,右侧为展示各个功能的主体区域,如图3所示。

图1 RT5350开发板

图2 系统体系结构

图3 路由器设置

2 局域网文件共享功能

我们研发的3G路由器有一个USB接口,在不使用3G网卡时,可以挂载USB存储设备,如优盘、移动硬盘等,构建局域网文件共享服务器,向用户提供文件共享功能。文件共享功能依托GoAhead Web Server通过HTTP协议(超文本传送协议)实现。GoAhead Web Server是专为嵌入式实时操作系统量身定制的Web服务器,也是最流行的嵌入式Web,具有开源免费、功能强大、响应快速、体积紧凑和使用简单的特点,支持开发高效的动态交互Web页面[5]。

HTTP下载是使用最广泛的文件共享方式之一。HTTP协议不仅可以传输HTML网页文件,也可以传输各种类型的文件。许多资源网站以超链接的形式将供用户下载的各种文件放在web页面中,用户只要点击鼠标,就可以通过浏览器下载并保存到本地磁盘。HTTP下载极大地促进了互联网上的信息传播与共享。下面的HTML代码即是web页面中的下载链接格式:

< A href = "http://10.10.10.254/download/filename">下载文件</A>

其中 “href”即表示下载文件的链接地址,当用户点击页面信息 “下载文件”后,浏览器会向服务器发送请求,服务器响应后,开始下载该文件。文件共享如图4所示。

图4 文件共享流程

针对本系统的需求,需要对GoAhead Web Server进行相应的配置,在源文件中定义ROOT_DIR和rootWeb的值来指定web页面的根目录为/etc_ro/web,指定默认端口号为80:

指定服务器的默认主页为home.asp,当用户只输入IP地址就会看到该页面:

2.1 磁盘挂载

图8 短信接收页面

实现文件共享首先需要将优盘挂载到GoAhead Web Server的根目录之下,方便后台程序对文件系统进行读写操作。GoAhead Web Server的根目录是/etc_ro/web/,在根目录下建立子目录share,将所用优盘挂载到/etc_ro/web/share/,同时指定字符集为cp936:mount/dev/sda1/实现,可以使得用户在智能电视等播放器上直接播放服务器里面的音视频资源。UPnP (universal plug and play)是为解决家庭和公司网络消费电子设备之间的互联互通问题而提出的一套网络协议,其基于多种现存的标准协议之上,包括TCP/IP、HTTP、HTTPU、SSDP、GENA等。DLNA (digital living network alliance)主要解决包含个人计算机、家庭电器 (如智能电视)、移动设备 (如智能手机)等在内的有线网络和无线网络的互联互通问题[9],其具有硬件无关性,在家庭和其它公共场所能够灵活地构建设备间互连互通功能。UPnP协议是DLNA的基础协议,详细描述了DLNA各设备间的相互侦测和运行机制,实现了设备的自由接入。

UPnP AV架构[10]作为家庭网络多媒体系统的标准,主要由媒体服务器、控制点和媒体播放器组成,如图9所示。UPnP控制点负责在服务器和播放器之间建立连接,但是并不参与媒体数据流的传输。

图9 UPnP AV架构

通过为路由器构建UPnP服务器或DLNA服务器功能,可以让用户直接在智能手机或者其它支持UPnP协议的播放器上播放路由器里面的图片、音频和视频文件,而不需要将这些文件拷贝到播放器上。

我们研发的3G路由器通过uShare建立数字媒体服务器。uShare是一款UPnP A/V &DLNA媒体服务器,支持播放设备访问服务器里的图片、音频和视频资源。系统利用uShare实现数字媒体服务器时用到FFMPEG、libupnp和libdlna开源软件。libdlna用以实现DLNA媒体服务器功能,在处理和传输音视频时需要FFMPEG库 (libavformat和libavcodec)和libupnp的支持。libupnp是对UPnP协议的实现,可以和uShare单独建立UPnP媒体服务器。在编译过程中还需要用到pkg-config工具。

对于UPnP媒体服务器,用户可以使用web页面对其进行配置,当用户设备接入路由器之后,对于该系统,用浏 览 器 打 开 http://10.10.10.254:49152/web/ushare.html,即可对其进行远程控制。打开一款媒体播放器,便可以访问服务器下的资源。如在 Windows 7平台下使用Windows Media Player 12,在其左侧的 “其它媒体库”下面列有所建服务器名称,当用户请求一个资源后,便可以流畅地播放了。对于客户端发起的每一个请求,服务器在响应之后会给出相关信息,图10描述了服务器收到Windows Media Player 12连接请求并成功注册的Action信息。

图10 Action信息

5 结束语

本文针对多功能3G路由器的需求,阐述了短信发送和接收功能、文件共享和数字媒体服务器功能的设计与实现,通过对RT5350芯片和嵌入式Linux的研究,逐步完成了这些实用功能,可以满足不同用户的多种功能需求。相对于普通路由器,具有该功能的3G路由器不仅具有网速稳定快速、体积小易携带的特性,而且实用功能丰富,使用方便,具有很好的实用价值和广阔的市场前景,同时为4G路由器的研发奠定了基础。

[1]YAN Qiao,NIU Junjun.Design and implementation of embedded 3Grouter [J].Computer Engineering and Design,2013,34 (3):868-872 (in-Chinese). [闫巧,牛军军.嵌入式3G路由器的设计与实现 [J].计算机工程与设计,2013,34(3):868-872.]

[2]Ralink Technology.Ralink first to offer per-packet antenna diversity technology in world’s smallest and most integrated 802.11nWi-Fi router-on-a-chip [EB/OL]. [2010-11-09].http://www.ralinktech.com/en/05_press-center/news.php?sn=1023.

[3]Robert Love.Linux kernel development [M].3nd ed.CHEN Lijun,KANG Hua,transl.Beijing:China Machine Press,2011(in Chinese).[Robert Love.Linux内核设计与实现 [M].3版.陈莉君,康华,译.北京:机械工业出版社,2011.]

[4]Embedthis Software.GoAhead web server [EB/OL]. [2013-06-07].http://embedthis.com/products/goahead/.

[5]ZHAO Qinglei,HAN Chengshan,WEN Ming,et al.GoA-head embedded server’s design and implementation [J].Microcomputer Information,2011,27 (4):67-69 (in Chinese).[赵庆磊,韩诚山,文明,等.GoAhead嵌入式服务器的设计与实现 [J].微计算机信息,2011,27 (4):67-69.]

[6]ZHOU Xuhong,LIANG Alei,QI Zhengwei.Design and implementation of smart phone system software based on embedded Linux [J].Computer Applications and Software,2008,25 (3):59-61 (in Chinese). [周绪宏,梁阿磊,戚正伟.基于嵌入式Linux的智能手机系统软件的设计与实现 [J].计算机应用与软件,2008,25 (3):59-61.]

[7]XIE Chunxiang,ZHANG Hong,NIE Yuman.Development of SMS terminal based on GSM/GPRS [J].Computer Engineering and Design,2007,28 (7):1680-1682 (in Chinese).[谢春祥,张虹,聂余满.基于GSM/GPRS的终端式短信平台开发 [J].计算机工程与设计,2007,28 (7):1680-1682.]

[9]LI Xin,LI Yiting.Design of digital media adapter based on DLNA[J].Electronic Design Engineering,2012,20 (20):179-181 (in Chinese).[李欣,李轶婷.基于DLNA数字媒体适配器的设计[J].电子设计工程,2012,20 (20):179-181.]

[10]LIAO Yun.Research on DLNA rejection screen in three screen interactive [J].Video Engineering,2012,36 (24):54-56 (in Chinese).[廖云.三屏互动中 DLNA甩屏技术的研究 [J].电视技术,2012,36 (24):54-56.]

猜你喜欢

优盘路由器嵌入式
买千兆路由器看接口参数
维持生命
Focal&Naim同框发布1000系列嵌入式扬声器及全新Uniti Atmos流媒体一体机
路由器每天都要关
路由器每天都要关
TS系列红外传感器在嵌入式控制系统中的应用
人脑优盘
打造优盘系统维护盘
搭建基于Qt的嵌入式开发平台
妙手回春巧修优盘