无线移动应用连接

提交新文章

2008年03月18日 20:26



简介

阅读了解中间件和传统连接选件如何保持移动设备与基于服务器的应用之间的通信。

如何能让安装的无线网络实现完整网络覆盖,并使每名用户都能运行移动客户端设备,这真的是一件很有难度的工作。例如,建筑物、墙体、甚至是人体本身的阻隔,都会不同程度地削弱无线信号。因此,网络覆盖时常会出现盲区,最终影响用户漫游时网络连接的稳定性。

前不久,当我在一家酒店的大堂通过无线局域网远程运行一个基于 Java* 的 Web 站点发布应用时,我的无线会话因信号强度太弱而被迫多次中断,因此我不得不频繁登录系统重新启动应用。那种感觉真是糟透了!我当时唯一的愿望就是赶紧离开那里,永远不再回来。

同样,来自微波炉和无绳电话的信号干扰有时也会引起无线局域网性能的下降,有时甚至会导致连接的不定期中断。这些干扰毫无规律可循,轻则降低网络通信速度,重则导致网络连接完全中断。

尽管无线系统支持用户漫游,可是当用户从某一子网进入到其它不兼容的无线网络时,移动软件也会出现故障。使用无线局域网卡的客户端设备连接网络时,可能会遇到无法漫游到其它子网(设施相同、无特别规定)的问题。客户端也无法实现从无线局域网到 3G 蜂窝系统的本地切换。


传统连接方式

有些无线移动应用必须直接和运行于主机(如 IBM* AS/400、Unix 平台或 3270 大型机)的应用屏幕连接。此时,终端模拟软件会运行于客户端设备,并与运行于主机上的应用软件进行通信。例如,VT220 终端模拟软件会和 Unix 中运行的应用建立关联,而 5250 终端模拟软件能够运行于基于 AS/400 的系统。

终端模拟软件的一个优点就是初期成本低,有些类似于即插即用式的解决方案。但请不要忘记,使用终端模拟软件的无线系统可能无法与传统应用保持适当连接。相对而言,采用超时设定的传统应用在更为可靠的有线网络中运行效果较好。在给定时段内,如果不出现任何用户活动,超时设定就会自动中断通信会话——这对用户来说可不是好事!

最后,企业 IT 人员将不得不花费大量时间来处理因连接中断导致的最终用户投诉,还要应对其它因数据传输不完整造成的相关问题。从长远看,终端模拟的实施会极大增加企业的支持成本。很快,移动应用带来的优势也会因此而丧失殆尽。

此外,终端模拟应用会在无线网络中传输不必要的数据,这无疑会使宝贵的网络带宽变得更加拥挤。实际上,由于应用运行于主机之上,因此所有输入屏幕、打印数据流及其它与应用之间的通信都必须经无线网络传输。最终,为了节省支持成本,那些信息流通不畅的企业将不得不再次寻找更好的解决方案,以替换先前使用的无线终端模拟。

随着各家公司仍在按客户端/服务器模式部署移动应用,终端模拟正在逐渐淡出市场。此时,开发商需要设计出能够通过专有数据库命令或开放数据库互连(ODBC)协议实现同数据库通信的客户端软件。采用这种配置的客户端设备软件将能够提供几乎所有的用户功能。

由于程序员可获得对各功能(不受主机系统中应用的限制,可以自由实施)的全面控制,因此这种方法可为移动应用开发工作提供充足的灵活性。客户端/服务器连接模式的问题在于该模式仅支持 TCP/IP 协议,而该协议在有限的无线网络带宽条件下表现不佳。TCP/IP 协议使用了相对较大的头信息,这样会显著增加用户穿过覆盖盲区、重建连接的延迟时间。

许多 Web 服务器应用都具有针对无线传输损失的续传特性,但是您还是应当在客户端和服务器间实施那些需要立即响应的应用时稍加留意。某些情况下,在您进行依赖于其它交易的交易时,应用也许无法从连接中断中恢复。


无线中间件

无线中间件软件驻留在客户端软件与服务器上的应用软件或数据库之间,专门为无线网络相关问题(如覆盖盲区)提供中间通信解决方案。中间件通常在与有线网络相连的专用网关平台上运行,用以处理在无线客户端与服务器之间传输的数据包。因此,中间件为无线网络提供了一种高效可靠的通信手段,同时通过更为可靠的有线网络与服务器上的应用软件和数据库保持了适当的网络连接。

无线中间件具有可将流量进行排序的存储和转发讯息的能力,确保客户端设备在离线情况下也可收到讯息。中间件还能作为客户端代理使用。实际上,多数应用都不会“感到”它们与主机的连接正在由中间件服务器管理。一旦客户端再次连接到无线网络,中间件就会让客户端继续进行上次通信。在服务器和应用不支持断网续传的情况下,无线中间件的优势尤其显著。

当数据流传输中途发生意外切断时,用户可以通过“intelligent restart(智能重启)”中间件恢复机制来检测传输末尾信息是否完好。重建连接时,中间件会使用断点续传功能来继续上次失败时的数据传输,而不必重新传输全部数据。这种传输方式不但能帮助无线客户端轻松重建连接,而且由于需要传输的数据包数量减少,还有助于提升连接性能、实现更耐久的电池使用时间。

有些中间件产品还支持传输层的数据压缩,能将通过无线链路发送的数据量缩减到最低程度。一些中间件实施中用到了头压缩,这种机制下常规数据包头会在传输前被替换为更为短小的数据序列。这无疑减少了网络带宽压力,不仅可支持更强大的无线应用,还能轻松应对视频流传输以及大量用户在线等需要较高联网性能的应用情形。

中间件数据包通常都能被合并为一个较大数据包,用于在无线网络中传输,从而提高网络性能并减少广域网的传输服务成本。多数无线数据服务都按数据流量收费,因此这种数据捆绑传输方式将有助于减少用户花费的总成本。

有的中间件产品附带了开发环境,可帮助开发人员使用可视化工具来“分解”和“重塑”现有应用屏幕,从而更高效地支持移动设备(如 PDA 和手机等)特有的小屏幕显示。对于依靠传统的终端/主机连接、使用现有大屏幕设备的用户来说,这是一个不错的选择,非常适合于经常用到小屏幕显示的工作环境。开发人员可以选择一些传统尺寸屏幕作为用户界面,从而改进和简化无线网络传输。

为了改进漫游效果,少数中间件产品还加入了国内/国外代理功能以支持移动 IP 协议,从而对客户端与互联网之间的连接变化进行无缝处理。这样,无线用户就可以在不同子网间自由移动。这对于大型跨国公司的移动应用部署工作而言意义重大。

此外,有些中间件产品还针对不同无线网络类型之间的漫游提供了专有解决方案。通常,这类方案需要在客户端安装专门的软件。只要客户端设备拥有两种不同的网卡,用户就能在无线局域网与蜂窝系统之间自由漫游。现在,移动电话制造商正在为客户端设备添加内置的无线局域网接口,力求实现这一美好愿景。

中间件还能提供多主机支持,因此,如果能将移动应用整合到复杂的终端系统环境中,该项支持将变得十分关键。例如,几年前市场上曾推出过一款需要运行于无线客户端设备上的移动应用,该应用主要用于对 IBM 大型机(使用 3270 终端模拟)上的报价数据进行检索,然后记录用户输入的数据并将其保存到 Windows* 2000 服务器的数据库中(通过 ODBC)。我们知道,整合到终端模拟并直接连接到数据库的操作是一个艰难的过程。

但中间件提供了一个集中组件,将终端/主机与客户端/服务器两种模式结合在了一起。由于最终要将报价数据保存到 Windows 2000 服务器,因此该组件尤其有用。因为我们可以采用中间件开发通用界面。有了它,无需更改界面,用户就能将报价数据移动到服务器上。

展望未来,许多无线中间件工具将推出相互兼容的 API,为中间件产品注入更多优势。开发人员可将无线中间件作为一种开发环境来使用,跳过底层网络实现应用与一系列终端系统的整合。

凭借中间件平台,开发人员还能实现对无线连接的集中部署和管理。例如,正是因为中间件服务器的集中管理特性,我们只需稍加更改解决方案,就可轻松实现对所有客户端的修改。服务器还可监控所有客户端的流量,从而确定用户是否在线、跟踪用户活动、检测非法行为以及潜在的拒绝服务攻击。


技巧总结

在开发无线移动软件前,应预先考虑无线传输损坏(如连接中断与射频干扰)会对应用操作造成何种影响。全面的考量不仅能够使您避免终端模拟带来的种种麻烦,而且可以支持您(至少在客户端/服务器模式下)灵活地开发客户端软件并为其加入必要的错误恢复机制,最大限度地减少因无线传输失败造成的损失。为了精简错误恢复代码,我们强烈建议您使用无线中间件。


更多参考

以下是部分无线中间件厂商: 

  • 如欲了解有关开发无线网络与进程控制整合工具、致力于制定性能标准的领先供应商的更多信息,请访问:www.connectrf.com*
  • 如欲了解有关 Lona 推出的不同整合产品的更多信息,请访问:www.iona.com*
  • 如欲了解有关如何通过无线解决方案快速轻松提高工作效率、改善客户服务的更多信息,请访问:www.netmotionwireless.com*
  • 玮凌科技公司(Wavelink)专门提供关键任务无线应用、无线局域网络与移动设备管理方案,如欲了解更多信息,请访问:www.wavelink.com*

 

作者简介
Jim Geier 是 Wireless-Nets 有限公司(www.wireless-nets.com*)的负责人。Wireless-Nets 是一家咨询公司,专业帮助企业部署无线移动解决方案。