可移动的虚拟桌面无线云终端.docx
- 文档编号:6640313
- 上传时间:2023-01-08
- 格式:DOCX
- 页数:13
- 大小:253.61KB
可移动的虚拟桌面无线云终端.docx
《可移动的虚拟桌面无线云终端.docx》由会员分享,可在线阅读,更多相关《可移动的虚拟桌面无线云终端.docx(13页珍藏版)》请在冰豆网上搜索。
可移动的虚拟桌面无线云终端
可移动的虚拟桌面:
无线云终端
无线云终端的手段之一可以使手机用户获取运行在机房服务器的手机虚机的桌面。
由于手机品牌繁多,这一手段促进了移动终端的中央管理。
介绍此技术的方法,包括手机虚机的基础平台和管理软件。
测试结果显示:
大批量的用户可以经过3G无线传输使用Android和WinMobile的桌面。
引言
在威睿(VMWare)针对x86的机器实现了操作系统的虚拟化后,因“一个物理机可同时运行多个操作系统”,机房里的服务器使用率大为提升。
然而在终端PC前的用户,是否也可以取得虚机?
于是有关虚拟桌面的想法应运而生。
这个想法涉及机房里的多个虚机如何经过适度的管理将PC虚机的桌面实现在用户终端,因而是整个基础设施的架构,称为虚拟桌面基础设施VDI(VirtualDesk-topInfrastructure)。
在云计算红火的今天,一个很合理的问题是:
云里的资源如何让用户使用?
VDI就是从“端”操作“云”资源的手段之一:
“端”透过适当的通信协议和足够的带宽来实现机房里“云”的资源使用。
通信协议包括远程桌面协议RDP(传输桌面),以及SHCE协议(传输桌面和视频)。
以上所述VDI,通常只在PC及固网里实现。
然而,在中国,手机、平板电脑和上网本(以下统称移动终端)的未来增长比PC快得多,是否VDI的虚拟桌面想法也可以透过3G移动网实现在移动终端上?
在本研究报告中,我们把移动的VDI称为虚拟移动基础设施VMI(VirtualMobileInfrastrucmre)。
当然,VMI也是“端”使用“云”资源的手段之一。
我们研究如何将Android和WinMobile的手机操作系统桌面,传输到移动终端。
VMI与两方面的操作系统有关:
(1)服务器上的虚机操作系统。
与VDI不同的是,手机的操作系统并不像PC机那样,被Windows的用户占了95%以上。
当前较为流行的手机操作系统有:
Android、Symbian、WinMobile和iPhone。
另外win7、Android和Chmme的上网本也被看好。
本研究仅包含两个代表性的手机操作系统Android、WinMobile6.0和PC的操作系统;
(2)移动终端上的操作系统。
如果在机房里运行手机虚机及其应用,那么用户的移动终端即使品牌不同,只要安装适当的远程桌面协议客户端,都能接收到同一手机操作系统的桌面,甚至PC的桌面(当然PC的屏幕太大,有适配手机屏幕的问题,但使用手指滚动屏幕的技术能缓解这一问题)。
这样“跨移动终端平台”的VMI产品优势也许能为移动电信、销售机构、甚至学校所接受,因为这些机构的用户的移动终端(尤其是手机)的品牌很难统一。
此外,手机应用开发商也因此不必做跨平台的开发。
1VMI的需求
以上只是略述VMI的背景,但其详细的需求如下:
手机虚机的制作:
如果要得到手机虚机的屏幕,首先当然必须在机房里的x86服务器上创建手机虚机。
这有两种情况:
一是有的手机操作系统能够直接运行在x86的平台上,譬如谷歌的Android;另一种情况则是(大部分的)手机操作系统只能在ARM的芯片上运行。
因而ARM指令必须要经过翻译才能在x86的服务器上运行。
所以基本上,这是两个不同的管理程序(Hypervisors)。
手机虚机的管理:
类似于VDI的管理,用户必先通过连接代理取得虚机的lP地址和端口号,然后才能进行桌面的传输。
在取得虚机时,VMI的管理器必然有适宜的机制,使得手机虚机对某个用户可以是静态永不变的,或动态地按照某种规律选取的。
管理员必须能够透过管理界面,为用户创建、克隆、启动、停止、删除虚机。
(停止虚机是一般手机操作系统并不具备的功能。
)同时要兼顾更有效率的管理和启动虚机,因为手机虚机并不像Pc虚机的镜像那么大,所以载人时阃较快。
远程移动桌面协议:
常见的远程桌面协议有VNC、RDP以及SPICE(以下统称移动终端协议MTP)。
通过MTP,可以完成移动终端与虚机之问的“互动”:
即虚机屏幕传到移动终端,而键盘和鼠标的动作则从移动终端传到虚机。
必须选取三种协议之一或创建新的协议米完成互动。
无论使用何种协议方法,移动终端协议有其服务器端和客户端。
移动终端协议的服务器可以运行在Hypervisor之上(如SPICE和VNC)或虚机内部(如RDP)。
至于移动终端协议的客户端,是运行在移动终端的操作系统上。
由于手机品牌甚多,凡是较为通俗的智能手机或上网本的协议客户端,都必须支持。
无缝桌面:
“无缝”是指客户端在连接虚机后,接收到的第一个桌面是客户选定的某应用的全屏桌面。
如果没有选定的应用.默认的桌面就是操作系统桌面。
PC桌面传输到手机以及PC应用点播:
移动终端如手机或上网本,不仅可以与手机虚机互动,还可以与Pc虚机互动,或与运行在虚机上的应用互动。
内网连接的扩容(Scalabilityoflocal-netVMI):
当大量的用户有桌面要求,系统在虚机能支持的虚机数量上以及用户响应、用户体验上必须保证没有问题。
外网3G连接扩客(Sealabilityofwide-areaVMI):
机房里服务器的虚机桌面,利用3G载体的传输与移动终端互动。
经由外网进入内网。
通常有一个类似路由的接人过程。
即使扩容测试已可在内网处理大批量用户的问题,但从外网的移动终端经由移动电信的3G移动网关、骨干网、一直到通过防火墙、接人内网到机房服务器的过程,如有瓶颈,必须消除,以支撑大数量的并发。
2VMI管理软件以及QVisor平台的研制过程
2.1国内外Hypcrvisor技术调研
早期Hypervisor的研究:
因为VMI的主要舞台是数据中心,而为了将ARMOS运行在全是x86核的数据中心里,有必要引用仿真器QEMU。
较早的x86虚拟化研究包括:
2000年华盛顿大学的Denali使用微内核技术的研究项目,威睿的全虚拟化,Xen的半虚拟化,微软Hyper-V的半虚拟化,此外还有IBM的预虚拟化以及红帽的QumranetKVM方法。
自从2006以来.已有一些在ARM核上运行的虚机研究。
例如伊利诺大学的研究就集中在ARM硬件上的Hypervisor,而不是用AMR的仿真器。
Xen3.3使用了V2E方法:
除了一个很薄的域0和其它客户域之外,在一个迷你os上运行仿真器QEMU。
这个QEMU仅是为了VM运行时需要进行一些特殊的应用例如安全检测,启发了我们的想法:
将全部的客户OS郜运行在QEMU上。
嵌入式Xen:
这个方法起初是将Xen的源码移植到ARM指令。
其次将此嵌入式Xen的硬件驱动虚拟化。
有一些大学的研究是属于这方面的:
就是把Xen1.0代码移植为ARM指令,但MMU方面的工作并末完成。
移植了一个ChoicesHypervisor到ARM芯片上并将ARM指令扩充以便在QEMU仿真器内使用类似英特尔的VT技术。
基于QEMU的优化移动Hypervlsor为多种芯片(SPARC、ARM等)做了仿真工作,运行在Linux微内核L14上。
他们做了下列优化:
(1)功能级别的指令块处理;
(2)用自己的内存管理方法,取代QEMU软件MMU;(3)L4微内核是一个代码行数很少的内核.性能极佳。
优化方法散布在三个层面:
(I)微内核L4;
(2)QEMU;(3)客户0S。
比起嵌入式Xen方法集中在一个Hypervisor内,该方法似乎更为有效。
但由于每个客户OS都需要将一个仿真器QEMU载人内存。
消耗掉不少内存.于是能支持的虚机个数比起嵌入式Xen就少很多。
如果QEMU可被共享,那就更佳。
不过,共享QEMU是Xen3.3的V2E用在Pc虚机上的方法,只不过Xen3.3用了自己的Xen任务调度器和MMU,而方法则是用了M的改进的任务调度器和MMU。
此外,还欠缺了一个服务器来管理虚机,以方便测试.并需要提供API与诸如VDI或VMl的应用相接。
至今国内外尚未有任何类似VMI的产品。
主要是因为手机操作系统的虚拟化技术,大多数公司(例如澳大利哑的OpenKernelLab、被RedBend收购的ViauMogjc、以及威睿)将之用在客户端,而不是服务器。
我们参考上述的研究,根据自己的创见。
提出了在服务器上建立一个移动的Hypervisor的想法,称之为QVisor。
至于多客户分派手机虚机.建立对话期,控管虚机池的机制,则是参考VDI的管理软件而得的设计。
2.2移动虚拟化VMI软件的原理
移动虚拟化要建立的系统是基于一个事实:
手机虚机能运行在x86服务器上。
既然大部分的手机虚机仅能在ARM芯片上运行.手机虚机必须要先在ARM-x86的仿真器上运行,而该仿真器又能在x86的服务器上运行。
图1显示仿真器和x86的主机操作系统之问还有一个Hy-pervisor层。
Hypervisor的功能是启动仿真器,优化内存的使用,并与虚机管理器对接,传达手机虚机的启动、克隆、结束、性能回报等指令。
手机虚机和Pc虚机最大的不同处在于它本身通常没有“结束”这一功能,必须另外设定;而且手机操作系统也欠缺硬盘功能,但可以通过闪存卡驱动接入。
我们的解决方案将Hypervisor称为QVisor平台,集合了上述功能。
虚机管理器不止是通过应用接口传递VMI管理软件的指令和回应,也调节各虚机之间的资源使用情况。
此外,虚机管理器可以单独运行成为软件服务器,不一定要和运行手机虚机的x86主机共存。
这是因为虚机管理器不但可以管多台主机上的虚机,还能处理主机集群的问题。
我们的解决方案将虚机管理器称为QServer。
点击图片查看大图
图1也显示透过软件交换机,不单移动网上的手机和上网本可透过和VMI的应用服务器接入QVisor平台,任何固网上的PC、瘦终端、感应器或离线VDI的终端也可以取得手机虚机(例如Android)的桌面。
此外,手机和上网本也可以接人VDI的应用服务器。
也就是说,这些移动终端也可使用PC虚机的资源。
VMI应用服务器上运行的是VMI的管理软件。
有两个重要的功能,一是连接代理,其次是虚机池的管理。
连接代理是在接到用户的接人请求后,完成身份验证、创建Session、并向虚机池管理器请求分派手机虚机。
当得到虚机之后,把虚机网址、端口号传给用户。
这样用户的远程传输协议(RDP、SPICE、VNC等)客户端就可直接与协议的服务器传送手机屏幕。
连接代理能使用“无缝屏幕”的技术,让用户收到的第一个屏幕,就是订阅的虚机应用屏(第一个屏也可以设置为操作系统桌面)。
这是考虑到如果合作对象是移动电信公司,其用户可以订阅该公司提供的不同“应用套餐”。
虚机池管理器负责按照虚机的模板制作手机虚机,并按池的策略预先克隆足够的虚机,以应付大规模的手机用户请求。
以上的功能与VDI的管理软件大致相同,不同的是手机虚机的启动要比PC快得多,简化了池中预留虚机的延迟考虑。
我们的解决方案将VMI应用服务器称为TranVMI。
2.3完成移动虚拟化的初步研究开发
移动虚拟化的初步研究开发,经历了三个阶段。
首先,我们按照TranVMI的设计,开发出手机从
(1)威睿的ESX平台,或
(2)VMI基础平台QVisor接收到“无缝PC屏幕或手机屏幕”的技术。
其次,在为优化虚机内存使用情形下,我们开发出类似TranVDI的虚机管理器QServer(运软公司的VDI产品),成为VMI的QServer。
因而虚拟机得以被更好的管理,譬如虚机上的代理可经由QServer传达心跳和虚机性能的信息,这样有利于调适。
最后,我们分别对微软和谷歌的手机操作系统进行了改良,将WinMobile成功运行在QVisor上。
另外,我们也成功地将谷歌x86版的Android操作系统直接运行在x86的服务器上,并使用VDI的QSenrer经过TranVMI与手机相连,但此方法效果不如QVisor。
2.4完成跨手机平台的应用管理
以下为完成跨手机平台的应用管理的几个实施案例:
(1)TranVMI管理软件+Android,直接运行在x86平台
TranVMI后台为Androidx86版在Dell服务器上运行,我们使用了将LinuxKVM改良的TranVMMHypervisor,并经过Tran-VDI的QServer来管理。
前端为WinMobile手机或上网本(已完成测试,见第3节的内网扩容测试结果)。
(2)TranVMI管理软件+Android,运行在QVisor平台
在QVisor平台上运行,并经过TranVMI的QServer来管理虚机。
前端为Andwid手机、iPhone手机或iPad上网本(与联通进行合作)。
(3)TranVMI管理软件+WinMobile,运行在QVisor平台
TranVMI具备无缝传屏技术和应用管理的实施,后台为WinMobile虚机。
TranVMI也连接后台为PC虚机在TVM4.0平台上运行,并经过TVM4.0的VMManager。
未来计划将前端扩展到:
Android手机、iPhone手机、WinMobile手机、Nokia手机、其他主流Windows上网本或iPad上网本。
2.5基于智能传屏技术开发手机虚拟化服务器
(1)SPICE协议
SPICE协议服务集成(虽然在手机上尚未完成移植SPICE,但第5节的VDISPICE测试结果仍具有参考价值),例如:
传虚机屏能力;传视频能力。
(2)其它智能传屏协议
未来从修改VNC协议到建立运软自己的智能传屏协议,例如:
虚机屏幕及视频传输;大规模并行会话和(应用+OS)镜像的双向同步,为客户端虚拟化作准备。
2.6在移动运营商示范应用
首先测试TranVMI的手机或上网本,经过联通的3G上网卡,使用联通的移动3G网络在大规模扩容环境中的实际成果(部分为模拟客户端,且中间经过RAS的外、内网地址翻译,结果见3.2节的VMI无线测试结果)。
未来与联通的合作还应包含兼容TMN标准的OSS体系,为用户供应自我服务的Web体系,和为系统管理员供应的集中式系统管理Web系统,在物理设备层面、网络层面以及其中运营的业务层面来保证企业级云计算基础设施的生产、供应、监视、部署和运营。
3VMI内网扩容测试、VMI3G无线测试及VDI/SPICE参考测试
3.1VMI内网扩容测试
(1)测试指标
VMI扩容测试的技术指标为:
主机容量一台物理机上运行至少100个手机虚机;
主机集群量至少4台主机在集群里;
稳定性主机至少不间断运行一星期。
(2)性能测试场景
TranVMI的测试是400个用户访问400台Android虚机,后台有4个物理服务器(非集群)的情况。
测试时必须使用运软模拟多VMI用户的测试工具,其中50个用户是实施在10个测试用Windows虚拟机上(每个虚机运行5个用户,可见Android屏幕),其余350个用户是借助测试工具来模拟(可在管理界面看见350个Android虚机被连接,但由于测试环境的限制,这些Android虚机的屏幕不可见)。
连续运行一星期。
(3)功能测试场景
VMI的功能包含:
(1)QVisor基础平台的功能(目前没有曝露的界面可测);
(2)TranVMI管理软件的功能:
除了模板、虚机、虚机池的管理界面可供测试外,还具有“无缝屏幕”的功能,让用户收到的第一个屏幕,就是订阅的虚机应用屏(当然第一个屏也可以设置为操作系统桌面)。
譬如中国联通的用户,可以订阅电信公司提供的不同“应用套餐”。
另外,支持将PC的应用屏幕传到手机上。
针对本项目大规模的扩容测试,无缝屏幕和应用套餐暂时不用。
所有可见的屏幕都是Android操作系统桌面屏幕。
(4)测试结果
首先,400个用户的性能测试完全符合上述指标、运行一星期,VMI系统也相当稳定(有一周的稳定测试日志可供查询)。
其次,我们发现比较Pc虚机在同样32GB内存Dell服务器上运行的数目,VMI可以运行大约4~8倍数目的手机虚机。
如果手机虚机没有蓖型应用,这样的一台Dell服务器可以运行大约150个Android虚机。
至于用户请求的响应时间,测试结果如表l所示
点击图片查看大图
表1第一行是测试客户向TranVMl发400个虚机请求,其所得的响应时问(以毫秒计)的平均值、中间值、90%值、最大值、最小值、错误百分比。
这个测试做了两次,共800个清求。
由此可知,在800个请求中,大部分的用户在3到4秒中就看到Android的第一屏,90%的用户在5秒内就看到,有的用户立即看到,只有极少数等了9秒才看到。
表1第二行是测试客户向TranVMI发400个登录通知,其所得的响应时间(以毫秒计)的平均值、中间值、90%值、最大值、最小值、吞吐量、使用带宽。
这个测试做了两次.共800个通知。
由此可知.大部分的登录所需时间不到1秒,90%的通知在2秒内完成,最慢不超过3秒。
表1第三行是测试客户向TranVMl发400个断开虚机指令,其所得的响应时间(以毫秒计)的平均值、中间值、90%值、最大值、最小值、吞吐量、使用带宽。
这个测试做了两次,共800个断开指令。
由此可知,用户停用虚机的指令,是立即见效的。
功能测试号眭能测试经过了上海市计算机软件评测重点实验室验证。
VMI产品经此认证.75项功能100%通过,符合国家标准GB/T16260.2-2006《软件工程产品质量第2部分:
外部度量》,和国家标准GB/T17544-1998《信息技术软件包质量要求和测试》(相当于国际标准iS09126)。
3.2VMI无线3G测试
(1)测试场景
单台上网本运行单VNC客户端/单个虚机测试无网络地址翻译。
经由上网本上所插的3G上网卡,通过运软外网开口,连接TranVMl,取得固定(也就是把单个虚机的IP固定成为外网地址)Android虚机屏显现在上网本上。
多台上网本每台运行多VNC客户端并发测试。
安装RAS(remoteaccaessserver)以实现内、外网地址翻译。
RAS必须安装在物理机上.有数个高速网卡。
该物理服务器运行在高速通讯环境的机房。
修改TranVMI使能从RAS取得内网Android虚机地址。
(见图2:
VMI与3G网络的测试环境)
单台上网本运行两个VNC客户端,利用WCDMA华为/联通上网卡(下行7.2Mbps.上行5.76Mbps),通过RAS/TranVMl分别取得Android屏。
三台上网本每台运行10个VNC客户端并发,通过RAS/TranVMl分别取得共30个虚拟的Android屏。
点击图片查看大图
(2)测试结果
点击图片查看大图
表2第一行是测试客户向TranVMl发30个虚机请求,其所得的响应时间(以毫秒计)的平均值、中间值、90%值、最大值、最小值、吞吐量、使用带宽。
这个测试做了两次,共60个请求。
由此可知,在60个请求中,大部分的用户在11到12秒中就看到Android的第一屏,90%的用户在23.4秒以内必然看到,有的用户立即看到,只有极少数等了23.5秒以后才看到。
有一个请求发生错误。
表2第二行是测试客户向TranVMI发30个登录通知,其所得的响应时问(以毫秒计)的平均值、中间值、90%值、最大值、最小值、吞吐量、使用带宽。
这个测试做了两次,共60个通知。
由此可知,大部分的登录所需时间不到1秒,90%的通知在5秒内完成,最慢不超过12秒。
表2第三行是测试客户向TranVMl发30个断开虚机指令,其所得的响应时间(以毫秒计)的平均值、中问值、90%值、最大值、最小值、吞吐量、使用带宽。
这个测试做了两次,共60个断开指令。
由此可知.用户停用虚机的指令,平均花了1.7秒,最慢的花了11秒。
3.3VDISPICE内网视频参考测试
虽然我们并没有用手机虚机测试SPICE的传输协议,但以下的VDI测试,应该理解为图1的VDI第三方产品使用Win-dowsPC虚机运行影音风暴.经SPICE将电影传输给上网本的移动终端。
因此也可为参考。
(1)测试场景
使用SPICE远程连接5-20台虚机同时做视频电影rm-vb文件操作:
虚机分辨率为1024×768;暴风影音打开rmvb文件(HDTVrip,624X352,166M);全屏观看该电影30分钟左右;千兆网络下,主机有3个千兆网卡,终端百兆网卡。
监控主机上bond(即Linux三个网卡的绑定组合,与Bridge类似但能负载均衡)的输出流量。
(2)测试结果
点击图片查看大图
表3显示,当Pc虚机数堵达到15台同时播放该视频时,主机的CPU占用率已达到90%以上,且终端视频播放已有些延迟,认为当前已达到极限。
点击图片查看大图
点击图片查看大图
根据上两趋势图(图3和图4)看到IO等待的百分率(io-wait%)较低,而网卡输出流量也未达到峰值,可确定当前CPU能力为性能瓶颈。
3.4VDlSPICE3G音频参考测试
测试设置情况与图2类似,但是在3G网络环境下使用SPICE远程协议连接虚机做音频带宽统计。
远程连接多台虚机(播放音频)场景下。
根据情况的网络流量数据信息,为估算未来客户环境中不同终端数、不同的虚机使用方式下的网络带宽作参考。
(1)测试环境
TvMhost使用DellR7lO,配置XeonE5520(2X4Core)CPU,32GBMemory,3TBSATADisk,4NIC(1000M)。
配置虚机的虚拟网卡桥接在两块块物理网卡eth2、eth3上,eth0、eth1都绑(bond)在一起提供给SPICE连接。
3G网络环境,终端是Windows的上网本或笔记本,使用WCDMA华为/联通3G上网卡拨号连接。
(2)测试场景
使用Spice远程连接1-3台虚机同时做流媒体MP3文件操作:
虚机分辨率为800x600;WindowsMediaPlayer最小化播放MP3;MF3播放一次;
监控Host上bond的输出流量。
(3)测试结果
听取MP3文件时声音流畅,没有断续现象。
流量统计如表4所示。
点击图片查看大图
3.53Giphone切换手机虚机的测试
另外.我们测试了联通iPhone3G手机在3G网络下,可以流畅地切换Android和WinMobile的虚机桌面。
由于这个研究显示了VMIQVisor的能力,我们制作了可以下载的全程录影。
4结论
测试总结果显示,VMI可以是一个承受大批量用户(至少400人)的产品。
由于手机虚机不占太大空间.一台标准32G内存的硬件服务器可以运行大约4-5倍数量的PC/Windows虚机。
这是Android的一大优势,尤其它渐为大众所喜爱。
虽然WinMobile也能达到同样的效果,大众的目光似乎更转向WinPhone7。
无论如何,手机应用能借助VMI的技术,在不同品牌的智能手机上运行,对某些企业是相当需要的。
有关SPICE的性能,一般来说,在3G移动办公的情况下,比思杰(Citrix)的HDX协议效果好,譬如声音的效果,不像Citrix在某些情况下有断续听不清的现象。
当然,以目前3G的带宽来说,这两个协议,SPICE和HDX.都无法有流畅的视频效果。
由于上网本、平板电脑等新型移动终端的出现,VMI已不再限于使用手机作为移动终端。
Windows的Pc桌面和Android的手机桌面都可以呈现在这些新移动终端上。
也就是说,VMl和VDI之间的界限变得模糊了。
5未来研
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 移动 虚拟 桌面 无线 终端