[黑莓开发之路][00][BlackBerry平台架构概述][07][网络连接及传输方式]
2009-02-04 15:12
771 查看
网络连接及传输方式
黑莓解决方案扮演着有线网络与移动网络之间、公共网络(Internet)与内部网络(Intranet)之间的桥梁角色,导致黑莓涉及的网络连接及数据传输方式多种多样。从应用程序的角度,选择数据传输模式需要考虑下列因素:
1. 黑莓用户类型;
2. 安全性及可靠性的重要程度;
3. 程序所用的网络及对漫游用户的支持;
4. 程序的传输配置;
5. 程序升级和报警的主动Push的需要;
6. 目标服务器的位置
无线传输模式
Push(推,推送)客户端监听接收数据的端口,服务器在数据发生变化时把内容发送到手机上,接近于实时更新,客户端无需发送额外的包来获取数据或维持一个开放的连接。
其实现的难点在于:
l 获知手机的位置及当前网络地址;
l 要确保手机在信号覆盖区外仍能可靠地取得数据;
l 取消或替换失效、过时的Push数据;
l 保证Push的数据安全
Poll(拉,查询)
服务器将可用的新数据排成队列保存,客户端定时查询服务器的更新情况。Poll模式容易开发但实时性不强,提高更新的频率又会增加数据流量,从而增加电量消耗和服务费用。
Persistent Connection(永久连接)
客户端初始化一个到服务器的永久Socket连接并一直保持其开放,当服务器有数据更新时客户端就会通过这个开放的Socket得到新数据。然而Socket连接会在空闲时关闭,为保持其开放就要不断发送Keep-alive包,从而产生大量无用的数据传输;大量的Socket连接又会对服务器网关造成资源紧张和性能下降。
无线网关
MDS目标服务器位于企业局域网内部,防火墙之后,程序用MDS作为网关连接公司内部程序,也能连接到基于Internet的服务器。MDS是一种企业环境,独立于移动网络存在。
移动运营商的IP网关
黑莓手机软件V4.0以后支持真正的TCP和HTTP协议栈及Socket连接,程序通过运营商的IP网关能直接连接到Internet。其数据传输是与黑莓服务相分离的,可能要签订额外协议。其可行性取决于运营商是否支持并开放该服务。在些网络支持由服务器发起的Push。
移动运营商的WAP网关
和IP网关类似,程序可以通过WAP网关与基于Internet的服务器建立HTTP连接。但使用WAP网关只支持客户端发起的连接,不支持WAP的Push。
使用不同网关的HTTP/TCP连接方式对比:
通过MDS连接 | 通过运营商网关连接 | ||||
协议栈 | HTTP | TCP Socket | HTTP(IP) | TCP Socket(IP) | HTTP(WAP) |
网关 | MDS | MDS | IP网关 | IP网关 | WAP网关 |
协议 | HTTP/HTTPS | TCP Socket,SSL/TLS | HTTP/HTTPS | TCP Socket,SSL/TLS | HTTP(WAP),HTTPS(WAP/WTLS) |
用户类型 | BES | BES | BES,BIS | BES,BIS | BES,BIS |
Poll (客户端发起) | ✔ (HTTP GET/POST) | ✔ | ✔ (HTTP GET/POST) | ✔ | ✔ (HTTP GET) |
Push (服务器发起) | ✔ | ✘ | ✘ (iDEN支持) | ✘ (iDEN支持) | ✘ |
永久连接 | ✘ | ✔ | ✘ | ✔ | ✘ |
数据加密 | 3DES/AES | 3DES/AES | HTTPS | SSL/TLS | HTTPS(WTLS/SSL) |
授权支持 | ✔ (HTTP,NTLM,Kerberos) | ✘ (由程序提供) | ✔ (HTTP) | ✘ (由程序提供) | ✔ (HTTP) |
网络支持 | 全部 | 全部 | 部分 | 部分 | 部分 |
漫游支持 | ✔ | ✔ | ✘ (手动设置) | ✘ (手动设置) | ✘ (程序指定) |
相关文章推荐
- [黑莓开发之路][00][BlackBerry平台架构概述][08][数据传输流程][01][BES]
- [黑莓开发之路][00][BlackBerry平台架构概述][03][BES对Wi-Fi网络的支持]
- [黑莓开发之路][00][BlackBerry平台架构概述][08][数据传输流程][02][BlackBerry Desktop Redirector]
- [黑莓开发之路][00][BlackBerry平台架构概述][04][BlackBerry Internet Service][黑莓网络服务]
- [黑莓开发之路][00][BlackBerry平台架构概述][08][数据传输流程][03][BIS]
- [黑莓开发之路][00][BlackBerry平台架构概述][08][数据传输流程][04][PIN]
- [黑莓开发之路][00][BlackBerry平台架构概述][02][BlackBerry Enterprise Server][黑莓企业服务器]
- [黑莓开发之路][00][BlackBerry平台架构概述][05][BlackBerry Mobile Data System][黑莓数据系统]
- [黑莓开发之路][00][BlackBerry平台架构概述][01][BlackBerry Enterprise Solution][黑莓企业解决方案]
- [黑莓开发之路][00][BlackBerry平台架构概述][06][BlackBerry Mobile Voice System][黑莓语音系统]
- [黑莓开发之路][01][黑莓开发平台介绍][01][概述]
- [黑莓开发之路][01][黑莓开发平台介绍][03][Rapid Application Development][快速程序开发]
- 网络架构、云平台和微信公众平台开发接入
- 安卓电话和网络开发全解:电话硬件检测、电话服务信息、sim信息、网络服务信息、数据连接和数据传输信息、电话状态监听
- [黑莓开发之路][01][黑莓开发平台介绍][04][Java Application Development][JavaME程序开发]
- 网络架构、云平台和微信公众号开发接入--基于嵌入式工程师的视觉
- [黑莓开发之路][01][黑莓开发平台介绍][05][Developer Program][黑莓开发合作计划]
- Windows Embedded Compact 2013 开发平台与目标硬件之间的几种连接方式
- [黑莓开发之路][01][黑莓开发平台介绍][06][Application Storefront和Application Center]
- 网络层,传输层都提供了面向连接和无连接的服务方式