原文:http://blog.sina.com.cn/s/blog_56f9e40c0100069v.html

 

无线应用协议(Wireless Application Protocol,WAP)是WAP论坛经过不断努力得到的成果,它提供了一个业界技术规范,以便开发出适用于各种无线通信网络的应用和业务。WAP论坛 的工作范围就是为各种业务和应用制定一系列的技术规范。无线市场正在快速增长,新的用户不断增多,新的业务不断涌现。为了给运营商和生产商提供一个面对先 进业务、多种类业务和快速灵活业务生成的商机,WAP定义了一系列用于传输层、安全层、事务处理层、会话层和应用层的协议。有关WAP体系结构更多的信 息,请参阅“无线应用协议体系结构规范(wreless Application Protocol Architecture Specification[WAPARCH])。

  
    作为WAP体系结构组成部分之一的会话层协议叫作无线会话协议(WSP)。WSP为上层的WAP应用层提供了两种会话服务的统一接口,其中一种会话服务是 运行在事务处理层协议WTP之上的基于连接模式的服务,另一种是运行在安全或非安全数据报传输服务之上的无连接服务。有关事务处理和传输服务的更多信息, 请参阅“无线应用协议:无线事务处理协议规范(Wireless Application Protocol: Wireless Transaction Protocol Speclrlcation[WAPWTPI])和“无线应用协议:无线数据报协议规范”(Wireless Application Protocol: Wireless DatagramProtocol Speclhcation[WAPWDP])。 目前,无线会话协议(WSP/B)提供最适合浏览应用的服务。WSP/B除具有HTTP1.l的功能之外,还增加了新的特性,如长生存期 (Long-Lived)会话、支持对数据的推(PUSH)操作、能力协商机制以及会话的挂起和恢复等等。通过优化,无线会话协议更适用于具有较长延迟的 窄带承载网络。
   
   WSP体系结构概述
   
    无线会话协议WSP是一个在客户端和代理或服务器之间进行远程操作的会话层协议族。
   
    1.参考模型
   
    WAP的分层模型如图1所示。WAP协议和它的各种功能是按照[ISO7498]的样式进行分层的,其中[ISO7498]是国际标准化组织的OSI参考 模型。分层管理实体负责处理协议的初始化、配置和错误状态(例如,由于移动台漫游出服务区而导致的连接失败)等协议自身无法控制的操作。
   
    无线会话协议工作在事务处理和数据报提供的服务之上。安全层是传输层之上的一个可选层,它保留传输服务接口。事务处理、会话和应用管理实体用于提供附加支 持,以便建立安全的上下文和安全连接。但是,WSP协议并不直接提供这些支持。从这个意义上讲,安全层是独立的模块,WSP自身并不需要安全层,而是在 WSP的某些应用中可能需要安全层。
   
    2.WSP/B的功能
   
    在交互工作的客户端和服务器应用程序之间,WSP提供了一种有组织的内容交换方法,特别是提供了以下应用方法:
   
    ·建立从客户端到服务器的可靠会话,并按顺序释放会话。
   
    ·通过能力协商,对协议功能的共同级别达成一致。
   
    ·使用紧凑的编码方法,在客户端和服务器之间交换内容。
   
    ·挂起和恢复会话。
   
    目前所定义的服务与协议(WSP/B)最适合 浏览型应用。WSP/B实际上定义了两个协议:一个在事务处理服务之上提供连接模式的会话服务,另一个在数据报报传输服务之上提供不带确认的无连接服务。当不需要可靠的数据传输且不需要确认时,无连接服务是最适合的,它可以在事实上没有建立一个会话的情况下使用。
   
    除基本功能之外,WSP/B还提供以下功能:
   
    ·提供了与HTTP1.l相同的功能。
   
    ·可扩展的请求-应答方法
   
    ·合成对象
   
    ·内容类型协商
   
    ·交换客户端和服务器的会话报头。
   
    ·中断进程中的事务处理。
   
    ·用非同步方式把内容从服务器推到用户。
   
    ·为同时发生的多个异步事务处理提供协商。
   
    (1)基本功能
   
    WSPI/B的设计核心是二进制格式的HTTP,因此,发送到服务器的请求和传给用户的响应可能包含头(元信息)和数据,它支持由 HTTP1.l定义的所有方法。除此之外,能力协商可以用来支持一系列的扩展请求方法,以便保持对HTTP1.l应用程序的完全兼容。
   
    WSP/B向应用展提供分类的数据传输。HTTP1.l的内容报头用于定义内容类型、字符集编码、语言等,这些定义是可扩展的。然而,对于知名的内容报 头,用紧凑的二进制编码格式定义,可以减少协议的额外开销。WSP/B还规定了一种紧缩的复合数据格式,供复合数据对象各部分的内容报头使用,在语义上它 与HTTP1.l中使用的MIME“多部分/混合”形式的二进制格式是一致的。
   
    WSP/B本身并不解释请求与应答中的头信息。作为会话生成过程的一部分,请求和应答头在整个会话的生存期中保持不变,可以在客户端的服务用户与服务器之 间进行交换。这些报头包括可以接受的内容类型、字符集类型、语言种类。设备容量以及其他的一些静态参数。WSP/B不作修改地传输客户端和服务器的会话报 头以及请求和响应头。
   
    一个WSP/B会话的生存周期与下层传输无关。当一个会话处于空闲状态(Idle)时,为了释放网络资源或节省电池,这个会话可以被挂起。恢复会话可以使用轻量级会话重建协议,这样可以节省结束会话而再重建会话的开销。恢复会话可以在不同的承载网络中完成。
   
    (2)扩展功能
   
    WSP/B允许在同层之间协商扩展能力,这样既可实现高性能、全功能的应用,又可以实现小而简单的基本应用。
   
    为了把头信息(元数据)附着在事务的确认信息上,WSP/B提供了一种可选机制,它允许客户端应用程序把关于整个事务处理的特定信息传回服务器。
   
    WSP/B提供推(PUSH)和拉(PULL)数据传输。PULL源于HTTP1.l的请求/响应机制。同时,WSP/B还为数据传输提供了三种PUSH机制:
   
    ·在会话上下文已经存在的情况下,进行确认的数据推操作。
   
    ·在会话上下文已经存在的情况下,进行非确认的数据推操作。
   
    ·在会话不存在的情况下,进行非确认的数据推操作。
   
    在会话的任何时刻,确认的数据推操作机制允许服务器向客户端推数据,并等待所推出数据已被传输的确认信息。
   
    在会话存在的情况下,非确认的数据推操作可以提供一种类似于可靠数据推进的功能,只是没有确认过程。同时它还可以在无会话 (out-of-session)时产生,在这种情况下,假定有一个默认的会话上下文存在,在不可靠传输的情况下,无会话非确认的数据推操作可以用来发送 单向消息。
   
    WSP/B支持异步请求,这样一个客户端能够同时向服务器发出多个请求,并可以把这多个请求与应答连接合并,变成数目较少的消息,从而提高了空中传输时间利用率。同时,这样做还可以减小客户端对请求的响应时延。
   
    WSP/B把知名报头字段的命名空间划分成报头代码页,每个代码页只能为知名字段命名。定义数量非常有限的编码,这使得他们的表达更加紧凑。对于一个给定 的代码贞,不必担心知名字段的命名标识会被耗尽,因为WSP/B已经规定了从一个报头代码页迁移到另一个报头代码页的机制。
posted on 2011-01-18 14:21  hotty  阅读(1384)  评论(0)    收藏  举报