首页 > 新闻 > 专家观点 >

华三焦点:桌面连接协议简析

2015-02-12 11:10:40   作者:   来源:CTI论坛   评论:0  点击:


  虚拟桌面的最终目标是提供接近甚至超出使用传统本地计算机桌面所能获得的用户体验,而这里最核心的技术因素就是桌面连接协议。在不同的网络条件、不同的应用场景下,不同的桌面连接协议的运行情况也会不同。

  在当前的桌面云计算解决方案中,虚拟桌面基础架构VDI(Virtual Desktop Infrastructure)是主流的架构与部署方式。它基于底层的硬件资源和中间层的虚拟化软件,通过上层的桌面虚拟化应用软件,为终端用户提供虚拟桌面交付模式。VDI解决方案的主要设计思想是通过虚拟化技术,把传统意义上的个人物理PC转换为运行在虚拟化服务器上的一个个虚拟桌面,即Virtual Desktop,通过提供对底层存储、网络等基础资源和上层虚拟桌面的集中管理和连接功能,为给终端用户提供灵活和良好的虚拟桌面使用体验。

  在桌面云解决方案中,我们可以通过传统PC、瘦客户机、iPad 或者其他与网络连接的设备,访问跨平台的应用程序或者整个客户桌面,并且得到与传统的个人电脑同样的用户体验。经典的桌面云架构必须具备多种核心技术,这里面最关键的技术莫过于桌面连接协议了。

  VDI架构的表现依赖于网络系统。尤其是在虚拟服务器放置在数据中心,在远端的用户桌面采用瘦客户端或胖客户端来连接数据中心虚拟机时,网络系统对其影响更加明显。网络系统是用户PC和虚拟服务器之间的唯一通道,所有位图变化、用户输入以及其他的一些动作都是通过这个通道传递,所以需要完全借助桌面连接协议,才能通过LAN或WAN把所有虚拟机相关内容传递到最终客户端。桌面连接协议的效率会极大影响通道的性能。简单地讲,协议越高效,最终用户端的体验就越好。

  桌面连接协议是影响虚拟桌面用户体验的关键,它提供了高分辨率会话、多媒体流远程处理、多显示支持、动态对象压缩、USB重定向、驱动器映射等功能。市场上主流的桌面连接协议有Citrix的ICA/HDX协议、VMware的PCoIP协议、微软的远程桌面协议(RDP/RemoteFX),H3C作为桌面虚拟化领域的后起之秀,所支持的协议是SPICE协议

  在不同的网络条件、不同的应用场景下,不同的桌面连接协议的运行情况也会不同。所以我们需要了解主流协议之间的基本原理及差异。

  1.RDP/RemoteFX协议

  RDP协议是微软虚拟桌面产品中采用的显示协议。它基于国际电信联盟ITU T.120协议族的基础上进行扩展,通过建立多个独立的虚拟通道,承载不同的数据传输和设备通信。RDP现在发展到了RDP 8.1,默认安装在Windows Server 2012 R2当中。RDP 8.1增加了一些新的功能,比如Windows Media Player重定向、双向音频、多显示器支持、Aero透明特效支持、增强的位图加速技术和多语言栏扩展等等。结合其RemoteFX,RDP在广域网及3D方面有较好的表现。

  RDP在应用过程中,在服务器侧用于生成远程桌面屏幕显示内容的图像设备接口GDI指令被RDP驱动截获,在服务器侧进行渲染,然后以光栅图像的形式传送到用户终端上输出。同时,用户终端上安装RDP协议的客户端把用户通过鼠标、键盘等设备输入的信息通过RDP重定向到服务器侧,进而在服务器侧使用相应的驱动进行处理。

  随着用户对虚拟桌面体验的要求不断提高,微软在windows server 2008 R2的远程桌面服务Remote Desktop Service(RDS)产品中提出了RemoteFX技术,对RDP协议进行增强。RemoteFX技术通过提供虚拟3D显示适配器、智能编/解码和USB重定向等技术为用户提供良好的桌面体验。

  RemoteFX是与RDP7.1以及之后版本的RDP协议整合使用的,其中RDP协议为RemoteFX提供加密、认证、管理和设备支持等功能。RemoteFX需要与微软的服务器虚拟化技术Hyper-V集成,GPU虚拟化是RemoteFX增强技术的核心。

  2. ICA/HDX协议

  ICA协议为桌面内容和外设数据在服务器和用户终端之间的传输提供了多种独立的虚拟通道,每个通道可以采用不同的交互时序、压缩算法、安全设置等。ICA虚拟通道是在服务器和用户终端之间建立双向连接,可用于传输声音、图像、打印数据、外设驱动等信息。

  在ICA的基础上,Citrix在2009年发布了HDX(High Definition eXperience)技术对ICA协议进行了改进和增强,其目标是在桌面领域的多媒体、语音、视频和3D图形等内容为虚拟桌面提供更好的高清使用体验。

  3.PCoIP协议

  PCoIP协议是Teradici在现有的标准IP网络的基础上研发的,以显示压缩方式连接远程桌面的协议,支持高分辨率、全帧速的图像显示和媒体播放,同时还支持多屏幕显示设备、完整的USB外设和高质量的音频。VMware与Teradici深度合作后在虚拟桌面产品VMware View中实现了利用服务器的通用处理器进行的基于软件的PCoIP协议处理。2012年1月,Teradici发布了PCoIP协议的专用板卡来降低服务器通用处理器的负载,实现性能加速,改进虚拟桌面的显示效果和应用体验。

  提供虚拟桌面服务的虚拟机中,存在软件和硬件两种PCoIP协议的处理方式。硬件处理方式是在VMware服务器虚拟化平台对专用的PCoIP板卡进行虚拟化后由各个虚拟机共享,板卡的主要功能是处理图像编码。

  4.SPICE协议

  SPICE协议是一项高性能、动态的自适应远程网络通讯协议,能为终端用户带来接近于本地物理桌面的体验。SPICE协议专为远程访问虚拟化桌面环境设计和开发,通过它,用户可以使用瘦终端或PC从数据中心的虚拟桌面中获取他们想要的一切,并获得类本地PC的使用体验。

  SPICE是一种可以替代RDP的标准连接协议,提供了增强的VDI用户体验。借助SPICE远程渲染技术,可以为用户交付功能强大的、可以处理高分辨率视频和视频会议的虚拟桌面。SPICE桌面连接协议拥有卓越的图像处理性能,在无需任何特殊硬件设备支持的情况下,可以提供每秒30帧以上的视频显示、软件拨号和IP电话的双向音频、可视电话以及视频会议的双向视频等功能。

  图1. SPICE协议架构

  SPICE协议最大的特点是其架构中增加的位于Hypervisor中的QXL设备,本质上是KVM虚拟化平台中通过软件实现的PCI显示设备,利用循环队列等数据结构共虚拟化平台上的多个虚拟机共享实现了设备的虚拟化。

  SPICE协议能够自动判断和调整图像处理的位置,如果用户终端能够处理复杂的图像操作,就尽可能地传输图像处理命令而不是渲染后的图像内容,这样可以减少网络上传输的数据量。

  SPICE协议支持多通道设置,利用不同的通道传输不同的内容。每个通道中的内容都可以通过相应的图形命令数据流或代理命令数据流进行传输。同时能够独立进行加密,支持不同的QoS。

  5.主流桌面连接协议对比分析

  上文所述的几种主流桌面连接协议的比较如表1所示。

  表1. 主流桌面连接协议对比

  传输带宽要求的高低直接影响了远程服务访问的流畅性。ICA采用具有极高处理性能和数据压缩比的压缩算法,极大地降低了对网络带宽的需求。

  图像展示体验反映了虚拟桌面视图的图像数据的组织形式和传输顺序。其中PCoIP采用分层渐进的方式在用户侧显示桌面图像,即首先传送给用户一个完整但是比较模糊的图像,在此基础上逐步精化,相比其他厂商采用的分行扫描等方式,具有更好的视觉体验。

  双向音频支持需要协议能够同时传输上下行的用户音频数据(例如语音聊天),而当前的PCoIP对于用户侧语音上传的支持尚存缺陷。

  视频播放是检测传输协议的重要指标之一,因为虚拟桌面视图内容以图片方式进行传输,所以视频播放时的每一帧画面在解码后都将转为图片从而导致数据量的剧增。为了避免网络拥塞,ICA采用压缩协议缩减数据规模但会造成画面质量损失,而SPICE则能够感知用户侧设备的处理能力,自适应地将视频解码工作放在用户侧进行。

  用户外设支持能够考查显示协议是否具备有效支持服务器侧与各类用户侧外设实现交互的能力,主流桌面连接协议对外设的支持兼容性有一定的差别:ICA和PCoIP对外设的支持比较齐备(例如支持串口、并口等设备),而RDP当前对外设的支持效果一般。华三基于SPICE协议的外设重定向技术能够很好的兼容特殊的外设,比如:Ukey、串口、并口设备。在保证兼容性的同时,还针对性的做了大量的外设使用性能优化。

  从远程显示协议底层所使用的协议来分析,RDP/RemoteFX、ICA/HDX、PCoIP以及SPICE均属于七层协议,基于两个OSI 4层协议:UDP和TCP。TCP将数据拆分为数据包并在终端进行重新组装,而UDP并不按顺序传输数据包。TCP更加可靠。因为在数据交付之前一直保持连接。另外,如果出现错误,TCP会再次发送受影响的数据。UDP并不保证终端能够接收到所有的数据包,但这意味着在交付非轻量级媒体信息比如视频时,UDP速度更快。远程连接协议在交付图形密集型应用时存在限制。良好的性能需要大量的带宽,这可能会阻塞网络。另外,如果你想降低CPU的使用率,那么协议将会阻塞带宽并降低最终用户的性能。

  6.结束语

  虚拟桌面技术已经比较成熟,不同厂商的产品各具特色。值得说明的是,当前尚没有哪家厂商的虚拟桌面产品能够适用于所有应用场景,因此在应用和部署虚拟桌面解决方案时,必须结合实际需求选择合适的技术和产品,特别是对于一些特殊的用户外设,通常需要定制解决方案。H3C虚拟桌面产品集众家所长,基于RDP和SPICE协议均做了深度的开发,在用户体验方面做了大量的优化。根据不同的使用场景,用户可以灵活选择桌面连接协议。在广域网场景下,带宽及时延均是用户面临的挑战,那么我们可使用RDP协议来连接虚拟桌面。在园区网场景下,带宽及网络一般情况下不会形成瓶颈,那么我们就可以使用SPICE协议来连接虚拟桌面。

  虚拟桌面未来的发展将主要从改善用户体验入手,其最终目标是提供接近甚至超出使用传统本地计算机桌面所能获得的用户体验,而这里最核心的技术就是桌面连接协议。各大厂商还在加大各自协议的研发和优化,这也意味着,在不远的将来,用户将接触到体验度更好的虚拟桌面。

分享到: 收藏

专题