3G的接人技能现已从WCDMA/TD- SCDMA/CD-MA2000发展到HSDPA、HSUPA 以及HSPA+ ,并开端由3G 网络向4G网络过渡。现在HSDPA的接入带宽可以到达7.2 Mbps,HSPA+ 的接人带宽可以到达21 Mbps,而行将布置的LTE的网络带宽乃至到达了100 Mbps 。一起,因为接人移动互联网 的智能终端的数量快速增加,人们对移动互联网的使用需求也日益增加。当人们面临几十兆带宽乃至是上百兆带宽时,必定存在带宽的过剩问题,即人们不需求在任何时刻都需求这么大的带宽,因此可以将过剩的用户带宽分配给更多的用户。
现在,WiFi技能可以支撑IEEE的802.11b、802.11g和802.1ln规范,别离支撑10 Mbps、54 Mbps和300 Mbps的无线传输速率。而在传输间隔上,WiFi可以在几米到100m范围内完结彻底掩盖。
本文正是依据3G/4G 不断增加的接入带宽以及WiFi技能的各项长处,提出了一种同享3G/4G 网络带宽的无线路由器规划计划。该计划首要使用嵌入式Linux体系,构建一个依据WiFi技能的无线局域网,智能终端等用户可以使用自带的WiFi功用接入该无线局域网,然后再将该无线局域网桥接至3G/4G网络中,然后完结各个智能终端设备对3G/4G网络带宽的同享。
1. 3G/4G路由器规划计划
本路由器的规划是依据三个模块来完结的,别离为3G模块、WiFi模块和Linux硬件渠道,如图1所示。3G模块的功用是使用运营商的无线数据卡进行PPP拨号,使得路由器能经过运营商网络连接至互联网。WiFi模块的功用是使得无线网卡作业在AP(Access Point)形式,并装备动态主机装备协议的脚本文件,来树立一个2.4 GHz的WiFi无线局域网。Linux硬件渠道模块的功用主要有两个方面,一方面要支撑无线网卡和无线数据卡的驱动,另一方面要经过嵌入式Linux体系中的iptables数据包过滤体系将无线局域网和3G/4G网络连通。智能终端等设备经过WiFi信道接人到该路由器所供给的无线局域网中,分配到一个IP地址之后,则经过该无线局域网的网关进行数据包的接纳和发送,而该网关则经过3G/4G模块上的网络拨号接口来接纳和发送数据包至3G/4G 网络,然后完结了该路由器的规划计划。
图1 3G/4G路由器规划计划图
2. 3G/4G路由器硬件结构
依据3G/4G路由器规划计划,其硬件结构的三大模块别离选用深圳天谟公司出产的Devkit8500D评价板、华为公司的E392型无线上网卡和TP-Link公司的TL-WN821N型无线网卡。
Devkit8500D评价板的根本结构如图2所示。该硬件渠道选用的是TI公司的DM3730微处理器。
图2 终端硬件结构图
E392型无线上网卡选用高通公司的MDM9x00多模芯片组,一起支撑TD-SCDMA/WCDMA 的3G 网络规范和LTE-TDD/FDD 的4G 网络规范。现在,使用3G网络中现已布置晋级的HSPA+技能,下行峰值速率可以到达21 Mbps,上行峰值速率可以到达5.76 Mbps;部分地区选用64QAM 调制技能和MIMO技能对HsPA+进行再次晋级,下行峰值速率可以到达42 Mbps左右;而行将布置的4G网络,下行峰值速率可以到达i00 Mbps,上行峰值速率可以到达50 Mbps。
TL-WN821N 型无线网卡是依据Realtek公司的RTL8192cu芯片规划的,选用MIMO技能和空频道检测技能,支撑802.11n/b/g,功能安稳且可以供给最大300 Mbps的无线传输速率,彻底满意智能终端等设备的带宽需求。
3. 3G/4G路由器关键技能
3G/4G路由器是指使用WiFi的2.4GHz频段,组成一个无线局域网,并装备无线局域网的根本信息,经过Linux体系的 iptables将无线局域网接人到3G/4G网络中。其关键技能详细分为3G/4G 网络的接入、无线局域网的组成以及iptables的连通三个部分。
3.1 3G/4G网络的接入
该无线路由器使用E392型多模无线上网卡在嵌入式Linux体系中进行PPP拨号,别离接入到TD-SCDMA,WCDMA以及TD-LTE试验网中。其详细完结流程如图3所示。
图3 3G/4G网络接入流程图
3.1.1 多模无线上网卡驱动加载
当一个新的USB设备接入到Linux主机中,主机首要会经过操控端点读入此设备的装备,接口和端点等信息,使用操控管道完结操控型传输,然后主机再对该设备进行枚举。枚举即读取该 设备的许多重要信息,其间最重要的是读取该设备的出产商识别码(VID)以及产品识别码(PID),将这两个识别码别离与USB内核中意存在的各个识别码进行匹配。若匹配成功,即的使用Linux体系的USB内核成功完结了 该设备的USB驱动的加载。
本规划计划中选用的嵌入式Linux体系的内核版别号为2.6.32,该内核中与USB设备的VID和PID号相关的源码存在 kernel/drivers/usb/serial/option.c中,修正该文件并增加本 终端规划计划中所选用的华为E392无线上网卡的VID和PID,进程如下:
# define HUAWEI_VENDOR_ID 0x12D1
# define HUAWEI_PRODUCT_E1446 0x1446
{USB_DEV%&&&&&%E_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID,
HUAWEI_PRODUCT_E1446,0xff,0xff,0xff)}
然后装备嵌入式Linux体系内核中的Devices driver→usb support→usb Serial Converter Support选项,使得Linux体系内核支撑USB串口转化,然后挑选按模块从头编译内核,生成option.ko和usbserial.ko 驱动文件。最终加载这两个驱动文件并插上该多模无线上网卡,完结驱动加载。
3.1.2 终端形式转化
在3.1.1节中完结的是USB设备的加载,即Linux体系识别出无线上网卡为USB设备并能与之通讯。而一般 USB无线上网卡设备都具有两个USB子设备形式,即usb-storage子设备形式和modern子设备形式。此刻 Linux体系默许会将该设备识别为usb-storage子设备形式,需求经过USB设备的形式转化东西usb- modeswitch将USB设备的作业形式转化为modem形式,这样才干使得无线上网卡可以正常作业。