基于web的远程桌面分析与设计

2017-12-09 01:00秦宇
科技视界 2017年23期
关键词:远程桌面

秦宇

【摘 要】教育信息化极大的提高了学习者的学习效率,但在目前,信息化教育还主要停留在电子文字讲解,音视频多媒体演示等手段,还缺乏为学习者提供一个多功能的实验平台。本文分析和研究了远程桌面的实现原理和方式,设计出了通过web页面访问多台运行于vshere平台上的虚拟机的远程桌面系统。

【关键词】websocket novnc 远程桌面

中图分类号: TP309 文献标识码: A 文章编号: 2095-2457(2017)23-0060-002

【Abstract】Education informationization greatly improves the learning efficiency,but at present,Education informationization are still in the state of using the electronic text,audio and video multimedia presentations and other means, but also lack of a multi-functional experimental platform for learners.This paper analyzes and studies the implementation principle and method of remote desktop, and designs a remote desktop system accessing multiple virtual machines running on vshere platform through web pages.

【Key words】Websocket novnc remote_desktop

0 前言

教育信息化不单要采用电子文字,音视频等多媒体手段,还要给学习者提供一个实验平台,让学习者动手实验,这样更有利于学习者的技能学习。为了给计算机专业的学生提供虚拟桌面,在计算机上进行实验,有以下几种方案:

(1)为每个学生提供一台物理机,实验直接在物理机上开展。

(2)在每台物理机上利用虚拟软件。例如VMware workstations或者virtualbox建立虚拟机,实验在虚拟机上进行。

(3)在多台服务器和共享存储上组建云平台,由管理员统一为学生分配虚拟机。

在第一种方案中,物理机一旦关机,实验就被迫终止,实验没有延续性。各个物理机的资源利用不平衡,机器维护成本高。在第二种方案中,可以利用虚拟软件的快照功能保存实验,实验有一定延续性,而且可以建立多台虚拟机以及虚拟网络,可以进行更加复杂的联网实验,但缺点一样是要维护每个学生的物理机,维护成本高,而且资源无法动态分配。在第三种方案中,利用了最新的云计算技术,只需要维护集中管理的几台服务器和存储,实现了资源的动态分配,物理设备的维护和管理成本大幅降低。

基于以上分析,采用了业界领先的虚拟化平台,VMware公司的vsphere云平台建立虚拟机,提供给学生进行实验。

虚拟机建立以后,如何登陆虚拟机也有以下方案:

(1)学习者通过管理员分配的具有一定权限的vsphere账号,直接登陆vsphere平台。

(2)利用vnc客户端登陆虚拟机。

(3)利用web页面登陆虚拟机。

第一种方案中,学生需要登陆vsphere平台,需要学习额外的vsphere平台知识,增加了负担。第二种方案中,需要在每台登陆终端中安装vnc客户端,而在第三种方案中,可以直接利用web页面,省去了安装客户端的麻烦,而且由于移动终端也支持html5页面,所以在移动终端上也可以登陆到远程桌面。所以基于web页面登陆远程桌面是最好的解决方案,也是本文采用的方案。

1 分析和设计

设计基于web的远程桌面时,首先需要解决的问题是支持html5的浏览器在访问vnc服务器时,采用的是websocket协议,然而vsphere主机中的虚拟机只支持vnc协议,只有把websocket协议转化为vnc协议才能从浏览器登陆虚拟机,所以采用了如图1所示的平台架构:

基于浏览器的vnc客户端,选择了novnc客户端,代理服务器选择了websockify,其中websockify的运行需要基于node.js环境。Node是一个Javascript运行环境(runtime)。它对Google V8引擎进行了封装,V8引 擎执行Javascript的速度快,性能好。Node对一些特殊用例进行了优化,提供了替代的API,使得V8在非浏览器环境下运行得很好,也可以说node.js是运行于服务器端的JavaScript运行环境。以上软件均可以在各自的官网上下载。

从而登录到不同的虚拟机,成功实现了一台代理服务器访问多台虚拟机的功能:成功后的界面如下图所示:

2 结论

本文分析了多种现有的虚拟机实验平台方案,采用了基于web的远程桌面方法。对于novnc+websockify代理服务器+vsphere平台虚拟机的架构以及协议进行了分析,在此基础上,改进了此框架的内容,结合实际环境,实现了基于web的同一代理服务器访问多台虚拟机的功能,为学习者进行实验,提供了较好的实验平台。

【參考文献】

[1]朱永强,汤雄.基于VNC的远程桌面传输协议分析与研究[J].计算机系统应用,2016,25(11):284-287.

[2]刘坚,余综.VNC多媒体数据实时传输的研究与实现[J].计算机工程与设计,2012,33(7):2706-2710.

[3]陆凌牛.Node.js权威指南[M].北京:机械工业出版社,2017.endprint

猜你喜欢
远程桌面
多服务器远程桌面连接器
实战Windows Server 2008 R2远程桌面服务
RemoteApp客户端连接管理
排查远程桌面故障
安装远程桌面服务
为Windows 2012指定授权服务器
监控远程用户行为
读编往来
限制远程桌面登录IP的方法
通过远程桌面设置 加强校园服务器的安全性