“现场和远程用户同时操作同一台计算机,且不互相干扰的方法”详解

操作远程计算机的两种应用需求

在部署、诊断、维护等生产环境中,存在这样的场景:

场景一:现场有操作员甲通过本地登录操作机器A,远程有操作员乙需要通过某种方法也去操作机器A。


大家最常用的解决办法是:

①双方登录QQ,操作员甲请求远程协助,操作员乙接受请求进行远程操作;

②通过Team Viewer等远程控制软件,与QQ一样,双方协商后建立会话,进行远程操作。


严格来说,通过QQ、TV的远程控制实际上是一种远程协助,所解决的需求是:
操作员乙对操作员甲当前的任务进行协助,或者是双方协作完成同一个任务。

因此,对于下面的场景,QQ、TV等远程协助手段就无能为力了:

场景二:操作员甲乙需要分别执行不同的任务。比如,甲要看电影,乙要做EXCEL表格。

因为甲乙对机器A的控制会发生冲突,在同一时间点,要么甲闲着,要么乙等待。

==============================================================

对于场景二,目前有两种解决方案:“远程桌面”和“虚拟机”。


一、远程桌面方案

1.什么是远程桌面

       远程桌面是微软公司为了方便用户操作远程计算机而推出的一项功能。

       目前,可以使用远程桌面功能的Windows操作系统包括:
        Windows 2000 Server
        Windows
XP
        Windows Server 2003
        Windows Server 2008
       
Windows Vista
        Windows 7
        Windows 8
        Windows Server 2012

       对于网络中(内网、公网均可)任意一台开启了允许用户远程连接到此计算机”选项的计算机,拥有该远程计算机上的账号和密码的用户,就可以使用“远程桌面连接”程序去访问该计算机,在上面安装软件,运行程序,执行各种任务,就如同现场操作该远程计算机上一样。
       更重要的是,远程桌面与前述的远程协助的不同之处在于:远程桌面利用了Windows 系统的分时(Time Sharing)特性!
       分时操作系统的工作原理是

       操作系统将CPU的时间划分成若干个片段,称为<时间片>。操作系统以<时间片>为单位,采用<时间片轮转>的方式轮流为每个终端用户服务。当一台主机与网络中的多个远程用户建立了远程桌面连接之后,所有使用"远程桌面连接"程序的计算机都成为了该主机的终端,每个终端有一个用户在使用。用户交互式地向系统提出命令请求,当CPU轮询到该用户的时间片时,操作系统就接受该用户的命令,并通过交互方式在终端上向该用户显示结果,该用户再根据反馈到终端的结果发出下道命令。因为每个用户轮流使用自己的时间片,从而每个用户都不会感觉到有别的用户存在。
      
分时系统具有以下特征:
       多路性同时有多个用户使用一台计算机。
                      宏观上看是多个人同时使用一个CPU,微观上是多个人在不同时刻轮流使用CPU。

       交互性:用户根据系统响应结果进一步提出新请求(用户直接干预每一步,这是与批处理系统不同的地方)。
       独占性:用户感觉不到计算机为其他人服务,就像整个系统为他所独占。
       及时性:系统对用户提出的请求及时响应。


       了解了远程桌面的工作原理,再来看看远程桌面的服务端和终端是如何通讯的。
       远程桌面使用了 RDP协议(Remote Desktop Protocol)。RDP协议是由 Microsoft 开发的私有协议,它遵循并实现了国际电信联盟的 ITU 128标准,而且还对其进行了扩展。RDP的最新版本是8.0版( in Windows 8 或 Windows Server 2012)。
       在RDP协议中,只要一台计算机运行了RDP服务端软件,远程用户就可以运行RDP客户端以图形界面的方式通过网络连接到该计算机上。
        虽然RDP协议是由 Microsoft 开发的私有协议,但在Windows,Linux,Unix,Mac OS X,IOS,Android各平台上都有RDP客户端程序存在;微软的RDP服务端软件是内置在 Windows系统中的,但现在Linux上也有了RDP 服务端软件。因此,现在不仅 Windows 可以使用远程桌面功能,其他系统也可以使用了,同一平台间或不同平台间都可以实现远程桌面功能。默认情况下,RDP服务端监听 TCP 3389 端口以进行通讯。
        现在,RDP服务端软件在Windows中是以“Remote Desktop Service”服务的形式来运行的,以前称为"Terminal Services",RDP客户端软件现在称为"Remote Desktop Connection",以前称为"Terminal Service Clients"。

      

        提到远程桌面,还有个东西跟它比较相似,就是 Telnet 。Telnet 是命令行形式的远程登录工具,从功能上说,与远程桌面有些相似,但实际上,两者还是有很大的不同。

远程桌面速度非常快,即使带宽不高,也还表现不错,关键就在这个协议上,RDP协议位于tcp/ip之上,但它本身属于OSI上哪一层的协议呢?查找不到明确定义,估计应该是在传输层,直接使用tcp协议。


计算机发展的早期在很多客户机硬件配置不高无法独立运行程序的情况下,TELNET协议应运而生,他是一种C/S模式,客户机可以通过TELNET登录到高配置的服务器上,在服务器上运行程序。当程序运行时所有的运算与存储都是交给服务器来完成的,当运算结束后服务器才把结果反馈回客户机,这样就可以在客户机配置不够的情况下完成程序的运行工作,而且运行结果出来的一点不慢。
远程桌面连接就是从TELNET发展而来的,通俗的讲他就是图形化的TELNET。所以在下文中我们讲解远程桌面连接的使用时也会稍微介绍一些TELNET的相关知识。

2.如何使用远程桌面

①前提条件

②内网中的使用

③公网中的使用(穿透内网)

3.远程桌面Web连接

4.远程桌面的安全性


5.其他平台及第3方软件


二、虚拟机方案


你可能感兴趣的:(杂项)