用于处理访问请求的方法和网页浏览器的制造方法
【技术领域】
[0001] 本发明涉及电信领域。
[0002] 更具体地,本发明涉及计算机虚拟化技术领域,诸如,使虚拟工作环境能够生成并 且可经由用户的工作站访问该虚拟工作环境的技术。
【背景技术】
[0003] 通过已知的方式,计算机虚拟化由以下方面组成:在一个或多个远程服务器上安 装和/或操作操作系统或者应用;以及在用户的终端(例如,其工作站)上将该操作系统或 者该应用的图像或者虚拟表示返回用户,该图像连接至承载操作系统或者应用的远程服务 器。因此,计算机虚拟化依赖于硬件与软件之间的解耦,对于用户而言是完全透明的。
[0004] 计算机虚拟化对公司存在诸多优点,尤其是在对公司所安装的计算机进行维护和 管理方面。而且,公司可以容易地管理用户的移动性。用户实际上不再依赖于其物理工作 站,而是可以从不同的物理终端连接至其工作站。
[0005] 在现有技术中存在各种计算机虚拟化的方案,以及,这些方案由虚拟化服务的提 供商经由虚拟化平台(例如,服务器)提出。
[0006] 例如,VDI("VirtualDesktopInfrastructure,虚拟桌面架构")方案提出将计 算机虚拟化的概念融合到用户的工作环境中。其由以下方面组成:对在单个中央承载服务 器上的每个用户工作站的操作系统进行操作;以及,基于也称为流协议的流广播协议,经由 远程显示程序,使每个操作系统与其相关联的工作站对话。于是,用户的工作站仅具有机载 的轻客户端软件包,即,需要有限的计算机资源并且不消耗太多能量。
[0007] VDI方案的有利之处在于相对简单的架构并且提供了较高的自定义用户工作环境 的能力。
[0008] 然而,在中央承载服务器与工作站之间应用的流协议需要大量的资源(就带宽而 言)和稳定的连接性。在可用带宽小的情况下,可能会遇到难以将某些流显示在工作站上。
[0009] 而且,经证明,经由该方案对操作系统上的应用进行更新有时可能会难以管理。
[0010] VDI方案的替代方案是SBC("Server-BasedComputing,基于服务器的计算") 虚拟化,SBC虚拟化提出了应用的集中虚拟化。该方案由如下方面组成:使远程应用在服务 器上运行;以及,经由视频流广播协议将它们在用户终端上的图像发回。其他应用根据SBC 方案(而非操作系统)虚拟化。
[0011] 该方案可以容易地从端到端管理应用,尤其是它们的安装/卸载及其维持。
[0012] 然而,和VDI方案一样,它需要大量的带宽资源。而且,由于某些应用是在远程服 务器上执行而不是在用户工作站的操作系统内执行,所以可能会遇到与这些应用不相容的 问题。
[0013] 在现有技术中提出的另一方案在于基于网页界面将操作系统和/或应用虚拟化。 根据该方案,网页服务器提供由不同服务器承载的应用服务(即,内容)并且将这些服务作 为网页提供给用户,从而再次形成虚拟桌面。向网页服务器返回由用户在网页上实行的每 个操作,以便得以实行。该方案通常依赖于HTML语言(超文本标记语言)或者其修订版本 中的一种,诸如,HTML修订版5。
[0014] 由于使用了网页,所以其具有消耗较少资源的优点。然而,该方案并不具有非常显 著的自定义能力。
[0015] 由此,基于用户所处的环境及用户对虚拟环境的需求,考虑这些虚拟化方案中的 任一种方案经证明都是有意义的。然而,现在,不存在使不同的虚拟化方案(诸如,例如前 述的VDI、SBC或者基于网页界面的虚拟化方案)彼此融合的系统。
【发明内容】
[0016] 本发明通过提出一种依赖基于三个主要参与者的架构的计算机虚拟化方案,可以 显著地克服该缺点,这三个主要参与者即: 安装在用户的终端上的网页浏览器; 依赖于多种技术,诸如尤其依赖于前述的VDI、SBC类型的技术和/或基于网页界面的 技术,为操作系统、工作环境提供虚拟化服务的多个虚拟化平台;以及 虚拟化网关,虚拟化网关产生在终端(更具体地说,其浏览器)与虚拟化平台之间的界 面,以及,虚拟化网关允许在终端与各种虚拟化平台之间协商、建立和维持通信会话,以便 为终端的用户生成自定义的虚拟计算机环境。
[0017] 根据本发明,在接收到由源于终端的浏览器的一个虚拟化平台提供的虚拟化服务 的访问请求时,虚拟化网关生成系统应用,该系统应用包括用于连接至此平台的模块,该平 台使终端能够与该平台协商和维持通信会话,以便访问由该平台提供的虚拟化服务。该系 统应用由与终端所请求的虚拟化服务相关的虚拟化平台所传输的连接信息(例如,URL(统 一资源定位符)、连接端口、所支持的认证机制、用于发起会话的协议等)而生成。该系统应 用优先地用JavaScript?语言生成,以便是通用的并且能够由可以安装在终端上的大 多数或者甚至是全部网页浏览器执行。
[0018] 从本发明的意义上说,该系统应用是包括用于连接至该平台的参数或者脚本的应 用,这些参数或者脚本由该平台传输至网关的连接信息而确定。从该系统应用就连接方面 (例如,用于发起会话以便连接到虚拟化服务的协议、认证方法、URL和连接端口等)考虑了 该服务的特殊性的意义上讲,该系统应用适合于终端所请求的虚拟化服务。需要这类参数 或者脚本是为了使终端能够连接至该平台,换言之,这是用于与该平台协商和建立通信会 话以便访问该平台所提供的虚拟化服务的先决条件。
[0019] 应注意的是,该系统应用是主动的,g卩,该系统应用在浏览器上执行以便发起与关 联平台的连接。从这个意义上讲,该系统应用与所述常规的被动内容应用(也称为"小型文 本文件(cookie)")相反,所述常规的被动内容应用不包含这类连接参数并且不在浏览器 中发起任何进程,而是仅包含与被调用的服务有关的内容元素。
[0020] 由网关所生成的系统应用还优先包含通信协议(例如,包括加密算法、编解码器、 用于远程传送虚拟环境的图形界面、用于在终端与平台之间交换的、像VDI或者SBC的通信 流的传送协议等)栈,该通信协议栈旨在供终端在其与平台的通信期间使用。该协议栈同 时适合于终端的技术特性和所请求的服务。
[0021] 系统应用有利地由虚拟化网关传输至终端的网页导航器,并且不传输至其操作系 统,以便受益于之前所描述的与基于网页界面的虚拟化方案相关联的优点(所需资源(尤 其是就带宽而言)有限、在终端处的轻客户端软件、执行简单等)。终端由此可以经由其网 页浏览器排他地访问不同的虚拟化服务,其优点在于提供了一种独立于终端的操作系统的 方案。
[0022] 因此,本发明提出了一种通用且相对灵活的架构,使终端能够受益于多种虚拟化 方案。由此,终端可以容易地与任何类型的虚拟化平台建立通信会话,并且独立于其操作系 统访问由该虚拟化平台提供的服务。
[0023] 为了支持该架构,根据第一方面,本发明涉及一种用于处理访问计算机虚拟化服 务的请求的方法,由虚拟化网关应用,该网关维持数据库,所述数据库针对多个虚拟化平台 中的每一个平台,包含由该平台提供的至少一种计算机虚拟化服务和允许经由该平台访问 所述至少一种服务的连接信息。根据本发明,该处理方法包括: 用于从终端接收访问由虚拟化平台提供的计算机虚拟化服务的请求的步骤,该请求已 经通过安装在所述终端上的网页浏览器传输; 如果所述终端所请求的服务被包含在由所述网关维持的所述数据库中,则由在所述数 据库中与该服务相关联的连接信息生成适合于所述服务的系统应用的步骤,该系统应用包 括用于连接至提供所述服务的所述虚拟化平台的模块,该模块能够使所述终端能够与所述 平台协商通信会话的建立和维持;以及 用于将生成的系统应用发送至安装在所述终端上的所述网页浏览器的步骤。
[0024] 相关地,本发明还涉及一种虚拟化网关,其包括: 数据库,针对多个虚拟化平台中的每一个平台,所述数据库包含由该平台提供的至少 一种计算机虚拟化服务和允许经由该平台访问所述至少一种服务的连接信息; 用于从终端接收访问由虚拟化平台提供的计算机虚拟化服务的请求的模块,该请求已 经由安装在所述终端上的网页浏览器传输; 检查模块,在接收到所述访问请求时激活所述检查模块,所述检查模块能够检查所述 终端所请求的所述虚拟化服务是否被包含在所述数据库中; 用于由所述数据库中与请求的所述虚拟化服务相关联的连接信息生成适合于所述服 务的系统应用的模块,如果所述终端所请求的所述虚拟化服务被包含在所述数据库中,则 激活所述模块,该系统应用包括用于连接至提供所述服务的所述虚拟化平台的模块,该模 块能够使所述终端能够与所述平台协商通信会话的建立和维持;以及 用于将由所述生成模块生成的系统应用发送至安装在所述终端上的所述网页浏览器 的模块。
[0025] 由所述网关维持的数据库,例如,包括:与以下至少两个虚拟化平台有关的连接信 息(例如,连接参数、平台的URL(统一资源定位符)、连接端口等): VDI类型的虚拟化平台; SBC类型的集中式应用的虚拟化平台;以及 使用网页界面的应用和/或操作系统的虚拟化平台。
[0026] 由本发明提出的解决方法的优点在于十分灵活,并且容易经由虚拟化网关对数据 库更新来支持虚拟化平台的添加和/或取消。
[0027] 为此,在具体实施例中,该处理方法进一步包括: 从虚拟化平台接收消息的至少一个步骤,所述消息识别由该平台提供的至少一种计算 机虚拟化服务并且包含用于经由该虚拟化平台访问所述至少一种服务的连接信息;以及 利用识别出来的服务和包含在接收到的消息中的所述连接信息对所述数据库进行更 新的步骤。
[0028] 可以由虚拟化平台异步地发送这些消息,尤其取决于这些虚拟化平台所执行的、 会影响到其提供的虚拟化服务的变化,和/或取决于涉及传送至虚拟化网关的连接信息的 变化。
[0029] 作为替代实施方式,可以周期性地或者经虚拟化网关的请求将这些消息发送至虚 拟化网关。
[0030] 经由发送适合于终端请求的虚拟化服务的系统应用,本发明实现了终端的动态配 置。该配置使终端能够经由其网页浏览器发起与虚拟化平台的通信会话,所述虚拟化平台 提供了终端要访问的服务。该动态配置允许对可能影响平台提供的虚拟化服务和访问这些 服务所需的连接信息的变化做出适应。
[0031] 在本发明的具体实施例中,由网关生成的系统应用进一步包