基于CS模式的linux远程控制技术客户端的实现
摘 要
远程控制技术在现代社会有着越来越广泛的应用,其涉及到远程监控、移动办公、远程处理、远程教育等领域。论文主要介绍了在LINUX平台中如何实现远程控制,该软件主要包括客户端的应用程序和服务器端的应用程序。论文重点介绍了远程控制软件客户端的需求分析,原理和设计过程。结合功能结构图和设计流程图对软件的设计进行了详细的说明。该软件基于C/S模式,通过启动服务器端、启动客户端连接、输入正确的服务器地址和密码,实现控制远端计算机的操作。
[来源:http://www.doc163.com]
关键词:远程控制;客户端;LINUX
The Client Terminal Implementation of Remote Control Technology based on LINUX
Abstract
Nowadays, the remote control technology is used widely, it involves remote monitoring、telecommuting、teleprocessing、distance learning and so on. Thesis introduces how to achieve remote control on the LINUX platform. This software includes the applications procedures of client terminal and the applications procedures of server terminal. It introduces the requirements analysis, principle and the process of design to client terminal of remote control mainly. Use the function chart and the flow chart to explain the detail of software. This software is based on the C / S pattern. When both of the client terminal and the server terminal start to run, and then input the IP address of server and password, now you can control the remote computer. [资料来源:http://www.doc163.com]
Keywords: Remote control; The client terminal; LINUX
需求分析
需求分析是软件设计的最重要的一步,包括对问题的识别,分析与综合等。由于网络的迅速发展,远程办公、远程教育已经不是什么困难的事了,利用远程控制软件就可以很轻松的实现。通过分析GNU公共软件VNC(Virtual Network Computing)的设计原理和开发过程,结合实际的需求开发了这个系统,并命名为tightVNC。
要做一个基于LINUX下的远程控制软件,该软件能够实现对远端计算机的控制。经过分析,远程控制软件需要提供一个基于C/S(即客户端/服务器端)模式用户接口,用户能够通过自己的电脑控制远端的计算机,并能够利用自己的鼠标和键盘直接对远端的桌面进行控制,实现远程桌面的控制、屏幕控制、对文件的查看和修改等功能。使用这样的C/S模式,用户只需启动客户端连接,输入正确的服务器地址和密码,当服务器接收并验证后,将桌面图形发送到客户端,让客户端看到远程桌面并控制它。
服务器作为后台,它要响应客户的要求,客户发出的一切命令都要得到服务器的响应。它允许一个用户来管理本地电脑上的桌面项目,允许客户动态的添加和删除,并能将屏幕、鼠标和键盘的变化发送到客户端。
客户端和服务器端的连接通信
我们想要拥有一个安全的连接方式,保证数据在通信过程中完整,不丢失。那么对于客户端与服务器端的通信连接,我们可以采用面向连接协议的字节流套接字TCP来实现。如图2所示。
[资料来源:http://Doc163.com]
客户端对服务器端实现屏幕控制
要实现客户端对服务器端的屏幕控制,需要一个很好的方法来处理远程图形,这里我们选择了RFB协议。RFB协议很好的处理了远程桌面图形在本地电脑的显示,RFB协议有三个阶段,如图3所示:握手阶段,初始化阶段,自由通信阶段。
远程控制软件的总体设计
远程控制技术是实现远程办公、远程交流、远程控制和管理等功能的软件。它由两个部分组成,一部分是客户端的应用程序vncviewer,另一部分是服务器端的应用程序vncserver。
远程控制软件的通信流程
远程控制软件的通信流程。
1) 客户端通过VNC Viewer连接至VNC Server。
2) VNC Server返回信息给客户端,要求输入服务器地址和连接密码。
3) 在客户端输入连接密码后,VNC Server验证客户端是否具有存取权限。
4) 若是客户端通过VNC Server的验证,客户端即要求VNC Server显示桌面环境。
5) VNC Server通过X Protocol要求X Server将画面显示控制权交给VNC Server负责。
6) VNC Server将来由X Server的桌面环境利用通信协议送至客户端,并且允许客户端控制VNC Server的桌面环境及输入装置。
[资料来源:www.doc163.com]
目录
1 引言 1
2 概述 1
2.1 远程控制技术简述 1
2.2 远程控制技术的作用 1
2.3 远程控制技术的应用现状及发展趋势 2
2.4 远程控制软件的相关技术 2
3 远程控制软件的设计 3
3.1 需求分析 3
3.1.1 客户端和服务器端的连接通信 3
3.1.2 客户端对服务器端实现屏幕控制 4
3.2 远程控制软件的总体设计 4
3.2.1 远程控制软件的通信流程 4
3.2.2 远程连接通信 5
(毕业设计)
3.3 远程控制软件客户端的实现 5
3.3.1 客户端总体代码 6
3.3.2 客户端和服务器端的连接通信 6
3.3.3 客户端对服务器端的屏幕控制 11
4 远程控制软件客户端的测试 17
5 远程控制软件的总体评价 19 [资料来源:Doc163.com]
结 论 20
参考文献 20
致 谢 21
声 明 22 [资料来源:www.doc163.com]