使用无线设备的虚拟桌面访问的制作方法_2

文档序号:9240041阅读:来源:国知局
备中的每一个设备提供虚拟桌面。
[0029]图2A示出了可实现本公开的各个方面的系统框图。图2A对应一个实施例,其中第一类型的数据包从主机传输,并在客户机上被转化或转换为第二类型的数据包。在一个实施例中,第一类型的数据包包括蓝牙数据包,而第二类型的数据包包括USB数据包。本公开的各方面提供将蓝牙数据传输给客户机,并在客户机上将蓝牙数据包转换为USB数据包,而不是在主机上将蓝牙数据转化为USB数据。通过将蓝牙数据转化为USB数据延迟到在客户机上接收到蓝牙数据包之后的方式,本公开的各方面提供了提高数据传输速率的方式。
[0030]图2A中所示的系统包括主机存储器204,其被通信连接至主机处理器208。主机存储器204可包括用于存储主处理器208所用的数据的系统RAM或主存储器。主存储器204可存储用于实现虚拟软件驱动212和ICA(独立计算架构)协议驱动216的数据。ICA(独立计算架构)协议包括表示层协议,例如,由佛罗里达州的罗德岱堡的思杰系统(CitrixSystem)公司提供的表示层协议。主机处理器208可执行存储在主机存储器204的数据,以调用虚拟软件驱动212和ICA协议驱动216。主机存储器204和主机处理器208可设置在上文中结合图1描述的主机计算设备104。
[0031]图2A中所示的系统还包括客户机存储器220,其被通信连接至客户机处理器224。客户机存储器220可包括用于存储客户机处理器224所使用的数据的系统RAM或主存储器。主存储器220可存储用于实现软件驱动/USB软件驱动228和ICA (独立计算架构)协议驱动232的数据。软件驱动可由通信连接至客户机的一个或多个无线设备的生产商提供。客户机处理器224可执行存储在客户机存储器220中的数据,以调用软件驱动/USB软件驱动228和ICA协议驱动232。客户机存储器220和客户机处理器224可设置在上文中结合图1描述的客户机计算设备108。
[0032]客户机处理器208可执行存储在主机存储器204的数据,以调用虚拟软件驱动212。虚拟软件驱动212允许主机计算设备以原始格式的数据包的形式向客户机计算设备传输数据,而不是从主机传输USB数据包。本公开的方面允许在主机计算设备上用虚拟软件驱动212代替USB软件驱动。通过用虚拟软件驱动代替USB软件驱动,将数据包从主机向客户机传输,而不需要将数据转化为USB数据。在客户机上,为了与一个或多个无线设备(其通过射频设备的方式连接至客户机计算设备)进行通信,数据被转换为USB数据。客户机计算设备将数据包转换为USB数据包。在转换之后,USB数据包在客户机计算设备上通过射频设备的方式被传输给一个或多个无线设备。
[0033]可在主机上转换数据包,而不是在客户机上将数据包转为USB数据包,并接着将USB数据包通过数据通信链路232传输;然而,在此实例中,将影响有效数据速率,因为USB协议本质上需要与诸如蓝牙协议的其他协议有关的更多命令和/或交互。因此,数据包从主机传输,而在客户机上进行转换。例如,可从主机上直接向客户机传输蓝牙数据包。因此,例如从主机向客户机传输蓝牙命令可在更短的时间内实现。因此,例如当通过数据通信链路传输蓝牙数据包、而不是USB数据包的时候,有效传输速率可能更高。通过在数据通信链路232上消除USB数据包的传输,提高了有效传输速度,且主机计算设备或许能够列举在客户机计算设备上发现的设备。当传输USB数据包时,USB数据包的第一字节包括数据包标识符(PID)字节,随后是其比特形式的补码。4位比特形式的补码提供误差检测;然而,使用这种PID字节在USB命令传输中提供大量的冗余。此外,由于非常短的数据包超时阈值,要使用USB数据包就需要使用短的电缆长度。与USB协议相关的冗余对于在数据通信链路232上的有效数据速率可能具有负面影响。因此,对于将诸如蓝牙数据包转换为USB数据包的数据包转换可被延迟到直到客户机接收到蓝牙数据包。
[0034]因此,根据本公开的各方面,主机或许能够在客户机上发现各种无线设备,并建立可从主机向一个或多个无线设备传输诸如任何多媒体数据的数据的通道。例如,多媒体数据可包括电影或演示资料。
[0035]本公开的一些方面中,以从主机计算设备发送的主机蓝牙命令的方式控制在客户机本地的蓝牙无线设备,其中主机蓝牙命令在客户机计算设备上进行转换。在一些方面中,在客户机上的蓝牙数据包转换能使得客户机发现与客户机计算设备进行通信的蓝牙设备,从而将在客户机上提供的已有的虚拟桌面会话桥接给这些蓝牙设备中的任何一个。在一些方面,虚拟软件驱动212可包括蓝牙虚拟软件驱动,且ICA协议驱动216、232可包括蓝牙ICA协议驱动。这些驱动可根据要求或根据需要被主机处理器208调用,以促进主机和客户机之间的数据通信及发现和列举客户机本地的蓝牙设备。例如,如果在不使用诸如ICA协议的专用表示协议的直接链接上影响主机和客户机之间的USB数据传输,那么,例如,可由主机处理器208调用蓝牙虚拟软件驱动和蓝牙ICA协议驱动,以促进从主机到客户机的蓝牙数据包传输,且因此,可在客户机上进行蓝牙数据包到USB数据包的转换。
[0036]可通过实现ICA虚拟通道的方式将数据包从主机传输到客户机。在本发明的一些方面,ICA协议驱动216、232提供软件通信接口,通过软件通信接口可将数据从主机向客户机传输。ICA协议驱动216、232促进在数据包和ICA协议包之间的压缩和解压缩。在主机和客户机之间的虚拟通道通信管道可被延伸至包含诸如蓝牙数据包的数据包传输。
[0037]系统200可设置在诸如结合图1描述的主机和客户机计算设备104、108的计算设备。当由客户机处理器224执行时,客户机存储器220可存储计算机代码或计算机可执行指令,其实现了软件驱动/USB软件驱动228和ICA协议驱动232。客户机处理器224可使用多个地址线对客户机存储器220进行寻址的方式执行计算机代码或计算机可执行指令。软件驱动和USB软件驱动228对从主机接收到的数据进行操作。数据可包括包含命令和用于显示的视频数据的任何类型的数据。例如,数据可包括一个或多个应用、电影、幻灯片、图片或任何其他媒体。
[0038]图2B是根据本公开的实施例的主机计算设备上的软件栈和客户机计算设备上的软件栈的关系框图。如图2B中所示,主机上的软件栈包括蓝牙应用层230、主机操作系统
(OS)层234、虚拟软件驱动层238和ICA(独立计算机架构)协议驱动242。客户机上的软件栈包括USB硬件总线264、USB软件驱动260、软件驱动254、客户机操作系统(OS)层250和ICA (独立计算机架构)协议驱动246。
[0039]应用层230可与任何类型的应用相联系。例如,应用可包括发现并列举在客户机的无线范围之内的本地蓝牙设备的程序。例如,蓝牙应用可向客户机提供多媒体演示的传输。可将演示传输给可与任何蓝牙无线设备通信连接的客户机计算设备的蓝牙射频设备。例如,蓝牙无线设备可包括能够使用蓝牙协议进行通信的视频投影仪。在主机234上的操作系统可与客户机250上的操作系统不同。虚拟软件驱动238促进源自应用层230的数据的传输。可将ICA协议驱动242用于封装诸如蓝牙数据包的用于使用ICA协议进行传输的数据包。如图2B中所示,可通过ICA通道272的方式将数据从主机向客户机传输。
[0040]ICA协议驱动246可被用于接收通过ICA通道272提供的ICA数据包。当将蓝牙数据包从主机传输并由ICA协议驱动242封装的时候,ICA数据包可通过使用软件驱动254的方式被转换为蓝牙数据包。可通过使用USB软件驱动260的方式将蓝牙数据包转换为USB数据包。USB数据包可经由USB硬件总线264被传输到射频设备268。射频设备268与一个或多个无线设备进行无线通信。例如,无线设备可包括诸如视频投影仪的蓝牙装置(未示出)。
[0041]图3示出根据本公开的一个或多个实施例的计算环境300的框图。计算环境300包括主机计算设备301 (例如,合并至少一个处理器和至少一个存储器的作用的任何计算设备)。主机计算设备301可对应于结合图1所示的主机计算设备104。根据一个或多个方面,主机计算设备301可以是在单服务器或多服务器桌面虚拟化系统(例如,云系统)中的服务器,其被配置成为客户机访问设备提供虚拟机。主机计算设备301可具有用于控制服务器及其关联部件的总体操作的主机处理器303,其中包含随机存取存储器(RAM) 305、非易失性存储器307、输入/输出(I/O)模块309和存储器315。主机存储器303可能与结合图2描述的主机处理器208相同。
[0042]I/O模块309可包括鼠标、按键、触摸屏、扫描仪、光学读取器和/或触笔(或其他输入设备),主
当前第2页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1