不得不面对的Web QoS
伴随着网络QoS技术研究和应用的不断深入,近期,一种面向Web客户和HTTP请求提供性能保证及服务区分的技术——Web QoS应运而生,并且在国际上得到越来越多的学者和业界商家的瞩目,成为QoS技术的一个新的研究领域和重要的学术分支。
QoS(Quality of Service, 服务质量)控制技术作为下一代网络的核心技术之一,多年来一直是计算机网络和多媒体通信领域研究与开发的热点问题。一般而言,QoS是指网络在传输数据流时要求满足的一系列服务请求,强调端到端或网络边界到边界的整体性,具体可以量化为带宽、延迟、延迟抖动、丢失率、吞吐量等性能指标。QoS控制技术的基本目标是为Internet应用提供性能保证和服务区分。为此,IETF(Internet Engineering Task Force)已经提出了两种不同的Internet QoS体系结构,即综合服务(Integrated Services, IntServ)和区分服务(Differentiated Services, DiffServ)。截至目前,QoS技术的研究和开发都进展得非常迅速,并且已经取得了许多基本成果。
事实上,Web QoS概念的提出反映了当今Web应用和电子商务应用对于QoS控制的迫切需求,可以说,Web QoS技术的出现是Web应用和电子商务应用飞速发展的必然结果。
由于计算机网络和多媒体技术的迅猛发展,Internet上的Web应用一直呈现爆炸性增长趋势。目前,Web流量在Internet总流量中所占的比例已经超过了60%,成为Internet上信息传输的主流。由于HTTP请求的指数性增长,Internet上的许多热门站点都经常面临着服务器超载问题。通常,人们期望的Web站点的理想响应时间为1秒,这与人类的响应时间大体相当。研究表明,普通的Web用户通常不会忍受超过8~10秒的等待时间。而根据Zona研究中心的统计,一个电子商务网站必须保证其Web用户在7秒内得到响应,否则将损失30%或者更多的客户。具体而言,Web服务请求的响应时间主要由两个因素决定:网络传输的质量和Web服务器的处理性能。近年来,网络传输的QoS技术研究已经十分活跃,包括通过建立IntServ和DiffServ体系结构来提供性能保证和服务区分。然而,假如Web服务器不支持任何QoS控制,那么,在服务器过载的情况下,具备端到端网络QoS保证的高级流仍有可能遭受服务拒绝,或者Web服务的平均响应时间比用户的期望值高出多个数量级,从而导致事实上的“拒绝服务”效果。据估计,仅在美国的电子商务市场,慢的通信速度、延迟的响应时间、频繁的连接中断等问题已经导致了每年大约400亿美元的销售损失。由此可见,由于服务器的超载问题,Web服务器已经在某种程度上成为实现端到端QoS的瓶颈。因此,如何实现Web系统的QoS控制,为用户提供满足的服务性能保证,已经成为一个迫切需要解决的问题。
更重要的是,伴随着电子商务应用的发展,Internet的服务模式正由传统的数据通信与信息浏览向电子交易与服务转变,这种变化使Web服务器以及Web服务器系统成为支持电子商务的核心设施。现在,企业和服务提供商都越来越崇尚将重要的服务转移到Web上去,例如,在线银行、股票交易、网上预订、网上购物等,都是目前流行的通过Web前端提供的电子交易与服务的形式。与传统的TCP/IP和HTTP服务的平均主义哲学不同,电子商务应用通常要求对用户或服务进行区分优先级别的处理,这是因为所有的Web事务对客户或服务器而言不可能都同等重要。例如,对客户而言,进行在线股票投资交易的HTTP请求显然要比简单的浏览或下载请求更加紧要,因此,需要更加严格的实时性能保证;对Web服务器而言,它需要为付费的用户提供比免费用户更好的服务级别。随着Web应用资源需求的不断增加,电子商务类增值服务迫切要求为其提供基于利润收益的有竞争力的区分服务,而不应该再遵循传统的“尽力而为(best-effort)”的服务规范。因此,如何在Web服务器和Web服务器系统中为不同类型的用户或请求提供区分的、而非“一视同仁”的Web QoS,已经成为支持电子商务的一个至关重要的问题。
如何引入Web QoS机制?
然而,目前通用的Web服务器尚未支持Web QoS机制,无法为Web应用提供服务区分和性能保证。如何在Web服务器及其系统中引入和实现QoS控制的机制与策略,从而满足不断增长的Web性能需求,为不同类型的用户或请求提供服务区分和性能保证,这是目前Web发展迫切需要解决的问题,也是实现下一代网络QoS控制技术不可或缺的要害环节。
现代Web服务器都是根据Internet尽力而为(best-effort)的服务模型平等地处理所有到来的请求;大多数Unix内核的Web服务器采用FIFO(First-In-First-Out)的调度策略,在超载的情况下不加区别地丢弃高优先级的请求分组,使通过IntServ和DiffServ等Internet QoS机制实现的性能改进受到严重损害。因此,仅靠网络QoS机制并不能完全解决端到端的QoS控制问题,Web服务器作为端到端网络中不可缺少的一个重要环节,必须同样具备建立和支持QoS的机制与策略。
Web QoS属于应用层的QoS,它量度的是用户在与Web站点进行交互时所感受到的服务性能。例如,下载时间、交易时间(如银行结算、股票交易、网上购物等)、服务器的可用性、碰到的错误(如失败的连接、丢失的页面或组件、中断的链路、交易失败),等等。由于Web基础设施的复杂性,影响Web QoS的因素有许多。实际上,Web QoS控制技术涉及到构成Web的每一个元素,从网络技术和协议到Web服务器(以及代理服务器)的硬件、软件(包括服务器应用软件、操作系统以及中间件)体系结构等。由于大多数Web基础设施的组件通常都无法轻易进行控制,因此,实现Web QoS并非轻易。相对而言,网络通信公司对其主干网具有完全的控制能力,因而能够向其客户提供基于网络可用性和保证网络响应时间的服务水平协议。而Web服务供给商则无法提供类似的服务保证契约,因为他们只能对Web基础设施的一小部分进行处理和操作。
概括地讲,Web服务供给商可以实施的Web系统解决方案大体可以分为以下两类:
(1)区分的Web服务机制与策略
主要方法 定义用户或服务请求的类别,确定优先级的数目,利用基于优先级的请求分配策略和资源监控与调度机制来保证不同的服务水平协议。
(2)Web服务器系统体系结构设计
目标 找到能够向所有的Web用户或请求提供服务水平协议保证的正确的Web服务器系统体系结构。包括三个方面:通过增加内存和CPU来扩大单个Web服务器的处理能力;在局域范围内通过复制服务器内容建立Web服务器集群来增强本地处理能力;在地理上广域分布的范围内,通过复制服务器集群来扩大全局处理能力。
实际上,上述两个方面也是当前Web QoS控制技术研究的两个主要切入点。具体地讲,当前Web QoS技术的研究方向主要有:
● Web服务器应用软件的QoS支持技术;
● 操作系统的Web QoS支持技术;
● 中间件的Web QoS支持技术;
● Web服务器集群系统中的QoS支持技术;
● Web QoS控制策略和算法的性能分析与评价技术。
目前,国际上Web QoS控制技术的研究已经越来越多地受到网络研究者和闻名公司的重视。许多闻名的国际会议,如International Workshop on Quality of Service(IWQoS)、International World Wide Web Conference等,都已经开始将Web QoS列为一个重要的会议议题。HP公司已经推出了在Web服务器中支持QoS控制机制的名为“WebQoS”的服务质量软件,同时还与Cisco公司结成战略同盟,联手推出面向Web服务器集群系统的Web QoS总体解决方案。IBM公司也推出了支持Web QoS控制机制的名为“WebSphere”的软件平台。此外,许多生产第七层交换机的公司也不断推出能够在服务器集群环境中支持基于QoS的负载均衡的硬件产品。但是,目前国内还很少见到关于Web QoS的研究论文,这方面的产品和专利技术也基本上属于空白。因此,紧密跟踪国际上QoS领域的技术前沿,积极开展Web QoS技术方面的研究与开发,是摆在我国科研工作者和企业面前的一项紧要任务。