无线会话协议( Wireless Session Protocol,WSP):WSP 针对无线网络的窄带和长时延进行了优化,它向WAP应用层提供了两种会话服务的统一接口,一种是建立在无线传输协议之上的面向连接的服务;另一种是建立在无线
数据报服务之上的非连接服务。
服务
无线会话协议比较适于浏览型的应用。WSP为两类会话服务提供了一个一致性的接口(WSP实际上定义了两个协议):第一类服务,基于安全或不安全的数据报传输,提供了无连接的会话服务(即无连接的会话服务非常适于不需要可靠的数据投递和不关心确认的应用);第二类服务,基于事务层协议(WTP),提供了连接方式的会话服务。
WSP协议层为无线应用环境中的各种用户代理提供了会话环境。WSP提供了HTTP功能。由于无线应用环境(WAE)的需求、数据推送的要求,以及无线网的强约束性,WSP还提供了能力协商、会话挂起/恢复、数据传送、会话长存等功能,并以压缩
编码方式在客户机/服务器之间传递内容。WSP为移动终端和
WAP网关提供了一种有组织的信息交换方式。它以有序的方式在移动终端和WAP网关之间建立和释放会话连接。会话是指移动终端和WAP网关之间完成一次完整的请求和应答过程所需建立的一个长生命期的上下文环境。移动终端与WAP网关之间的信息交换采用客户机/服务器的模式。所谓客户机/服务器模式是一种存取信息系统和资源的方式——分布式计算模式,它是目前世界上广泛使用的一种计算模式。其特点是使用客户机和服务器两方的智能、资源和计算能力来执行特定的任务。在客户机/服务器模式下,应用被分为前端和后端,也就是客户机部分和服务器部分。客户机部分和服务器部分运行在不同的逻辑实体中,它们协同工作。客户机通过有关的命令向服务器提出请求,要进行连接来完成某些操作;服务器则根据客户机的请求为其提供相应的服务。客户机/服务器模式为用户提供了一种有效的资源共享手段。以下所述的客户机与移动终端之间、服务器与WAP网关之间可以相互替换。
WSP提供的基本服务有:
①为客户机与服务器之间建立可靠的会话,并按顺序释放结束的会话。
②为通信双方提供能力协商功能,使通信双方采用的通信方式是两者在能力上都可以接受的。
③使客户机和服务器之间交换的
信息都采用紧缩的编码格式。
④根据实际环境随时将会话挂起(Suspend)和恢复(Resume)。当通信网络环境出现资源不足的情况,不能满足用户的通信要求时,用户可选择将会话挂起,在会话被恢复前,除断开连接的请求和恢复会话的请求以外,用户的一切请求都将被服务器拒绝。用户可以选择当处于另外一种承载网络中时再将会话恢复。
WSP除了可以提供以上几种基本服务之外,还具有以下几项特殊功能:
①提供
HTTP协议所要求的功能。WSP实际上是要实现
二进制代码形式的H1vrP协议。在WAP系统中,无论是客户机发给服务器的请求还是服务器返回给客户机的应答,其中都包括头信息和数据,同样在客户机发给服务器的请求信息中也包括请求方法。WSP支持HTTP定义的方法。如果要对这些方法进行扩展,通信双方可以通过能力协商来达成一致。HTTP通常在内容头信息中以可扩展的方式定义内容类型、字符集编码和语言等信息。WSP则定义了这些头信息的
二进制编码。
②在客户机和服务器之间交换会话头信息。WSP在整个会话过程中不对请求和应答的会话头信息进行任何修改、增加和删除。
③信息处理过程中可随时要求终止事务。当通信过程中出现异常情况时,客户机和服务器任何一方都可以提出终止事务的要求。WSP会根据当时的会话状态进行相应处理。
④在客户机未提出浏览文档内容的情况下,服务器以非同步的方式主动把内容发送给客户机。这种服务被称之为“推送”。WSP提供了3种“推送”的方式,分别为:
·在一个会话上下文中,需要接收方确认的数据推进;
·在一个会话上下文中,不需要接收方确认的数据推进;
·在无会话上下文的情况下j不需要接收方确认的数据报送。
⑤可支持同时处理多个异步事务。通信双方可以通过协商来决定是否支持这项功能。
WSP支持一个客户机同时向服务器发出多个请求。客户机不必等接收到上一个请求的应答后才发送下一个请求。服务器也可以把多个请求的应答组合在一起传送,这样就提高了消息传输的效率。而作为客户机,只要有请求就可以立即发送出去,从而减少了信息处理时延。
WSP除了为客户机和服务器之间提供会话服务之外,另一项重要功能就是将方法请求和方法响应中的头信息进行二进制编码格式与ASCII码格式的相互转换。客户机发出二进制码形式的方法请求,服务器收到请求后,把二进制码形式的请求转换成满足
HTTP协议格式的请求,再发给因特网上的内容服务器。服务器收到内容服务器的响应后,除了要将消息实体转换成二进制码,还要将响应中的头信息也转换成二进制码,然后再把二进制码形式的响应头信息和消息实体返回给客户机。头信息的编码规则是由域名(Field Name)和域值(FieldValue)两部分组成,域名位于高字节,域值位于低字节。
会话服务
WSP提供两种会话服务,这两种会话服务为WSP上层的应用提供的界面是一致的,上层的应用程序实际上感觉不到它使用的是哪一种会话服务。
①无连接的会话服务
无连接的会话服务不要求客户机和服务器在发送文档内容的请求和应答消息之前建立连接关系,并且客户机的请求和服务器的应答也不处于同一个会话上下文中。实际上在使用这种会话服务时WSP并不需要建立会话。当wsP上层的应用程序使用无连接会话服务时,WSP是操作于无线数据报协议(WDP)之上的。因为WDP不具有为上层提供可靠连接的功能,所以这种无连接的会话服务是不可靠的。通常,如果上层应用不要求信息传递的高可靠性,不介意接收方是否收到消息,这时可以使用无连接的会话服务。使用这种服务方式的好处是客户机和服务器之间的信息交换方式简单,响应速度快。
②面向连接的会话服务
面向连接的会话服务要求客户机和服务器在发送文档内容的请求和应答消息之前,客户机要先发送这一层上的连接消息。连接关系建立起来也就意味着客户机和服务器之间的一个“会话”建立起来。之后,客户机和服务器之间再进行文档内容的请求和应答。当WSP上层的应用程序使用这种会话服务时,WSP是操作于无线事务处理协议(WTP)之上的,WSP使用wTP所提供的服务。因为WTP具有为上层提供可靠连接的功能,所以这种面向连接的会话服务是可靠的。