安装和配置
可从kannel网站下载源代码,最新的稳定版本是1.0.3,开发版本是1.1.3,以1.0.3版本为例,将.gateway-1.0.3.tar.gz下载到Linux机器上,kan.nel网关需要安装xml库,可以到xmlsoft网站下载libxml.2-2.2.8.tar.gz,假设目录为/home/wap,先安.装libxml库
cd /h.ome/wap 鲜花
tar. zxvf libxml2-2.2..8.tar.gz 教育
. cd libxml2-2.2.8 --------------彩票
./configure
make
make install (这一步需要..root权限) 鲜花
然后安装网关
cd /ho.me/wap ( 游戏 )
t.ar zxvf gateway-1.0..3.tar.gz .
cd gatewa.y-1.0.3 外贸
./configure
make
doc/arch目录下的技术文档是fig格式,需要.fig2dev程序,如果没有此程序,编译会报错,不过没有关系,我们需要的二进制可执行程序已经生成。如果嫌每次编译.都报错麻.烦,可以修改M.akefile,将此部分去掉。或者去下载fig2dev(我没有去找它在哪儿)。 投资
现在到gw目录下.看一看,我们要的程序bearerbox和wapbox程序已生成,启动b.earerbox(./bearerbox &),啊.,程序报错,无法读配置文件kannel.conf,怎么回事,gw目录下没有这个文件啊,没关系,把wapk.annel.conf文件拷贝为kannel..conf就可以了(cp wapkannel.conf kannel.conf)。 服务器
配置文件ka.nnel.conf.的格式如下,具体的含义看看Kannel自带的文档就明白了。 婚庆
. group = core .
a.dmin-port = 13000 .
wapbox-port = 13002. 电子
admin-.password = bar .
wdp-interfac.e-name. = "*" 外贸
#log.-file = "/tmp./kannel.log" 婚庆
#l.og-level = 0 .
bo.x-deny-ip = "*.*.*.*." .
box-all.ow-ip = "127..0.0.1" 汽车
#admin-deny-ip. = "" 健康
#admin-allow-ip .= "" ( 游戏 )
. #.access-log = "access.log" 美容
group = wapbox. 汽车
bearerbox-hos.t = lo.calhost 婚庆
#log-fil.e = ."/tmp/wapbox.log" 建材
#log-level = .0 婚庆
syslog-level. = none .
启动网关后(./bearerbox & ; ./wapbox &),就可以通过它访问wml页面了,赶快去下载模.拟器吧,可以用Nokia Toolkit,Erission. WapIDE,UP.SD.K,Motorola等模拟器进行测试。如果你有WAP手机,装网关的Linux机器.连到了Interner上,就可以拨172了,把手机里的网关设置为你的机器的IP地址,就可以手机上网了。在手机上需.要设置的主要是 域名
网关地.址:xxx.xxx.x.xx.xxx (你网关机器的IP地址) .
.端口号: 9201(一般设置) 9200(.无连接方式) 鲜花
连接类型:普通电话
波特率: 9600
用户名: wap
口令: wap
电话号码:172
主页:
http://www.xxx.com (你想去的URL) .
2.2、程序说明
网关把处理负载分担在多台主机上,分为两个模块。网关系统由一个bearerbox和一到多个wapb..ox组成。bearerbox和w.apbox可以运行在不同的机器上。 学习
2.2.1.. bearer box [成人用品]
Bearerbox模块连接到CSD router,提供了对Wapbox的接口,实现了WAP协议栈.的WDP层。. [成人用品]
Bearerbox记录当前运行的wapbox,从CSD. router接收UD.P包,把从.同一个终端接收到的包路由到同一个wapbox,收到wapbox的处理结果后发到相应的用户终端。电影
2.2..2. wapbox .
.wapbox模.块实现了WAP协议栈的上层部分,属于同一个事务的会话和事务由同一个wa.pbox处理。Wapbox实现了WTLS、WTP和WSP层。Wapbox从电话接收到类似.HTTP的请求,把实际的HTTP请求发到内容服务器,压缩响应数据,发回到终端。 健康
bearerbox和wapbox之间通过TCP建立连接。 be.arerbox充当ser.ver等待wapbox进行连接。这样,bearerbox就不需要保留静态的wapbox列表。它以一个空的列表开始,等.待wapbox进行注册,这种设计使得动态的加入新的wapbox变得非常方便:只须安装一个,配置好,连接到相应的bearerbo.x。
如果bearerbox和wapbox之间的TCP连接断开了,bearerbox会得到通知把它从自己的clients列表中去掉。当崩溃的wapbox从.bearerbox的.clients列表中去掉之后,.从应该路由到此wapbox的终端收到的数据包被看作从一个新的终端收到。这意味着wapbox必须能处理在.一个会话当中的包。 .
也可能出现这样的情况,wapbox.还存活着,但已经不能处理任何消息了。为了检测这种情况,wapbox要定期向bearerbox发送心跳(heartbeat)包,如果bearerbox未能收到heartbeat消息,它认为存在问题的wa.pbox崩溃了,但是未能断开TCP连接。bearerbox会断开.连接,把它从clients列表种去掉。当wapbox恢复后,会重新打开连接。H.eartbeat消息还包含wapbox的负.载,bea.rerbox据此进行负载平衡。 杀毒
2.3、性能测试
我在以下的环境下进行了测试,测试共使.用三台PC机,分别为CWAP网关机器,Web服务器,模拟客户机,通过10M以太网相.连,机器配置如下: .
WAP网关:
操作系.统: Linux RedHat7.0 9.0. 鲜花
CPU: 随便
主频: 500MHz
内存: 128M
Web服务器:
操作系统.: Windows 2000 --- 印刷
CPU: 随便
主频: 500MHz
内存: 64M
模拟客户机:
. 操作系.统: Linux RedHat7.0 9.0电影
CPU: 随便
主频: 500MHz. 健康
内存: 128M
WAP.网关机器上启动网关程序(bearerbox和wapbox),模拟客户机上用测试程序fakewap(在test目录下)向网关请求Web服务器上的wml页面,统计.响应时间.,每秒处理请求数量等数据。 --- 印刷
fakewap程序采用了多线程技术,可以模拟多用户量的并发情况,缺省设置下使用9201端口(WSP/WTP/WDP),使用方.法为fakewap [options] ur.l ...,其中几个主要的选项.如下: 教育
-g hos.tname 网关的机器名或IP地址 (default: localho.st) .
-p port .网关端口(default: 9201). 电脑
-m max 总共.发送请求.数 (default: 1) .
-i inter.val 发送2个请求之间的间隔 (default: 1.0 secon.ds) .
-.c threads 并发.用户数量 (default: 1) 投资
测试结果为:在并发用户数为100的情况下,网关的响应时间在1秒以内,平均每秒处理的请.求数量为40个左右,这对于绝大部分的企.业应用来说是足够了。.