毕业设计(论文) 题
告开报
开题报告
1 选题的背景和意义
远程控制是在网络上由一台主控端计算机远距离地控制另一台被控端计算机的技术。随着网络技术的发展,电脑的管理及技术支持的需要,远程操作及控制技术越来越引起人们的关注[1]。采用远程控制主要是因为方便、效率和安全这三方面的因素。
1.1 选题的背景
目前,大多数远程进程间通信代码是用Socket编写的。实际应用中用Socket传输信息并不是独立的,它在多线程的处理环境中应用更为广泛[2]。Socket通常也称作“套接”。用于描述IP地址和端口,是一个通信链的句柄。应用程序通常通过“套接字”向网络发出请求或者应答网络请求。Socket有两种主要的操作方式:面向连接的和无连接的。Socket利用客户/服务器模式解决了进程之间建立通信连接的问题[3]。
1.2 国内外研究现状及发展趋势
远程控制技术由来已久,是控制领域的一项重要技术。国内外在远程控制方面的应用十分广泛,而且进展迅速,大体来看分为几种:一是对计算机网络自身性能的监控。这种应用可以自动跟踪目标计算机的屏幕变化、获取目标计算机登录口令及各种密码类信息、获取目标计算机系统信息、限制目标计算机系统功能、任意操作目标计算机文件及目录、远程关机、发送信息等多种监控功能。二是对现场状况的实时监控,多用于酒店、银行或住宅等系统监视方面。这种应用使用摄像机云台,基于无线网络的远程控制平台研究与实现实际上是一种被动的监视系统;三是对作业现场有效数据的采集监视,是种主动监控方式,多用于水文水利、电力、机械生产等方面[4]。目前,基于因特网的远程控制国内外电都有不同程度的研究,相对来说,由于西方国家在信息技术和计算机技术的发展上的优势,他们在研究基于因特网的远程控制方面相对早一些,而且主要集中在机器人领域。例如:美国南加州大学研制的可播种和浇水的远程控制花园Telegarden、英国Bradford大学的远程机器人望远镜系统、澳大利亚Wollogong大学拾取木块的Roboty系统等。国内的哈尔滨工业大学也在研制基于因特网的Telerobot远程控制机器人[5,6]。
2 研究的基本内容
本次研究的目的是开发一个基于Socket通信的远程控制系统,系统可实现磁盘管理,远程下载文件,本地上传文件,发送信息,屏幕查看,鼠标锁定,鼠标解锁,远程关机,远程重启,桌面隐藏,桌面显示等功能。
1
开题报告
2.1 基本框架
远程控制软件一般分为客户端程序和服务器端程序,它们通过Socket来实现双方的通信连接。如图2.1所示。
主控端(客户端)Socket网络Socket受控端(服务器端)图2.1 客户机/服务器器系统结构图
客户端主要包括三部分:任务翻译,信息传输和发送命令。任务翻译主要是对服务器端发来的控制操作进行翻译,明白需要的操作。信息的传输主要针对能够实现客户端向服务器端发送信息。发送命令是向服务器发送所需要执行的命令,使服务器能有目的性的执行命令。主要功能如图2.2所示。
客户端任务翻译信息传输图2.2 客户端功能模块图
发送命令
系统的控制功能主要由服务器端来实现。在服务器端,它们并不是主动地建立连接,而是通过监听被动地接受客户端的连接请求,并建立连接。客户端通过远程控制在服务器实现各个功能,包括文件管理,屏幕控制,系统管理,主机管理。文件管理包括上传文件,下载文件,读取文件,删除文件,命名文件和创建文件。屏幕控制包括屏幕截图,图标控制,键盘控制,创建用户和用户管理。系统管理包括命令行,远程关机,远程重启和发送消息。主机管理包括添加主机,删除主机。如图2.3所示。
2
开题报告
服务器端文件管理屏幕控制屏幕截图图标控制键盘控制创建用户用户管理系统管理主机管理上传文件下载文件读取文件删除文件命名文件创建文件发送消息添加主机远程关机删除主机远程重启
图2.3 服务器功能模块图
系统在工作时,首先调用Socket类的构造函数,以服务器的指定的IP地址或指定的主机名和指定的端口号为参数,创建一个Socket,负责监听客户端的请求。客户端在创建一个Socket的同时向服务器端发送服务连接请求,服务器端生成新的Socket,原来的Socket仍处于监听状态。当服务器端接收到连接请求后,服务器端处理请求,分析是否空闲,如繁忙,则阻塞,如空闲则接受请求,服务器端与客户端建立连接,客户端发出控制写入,此时服务器Fork()出一个子进程专门处理该客户,完成服务器端与客户端的远程控制,实现客户端对服务器端的远程控制。完成整个操作后,父进程则关闭新的Socket,继续处理下一个客户进程。而服务器监听用的Socket对Fork出的子进程无用,所以子进程将其关闭,用产生的新Socket与客户交换信息,直到对方关闭此连接,子进程终止。关闭Socket。系统的详细工作流程如图2.4所示。
3
相关推荐: